System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 反向首包报文的转发方法及装置制造方法及图纸_技高网

反向首包报文的转发方法及装置制造方法及图纸

技术编号:42643897 阅读:8 留言:0更新日期:2024-09-06 01:39
本申请涉及一种反向首包报文的转发方法及装置。该方法包括:设备接收反向首包报文并获取其五元组信息;计算所述五元组信息的哈希值;通过所述哈希值进行匹配;在匹配成功后,根据匹配结果确定会话;根据所述会话将所述反向首包报文通过现场可编程门阵列直接进行转发。本申请涉及的反向首包报文的转发方法及装置,能够使得相同五元组报文的反向首包可以直接通过现场可编程门阵列进行快速转发,节约设备的中央处理器的计算资源,提升报文转发速度。

【技术实现步骤摘要】

本公开涉及计算机信息处理领域,具体而言,涉及一种反向首包报文的转发方法及装置


技术介绍

1、在报文进入设备的流程中,报文是先进入现场可编程门阵列(fpga)模块,然后经由网卡收包进入中央处理器(cpu),在cpu上先经由驱动部分处理,根据需要再进入平台处理。进入设备中的报文会根据五元组来区分成若干条的会话。

2、在报文的转发过程中,一条会话的首包报文一定会上送报文处理平台进行处理,平台根据报文的信息会给cpu驱动或者fpga下发已经建立好的会话信息,后续同一条会话的报文在cpu上或者fpga上会根据平台下发的会话信息进行五元组匹配,匹配的报文如果是同一条会话就可以直接在cpu上或者fpga上对报文进行处理和转发,而不用再次上送到平台,这种方式大大加快的报文的转发效率,使得报文转发设备的性能得到较大的提升。

3、实际情况中,同一个五元组根据报文方向的不同可以分为正向会话和反向会话,根据上述原理是正向首包上送平台在cpu上或者fpga上建立正向会话,反向首包上送平台在cpu上或者fpga上建立反向会话。如果在使用环境中有大量的会话,则每个五元组需要有两个报文上平台来建立双向的会话,这样对设备的转发处理性能会造成的一定损耗。

4、因此,需要一种新的反向首包报文的转发方法及装置。

5、在所述
技术介绍
部分公开的上述信息仅用于加强对本申请的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现思路

1、有鉴于此,本申请提供一种反向首包报文的转发方法及装置,能够使得相同五元组报文的反向首包可以直接通过现场可编程门阵列进行快速转发,节约设备的中央处理器的计算资源,提升报文转发速度。

2、本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。

3、根据本申请的一方面,提出一种反向首包报文的转发方法,该方法包括:设备接收反向首包报文并获取其五元组信息;计算所述五元组信息的哈希值;通过所述哈希值进行匹配;在匹配成功后,根据匹配结果确定会话;根据所述会话将所述反向首包报文通过现场可编程门阵列直接进行转发。

4、在本申请的一种示例性实施例中,还包括:设备接收正向首包报文并获取其五元组信息;根据五元组信息为所述正向首包报文创建会话;生成正向流表和反向流表;将所述正向流表和所述反向流表下刷给所述设备的现场可编程门阵列。

5、在本申请的一种示例性实施例中,设备接收反向首包报文并获取其五元组信息,包括:设备接收报文;解析所述报文并获取其五元组信息;根据所述五元组信息判断所述报文是否为反向首包报文。

6、在本申请的一种示例性实施例中,通过所述哈希值进行匹配,包括:通过所述哈希值确定索引表;将所述哈希值和所述索引表中的数值进行匹配。

7、在本申请的一种示例性实施例中,根据匹配结果确定会话,包括:根据匹配结果在所述设备的现场可编程门阵列中确定会话。

8、在本申请的一种示例性实施例中,根据五元组信息为所述正向首包报文创建会话,包括:生成所述五元组信息的哈希值;通过所述哈希值建立会话的索引,并存入索引表;将索引表和所述会话关联。

9、在本申请的一种示例性实施例中,通过所述哈希值建立会话的索引,并存入索引表,还包括:从空闲链表头部摘取节点放置到使用链尾部;为每条链表加锁。

10、在本申请的一种示例性实施例中,将所述正向流表和所述反向流表下刷给所述设备的现场可编程门阵列,包括:判断是否需要进行下刷;在需要进行下刷时,调用现场可编程门阵列的会话处理接口以将所述正向流表和所述反向流表下刷。

11、在本申请的一种示例性实施例中,判断是否需要进行下刷,包括:判断所述正向流表和所述反向流表是否需要下刷;判断所述正向首包报文的业务标记是否为指定标记;在确定所述正向流表和所述反向流表需要下刷,且所述正向首包报文带有指定标记时,确定进行下刷。

12、根据本申请的一方面,提出一种反向首包报文的转发装置,该装置包括:接收模块,用于设备接收反向首包报文并获取其五元组信息;哈希模块,用于计算所述五元组信息的哈希值;匹配模块,用于通过所述哈希值进行匹配;会话模块,用于在匹配成功后,根据匹配结果确定会话;转发模块,用于根据所述会话将所述反向首包报文通过现场可编程门阵列直接进行转发。

13、根据本申请的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。

14、根据本申请的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。

15、根据本申请的反向首包报文的转发方法及装置,通过设备接收反向首包报文并获取其五元组信息;计算所述五元组信息的哈希值;通过所述哈希值进行匹配;在匹配成功后,根据匹配结果确定会话;根据所述会话将所述反向首包报文通过现场可编程门阵列直接进行转发的方式,能够使得相同五元组报文的反向首包可以直接通过现场可编程门阵列进行快速转发,节约设备的中央处理器的计算资源,提升报文转发速度。

16、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。

本文档来自技高网...

【技术保护点】

1.一种反向首包报文的转发方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,还包括:

3.如权利要求1所述的方法,其特征在于,设备接收反向首包报文并获取其五元组信息,包括:

4.如权利要求1所述的方法,其特征在于,通过所述哈希值进行匹配,包括:

5.如权利要求1所述的方法,其特征在于,根据匹配结果确定会话,包括:

6.如权利要求2所述的方法,其特征在于,根据五元组信息为所述正向首包报文创建会话,包括:

7.如权利要求6所述的方法,其特征在于,通过所述哈希值建立会话的索引,并存入索引表,还包括:

8.如权利要求2所述的方法,其特征在于,将所述正向流表和所述反向流表下刷给所述设备的现场可编程门阵列,包括:

9.如权利要求8所述的方法,其特征在于,判断是否需要进行下刷,包括:

10.一种反向首包报文的转发装置,其特征在于,包括:

【技术特征摘要】

1.一种反向首包报文的转发方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,还包括:

3.如权利要求1所述的方法,其特征在于,设备接收反向首包报文并获取其五元组信息,包括:

4.如权利要求1所述的方法,其特征在于,通过所述哈希值进行匹配,包括:

5.如权利要求1所述的方法,其特征在于,根据匹配结果确定会话,包括:

6.如权利要求2所述的方法,其特征在...

【专利技术属性】
技术研发人员:郭志星
申请(专利权)人:杭州迪普科技股份有限公司
类型:发明
国别省市:

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

1