CN104836741A - 在网络报文分流设备中实现分片报文处理的方法及处理板 - Google Patents
在网络报文分流设备中实现分片报文处理的方法及处理板 Download PDFInfo
- Publication number
- CN104836741A CN104836741A CN201510177987.9A CN201510177987A CN104836741A CN 104836741 A CN104836741 A CN 104836741A CN 201510177987 A CN201510177987 A CN 201510177987A CN 104836741 A CN104836741 A CN 104836741A
- Authority
- CN
- China
- Prior art keywords
- burst
- message
- list item
- stream list
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种在网络报文分流设备中实现分片报文处理的方法及处理板,包括:通过接口板对分片流生成请求协处理消息,处理板根据该请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理,将对报文的处理改为对协处理消息的处理,从而有效解决了现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种在网络报文分流设备中实现分片报文处理的方法及处理板。
背景技术
随着当代计算机网络技术的迅速发展,报文分流设备能够将海量的数据报文,基于报文自身不同的五元组信息,快速准确地分发到各个后端服务器做进一步的处理。高效的报文分流设备还是其它一些高层的网络专用设备(如防火墙、虚拟专网、负载均衡设备等)的基础。
在网络环境中,当需要传输的IP报文长度超过了最大传输单元(Maximum Transmission Unit,MTU)时,一个IP报文会被分成若干个IP报文,分别进行传输,这就是分片。分片报文在实际的网络环境中占有相当的比例,而且由于同源同宿的要求和报文乱序的常态,这都对报文分流设备处理分片报文提出了很高的要求。
正常情况下,各个分片报文按照它们在原报文中所处的不同位置,依次在网络上进行传输,但是由于网络环境的复杂性,本应后到的分片报文却先于首片抵达目的设备,这就是分片报文乱序。为了解决分片报文乱序,设备不得不将乱序的分片报文进行缓存,等待后续首片报文的到达,再按照首片报文的五元组信息将首片报文连同暂存的分片报文一起转发到后端的目的服务器中。这其中可能会涉及到缓存分片报文的转储和管理,需要额外的暂存空间和附加的处理时间。
发明内容
鉴于上述的分析,本发明旨在提供一种在网络报文分流设备中实现分片报文处理的方法及处理板,用以解决现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
为解决上述问题,本发明主要是通过以下技术方案实现的:
本发明一方面提供了一种在网络报文分流设备中实现分片报文处理的方法,该方法包括:
接收接口板发送来的请求协处理消息;
根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
优选地,所述请求协处理消息包括:数据流的源IP地址、目的IP地址和分片ID信息。
优选地,所述根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项的步骤具体包括:
根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则确定对应的分片流表项不存在,建立新的分片流表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做相应的处理。
优选地,所述按照当前分片报文的类型和分片流表项的当前状态做相应的处理的步骤具体包括:
如果当前的分片报文是首片,则按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表;
如果当前的分片报文是分片,则将此分片节点挂载到相应的分片节点链表中。
本发明再一方面提供了一种实现分片报文处理的处理板,该处理板包括:
接收单元,用于接收接口板发送来的请求协处理消息;
处理单元,用于根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
优选地,所述请求协处理消息包括:数据流的源IP地址、目的IP地址和分片ID信息。
优选地,所述处理单元具体用于,根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则确定对应的分片流表项不存在,建立新的分片流表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做相应的处理。
优选地,所述处理单元具体用于,根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,如果确定当前的分片报文是首片,则需要按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表,如果当前的分片报文是分片,则将此分片节点挂载到相应的分片节点链表中。
本发明有益效果如下:
本发明通过接口板对分片流生成请求协处理消息,处理板根据该请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理,将对报文的处理改为对协处理消息的处理,从而有效解决了现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
本发明的其他特征和优点将在随后的说明书中阐述,并且部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
图1为本发明实施例的一种网络设备报文处理的流程示意图;
图2为本发明实施例的另一种网络设备报文处理的流程示意图;
图3为本发明实施例的分片报文处理数据结构图;
图4为本发明实施例的一种实现分片报文处理的处理板的结构示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。为了清楚和简化目的,当其可能使本发明的主题模糊不清时,将省略本文所描述的器件中已知功能和结构的详细具体说明。
为了解决现有技术报文分流所造成的存储空间和处理时间浪费的问题,本发明提供了一种在网络报文分流设备中实现分片报文处理的方法及处理板,以下结合附图以及几个实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
方法实施例
本发明实施例提供的一种在网络报文分流设备中实现分片报文处理的方法,参见图1,该方法包括:
S101、接收接口板发送来的请求协处理消息;
S102、根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
即,本发明通过接口板对分片流生成请求协处理消息,处理板根据该请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理,将对报文的处理改为对协处理消息的处理,从而有效解决了现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
本发明实施例中所述请求协处理消息包括:数据流的源IP地址、目的IP地址、分片ID信息和其它相关信息,如源端口和目的端口的信息等等。
本发明实施例所述根据所述请求协处理消息进行哈希运算,确定对应的分片流表项的步骤具体包括:
根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则对应的分片流表项不存在,需要建立新的表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做不同处理。
本发明实施例所述对已找到所属的分片流表项的分片报文进行处理的步骤具体包括:
如果确定当前报文是首片,则需要按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表;
如果确定当前报文是分片,则将此分片节点挂载到相应的分片节点链表的链头或链尾。
本发明构建了一个分片处理的整体框架,与现有技术相比,节省了缓存乱序报文所需要的空间,避免了报文拷贝,并且将资源的轮转和异常分片的处理都统一到一个框架下,实现了分片报文处理的准确性和高性能。
图2为本发明实施例的网络设备报文处理的流程示意图,图3为本发明实施例的分片报文处理数据结构图,下面将结合图2和图3对本发明实施例所述的方法进行详细的说明:
本发明在基于先进的电信计算平台(Advanced Telecom ComputingArchitecture,ATCA)架构的网络分流设备的基础上,提出一种高效的处理分片报文的方法。网络分类设备包括接口板、处理板和控制板,如图2所示,原始报文流量从接口被接入,提取五元组(TCP/IP协议中数据流的必要属性,包括传输层协议类型(tcp、udp等)、源ip地址、目的ip地址、源端口(传输层端口)和目的端口(传输层端口)五个元素)等信息后形成请求协处理消息发给处理板,处理板接受控制板的控制信息(包括需要丢弃和转发的五元组规则信息),对请求协处理消息进行处理后形成一对一的响应协处理消息返回给接口板,接口板按照响应协处理消息中的处理结果形成输出流量,或者直接丢弃某些输入报文,或者将某些报文从特定的端口进行输出。
对于分片报文来说,接口板会将报文的首片、中间片和末片信息,五元组信息和分片ID等信息都提取出来填入请求协处理消息中。本发明采用图3所示的数据结构来完成处理板对分片报文的处理工作,首先处理板根据报文的源目IP和分片ID来进行哈希运算,定位到哈希表的相应位置,然后沿着哈希冲突链去寻找对应的分片流表项,如果没有找到就需要新建分片流表项。
每个分片流表项通过分片节点指针可能挂连零个或若干个分片节点,每个分片节点代表一个被缓存的分片报文(实际上是协处理消息,下文与此相同)。
如果当前报文是首片,则需要按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表;如果当前报文是分片,则将此分片节点挂载到相应的分片节点链表的链头或链尾。
此外所有的分片流表项都链接到一个分片流表项队列中,这么做是为了一是可以在分片流表项用尽后按某种原则淘汰已有的表项(例如最老的表项先被淘汰),二是可以定期地将首片迟迟不来的乱序分片报文及时进行处理。
处理板实施例
本发明实施例提供了一种实现分片报文处理的处理板,参见图4,包括:
接收单元,用于接收接口板发送来的请求协处理消息;
处理单元,用于根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
即,本发明通过接收单元接收接口板生成的分片流生成请求协处理消息,处理单元再根据该请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理,将对报文的处理改为对协处理消息的处理,从而有效解决了现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
本发明实施例所述的所述请求协处理消息包括:数据流的源IP地址、目的IP地址、分片ID信息和其它相关信息,如源端口和目的端口的信息等等。
本发明实施例中的所述处理单元具体用于,根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则对应的分片流表项不存在,需要建立新的表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做不同处理。
本发明实施例所述处理单元具体用于,根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,如果确定当前报文是首片,则需要按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表,如果确定当前报文是分片,则将此分片节点挂载到相应的分片节点链表的链头或链尾。
本发明实施例的装置中的内容可参考方法部分的相关内容进行理解,在此不再赘述。
本发明提供的一种在网络报文分流设备中实现分片报文处理的方法及处理板,至少能够带来以下有益效果:
本发明通过接口板对分片流生成请求协处理消息,处理板根据该请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理,将对报文的处理改为对协处理消息的处理,从而有效解决了现有技术中报文分流所造成的存储空间和处理时间浪费的问题。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (8)
1.一种在网络报文分流设备中实现分片报文处理的方法,其特征在于,包括:
接收接口板发送来的请求协处理消息;
根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
2.根据权利要求1所述的方法,其特征在于,
所述请求协处理消息包括:数据流的源IP地址、目的IP地址和分片ID信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项的步骤具体包括:
根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则确定对应的分片流表项不存在,建立新的分片流表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做相应的处理。
4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述按照当前分片报文的类型和分片流表项的当前状态做相应的处理的步骤具体包括:
如果当前的分片报文是首片,则按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表;
如果当前的分片报文是分片,则将此分片节点挂载到相应的分片节点链表中。
5.一种实现分片报文处理的处理板,其特征在于,包括:
接收单元,用于接收接口板发送来的请求协处理消息;
处理单元,用于根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,根据分片流表项的状态和分片的类型对分片流所属的报文进行处理。
6.根据权利要求5所述的处理板,其特征在于,
所述请求协处理消息包括:数据流的源IP地址、目的IP地址和分片ID信息。
7.根据权利要求6所述的处理板,其特征在于,
所述处理单元具体用于,根据所述数据流的源IP地址、目的IP地址和分片ID信息进行哈希运算,定位到哈希表的相应位置,并沿着哈希冲突链查找对应的分片流表项,如果没有找到,则确定对应的分片流表项不存在,建立新的分片流表项,如果找到了,则按照当前分片报文的类型和分片流表项的当前状态做相应的处理。
8.根据权利要求5-7中任意一项所述的处理板,其特征在于,
所述处理单元具体用于,根据所述请求协处理消息进行哈希运算,确定相对应的分片流表项,如果确定当前的分片报文是首片,则需要按照所命中的五元组规则的处理结果将此首片和先前缓存的分片一起进行处理,并且清空分片节点链表,如果当前的分片报文是分片,则将此分片节点挂载到相应的分片节点链表中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510177987.9A CN104836741B (zh) | 2015-04-15 | 2015-04-15 | 在网络报文分流设备中实现分片报文处理的方法及处理板 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510177987.9A CN104836741B (zh) | 2015-04-15 | 2015-04-15 | 在网络报文分流设备中实现分片报文处理的方法及处理板 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104836741A true CN104836741A (zh) | 2015-08-12 |
CN104836741B CN104836741B (zh) | 2018-08-24 |
Family
ID=53814386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510177987.9A Expired - Fee Related CN104836741B (zh) | 2015-04-15 | 2015-04-15 | 在网络报文分流设备中实现分片报文处理的方法及处理板 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104836741B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109347623A (zh) * | 2018-10-18 | 2019-02-15 | 盛科网络(苏州)有限公司 | 一种链路负载均衡应用中进行会话保持的方法及装置 |
CN109450814A (zh) * | 2018-11-26 | 2019-03-08 | 锐捷网络股份有限公司 | 分片报文的转发方法及装置 |
CN110601990A (zh) * | 2019-10-30 | 2019-12-20 | 杭州迪普科技股份有限公司 | 一种报文分流方法和装置 |
CN111371703A (zh) * | 2018-12-25 | 2020-07-03 | 迈普通信技术股份有限公司 | 一种报文重组方法及网络设备 |
CN113542131A (zh) * | 2021-05-25 | 2021-10-22 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141225A (zh) * | 2006-09-08 | 2008-03-12 | 中兴通讯股份有限公司 | 一种移动通讯系统中数据丢失处理方法 |
US20130326083A1 (en) * | 1997-10-14 | 2013-12-05 | Alacritech, Inc. | Method and apparatus for processing received network packets on a network interface for a computer |
CN103888364A (zh) * | 2012-12-24 | 2014-06-25 | 华为技术有限公司 | 报文分流方法及设备 |
-
2015
- 2015-04-15 CN CN201510177987.9A patent/CN104836741B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130326083A1 (en) * | 1997-10-14 | 2013-12-05 | Alacritech, Inc. | Method and apparatus for processing received network packets on a network interface for a computer |
CN101141225A (zh) * | 2006-09-08 | 2008-03-12 | 中兴通讯股份有限公司 | 一种移动通讯系统中数据丢失处理方法 |
CN103888364A (zh) * | 2012-12-24 | 2014-06-25 | 华为技术有限公司 | 报文分流方法及设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109347623A (zh) * | 2018-10-18 | 2019-02-15 | 盛科网络(苏州)有限公司 | 一种链路负载均衡应用中进行会话保持的方法及装置 |
CN109450814A (zh) * | 2018-11-26 | 2019-03-08 | 锐捷网络股份有限公司 | 分片报文的转发方法及装置 |
CN111371703A (zh) * | 2018-12-25 | 2020-07-03 | 迈普通信技术股份有限公司 | 一种报文重组方法及网络设备 |
CN110601990A (zh) * | 2019-10-30 | 2019-12-20 | 杭州迪普科技股份有限公司 | 一种报文分流方法和装置 |
CN113542131A (zh) * | 2021-05-25 | 2021-10-22 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
CN113542131B (zh) * | 2021-05-25 | 2023-08-22 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104836741B (zh) | 2018-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104836741A (zh) | 在网络报文分流设备中实现分片报文处理的方法及处理板 | |
JP6254574B2 (ja) | ネットワーキング・デバイスの仮想化のためのパケット処理のオフロード | |
CA2968964C (en) | Source ip address transparency systems and methods | |
US8059650B2 (en) | Hardware based parallel processing cores with multiple threads and multiple pipeline stages | |
GB2556446B (en) | Virtual router with dynamic flow offload capability | |
TWI542172B (zh) | 路徑更換方法與系統及其控制器 | |
CN106330715A (zh) | 报文处理方法及装置 | |
CN101573927A (zh) | 网络系统中的路径最大传输单元发现 | |
CN109547580A (zh) | 一种处理数据报文的方法和装置 | |
WO2014141007A1 (en) | Virtual machine migration in a network | |
CN104394080A (zh) | 实现安全组功能的方法及装置 | |
US20210029052A1 (en) | Methods and apparatuses for packet scheduling for software- defined networking in edge computing environment | |
CN101809950A (zh) | 为移动通信网络的控制平面实施负载均衡的方法和设备 | |
US8345603B2 (en) | Method and apparatus for processing GTP triggered messages | |
CN110609746A (zh) | 管理网络系统的方法、设备和计算机程序产品 | |
CN104852855A (zh) | 拥塞控制方法、装置及设备 | |
US9218356B2 (en) | Systems and methods for accelerating networking functionality | |
CN100377550C (zh) | 一种路由表下一跳ip地址到mac地址解析方法 | |
WO2016045056A1 (zh) | 交换机及业务请求报文的处理方法 | |
CN103428310A (zh) | 基于虚拟ip的非http域名引导系统和方法 | |
CN106411553B (zh) | 一种业务链路径的优化方法及装置 | |
CN110401726A (zh) | 地址解析协议报文的处理方法、装置及设备、存储介质 | |
CN111245637B (zh) | 生成基于应用的代理自动配置 | |
US20230385264A1 (en) | Managing subscriptions to data queries that react and update to change notifications | |
US20100238930A1 (en) | Router and method of forwarding ipv6 packets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180824 Termination date: 20190415 |