一种会话表项的管理方法和装置制造方法及图纸

技术编号:14881063 阅读:71 留言:0更新日期:2017-03-24 03:42
本申请提供一种会话表项的管理方法和装置,应用于多核转发设备,所述方法包括:将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发;所述CPU生成与该报文对应的会话表项,并基于预设平均算法计算与该会话表项对应的目标会话表,并将该会话表项下发至所述目标会话表;针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。采用本申请提供的技术方案,可以提高转发设备的性能。

【技术实现步骤摘要】

本申请涉及网络通信
,特别涉及一种会话表项的管理方法和装置
技术介绍
为了提高转发设备的转发性能,简化报文上送至协议栈的处理流程,当报文上送至对应的CPU在协议栈中处理完成后,通常可以根据协议栈的业务处理结果,创建对应的会话表项,然后由所述会话表项生成会话表。设备接收到报文后,首先将该报文与会话表中的会话表项均进行匹配,如果匹配不成功,则将报文上送至对应的CPU在协议栈进行业务处理,并在业务处理完成后,基于该报文的五元组、以及对应的业务类型信息生成对应的会话表项,下发至所述会话表。如果匹配成功,则可以根据会话表项中记录的信息进行相应的转发,通过这种方式,可以减少将报文上送至对应的CPU在协议栈中执行重复的业务处理,从而可以提升设备的转发性能。
技术实现思路
有鉴于此,本申请提供一种会话表项的管理方法和装置,应用于多核转发设备,提升设备的转发性能。具体地,本申请是通过如下技术方案实现的:一种会话表项的管理方法,应用于多核转发设备,包括:将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发;所述CPU生成与该报文对应的会话表项,并基于预设平均算法计算与该会话表项对应的目标会话表,并将该会话表项下发至所述目标会话表;针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。一种会话表项的管理装置,应用于多核转发设备,包括:匹配单元,用于将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述报文与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发;生成单元,用于所述CPU生成与该报文对应的会话表项,并基于预设平均算法计算与该会话表项对应的目标会话表,并将该会话表项下发至所述目标会话表;老化单元,用于针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。由以上本申请提供的技术方案可见,在本申请中,多核转发设备通过预先配置多个会话表,在接收到报文时,将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述报文与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发,并由该CPU生成与该报文对应的会话表项,以及基于预设平均算法计算与该会话表项对应的目标会话表,将该会话表项下发至所述目标会话表;同时还可以针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。由于在本申请中多核转发设备可以使用多个会话表,并且每个会话表分别由独立的老化线程进行并行的老化处理,因此可以提高转发设备的性能。附图说明图1a是本申请示出的一种在相关技术中一对会话表项进行管理的示意图;图1b是本申请示出的一种在相关技术中另一对会话表项进行管理的示意图;图1c是本申请示出的一种在相关技术中另一对会话表项进行管理的示意图;图2是本申请一示例性实施例示出的一种会话表项的管理方法的流程图;图3是本申请一示例性实施例示出的一种会话表项的管理方法的示意图;图4是本申请另一示例性实施例示出的一种会话表项的管理方法的示意图;图5是本申请一示例性实施例示出的控制CPU对各会话表执行老化处理的流程图;图6是本申请一示例性实施例示出的一种会话表项的管理装置所在多核转发设备的一种硬件结构图;图7是本申请一示例性实施例示出的一种会话表项的管理装置。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。请参见图1a,图1a为本申请示出的一种在相关技术中一对会话表项进行管理的示意图。相关技术中,转发设备首次收到报文后,会将该报文上送至对应CPU在协议栈中处理,当报文上送至对应的CPU在协议栈中处理完成后,通常可以根据协议栈的业务处理结果,创建对应的会话表项,然后由所述会话表项生成相应的会话表。上述会话表,可以是转发设备在完成设备初始化后,预先申请分配的一定数量规格的会话表项所组成的链表。其中,为了便于对会话表项进行更好地管理,将所述会话表分为使用链表和空闲链表,所述空闲链表中的会话表项为空闲表项,没有储存会话资源;所述使用链表中的会话表项可以用于存储会话资源。请参见图1b,图1b是本申请示出的一种在相关技术中另一对会话表项进行管理的示意图。当报文第一次发送至设备时,设备可以将该报文上送至CPU,由CPU在协议栈中对报文进行业务处理。当在协议栈中完成对应的业务处理,并将报文成功转发后,CPU可以获得该报文的五元组、与该报文对应的业务类型信息,接着可以从空闲链表中分配一个空闲表项,将该报文的五元组、与该报文对应的业务类型信息存储至该空闲表项中,生成对应的会话表项,然后将该会话表项下发至使用链表中。请参见图1c,图1c是本申请示出的一种在相关技术中另一对会话表项进行管理的示意图。为了充分利用会话表中的存储资源,可以对该会话表启用老化机制,启用老化线程。该老化线程可以实时遍历使用链表中的会话表项,当会话表项的老化时间到达预设的阈值时,可以释放该会话表项的存储资源,并将该空闲的会话表项添加至空闲链表。然而,当使用链表中的会话表项数量比较多的时候,由于老化线程是采用遍历的模式,对使用链表中的会话表项进行检测,因此针对使用链表中老化时间到达预设的时间的会话表项,无法及时释放该会话表项的存储资源,并将该空闲的会话表项添加至空闲链表。为了解决现有技术中的问题,本申请提供了一种技术方案,多核转发设备通过预先配置多个会话表,在接收到报文时,将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述报文与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发,并由该CPU生成与该报文对应的会话表项,以及基于预设平均算法计算与该会话表项对应的目标会话表,将该会话表项下发至所述目标会话表;同时还可以针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。由于在本申请中多核转发设备可以使用多个会话表,并且每个会话表分别由独立的老化线程进行并行的老化处理,因此可以提高转发设备的性能。请参见图2,图2是本申请一示例性实施例示出的一种会话表项的管理方本文档来自技高网...
一种会话表项的管理方法和装置

