CN111835642B - 业务处理方法及网络设备 - Google Patents
业务处理方法及网络设备 Download PDFInfo
- Publication number
- CN111835642B CN111835642B CN201910320133.XA CN201910320133A CN111835642B CN 111835642 B CN111835642 B CN 111835642B CN 201910320133 A CN201910320133 A CN 201910320133A CN 111835642 B CN111835642 B CN 111835642B
- Authority
- CN
- China
- Prior art keywords
- message
- cpu
- processing
- rule
- packet
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- 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 Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请提供一种业务处理方法及网络设备。网络设备包括NP和CPU;所述NP用于:接收第一报文;获取所述第一报文的报文特征;获取所述报文特征对应的处理规则;根据所述处理规则处理所述第一报文,得到第二报文;将所述第二报文发送给所述CPU;所述CPU用于:接收所述第二报文,并处理所述第二报文。在CPU在对第一报文处理之前,NP对其进行处理,将处理后获得的第二报文发送给CPU,使CPU可以直接对第二报文进行处理,简化CPU对其接收到的报文的处理过程,从而提高了网络设备的业务处理效率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种业务处理方法及网络设备。
背景技术
随着互联网的普及,边缘路由器在网络系统中承担着重要的角色。边缘路由器的定位是将用户由局域网汇接到广域网。在局域网和广域网技术尚有很大差异的今天,边缘路由器需要满足用户的多种业务需求,例如,从简单的联网到复杂的多媒体业务和虚拟专用网络(Virtual Private Network,VPN)业务等。
目前,边缘路由器涉及的业务都是由边缘路由器的中央处理器(CentralProcessing Unit,CPU)处理的。但是,由于边缘路由器涉及的业务繁多,而CPU的转发处理能力很难提升,因此,边缘路由器的业务处理效率低。
发明内容
本申请实施例提供一种业务处理方法及网络设备,用于简化网络设备中CPU处理报文的过程,以提高网络设备的业务处理效率。
第一方面,本申请实施例提供了一种网络设备,该网络设备包括网络处理器(network processor,NP)和CPU。所述NP用于:接收第一报文;获取所述第一报文的报文特征;获取所述报文特征对应的处理规则;根据所述处理规则处理所述第一报文,得到第二报文;将所述第二报文发送给所述CPU。所述CPU用于:接收所述第二报文,并处理所述第二报文。
在一种可能的设计中,所述CPU还用于,向所述NP发送所述处理规则。
在一种可能的设计中,所述处理规则为上报报文特征。所述NP用于:为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述报文特征。所述CPU用于:从所述第二报文的第一扩展头中获取所述报文特征;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述报文特征转发所述第一报文。
在一种可能的设计中,所述处理规则为获取路由信息。所述NP用于:为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述路由信息。所述CPU用于:从所述第二报文的第一扩展头中获取所述路由信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述路由信息转发所述第一报文。
在一种可能的设计中,所述处理规则为上报业务信息。所述NP用于:获取接收所述第一报文的接口上配置的业务,为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述业务的信息。所述CPU用于:从所述第二报文的第一扩展头中获取所述业务的信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;对所述第一报文执行所述业务。
在一种可能的设计中,当获取所述报文特征对应的处理规则时,所述NP根据所述报文特征查找所述NP上存储的规则表;当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;当所述规则表不包括所述处理规则时,向所述CPU发送所述第一报文或所述报文特征,接收所述CPU返回的所述处理规则。
在一种可能的设计中,所述NP还将所述处理规则添加到所述规则表中。
在一种可能的设计中,所述CPU向所述NP发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头。
所述NP用于:获取所述第二扩展头中的处理信息以及所述二层头;从所述第三报文删除所述第二扩展头,得到第四报文;根据所述处理信息处理所述第四报文;为所述第四报文添加所述二层头,得到第五报文。
第二方面,本申请实施例提供了一种业务处理方法,应用于网络设备,所述网络设备包括NP和CPU。所述NP接收第一报文,并获取所述第一报文的报文特征。所述NP获取所述报文特征对应的处理规则,并根据所述处理规则处理所述第一报文,得到第二报文。所述NP将所述第二报文发送给所述CPU。所述CPU接收并处理所述第二报文。
在一种可能的设计中,所述CPU向所述NP发送所述处理规则。
在一种可能的设计中,所述处理规则为上报报文特征。所述NP根据所述处理规则处理所述第一报文,得到第二报文,包括:所述NP为所述第一报文添加扩展头,得到所述第二报文,所述扩展头中包括所述报文特征。所述CPU处理所述第二报文,包括:所述CPU从所述第二报文的扩展头中获取所述报文特征;从所述第二报文删除所述扩展头,得到所述第一报文;根据所述报文特征转发所述第一报文。
在一种可能的设计中,所述处理规则为获取路由信息。所述NP根据所述处理规则处理所述第一报文,得到第二报文,包括:所述NP为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述路由信息。所述CPU处理所述第二报文,包括:所述CPU从所述第二报文的第一扩展头中获取所述路由信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述路由信息转发所述第一报文。
在一种可能的设计中,所述处理规则为上报业务信息。所述NP根据所述处理规则处理所述第一报文,得到第二报文,包括:所述NP获取接收所述第一报文的接口上配置的业务,为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述业务的信息。所述CPU处理所述第二报文,包括:所述CPU从所述第二报文的第一扩展头中获取所述业务的信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;对所述第一报文执行所述业务。
在一种可能的设计中,所述NP获取所述报文特征对应的处理规则,包括:
所述NP根据所述报文特征查找所述NP上存储的规则表;
当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;
当所述规则表不包括所述处理规则时,向所述CPU发送所述第一报文或所述报文特征;
接收所述CPU返回的所述处理规则。
在一种可能的设计中,所述NP接收所述CPU返回的所述处理规则之后,还包括:
所述NP将所述处理规则添加到所述规则表中。
在一种可能的设计中,还包括:
所述CPU向所述NP发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头;
所述NP获取所述第二扩展头中的处理信息以及所述二层头;从所述第三报文删除所述第二扩展头,得到第四报文;根据所述处理信息处理所述第四报文;为所述第四报文添加所述二层头,得到第五报文。
第三方面,本申请实施例提供一种网络设备,该网络设备包括处理器和存储器;
所述存储器存储计算机可执行指令;所述处理器执行所述存储器存储的计算机可执行指令,以实现本申请实施例第二方面任一项所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有程序代码,所述程序代码被处理器执行时实现本申请实施例第二方面任一项所述的方法。
第五方面,本申请实施例提供一种程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,网络设备的处理器可以从所述可读存储介质读取所述计算机程序,所述处理器执行所述计算机程序使得网络设备实施本申请实施例第二方面任一项所述的方法。
根据本申请实施例提供的业务处理方法及网络设备,在网络设备的CPU在对第一报文处理之前,网络设备的NP先对该第一报文进行处理,将处理后获得的第二报文发送给CPU,使CPU可以直接对第二报文的进行处理,简化CPU对接收到的报文的处理过程,从而提高了网络设备的业务处理效率。
附图说明
图1为本申请实施例提供的通信系统的示意图;
图2为本申请一实施例提供的业务处理方法的流程图;
图3为本申请另一实施例提供的业务处理方法的流程图;
图4为本申请另一实施例提供的业务处理方法的流程图;
图5为本申请另一实施例提供的业务处理方法的流程图;
图6为本申请另一实施例提供的业务处理方法的流程图;
图7为本申请一实施例提供的网络设备的结构示意图;
图8为本申请另一实施例提供的网络设备的结构示意图。
具体实施方式
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
图1为本申请实施例提供的通信系统的示意图,如图1所示,通信系统包括多个网络设备,一些网络设备位于局域网中,一些网络设备位于广域网中,网络设备之间可以进行报文转发,以将报文从源网络设备传输至目的网络设备。通过网络设备,可以将报文在局域网与广域网之间转发。
其中,上述网络设备中的边缘网络设备可以采用本申请各实施例的方案。需要说明的是,本申请各实施例的网络设备不限于边缘网络设备。
图2为本申请一实施例提供的业务处理方法的流程图。该业务处理方法应用于网络设备,其中,网络设备包括NP和CPU。如图2所示,本实施例的方法可以包括:
S201、所述NP接收第一报文。
S202、所述NP获取所述第一报文的报文特征。
本实施例中,NP接收的报文可以是任何报文,此处将该报文称为第一报文,在接收到第一报文后,从第一报文中获取第一报文的报文特征。其中,报文特征例如可以是如下至少一项:媒体访问控制(media access control,MAC)地址、虚拟局域网(virtual localarea networks,VLAN)信息、目的端口号、源端口号、协议号、互联网协议(InternetProtocol,IP)地址等信息。
可选地,NP还可以从第一报文中获取该第一报文对应的其他信息,例如,该第一报文中包括的要处理的业务的信息、该第一报文的路由信息、接收所述第一报文的接口上配置的业务等。
S203、所述NP获取所述报文特征对应的处理规则。
在一种可能的设计中,CPU向所述NP发送所述处理规则。其中,CPU可以主动向NP发送,也可以是CPU接收到NP发送的获取处理规则的请求后,向所述NP发送所述处理规则。NP根据处理规则对接收到的报文进行处理,规范NP对报文的处理方式,从而提高NP对报文的处理效率。
在一种可能的设计中,S203的一种可能的实现方式可以包括如下所述:
所述NP根据所述报文特征查找所述NP上存储的规则表。
当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;当所述规则表不包括所述处理规则时,向所述CPU发送所述第一报文或所述报文特征。
接收所述CPU返回的所述处理规则。
本实施例中,NP中存储有与报文的报文特征对应的处理规则,并且,处理规则以规则表的形式存储。因此,NP获取到第一报文的报文特征后,根据第一报文的报文特征查找规则表,以获得与第一报文的报文特征对应的处理规则。当NP的规则表中已经包括与第一报文的报文特征对应的处理规则时,NP直接从规则表中获取与第一报文的报文特征对应的处理规则。当规则表中不包括与第一报文的报文特征对应的处理规则时,NP需要从CPU获取与第一报文的报文特征对应的处理规则。在一个实施方式中,NP可以为第一报文添加扩展头,从而得一报文,其中,该扩展头中包括第一信息,该第一信息用于指示NP中不具有处理规则,然后NP向CPU发送该报文,以向CPU请求获取处理规则。CPU接收NP发送的该报文,并从该报文的扩展头中获取第一信息,然后根据第一信息向NP发送处理规则。在另一个而实施方式红,NP也可以向CPU发送第一报文的报文特征,CPU接收NP发送的第一报文的报文特征,然后根据第一报文的报文特征向NP发送与第一报文的报文特征对应的处理规则。相应的,NP接收CPU发送的与第一报文的报文特征对应的处理规则,并根据该处理规则处理第一报文,得到第二报文。
本实施例,网络设备中的NP获取到报文特征后,首先在规则表中查找与报文特征对应的处理规则,在规则表中不包括与报文特征对应的处理规则时,向CPU发送第一报文或报文特征,来获得与报文特征对应的处理规则。减少了CPU的处理量,从而提高CPU的处理效率。
在一种可能的设计中,NP获取报文特征对应的处理规则后,所述方法,还包括:所述NP将所述处理规则添加到所述规则表中。
本实施例中,NP接收CPU发送的与第一报文的报文特征对应的处理规则后,将与第一报文的报文特征对应的处理规则添加到规则表中,从而在以后接收到与第一报文具有相同报文特征的报文时,可以直接从规则表中找到与该报文特征对应的处理规则,避免了NP每次接收到报文时都需要从CPU获得处理规则而导致的NP和接收CPU处理量都增加的情况,提高CPU对报文的处理效率,从而提高网络设备的业务处理效率。
S204、所述NP根据所述处理规则处理所述第一报文,得到第二报文。
本实施例中,NP获取到第一报文的报文特征后,NP获取与报文特征对应的处理规则,其中,处理规则为NP和CPU之间协定的内容,处理规则例如可以为NP获取其接收到的报文的报文特征并将报文特征发送给CPU,还可以为NP获取其接收到的报文的路由信息并将路由信息发送给CPU,还可以为NP获取接收报文的接口上配置的任务并将任务发送给CPU,其中,接收报文的接口例如为网络设备上的物理接口或者虚拟接口。NP根据处理规则对第一报文进行处理,获得第二报文,第二报文中可以包括NP解析出的第一报文中包括的信息。
S205、所述NP将所述第二报文发送给所述CPU;相应的,所述CPU接收所述第二报文。
S206、所述CPU处理所述第二报文。
本实施例中,NP将第二报文发送给所述CPU,CPU接收该第二报文。然后CPU处理该第二报文,由于第二报文是NP根据处理规则处理后获得的,所以CPU无需根据处理规则对接收到的报文进行处理,简化了CPU处理接收到的报文的过程。
本实施例,网络设备包括NP和CPU,所述NP接收第一报文,并获取所述第一报文的报文特征,并获取所述报文特征对应的处理规则,并根据所述处理规则处理所述第一报文,得到第二报文,将所述第二报文发送给所述CPU;所述CPU接收并处理所述第二报文。在CPU在对第一报文处理之前,NP对其进行处理,将处理后获得的第二报文发送给CPU,使CPU可以直接对第二报文的进行处理,简化CPU对其接收到的报文的处理过程,从而提高了网络设备的业务处理效率。
图3为本申请另一实施例提供的业务处理方法的流程图。该业务处理方法应用于网络设备,其中,网络设备包括NP和CPU。如图3所示,本实施例的方法以处理规则包括上报报文特征为例进行说明,本实施例的方法可以包括:
S301、NP接收第一报文。
S302、NP获取所述第一报文的报文特征。
本实施例中,S301和S302的具体实施方式可参考S201和S202,此处不再赘述。
S303、NP获取所述报文特征对应的处理规则,所述处理规则为上报报文特征。
S304、NP为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述报文特征。
S305、NP将所述第二报文发送给所述CPU。相应的。所述CPU接收所述第二报文。
本实施例中,NP获得的处理规则可以为上报报文特征,上报报文特征用于指示NP将第一报文和第一报文的报文特征均发送给CPU。因此,NP可以为第一报文添加扩展头,此处将该扩展头称为第一扩展头,第一扩展头中包括所述报文特征,从而获得包括第一报文的报文特征和第一报文的第二报文。NP将根据上报报文特征处理后获得的第二报文发送给CPU。
S306、CPU从所述第二报文的第一扩展头中获取所述报文特征;从所述第二报文删除所述第一扩展头,得到所述第一报文。
S307、CPU根据所述报文特征转发所述第一报文。
本实施例中,CPU接收到包括第一报文的报文特征的第二报文时,由于NP已经将第一报文的报文特征添加到第二报文的第一扩展头中,因此,CPU直接从第二报文的第一扩展头中获取第一报文的报文特征。之后,CPU删除第二报文的第一扩展头,获得第一报文,并按照第一报文的报文特征中包括的信息转发第一报文。例如,报文特征包括MAC地址,CPU根据接收第一报文的MAC地址转发第一报文。
本实施例,网络设备中的NP根据上报报文特征的处理规则为第一报文添加包括报文特征的第一扩展头,获得第二报文,将第二报文发送给CPU,使CPU可以从第二报文的第一扩展头中直接获取第一报文的报文特征,而不用对获得的第一报文进行分析来获得第一报文的报文特征,简化了CPU的处理报文的过程,节省了CPU对报文的处理时间,提高了CPU对报文的转发处理效率,从而提高了网络设备的业务处理效率。
图4为本申请另一实施例提供的业务处理方法的流程图。该业务处理方法应用于网络设备,其中,网络设备包括NP和CPU。如图4所示,本实施例的方法以处理规则包括获取路由信息为例进行说明,本实施例的方法可以包括:
S401、NP接收第一报文。
S402、NP获取所述第一报文的报文特征。
本实施例中,S401和S402的具体实施方式可参考S201和S202,此处不再赘述。
S403、NP获取所述报文特征对应的处理规则,所述处理规则为获取路由信息。
S404、NP为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述路由信息。
S405、NP将所述第二报文发送给所述CPU。相应的,所述CPU接收所述第二报文。
本实施例中,NP获得的处理规则可以为获取路由信息,获取路由信息为CPU向NP获取NP获得的第一报文的路由信息,因此,NP需将第一报文和第一报文的路由信息均发送给CPU。因此,NP可以为第一报文添加扩展头,此处将该扩展头称为第一扩展头,第一扩展头中包括所述路由信息,从而获得包括第一报文的路由信息和第一报文的第二报文。其中,路由信息例如可以包括路由索引,路由索引为路由表项的标识,而路由表项的标识用于指示该路由表项在路由表中的存储位置。NP将根据处理规则处理后获得的第二报文发送给CPU。
S406、CPU从所述第二报文的第一扩展头中获取所述路由信息;从所述第二报文删除所述第一扩展头,得到所述第一报文。
S407、CPU根据所述路由信息转发所述第一报文。
本实施例中,CPU接收到包括第一报文中的路由信息的第二报文时,由于NP已经将第一报文的路由信息添加到第二报文的第一扩展头中,因此,CPU直接从第二报文的第一扩展头中获取第一报文的路由信息。之后,CPU删除第二报文的第一扩展头,获得第一报文,并按照第一报文的路由信息转发第一报文。例如,如果路由信息包括路由索引,则CPU获得路由索引后,根据路由索引找到路由表项在路由表中的存储位置,从而可以获取存储在路由索引所示存储位置的路由表项。
本实施例,网络设备中的NP根据获取路由信息为第一报文添加包括路由信息的第一扩展头,获得第二报文,将第二报文发送给CPU,使CPU可以从第二报文的第一扩展头中直接获取第一报文的路由信息,从而根据路由信息转发第一报文,而不用对第一报文进行分析来获得第一报文的路由信息,简化了CPU的处理报文的过程,节省了CPU对报文的处理时间,提高了CPU对报文的转发处理效率,从而提高了网络设备的业务处理效率。
在一些实施例中,在图3或图4所示实施例的基础上,在CPU对第一报文进行转发时,CPU可以将第一报文转发给NP,从而CPU可以将完成第一报文转发所需的过程中的后续转发交由NP来完成。例如,CPU对第一报文进行转发时,需要对第一报文进行封装,目前对第一报文进行封装是由CPU完成,本申请中CPU将对第一报文进行封装的过程交由NP来处理,从而减少CPU的处理量,提高CPU的转发处理效率,从而提高网络设备的业务处理效率,并且,减少了报文的处理时间。
图5为本申请另一实施例提供的业务处理方法的流程图。该业务处理方法应用于网络设备,其中,网络设备包括NP和CPU。如图5所示,本实施例的方法以处理规则包括上报业务信息为例进行说明,本实施例的方法可以包括:
S501、NP接收第一报文。
S502、NP获取所述第一报文的报文特征。
本实施例中,S501和S502的具体实施方式可参考S201和S202,此处不再赘述。
S503、NP获取所述报文特征对应的处理规则,所述处理规则为上报业务信息。
S504、NP获取接收所述第一报文的接口上配置的业务,为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述业务的信息。
S505、NP将所述第二报文发送给所述CPU。相应的,所述CPU接收所述第二报文。
本实施例中,NP获得的处理规则可以为上报业务信息,上报业务信息用于指示NP将第一报文和获取到的该第一报文的业务信息发送给CPU。因此,NP获取接收该第一报文的接口上配置的业务,将获取到的接收该第一报文的接口上配置的业务组成业务信息,并为第一报文添加扩展头,此处将该扩展头称为第一扩展头,第一扩展头中包括所述业务信息,从而获得包括第一报文的业务信息和第一报文的第二报文。NP将根据处理规则处理后获得的第二报文发送给CPU。
其中,NP获取到的接收该第一报文的接口上配置的业务为至少一个,因此,业务信息中包括至少一个业务的信息,当业务信息中包括的业务的信息为多个时,该业务信息为多个业务的信息组成的业务栈。
可选地,NP获取到的接收该第一报文的接口上配置的至少一个业务中,可能存在NP能处理的业务,也可能存在NP不能处理的业务。因此,NP可以将NP不能处理的业务的信息添加到第一扩展头中,或者,NP也可以将接收该第一报文的接口上配置的至少一个业务的信息添加到扩展头中,本申请实施例对此不进行限定。
S506、CPU从所述第二报文的第一扩展头中获取所述业务的信息;从所述第二报文删除所述第一扩展头,得到所述第一报文。
S507、CPU对所述第一报文执行所述业务。
本实施例中,CPU接收到包括接收第一报文的接口上配置的业务的信息时,由于NP已经将接收第一报文的接口上配置的业务的信息添加到第二报文的第一扩展头中,因此,CPU直接从第二报文的第一扩展头中获取接收第一报文的接口上配置的业务的信息。之后,CPU删除第二报文的第一扩展头,获得第一报文。然后,CPU根据业务信息执行业务。例如,如果CPU通过业务信息获取到接收第一报文的接口上配置的业务为统计流量,则CPU执行流量统计的业务。
本实施例,网络设备中的NP根据处理规则将接收第一报文的接口上配置的业务添加到第二报文的第一扩展头中发送给CPU,使CPU可以从第二报文的第一扩展头中直接获取接收第一报文的接口上配置的业务的信息,从而直接对业务进行处理,而不用对接收到的报文进行分析来获得接收报文的接口上配置的业务的信息,节省了CPU对报文的处理时间,减少了CPU的处理量,提高了CPU对报文的转发处理效率,从而提高了网络设备的业务处理效率。
图6为本申请另一实施例提供的业务处理方法的流程图。如图6所示,在上述图2-图5所示各实施例的基础上,本申请提供的业务处理方法还可以包括:
S601、所述CPU向所述NP发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头。
本实施例中,可以将本来由CPU处理的报文更换为由NP处理,这样,当有这种需要处理的报文时,可以直接由NP进行处理,而不用占用CPU的处理资源。实现方式例如可以为:CPU向所述NP发送第三报文,该第三报文包括第二扩展头,第二扩展头中包括处理信息以及二层头。其中,处理信息用于通知NP对报文的处理方式以及NP对报文进行处理时需要的信息,例如,CPU通过处理信息告诉NP是否对二层头进行封装,是否需要修改报文中的字段,CPU通过处理信息告诉NP对报文添加一个字段,并将要增加的字段通过处理信息发送给NP,二头层例如包括MAC地址,VLAN信息等。
S602、所述NP获取所述第二扩展头中的处理信息以及所述二层头。
S603、所述NP从所述第三报文删除所述第二扩展头,得到第四报文。
S604、所述NP根据所述处理信息处理所述第四报文。
S605、所述NP为所述第四报文添加所述二层头,得到第五报文。
本实施例中,NP接收到第三报文,从第三报文的第二扩展头中获取处理信息以及所述二层头之后,删除第三报文的第二扩展头,获得第四报文。然后,NP将获取到二层头添加到第四报文中,获得第五报文。
其中,本实施例以将本来由CPU执行的二层VXLAN处理更换为由NP处理为例进行说明,其中,VXLAN为虚拟扩展局域网(Virtual Extensible LAN,VXLAN)。
CPU配置二层VXLAN,将二层VXLAN的相关信息发送给NP,使NP根据二层VXLAN的相关信息对报文进行二层VXLAN封装和解封装处理。其中,二层VXLAN的相关信息例如可以包括对报文执行VXLAN封装或解封装的指示、以及MAC地址、VLAN标识、用于VXLAN封装的源IP地址、目的IP地址、VXLAN网络标识等一项或多项。
本实施例,CPU将本来由CPU处理的报文更换为由NP处理,可以减小CPU的处理报文的数量,提高CPU的报文转发处理效率,进而提高网络设备的业务处理效率,并且,也缩短了报文的转发处理时间。
综上,本申请实施例中可以将CPU和NP整合起来,协同处理报文,也可以将由CPU处理的报文交由NP独立处理,使NP承担部分CPU的工作,提高CPU的报文转发处理效率,进而提高网络设备的业务处理效率,并且,缩短了报文的处理时间。
图7为本申请一实施例提供的网络设备的结构示意图。如图7所示,本实施例提供的网络设备700包括NP 701和CPU 702。其中,所述NP 701用于:接收第一报文;获取所述第一报文的报文特征;获取所述报文特征对应的处理规则;根据所述处理规则处理所述第一报文,得到第二报文;将所述第二报文发送给所述CPU 702;所述CPU 702用于:接收所述第二报文,并处理所述第二报文。
在一种可能的设计中,所述CPU 702还用于,向所述NP 701发送所述处理规则。
在一种可能的设计中,所述处理规则为上报报文特征;
所述NP 701用于:为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述报文特征;
所述CPU 702用于:从所述第二报文的扩展头中获取所述报文特征;从所述第二报文删除所述扩展头,得到所述第一报文;根据所述报文特征转发所述第一报文。所述处理规则为获取路由信息;所述NP 701用于:为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述路由信息;所述CPU 702用于:从所述第二报文的第一扩展头中获取所述路由信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述路由信息转发所述第一报文。
在一种可能的设计中,所述处理规则为上报业务信息;所述NP 701用于:获取接收所述第一报文的接口上配置的业务,为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述业务的信息;所述CPU 702用于:从所述第二报文的第一扩展头中获取所述业务的信息;从所述第二报文删除所述第一扩展头,得到所述第一报文;对所述第一报文执行所述业务。
在一种可能的设计中,当获取所述报文特征对应的处理规则时,所述NP 701用于:根据所述报文特征查找所述NP 701上存储的规则表;当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;当所述规则表不包括所述处理规则时,向所述CPU 702发送报文或所述报文特征,接收所述CPU 702返回的所述处理规则。
在一种可能的设计中,所述NP 701还用于:将所述处理规则添加到所述规则表中。
在一种可能的设计中,所述CPU 702用于:向所述NP 701发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头;
所述NP 701用于:获取所述第二扩展头中的处理信息以及所述二层头;从所述第三报文删除所述第二扩展头,得到第四报文;根据所述处理信息处理所述第四报文;为所述第四报文添加所述二层头,得到第五报文。
本实施例提供的网络设备,可以用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本申请另一实施例提供的网络设备的结构示意图,如图8所示,本实施例的网络设备800可以包括:至少一个处理器801和存储器802。图8示出的是以一个处理器为例的网络设备,其中,
存储器802,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机可执行指令。存储器802可能包含高速随机存取存储器(random access memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器801,用于执行所述存储器802存储的计算机可执行指令,以实现上述实施例中执行上述各方法实施例的所示的业务处理方法。
可选的,在具体实现上,如果存储器802和处理器801独立实现,则存储器802和处理器801可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器802和处理器801集成在一块芯片上实现,则存储器802和处理器801可以通过内部接口完成相同间的通信。
本实施例以上所述的网络设备,可以用于执行上述各方法实施例中所示的技术方案,其实现原理和技术效果类似,此处不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种网络设备,其特征在于,包括网络处理器NP和中央处理器CPU;
所述NP用于:接收第一报文;获取所述第一报文的报文特征;获取所述报文特征对应的处理规则;根据所述处理规则处理所述第一报文,得到第二报文;将所述第二报文发送给所述CPU;
所述CPU用于:接收所述第二报文,并处理所述第二报文;
所述处理规则为上报报文特征;
所述NP用于:为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述报文特征;
所述CPU用于:从所述第二报文的第一扩展头中获取所述报文特征;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述报文特征转发所述第一报文。
2.根据权利要求1所述的网络设备,其特征在于,当获取所述报文特征对应的处理规则时,所述NP用于:
根据所述报文特征查找所述NP上存储的规则表;
当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;
当所述规则表不包括所述处理规则时,向所述CPU发送所述第一报文或所述报文特征,接收所述CPU返回的所述处理规则。
3.根据权利要求1或2所述的网络设备,其特征在于:
所述CPU用于:向所述NP发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头;
所述NP用于:获取所述第二扩展头中的处理信息以及所述二层头;从所述第三报文删除所述第二扩展头,得到第四报文;根据所述处理信息处理所述第四报文;为所述第四报文添加所述二层头,得到第五报文。
4.一种业务处理方法,其特征在于,应用于网络设备,所述网络设备包括网络处理器NP和中央处理器CPU,所述方法包括:
所述NP接收第一报文,并获取所述第一报文的报文特征;
所述NP获取所述报文特征对应的处理规则,并根据所述处理规则处理所述第一报文,得到第二报文;
所述NP将所述第二报文发送给所述CPU;
所述CPU接收并处理所述第二报文;
所述处理规则为上报报文特征;
所述NP根据所述处理规则处理所述第一报文,得到第二报文,包括:所述NP为所述第一报文添加第一扩展头,得到所述第二报文,所述第一扩展头中包括所述报文特征;
所述CPU处理所述第二报文,包括:所述CPU从所述第二报文的扩展头中获取所述报文特征;从所述第二报文删除所述第一扩展头,得到所述第一报文;根据所述报文特征转发所述第一报文。
5.根据权利要求4所述的方法,其特征在于,所述NP获取所述报文特征对应的处理规则,包括:
所述NP根据所述报文特征查找所述NP上存储的规则表;
当所述规则表包括所述处理规则时,从所述规则表获取所述处理规则;
当所述规则表不包括所述处理规则时,向所述CPU发送所述第一报文或所述报文特征;
接收所述CPU返回的所述处理规则。
6.根据权利要求4或5所述的方法,其特征在于,还包括:
所述CPU向所述NP发送第三报文,所述第三报文包括第二扩展头,所述第二扩展头中包括处理信息以及二层头;
所述NP获取所述第二扩展头中的处理信息以及所述二层头;从所述第三报文删除所述第二扩展头,得到第四报文;根据所述处理信息处理所述第四报文;为所述第四报文添加所述二层头,得到第五报文。
7.一种网络设备,其特征在于,包括:存储器和处理器,存储器用于存储程序指令,处理器用于调用存储器中的程序指令执行如权利要求4-6任一项所述的业务处理方法。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序;所述计算机程序被执行时,实现如权利要求4-6任一项所述的业务处理方法。
Priority Applications (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910320133.XA CN111835642B (zh) | 2019-04-19 | 2019-04-19 | 业务处理方法及网络设备 |
| JP2020074407A JP7044223B2 (ja) | 2019-04-19 | 2020-04-17 | サービス処理方法およびネットワークデバイス |
| AU2020202599A AU2020202599B2 (en) | 2019-04-19 | 2020-04-17 | Service processing method and network device |
| US16/851,577 US11502953B2 (en) | 2019-04-19 | 2020-04-17 | Service processing method and network device |
| EP20170060.6A EP3731497B1 (en) | 2019-04-19 | 2020-04-17 | Service processing method and network device |
| CA3078090A CA3078090C (en) | 2019-04-19 | 2020-04-17 | Service processing method and network device |
| MX2020003994A MX2020003994A (es) | 2019-04-19 | 2020-07-13 | Metodo de procesamiento de servicios y dispositivo de red. |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910320133.XA CN111835642B (zh) | 2019-04-19 | 2019-04-19 | 业务处理方法及网络设备 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111835642A CN111835642A (zh) | 2020-10-27 |
| CN111835642B true CN111835642B (zh) | 2022-07-29 |
Family
ID=70295012
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910320133.XA Active CN111835642B (zh) | 2019-04-19 | 2019-04-19 | 业务处理方法及网络设备 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US11502953B2 (zh) |
| EP (1) | EP3731497B1 (zh) |
| JP (1) | JP7044223B2 (zh) |
| CN (1) | CN111835642B (zh) |
| AU (1) | AU2020202599B2 (zh) |
| CA (1) | CA3078090C (zh) |
| MX (1) | MX2020003994A (zh) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116155913A (zh) * | 2022-12-01 | 2023-05-23 | 中国联合网络通信集团有限公司 | 数据转发方法、装置、设备及存储介质 |
| CN116016713B (zh) * | 2022-12-13 | 2025-01-21 | 苏州盛科通信股份有限公司 | 报文传输方法、装置、网络设备及可读存储介质 |
| GB2636032A (en) * | 2023-06-15 | 2025-06-11 | Nokia Technologies Oy | Methods and apparatus for optimizing configuration of extension headers for protocol data units of a communication system |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103475626A (zh) * | 2012-06-07 | 2013-12-25 | 华为技术有限公司 | 一种用于请求资源的方法、设备及系统 |
| CN109412922A (zh) * | 2017-08-15 | 2019-03-01 | 华为技术有限公司 | 一种传输报文的方法、转发设备、控制器及系统 |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008085886A (ja) | 2006-09-28 | 2008-04-10 | Oki Electric Ind Co Ltd | パケット処理装置、パケット処理方法及びパケット処理プログラム |
| US8699488B2 (en) * | 2009-12-30 | 2014-04-15 | Verizon Patent And Licensing Inc. | Modification of peer-to-peer based feature network based on changing conditions / session signaling |
| US8326929B2 (en) * | 2009-12-30 | 2012-12-04 | Verizon Patent And Licensing Inc. | Peer-to-peer based feature network |
| CN103299588B (zh) * | 2010-12-28 | 2016-11-09 | 日本电气株式会社 | 通信系统、转发节点和接收分组处理方法 |
| US20140022900A1 (en) * | 2012-07-17 | 2014-01-23 | Cisco Technology, Inc. | System and method for indicating a level of ran congestion for user plane traffic in a network environment |
| US9197529B2 (en) * | 2013-07-12 | 2015-11-24 | Nicira, Inc. | Tracing network packets through logical and physical networks |
| CN104734998B (zh) * | 2013-12-20 | 2018-11-06 | 华为技术有限公司 | 一种网络设备及信息传输方法 |
| JP6369175B2 (ja) | 2014-07-04 | 2018-08-08 | 富士通株式会社 | パケット処理装置、制御プログラム、及びパケット処理装置の制御方法 |
| US10116553B1 (en) * | 2015-10-15 | 2018-10-30 | Cisco Technology, Inc. | Application identifier in service function chain metadata |
| US10862796B1 (en) * | 2017-01-18 | 2020-12-08 | Amazon Technologies, Inc. | Flow policies for virtual networks in provider network environments |
| US10560354B2 (en) * | 2017-03-24 | 2020-02-11 | Cisco Technology, Inc. | End-to-end, in situ packet enrichment for network analytics |
| US10616099B2 (en) * | 2017-08-28 | 2020-04-07 | Red Hat, Inc. | Hypervisor support for network functions virtualization |
| US20190306055A1 (en) * | 2018-03-29 | 2019-10-03 | Alibaba Group Holding Limited | Efficient and reliable message channel between a host system and an integrated circuit acceleration system |
| US10855546B2 (en) * | 2018-09-14 | 2020-12-01 | Juniper Networks, Inc. | Systems and methods for non-intrusive network performance monitoring |
| CN110912825B (zh) * | 2018-09-18 | 2022-08-02 | 阿里巴巴集团控股有限公司 | 一种报文的转发方法、装置、设备及系统 |
| US11870649B2 (en) * | 2019-02-22 | 2024-01-09 | Extreme Networks, Inc. | Multi-access edge computing based visibility network |
| US11356333B2 (en) * | 2020-01-24 | 2022-06-07 | Arista Networks, Inc. | Predicting forwarding destinations for packets |
-
2019
- 2019-04-19 CN CN201910320133.XA patent/CN111835642B/zh active Active
-
2020
- 2020-04-17 CA CA3078090A patent/CA3078090C/en active Active
- 2020-04-17 US US16/851,577 patent/US11502953B2/en active Active
- 2020-04-17 JP JP2020074407A patent/JP7044223B2/ja active Active
- 2020-04-17 AU AU2020202599A patent/AU2020202599B2/en active Active
- 2020-04-17 EP EP20170060.6A patent/EP3731497B1/en active Active
- 2020-07-13 MX MX2020003994A patent/MX2020003994A/es unknown
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103475626A (zh) * | 2012-06-07 | 2013-12-25 | 华为技术有限公司 | 一种用于请求资源的方法、设备及系统 |
| CN109412922A (zh) * | 2017-08-15 | 2019-03-01 | 华为技术有限公司 | 一种传输报文的方法、转发设备、控制器及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11502953B2 (en) | 2022-11-15 |
| CA3078090A1 (en) | 2020-10-19 |
| EP3731497A1 (en) | 2020-10-28 |
| AU2020202599A1 (en) | 2020-11-05 |
| CN111835642A (zh) | 2020-10-27 |
| AU2020202599B2 (en) | 2023-07-06 |
| CA3078090C (en) | 2024-03-19 |
| MX2020003994A (es) | 2020-10-20 |
| EP3731497B1 (en) | 2025-06-11 |
| JP2020178348A (ja) | 2020-10-29 |
| JP7044223B2 (ja) | 2022-03-30 |
| US20200336422A1 (en) | 2020-10-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN104954274B (zh) | 生成转发信息的方法、控制器和业务转发实体 | |
| CN106664261B (zh) | 一种配置流表项的方法、装置和系统 | |
| CN105207873B (zh) | 一种报文处理方法和装置 | |
| CN112422393B (zh) | 可扩展虚拟局域网报文发送方法、计算机设备和可读介质 | |
| KR20210092304A (ko) | 패킷 처리 방법 및 장치, 기기, 그리고 시스템 | |
| CN109218229B (zh) | 一种报文处理方法、网络设备及存储介质 | |
| CN103118149B (zh) | 同一租户内服务器间的通信控制方法及网络设备 | |
| CN111835642B (zh) | 业务处理方法及网络设备 | |
| WO2020019958A1 (zh) | Vxlan报文封装及策略执行方法、设备、系统 | |
| CN112714052A (zh) | 一种流量隔离方法、装置、交换机及存储介质 | |
| CN107113241A (zh) | 路由确定方法、网络配置方法以及相关装置 | |
| WO2017071328A1 (zh) | 一种负载分担方法以及相关装置 | |
| CN109474713B (zh) | 报文转发方法和装置 | |
| CN118740714A (zh) | 一种流量传输方法、装置及相关设备 | |
| CN112929277B (zh) | 一种报文处理方法及装置 | |
| CN111835635B (zh) | 一种bgp网络中发布路由的方法、设备和系统 | |
| CN107370672A (zh) | 路径选择的方法及装置 | |
| WO2021023141A1 (zh) | 一种路由表项获得方法、装置及设备 | |
| CN104348737B (zh) | 一种组播报文的传输方法及交换机 | |
| CN101197779A (zh) | 一种提升地址解析协议代理发包效率的方法、装置和系统 | |
| CN115567436A (zh) | 组播报文的处理方法、系统、计算机设备和可读存储介质 | |
| CN103460675B (zh) | 集群以及转发方法 | |
| CN112840623A (zh) | 数据报文传输方法及节点 | |
| CN109995606A (zh) | 虚拟化深度包检测vDPI流量控制方法及网元设备 | |
| WO2022100511A1 (zh) | 转发表项的处理方法和装置 |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |