一种会话表老化方法及系统的制作方法_2

文档序号:8301449阅读:来源:国知局
老化则执行步骤A3,否则执行步骤 Al读取下一个会话节点;
[0042] A3、判断当前会话节点老化标志是否被标记,若是则返回步骤Al读取下一个会话 节点,否则执行步骤A4;
[0043] A4、根据当前会话节点的会话老化消息获取创建当前会话节点的转发核,将会话 节点老化消息发送至该转发核,并标记将当前会话节点老化标记,然后执行步骤Al读取下 一个会话节点。
[0044] 如图3所示为转发核老化执行流程图,所述步骤B具体包括以下分步骤:
[0045] B1、转发核老化执行任务判断转发核老化消息队列是否为空,若为空则执行步骤 B3,否则执行步骤B2 ;
[0046] B2、获取当前会话表,锁定会话表,将当前会话节点从会话表中移除,然后解锁会 话表;
[0047] B3、执行转发业务。
[0048] 本发明方案包括以下三个部分:主控核老化检查任务,转发核老化执行任务,转发 核老化消息队列。
[0049] 主控核老化检查任务主要负责会话老化监控、会话老化消息下发、内存回收消息 下发三个功能,转发核老化执行任务主要负责检查老化消息队列、执行老化任务两个功能, 转发核老化消息队列用于存放主控核老化检查任务下发的会话老化消息和内存回收消息, 提供缓存功能,供转发核老化执行任务获取。
[0050] 主控核老化检查任务在进行会话节点老化消息或内存回收消息下发时,会先判断 会话节点由哪个转发核创建,然后再发送消息给对应的转发核。例如,会话表S包括会话节 点sl,s2,……,s8,转发核Ll,L2,其中会话表S里的会话节点sl,s2需要老化,si会话 由Ll创建,s2会话由L2创建,则系统正常运行过程中,主控核老化检查任务会检查到会话 节点sl、s2需要老化,然后将si的老化消息、内存回收消息依次下发给Ll即创建该会话 节点的转发核中的老化消息队列,发送s2的老化消息、内存回收消息到L2中的老化消息队 列,转发核Ll发现自己的老化消息队列不为空时,则会调用本转发核的老化执行任务对消 息进行顺序处理,顺序处理时,会先处理到Ll的老化消息,此时仅将si从S中移除,之后会 处理到内存回收消息,此时再将si从内存中释放。s2的处理方式同si。
[0051] 本发明的技术方案为提高会话表节点删除的效率,对传统的会话表进行修改,将 系统中存放会话的哈希表修改为包含双向链表成员的哈希表;另外在每个会话节点消息中 加入一个仅由主控核老化检查任务读取的老化标志位,命名该标志位为TimeoutFlag,同时 创建字段Creator,用于存放创建该会话的转发核,会话节点消息具体组成如下表1所示, 包括:由Ppre (前指针)和Pnext (后指针)组成的队列头部,老化标志位TimeoutFlag,创 建者Creator,会话内容DATA。
[0052] 表 1
[0053]
【主权项】
1. 一种会话表老化的方法,其特征在于,包括w下步骤: A、 对会话表进行老化检测,得到需要老化的会话节点消息,根据得到的会话节点消息 查找对应的转发核,并将会话节点老化消息下发至转发核老化消息队列; B、 根据转发核老化消息队列中缓存的会话节点老化消息将会话节点从会话表中移出。
2. 根据权利要求1所述的方法,其特征在于,所述会话节点消息包括会话节点队列头 部、会话节点老化标志、会话节点创建者W及会话节点内容;所述会话节点老化消息由老化 消息队列头部和会话节点消息组成。
3. 根据权利要求1或2所述的方法,其特征在于,所述步骤A具体包括W下分步骤: A1、按顺序依次读取会话表中的会话节点; A2、判断当前会话节点是否需要老化,若需要老化则执行步骤A3,否则执行步骤A1读 取下一个会话节点. A3、判断当前会话节点老化标志是否被标记,若是则返回步骤A1读取下一个会话节 点,否则执行步骤A4; A4、根据当前会话节点的会话老化消息获取创建当前会话节点的转发核,将会话节点 老化消息发送至创建当前会话节点转发核的转发核老化消息队列,并标记将当前会话节点 老化标记,然后执行步骤A1读取下一个会话节点。
4. 根据权利要求1或2所述的方法,其特征在于,所述步骤B具体包括W下分步骤: B1、判断转发核老化消息队列是否为空,若为空则执行步骤B3,否则执行步骤B2 ; B2、获取当前会话表,锁定会话表,将当前会话节点从会话表中移出,然后解锁会话 表; B3、执行转发业务。
5. 根据权利要求4所述的方法,其特征在于, 所述步骤A进一步包括,将内存回收消息下发至转发核老化消息队列;所述内存回收 消息由内存回收消息队列头部和指向该会话节点地址的指针组成,所述指向会话节点地址 的指针为会话节点消息组成的字段; 所述步骤B进一步包括,根据转发核老化消息队列中缓存的内存回收消息进行会话节 点删除。
6. -种会话表老化系统,其特征在于,包括;主控核老化检查模块W及转发核老化执 行模块; 所述主控核老化检查模块,用于对会话节点老化进行监控,得到需要老化的会话节点 消息,并根据得到的会话节点消息判断创建会话节点的转发核,然后将会话节点老化消息 下发到对应转发核老化消息队列; 所述转发核老化执行模块,用于检查转发核消息缓存模块是否为空,不为空时,则获取 转发核消息缓存模块所缓存的会话节点老化消息,然后执行转发业务。
7. 根据权利要求6所述的系统,其特征在于,所述会话节点消息包括会话节点创建者 信息,主控核老化检查模块通过读取会话节点创建者信息得到创建会话节点的转发核,并 将会话节点老化消息下发到该转发核的转发核老化消息队列。
8. 根据权利要求6所述的系统,其特征在于,主控核老化检查模块还包括将内存回收 消息下发到转发核老化消息队列。
9. 根据权利要求8所述的系统,其特征在于,所述主控核老化检查模块还包括: 会话节点老化标志判断单元,用于判断当前需要老化的会话节点的老化标志是否已 经被标记,若是则检查下一个会话节点;否则根据主控核老化检查模块判断得到创建会话 节点的转发核,将会话节点老化消息和内存回收消息下发到该转发核的转发核老化消息队 列,并标记该会话节点的老化标志。
10. 根据权利要求8所述的系统,其特征在于,所述转发核老化执行模块还包括: 消息判断单元,用于判断从转发核老化消息队列获取到的消息为会话节点老化消息或 者内存回收消息,当该消息为会话节点老化消息时,则将会话节点从会话表中移除;当判断 该消息为内存回收消息时,则将会话删除。
【专利摘要】本发明公开一种会话表老化方法及系统,通过将老化任务的核心部分转移给转发核,提高了多核系统的并发性,降低了主控核的负担,提高了老化的效率。解决了因大量会话表需要集中老化而出现了主控核卡死等问题;去锁化,每个转发核在回收内存,即真正删除会话时均无需加锁,且转发核采用一次老化一次转发的方式,解决了传统方法中,主控核因老化任务长期占用会话表,导致转发业务受阻的问题;将老化消息和内存回收消息分开处理,实现老化优先,删除延后的机制,提高了转发核的处理效率,有效的降低了老化任务因等待而造成的转发任务受阻。
【IPC分类】H04L12-741, H04L12-24
【公开号】CN104618152
【申请号】CN201510026507
【发明人】马聪, 马海
【申请人】迈普通信技术股份有限公司
【公开日】2015年5月13日
【申请日】2015年1月19日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1