【技术保护点】
一种会话表项的管理的方法,应用于多核转发设备,所述转发设备中预先配置了多个会话表,其特征在于,包括:将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述报文与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发;所述CPU生成与该报文对应的会话表项,并基于预设平均算法计算与该会话表项对应的目标会话表,并将该会话表项下发至所述目标会话表;针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。

【技术特征摘要】
1.一种会话表项的管理的方法,应用于多核转发设备,所述转发设备中预先配置了多个会话表,其特征在于,包括:将接收到的报文与所述多个会话表中的会话表项依次执行匹配,如果所述报文与所述多个会话表中的会话表项均未匹配成功,则将该报文上送至对应的CPU执行转发;所述CPU生成与该报文对应的会话表项,并基于预设平均算法计算与该会话表项对应的目标会话表,并将该会话表项下发至所述目标会话表;针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理。2.根据权利要求1所述的方法,其特征在于,所述基于预设平均算法计算与该会话表项对应的目标会话表,包括:实时查询各会话表中的会话表项的数量;查找会话表项数量最少的会话表;将该会话表项数量最少的会话表确定为与该会话表项对应的目标会话表。3.根据权利要求1所述的方法,其特征在于,所述多核转发设备包括至少一个数据CPU以及至少一个控制CPU;其中,所述数据CPU用于针对上送至本地的报文执行转发,为该报文生成对应的会话表项以及将生成的会话表项下发至对应的目标会话表;所述控制CPU用于针对会话表中的会话表项执行老化处理;所述针对各会话表分别启用对应的老化线程,并基于各老化线程针对各会话表执行并行老化处理,包括:所述控制CPU针对各会话表分别启用对应的老化线程,并由所述控制CPU基于各老化线程针对各会话表执行并行老化处理。4.根据权利要求1所述的方法,其特征在于,各会话表包含使用链表和空闲链表;所述基于各老化线程针对各会话表执行并行老化处理,包括:各老化线程遍历对应的使用链表中的会话表项;判断使用链表中的会话表项的老化时间是否超时;如果使用链表中任一会话表项的老化时间超时,则释放该会话表项的存储资源,并将该会话表项添加至空闲链表。5.根据权利要求1所述的方法,其特征在于,各会话表包含使用链表和空闲链表;其中,各会话表对应的空闲链表相同;所述CPU生成与该报文对应的会话表项,包括:从空闲链表中为该报文分配空闲会话表项;向该会话表项中记录该报文的...

【专利技术属性】
技术研发人员:胡军任红军李笑
申请(专利权)人:杭州迪普科技股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1