CN116074405A - 一种报文处理方法、装置及存储介质 - Google Patents
一种报文处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN116074405A CN116074405A CN202111289928.2A CN202111289928A CN116074405A CN 116074405 A CN116074405 A CN 116074405A CN 202111289928 A CN202111289928 A CN 202111289928A CN 116074405 A CN116074405 A CN 116074405A
- Authority
- CN
- China
- Prior art keywords
- layer
- message
- header
- information
- editing
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000012545 processing Methods 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004458 analytical method Methods 0.000 abstract description 10
- 230000006854 communication Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明揭示了一种报文处理方法、装置及存储介质,方法包括在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。本发明能够使得出口流程管道引擎中无需再单独设置报文解析模块以获取编辑后的报文的信息,降低了报文的处理时延,减少了成本。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种报文处理方法及实现报文处理方法的装置和存储介质。
背景技术
在网络通信过程中,网路通信设备(如交换机等)内设有可对报文进行处理的报文处理芯片,如NP、ASIC、FPGA等。如图1所示,目前的报文处理芯片包括入口流程管道引擎(IPPE,Ingress Process Pipeline Engine)、流量管理模块(TM,Traffic Manager)和出口流程管道引擎(EPPE,Egress Process Pipeline Engine)。其中,入口流程管道引擎主要用于对接收到的报文进行解析,收方向接口处理,基于报文信息查找转发表以确定转发行为和目的地,及基于解析报文信息和报文在芯片中的处理信息做入方向的ACL和IPFIX操作;流量管理模块主要用于存储数据包,数据包缓冲区管理,QoS,调度,以及组播复制等;出口流程管道引擎主要用于解析报文,出方向接口处理,再做各层头的编辑动作,编辑完报文后,会再基于编辑后的报文做解析,根据解析后的信息来做出方向的ACL和IPFIX等操作,最后从端口发出去。
然而,传统的出口流程管道引擎中,ACL模块是基于Flow的策略,IPFIX模块是基于Flow的监视和统计,也即需要基于编辑后的报文的信息来匹配并分析报文。当前出口流程管道引擎中需要单独增加一个解析模块重新解析报文,以将获取的报文信息传递给ACL模块和IPFIX模块用。由于多了一级报文解析模块,报文处理的时延增大,也增加了成本。
发明内容
本发明的目的在于提供一种报文处理方法、装置及存储介质,其优势在于可使出口流程管道引擎中无需再单独设置报文解析模块以获取编辑后的报文的信息,降低了报文的处理时延,减少了成本。
为实现上述目的,本发明提出一种报文处理方法,所述报文处理方法包括:
在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;
对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;
根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。
优选地,所述信息包括内层二层报文头信息、内层三层报文头信息、外层二层报文头信息、外层三层和四层报文头信息。
优选地,对报文内各层头报文进行编辑,并在编辑后对已记录的各层报文头的信息进行更新包括:
由内向外依次编辑内层三层报文头、内层二层报文头、外层三层和四层报文头、外层二层报文头。
优选地,对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新包括:
编辑内层三层报文头后,对已记录的内层三层报文头的信息进行更新;
编辑内层二层报文头后,对已记录的内层二层报文头的信息进行更新;
编辑外层三层和四层报文头后,对已记录的外层三层和四层报文头的信息进行更新;
编辑外层二层报文头后,对已记录的外层二层报文头的信息进行更新。
本发明还揭示了一种报文处理装置,所述报文处理装置包括:
第一处理模块,用于在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;
第二处理模块,用于对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;
第三处理模块,用于根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。
优选地,所述信息包括内层二层报文头信息、内层三层报文头信息、外层二层报文头信息、外层三层和四层报文头信息。
优选地,所述第二处理模块由内向外依次编辑内层三层报文头、内层二层报文头、外层三层和四层报文头、外层二层报文头。
优选地,所述第二处理模块在编辑内层三层报文头后,对已记录的内层三层报文头的信息进行更新;编辑内层二层报文头后,对已记录的内层二层报文头的信息进行更新;编辑外层三层和四层报文头后,对已记录的外层三层和四层报文头的信息进行更新;编辑外层二层报文头后,对已记录的外层二层报文头的信息进行更新。
本发明还揭示了一种报文处理装置,所述报文处理装置包括:
至少一个处理器;
以及至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理器并且存储用于由所述至少一个处理器执行的计算机程序,所述计算机程序由所述至少一个处理器执行时,使得所述装置执行上述所述的方法。
本发明还揭示了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被机器执行时实现根据上述所述的方法。
本发明的有益效果是:
本发明通过对出口流程管道引擎的报文处理过程进行改进,以在报文内各报文头编辑后,更新已记录的各层报文头的信息,该信息可直接供ACL和IPFIX模块使用,无需再单独设置一报文解析模块来获取编辑后的各层报文头的信息,减少了报文处理的时延,降低了成本。
附图说明
图1是现有技术中报文处理芯片结构图;
图2是本发明一实施例中报文处理方法流程图;
图3是本发明一实施例中报文处理装置的结构图。
具体实施方式
下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。
本发明所揭示的一种报文处理方法,使得出口流程管道引擎中无需再单独设置报文解析模块(Parser Engine)以获取编辑后的报文的信息,降低了报文的处理时延,减少了成本。
如图2所示,为本发明所揭示的一种报文处理方法,包括如下步骤:
S100,在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;
具体地,网络处理设备(如交换机等)中的报文处理芯片包括入口流程管道引擎(IPPE,Ingress Process Pipeline Engine)、流量管理模块(TM,Traffic Manager)和出口流程管道引擎(EPPE,Egress Process Pipeline Engine)。当报文进入出口流程管道引擎时,也即报文进入出方向处理过程中,首先对报文进行解析处理,以获取报文携带的信息并记录这些信息。这里的信息包括报文的内层头信息和外层头信息。其中,内层头信息包括内层三层报文头信息和内层二层报文头信息,内层三层报文头信息包括但不限于IPv4、IPv6、MPLS信息,内层二层报文头信息包括但不限于MACDA、MACSA、VLANTAG、ETHTYPE。外层头信息包括外层三层和四层报文头信息、外层二层报文头信息,外层四层头信息包括但不限于TCP、Normal UDP、VxLAN,外层二层报文头信息包括但不限于MACDA、MACSA、VLAN TAG、ETHTYPE。
当通过对报文解析获得上述信息后,进一步记录该信息。实施时,可通过配置相应的字段以记录相应的信息,如配置ParserResult字段来记录解析后获得的信息。该ParserResult字段可包括InnerL2Hdr字段、InnerL3Hdr字段、OuterL3L4Hdr字段、OuterL2Hdr字段等。如对于内层二层报文头信息可通过InnerL2Hdr字段来记录;对于内层三层报文头信息可通过配置InnerL3Hdr字段来记录;对于外层三层和四层报文头信息可通过配置OuterL3L4Hdr字段来记录;对于外层二层报文头信息可通过配置OuterL2Hdr字段来记录。此时记录的信息为出口流程管道引擎收到的报文经过解析获得的,并且此时的报文是未经过编辑的。
S200,对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;
S300,根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。
具体地,当对报文解析后,进一步对报文进行编辑处理。在对报文进行编辑时,由内向外进行编辑,也即由内向外依次编辑报文的内层三层报文头、内层三层报文头、外层三层和四层报文头、外层二层报文头。并且在对相应报文头进行编辑后,对已记录的该报文头的信息进行更新处理,也即在对内层三层报文头进行编辑后,同时根据编辑后的内层三层报文头的信息更新InnerL3Hdr字段,以实现信息的更新;在对内层二层报文头进行编辑后,同时根据编辑后的内层二层报文头的信息更新InnerL2Hdr字段,以实现信息的更新;在对外层三层和四层报文头进行编辑后,同时根据编辑后的外层三层和四层报文头信息更新OuterL3L4Hdr字段,以实现信息的更新;在对外层二层报文头进行编辑后,同时根据编辑后的外层二报文头信息更新OuterL2Hdr字段,以实现信息的更新。
当对已记录的各层报文头的信息进行更新后,可直接将信息输入至ACL模块和IPFIX模块中识别数据流用,无需再单独设置报文解析模块来获取编辑后的报文信息,进而减少了报文处理的时延,降低了成本。
如图3所示,本发明还揭示了一种报文处理装置,包括第一处理模块、第二处理模块和第三处理模块,其中,第一处理模块用于在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录,第二处理模块用于对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;第三处理模块用于根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。本实施例中,第一处理模块、第二处理模块和第三处理模块设于出口流程管道引擎内,并且第一处理模块如何对报文进行解析,获取报文内各层报文头的信息并记录详见上述,在此不再一一赘述。同时,第二处理模块如何对对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新详见上述,在此也不再一一赘述。
本发明还揭示了一种本发明还揭示了一种报文处理装置,包括存储器、处理器以及计算器程序,其中,计算器程序存储于处理器中并可在处理器中运行,如报文处理程序等。实施时,处理器执行该计算器程序时可实现上述报文处理方法中的各个步骤,如实现在报文出方向对报文进行解析,获取报文内各层报文头的信息并记录的步骤等等。
示例性的,该计算器程序可被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器中,并由所述存储器执行,以完成本发明。其中,一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该计算机程序指令段用于描述计算机程序在所述报文处理装置中的执行过程。
本发明还揭示了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,可实现上述报文处理方法。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、可执行文件或某些中间形式等,所述计算机可读介质可以包括能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)等等。
本发明通过对出口流程管道引擎的报文处理过程进行改进,以在报文内各报文头编辑后,更新已记录的各层报文头的信息,该信息可直接供ACL和IPFIX使用,无需再单独设置一报文解析模块来获取编辑后的各层报文头的信息,减少了报文处理的时延,降低了成本。
本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。
Claims (10)
1.一种报文处理方法,其特征在于,所述报文处理方法包括:
在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;
对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;
根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。
2.根据权利要求1所述的报文处理方法,所述信息包括内层二层报文头信息、内层三层报文头信息、外层二层报文头信息、外层三层和四层报文头信息。
3.根据权利要求2所述的报文处理方法,对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新包括:
由内向外依次编辑内层三层报文头、内层二层报文头、外层三层和四层报文头、外层二层报文头。
4.根据权利要求2所述的报文处理方法,对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新包括:
编辑内层三层报文头后,对已记录的内层三层报文头的信息进行更新;
编辑内层二层报文头后,对已记录的内层二层报文头的信息进行更新;
编辑外层三层和四层报文头后,对已记录的外层三层和四层报文头的信息进行更新;
编辑外层二层报文头后,对已记录的外层二层报文头的信息进行更新。
5.一种报文处理装置,其特征在于,所述报文处理装置包括:
第一处理模块,用于在出口流程管道引擎中,对接收到的报文进行解析,获取报文内各层报文头的信息并记录;
第二处理模块,用于对报文内各层报文头进行编辑,并在编辑后对已记录的各层报文头的信息进行更新;
第三处理模块,用于根据更新后的各层报文头信息进行ACL匹配和IPFXI匹配。
6.根据权利要求5所述的报文处理装置,所述信息包括内层二层报文头信息、内层三层报文头信息、外层二层报文头信息、外层三层和四层报文头信息。
7.根据权利要求6所述的报文处理装置,所述第二处理模块由内向外依次编辑内层三层报文头、内层二层报文头、外层三层和四层报文头、外层二层报文头。
8.根据权利要求6所述的报文处理装置,所述第二处理模块在编辑内层三层报文头后,对已记录的内层三层报文头的信息进行更新,在编辑内层二层报文头后,对已记录的内层二层报文头的信息进行更新,在编辑外层三层和四层报文头后,对已记录的外层三层和四层报文头的信息进行更新,在编辑外层二层报文头后,对已记录的外层二层报文头的信息进行更新。
9.一种报文处理装置,其特征在于,所述装置包括:
至少一个处理器;
以及至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理器并且存储用于由所述至少一个处理器执行的计算机程序,所述计算机程序由所述至少一个处理器执行时,使得所述装置执行根据权利要求1至4任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被机器执行时实现根据权利要求1至4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111289928.2A CN116074405A (zh) | 2021-11-02 | 2021-11-02 | 一种报文处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111289928.2A CN116074405A (zh) | 2021-11-02 | 2021-11-02 | 一种报文处理方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074405A true CN116074405A (zh) | 2023-05-05 |
Family
ID=86170379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111289928.2A Pending CN116074405A (zh) | 2021-11-02 | 2021-11-02 | 一种报文处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074405A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013181984A1 (zh) * | 2012-06-08 | 2013-12-12 | 中兴通讯股份有限公司 | 一种报文复制方法及装置 |
CN104378263A (zh) * | 2014-11-27 | 2015-02-25 | 盛科网络(苏州)有限公司 | 基于tcp会话的网络流量监测方法、装置及报文处理芯片 |
CN104410541A (zh) * | 2014-11-18 | 2015-03-11 | 盛科网络(苏州)有限公司 | Vxlan内层虚拟机流量在中间交换机上进行统计的方法及装置 |
CN104539561A (zh) * | 2014-12-29 | 2015-04-22 | 盛科网络(苏州)有限公司 | 基于报文处理信息的芯片调试方法及装置 |
US20150334020A1 (en) * | 2012-09-18 | 2015-11-19 | Cisco Technology, Inc. | Parallel Processing for Low Latency Network Address Translation |
CN105429882A (zh) * | 2015-10-21 | 2016-03-23 | 盛科网络(苏州)有限公司 | 基于传统交换芯片查找方式的报文编辑实现方法及装置 |
WO2017036267A1 (zh) * | 2015-08-28 | 2017-03-09 | 华讯方舟科技有限公司 | 一种数据报文转发方法及装置 |
CN106789644A (zh) * | 2016-11-29 | 2017-05-31 | 深圳市楠菲微电子有限公司 | 一种trill组播报文的转发方法和装置 |
CN107566220A (zh) * | 2017-10-17 | 2018-01-09 | 盛科网络(苏州)有限公司 | 一种基于流量实现ipfix探测的方法及装置 |
CN110912826A (zh) * | 2019-11-13 | 2020-03-24 | 盛科网络(苏州)有限公司 | 利用acl扩充ipfix表项的方法及装置 |
US11108728B1 (en) * | 2020-07-24 | 2021-08-31 | Vmware, Inc. | Fast distribution of port identifiers for rule processing |
CN113438252A (zh) * | 2021-07-08 | 2021-09-24 | 恒安嘉新(北京)科技股份公司 | 报文访问控制方法、装置、设备及存储介质 |
-
2021
- 2021-11-02 CN CN202111289928.2A patent/CN116074405A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013181984A1 (zh) * | 2012-06-08 | 2013-12-12 | 中兴通讯股份有限公司 | 一种报文复制方法及装置 |
US20150334020A1 (en) * | 2012-09-18 | 2015-11-19 | Cisco Technology, Inc. | Parallel Processing for Low Latency Network Address Translation |
CN104410541A (zh) * | 2014-11-18 | 2015-03-11 | 盛科网络(苏州)有限公司 | Vxlan内层虚拟机流量在中间交换机上进行统计的方法及装置 |
CN104378263A (zh) * | 2014-11-27 | 2015-02-25 | 盛科网络(苏州)有限公司 | 基于tcp会话的网络流量监测方法、装置及报文处理芯片 |
CN104539561A (zh) * | 2014-12-29 | 2015-04-22 | 盛科网络(苏州)有限公司 | 基于报文处理信息的芯片调试方法及装置 |
WO2017036267A1 (zh) * | 2015-08-28 | 2017-03-09 | 华讯方舟科技有限公司 | 一种数据报文转发方法及装置 |
CN105429882A (zh) * | 2015-10-21 | 2016-03-23 | 盛科网络(苏州)有限公司 | 基于传统交换芯片查找方式的报文编辑实现方法及装置 |
CN106789644A (zh) * | 2016-11-29 | 2017-05-31 | 深圳市楠菲微电子有限公司 | 一种trill组播报文的转发方法和装置 |
CN107566220A (zh) * | 2017-10-17 | 2018-01-09 | 盛科网络(苏州)有限公司 | 一种基于流量实现ipfix探测的方法及装置 |
CN110912826A (zh) * | 2019-11-13 | 2020-03-24 | 盛科网络(苏州)有限公司 | 利用acl扩充ipfix表项的方法及装置 |
US11108728B1 (en) * | 2020-07-24 | 2021-08-31 | Vmware, Inc. | Fast distribution of port identifiers for rule processing |
CN113438252A (zh) * | 2021-07-08 | 2021-09-24 | 恒安嘉新(北京)科技股份公司 | 报文访问控制方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9118576B2 (en) | Network device with a programmable core | |
US9154418B1 (en) | Efficient packet classification in a network device | |
US8775352B2 (en) | Methods and apparatus to model end-to-end class of service policies in networks | |
US9686137B2 (en) | Method and system for identifying an outgoing interface using openflow protocol | |
US7580369B2 (en) | System and method for dynamically identifying internal hosts in a heterogeneous computing environment with multiple subnetworks. | |
CN101431440B (zh) | 一种流量监控方法和设备 | |
US10778545B2 (en) | Network verification system | |
US20100262684A1 (en) | Method and device for packet classification | |
US7420929B1 (en) | Adaptive network flow analysis | |
US7516475B1 (en) | Method and apparatus for managing security policies on a network | |
CN109547288B (zh) | 一种协议无关转发网络可编程流测量方法 | |
CN112468365A (zh) | 用于网络镜像流量的数据质量检测方法、系统及介质 | |
WO2021128927A1 (zh) | 报文的处理方法及装置、存储介质和电子装置 | |
CN105099916A (zh) | 开放流路由交换设备及其对数据报文的处理方法 | |
KR100439177B1 (ko) | 네트워크 보안 정책의 표현,저장 및 편집 방법 | |
CN108141387A (zh) | 对于分组报头采样的长度控制 | |
CN115225734A (zh) | 一种报文处理方法和网络设备 | |
US20120106365A1 (en) | Network packet latency measurement | |
US20230327983A1 (en) | Performance measurement in a segment routing network | |
US7082531B1 (en) | Method and apparatus for determining enforcement security devices in a network topology | |
CN116074405A (zh) | 一种报文处理方法、装置及存储介质 | |
CN116939669B (zh) | 基于ip学习表的网元识别方法、系统、设备及可读介质 | |
CN115633103B (zh) | 数据包的混合解析方法及系统 | |
Liu et al. | Modular Data Plane Verification for Compositional Networks | |
CN115396363B (zh) | 一种sdn网络环境下的流量分类方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |