CN111901244A - 一种网络报文转发架构 - Google Patents
一种网络报文转发架构 Download PDFInfo
- Publication number
- CN111901244A CN111901244A CN202010664194.0A CN202010664194A CN111901244A CN 111901244 A CN111901244 A CN 111901244A CN 202010664194 A CN202010664194 A CN 202010664194A CN 111901244 A CN111901244 A CN 111901244A
- Authority
- CN
- China
- Prior art keywords
- forwarding
- network
- module
- network message
- vpp
- 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
- 238000012545 processing Methods 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 9
- 108010001267 Protein Subunits Proteins 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 14
- 230000004927 fusion Effects 0.000 abstract description 4
- 238000000034 method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- 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
- H04L45/745—Address table lookup; Address filtering
-
- 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/20—Hop count for routing purposes, e.g. TTL
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种网络报文转发架构,包括DPDK模块及VPP模块,DPDK模块及VPP模块均设置于集群环境的网络节点上;其中:DPDK模块,用于:接收网络报文,将网络报文转发至VPP模块,以及接收VPP模块返回的与网络报文对应的转发路径信息,按照转发路径信息转发网络报文;VPP模块,用于:解析网络报文解析得到相应的转发路径信息。可见,本申请的网络节点选择VPP+DPDK的网络部署方式,从而利用VPP的报文转发技术和DPDK的高速收发包融合架构,实现网络报文的加速转发,并且无需引入LBR,因此能够减少虚拟网桥设备,从而简化网络结构,提升转发性能和增强容错能力。
Description
技术领域
本发明涉及网络通信技术领域,更具体地说,涉及一种网络报文转发架构。
背景技术
在虚拟化云计算时代,网络流量已经变得错综复杂,特别是在大集群环境中,对集群中各个网络节点之间的转发方式和转发性能提出了更高更有挑战的要求。目前OpenStack的虚拟云网络环境中,网络节点上的网络部署方式主要有两种,分别利用LBR+OVS和LBR+OVS+DPDK技术实现,但是这两种实现方式由于使用了LBR技术,虽然功能很是丰富但是也带来了很多弊端。具体来说,由于引入LBR导致增加了很多虚拟网桥设备,进而使得网络结构更加的复杂,容错力低;同时网络设备通信时流量报文的转发路径会更长,转发更加耗时,性能降低。
发明内容
本发明的目的是提供一种网络报文转发架构,能够简化网络结构,提升转发性能和增强容错能力。
为了实现上述目的,本发明提供如下技术方案:
一种网络报文转发架构,包括DPDK模块及VPP模块,所述DPDK模块及所述VPP模块均设置于集群环境的网络节点上;其中:
所述DPDK模块,用于:接收网络报文,将所述网络报文转发至所述VPP模块,以及接收所述VPP模块返回的与所述网络报文对应的转发路径信息,按照所述转发路径信息转发所述网络报文;
所述VPP模块,用于:解析所述网络报文解析得到相应的转发路径信息。
优选的,还包括VPP控制模块,所述VPP控制模块设置于所述集群环境的控制节点上;其中:
所述VPP控制模块,用于:将外界输入的配置信息下发给所述VPP模块,指示所述VPP模块按照所述配置信息实现解析网络报文的功能的配置。
优选的,所述VPP模块包括并行解析单元,所述并行解析单元用于:如果同时接收到多个网络报文,则对接收到的多个网络报文同时进行解析。
优选的,所述并行解析单元包括协议解析单元、L2转发单元、L3转发单元及与多个网络协议版本一一对应的多个类型确定单元,其中:
所述协议解析单元,用于:解析所述网络报文得到相应的IP信息,确定所述IP信息对应的网络协议版本,并将所述网络报文转发至与该网络协议版本对应的类型确定单元中;
所述类型确定单元,用于:判断所述网络报文的源IP地址与目的IP地址是否位于同一网段,如果是,则将所述网络报文转发至L2转发单元,否则,将所述网络报文转发至L3转发单元;
所述L2转发单元及所述L3转发单元,用于:解析所述网络报文确定对应的出端口,指示所述DPDK模块将所述网络报文转发至与该出端口对应的网卡端口。
优选的,所述L2转发单元包括L2转发子单元,所述L2转发子单元用于:解析所述网络报文得到相应的vlan信息,基于配置的网桥交换规则查询与该vlan信息对应的同网桥同vlan内的出端口信息,并基于该出端口信息确定出对应的出端口。
优选的,所述L3转发单元包括L3转发子单元,所述L3转发子单元用于:解析所述网络报文得到相应的目的IP地址,查找路由表确定与所述目的IP地址对应的下一跳IP地址,查找转发表确定与该下一跳IP地址对应的出端口。
优选的,所述VPP模块还包括判断单元,所述判断单元用于:解析得到任意网络报文的目的IP地址,判断是否存在目的IP地址与该任意网络报文的目的IP地址相同的已经实现转发的网络报文,如果是,则指示所述DPDK模块将该任意网络报文按照该已经实现转发的网络报文的转发路径信息进行转发。
优选的,还包括网卡,所述网卡用于:接收所述网络报文,对所述网络报文进行合法性验证,如果验证通过,则将所述网络报文发送给所述DPDK模块,否则,将所述网络报文发送至指定管理终端进行处理。
本发明提供的一种网络报文转发架构,包括DPDK模块及VPP模块,所述DPDK模块及所述VPP模块均设置于集群环境的网络节点上;其中:所述DPDK模块,用于:接收网络报文,将所述网络报文转发至所述VPP模块,以及接收所述VPP模块返回的与所述网络报文对应的转发路径信息,按照所述转发路径信息转发所述网络报文;所述VPP模块,用于:解析所述网络报文解析得到相应的转发路径信息。本申请公开的网络报文转发架构包括设置于集群的网络节点上的DPDK模块及VPP模块,所述DPDK模块接收网络报文后将网络报文转发给VPP模块,VPP模块对网络报文进行解析得到相应的转发路径信息,DPDK模块按照该转发路径信息对网络报文进行转发。可见,本申请的网络节点选择VPP+DPDK的网络部署方式,从而利用VPP的报文转发技术和DPDK的高速收发包融合架构,实现网络报文的加速转发,并且无需引入LBR,因此能够减少虚拟网桥设备,从而简化网络结构,提升转发性能和增强容错能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种网络报文转发架构的第一种结构示意图;
图2为本发明实施例提供的一种网络报文转发架构中VPP模块及VPP控制模块的交互示意图;
图3为本发明实施例提供的一种网络报文转发架构中L3报文转发流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种网络报文转发架构的结构示意图,可以包括DPDK模块及VPP模块,DPDK模块及VPP模块均设置于集群环境的网络节点上;其中:
DPDK模块,用于:接收网络报文,将网络报文转发至VPP模块,以及接收VPP模块返回的与网络报文对应的转发路径信息,按照转发路径信息转发网络报文;
VPP模块,用于:解析网络报文解析得到相应的转发路径信息。
其中,DPDK(Data Plane Development Kit)是一款数据平台开发工具箱(或者称为基于数据平面开发工具包),由多种功能的函数库组成,VPP(Vector Packet Processinglibrary)则为矢量数据包处理技术(或者称为矢量数据包处理库),而集群环境具体可以为在Openstack部署的集群环境。本实施例中,在集群环境的网络节点上部署利用DPDK实现的DPDK模块(即DPDK驱动程序)及利用VPP实现的VPP模块(即VPP应用程序,VPP应用程序可以为用户态的应用程序),进而利用DPDK模块及VPP模块实现网络报文的转发。具体来说,DPDK驱动程序接收网卡上送的网络报文,经过DPDK驱动程序处理,主要做透传转发至VPP应用程序,由于DPDK驱动程序的高性能处理特性,使得网络报文可直接送至用户空间的VPP应用程序进行处理,无需经过操作系统内核协议栈而是直接旁路,这样避免操作系统内核协议栈的冗余处理,从而达到高效处理的目的;VPP应用程序接收DPDK驱动程序上送的网络报文,进入串联起来的图节点处理网络报文,得到相应的转发路径信息,其中,网络报文包括L2报文(需要二层转发的网络报文)及L3报文(需要三层转发的网络报文),VPP应用程序主要负责数据面的处理,在L2报文转发时利用VPP应用程序的高速L2网桥交换技术实现L2报文的加速转发,在L3报文转发时利用VPP应用程序的高速查找路由表、CAM表等技术实现L3报文的加速转发;DPDK驱动程序获取到VPP应用程序解析网络报文得到的转发路径信息后,可以从转发路径信息中获取到网络报文需要转发至的网卡端口,进而将网络报文通过该网卡端口转发出去。
本申请公开的网络报文转发架构包括设置于集群的网络节点上的DPDK模块及VPP模块,DPDK模块接收网络报文后将网络报文转发给VPP模块,VPP模块对网络报文进行解析得到相应的转发路径信息,DPDK模块按照该转发路径信息对网络报文进行转发。可见,本申请的网络节点选择VPP+DPDK的网络部署方式,从而利用VPP的报文转发技术和DPDK的高速收发包融合架构,实现网络报文的加速转发,并且无需引入LBR,因此能够减少虚拟网桥设备,从而简化网络结构,提升转发性能和增强容错能力。
本发明实施例提供的一种网络报文转发架构,还可以包括VPP控制模块,VPP控制模块设置于集群环境的控制节点上;其中:
VPP控制模块,用于:将外界输入的配置信息下发给VPP模块,指示VPP模块按照配置信息实现解析网络报文的功能的配置。
集群环境中还包括控制节点,控制节点一般采用Neutron的框架实现;为了方便对VPP模块的配置,本实施例中还可以在控制节点上设置VPP控制模块(Networking-vpp,或者称为网络控制面VPP),VPP控制模块用于管理用户下发的VPP模块的配置信息,配置信息为用于对VPP模块中各图节点的功能实现配置的信息,以利用图节点实现网络报文的转发;并且,只要用户需要VPP模块中各图节点的功能配置,均可以通过更新VPP控制模块中的配置信息实现;具体来说,在实现网络报文的转发过程中会涉及到路由、负载均衡、防火墙、IDS、网桥等技术,其可以由Networking-vpp负责同步下发相应的配置信息到VPP模块数据面,从而在转发网络报文时,VPP模块调用转发相关的配置信息生效到负责网络报文转发的图节点中,从而使得网络报文可以按照L2报文转发的网桥或者L3报文转发的路由规则进行转发,达到网络报文转发的加速目的;其中,利用路由、负载均衡、防火墙、IDS、网桥等技术实现网络报文转发的实现原理与现有技术中对应技术方案的实现原理一致,在此不再过多赘述。另外,Networking-vpp与VPP模块的交互图可以如图2所示,其中,中子服务器即为Neutron server,键值(key-value)存储仓库即为ETCD(相当于分布式存储数据库,用于共享配置和服务发现),配置管理代理即为Mangement agent;由于Networking-vpp自身可扩展性,可以直接融合到控制节点上Neutron的框架中,无需增加新的容器或者服务,进而通过ETCD同步北向配置网络节点,具有简单安全可靠的特性。
本发明实施例提供的一种网络报文转发架构,VPP模块可以包括并行解析单元,并行解析单元用于:如果同时接收到多个网络报文,则对接收到的多个网络报文同时进行解析。
需要说明的是,VPP模块存在需要同一时间对多个网络报文进行处理的情况,在这种情况下VPP模块可以对这多个网络报文进行并行处理,从而相对于对多个网络报文依次进行处理,能够大大增加网络报文的转发效率。
本发明实施例提供的一种网络报文转发架构,并行解析单元可以包括协议解析单元、L2转发单元、L3转发单元及与多个网络协议版本一一对应的多个类型确定单元,其中:
协议解析单元,用于:解析网络报文得到相应的IP信息,确定IP信息对应的网络协议版本,并将网络报文转发至与该网络协议版本对应的类型确定单元中;
类型确定单元,用于:判断网络报文的源IP地址与目的IP地址是否位于同一网段,如果是,则将网络报文转发至L2转发单元,否则,将网络报文转发至L3转发单元;
L2转发单元及L3转发单元,用于:解析网络报文确定对应的出端口,指示DPDK模块将网络报文转发至与该出端口对应的网卡端口。
在网络节点的VPP模块中,VPP模块包含多个图节点,每个图节点能够实现对网络报文实现转发中的部分功能,本实施例中VPP模块包含的每个单元及子单元均可以为对应的一个图节点;VPP模块从DPDK模块获取所有可用包(即需要进行解析的网络报文)组成一个包向量,包向量在由图节点构成的有向图间依次处理。具体来说,网络报文从接收单元(DPDK-input,也可以称为DPDK入口)接收后转发至ethernet-input(协议解析单元,也可以称为以太网入口),ethernet-input根据解析出的IP信息(包括源IP地址及目的IP地址,源IP地址即为发送网络报文的模块的IP地址,目的IP地址为网络报文需要发送至的模块的IP地址)确定其是属于哪种网络协议版本(Ipv4或者Ipv6),将网络报文转发至Ipv4-input或者IPv6-input(Ipv4-input及IPv6-input均为类型确定单元,也可以称为Ipv4入口及Ipv6入口),类型确定单元判断网络报文的源IP地址及目的IP地址是否在同一个网段内,如果是,则确定网络报文需要进行二层转发,将网络报文转发至L2转发单元,否则,确定网络报文需要三层转发,将网络报文转发至L3转发单元。从而通过这种方式使得网络报文仅需按照其对应的网络协议版本及转发层数在相应的路径实现转发,便于实现对网络报文的快速转发。
本发明实施例提供的一种网络报文转发架构,L2转发单元可以包括L2转发子单元,L2转发子单元用于:解析网络报文得到相应的vlan信息,基于配置的网桥交换规则查询与该vlan信息对应的同网桥同vlan内的出端口信息,并基于该出端口信息确定出对应的出端口。
在确定出网络报文需要二层转发后,可以将网络报文转发至L2转发子单元,L2转发子单元可以包括L2-input、L2-fwd、L2-output及DPDK-output;具体来说,L2-input解析网络报文的vlan信息,将网络报文转发至L2-fwd,L2-fwd根据网桥配置的网桥交换规则,查询到与vlan信息对应的同网桥同vlan内的出端口信息(出端口信息可以为出端口的MAC地址,而根据网桥交换规则查询对应出端口信息的实现原理与现有技术中对应技术方案的实现原理相同,在此不再过多说明),将网络报文送至L2-output,L2-output根据FDB表中出端口信息查询二层转发表,定位到相应的出端口(根据FDB表中出端口信息查询二层转发表定位到相应的出端口的实现原理与现有技术中对应技术方案的实现原理相同,在此不再过多说明),将网络报文转发至DPDK-output,DPDK-output指示DPDK模块根据出端口最终将网络报文转发到出端口对应的网卡端口转发出去;从而通过上述方式快速方便的实现L2报文的转发。
本发明实施例提供的一种网络报文转发架构,L3转发单元可以包括L3转发子单元,L3转发子单元用于:解析网络报文得到相应的目的IP地址,查找路由表确定与目的IP地址对应的下一跳IP地址,查找转发表确定与该下一跳IP地址对应的出端口。
在确定出网络报文需要三层转发后,可以将网络报文转发至L3转发子单元,L3转发子单元可以包括Ipv4/Ipv6-lookup(Ipv4/Ipv6查找表)、Ipv4/Ipv6-local(Ipv4/Ipv6本地查找表处理)、Ipv4/Ipv6-output(Ipv4/Ipv6出口)、DPDK-output(DPDK出口)及Router(路径模块);具体来说,L3报文的转发流程可以如图3所示,Ipv4/Ipv6-lookup判断网络报文的目的IP地址是否为VPP模块自身具有的IP地址,如果是,则将网络报文转发至Ipv4/Ipv6-local,Ipv4/Ipv6-local实现与L2转发子单元相同的功能,也即按照L2报文转发的方式对网络报文进行转发,如果否,将网络报文转发至Router,Router根据查询规则中的目的IP地址查询路由表的下一跳地址(根据查询规则中的目的IP地址查询路由表的下一跳地址的实现原理与现有技术中对应技术方案的实现原理相同,在此不再过多说明),将网络报文转发至Ipv4/Ipv6-output,Ipv4/iIv6-output根据三层转发查询与下一跳地址对应的出端口(根据三层转发查询与下一跳地址对应的出端口的实现原理与现有技术中对应技术方案的实现原理相同,在此不再过多说明),将网络报文转发至DPDK-output,DPDK-output指示DPDK模块根据出端口最终将网络报文转发到出端口对应的网卡端口转发出去;从而通过上述方式快速方便的实现L3报文的转发。
本发明实施例提供的一种网络报文转发架构,VPP模块还可以包括判断单元,判断单元用于:解析得到任意网络报文的目的IP地址,判断是否存在目的IP地址与该任意网络报文的目的IP地址相同的已经实现转发的网络报文,如果是,则指示DPDK模块将该任意网络报文按照该已经实现转发的网络报文的转发路径信息进行转发。
需要说明的是,VPP在利用并行解析单元实现对网络报文的转发前,还可以先解析得到网络报文的目的IP地址,如果该目的IP地址为历史上已经转发的某网络报文的目的IP地址相同,则说明两个网络报文需要去往的目的地也相同,因此无需再对网络报文进行解析,仅需按照与其目的IP地址相同的网络报文的转发路径实现转发即可,具体则可以为直接将网络报文通过指定网卡端口转发出去,该指定网卡端口则为历史上与其目的IP地址相同的网络报文被转发至的网卡端口,从而通过这种方式对于具有同一目的IP地址的网络报文,无需再进行相应的解析,仅需直接进行转发即可,大大提高了网络报文的转发效率。
本发明实施例提供的一种网络报文转发架构,还可以包括网卡,网卡用于:接收网络报文,对网络报文进行合法性验证,如果验证通过,则将网络报文发送给DPDK模块,否则,将网络报文发送至指定管理终端进行处理。
其中,网卡可以为物理网卡,物理网卡NIC在接收网络报文后,可以进行以太链路侧校验,也即合法性验证,如果验证通过,则可以将网络报文发送至DPDK模块,否则,将网络报文发送至预先指定的管理终端进行处理或者直接丢弃,从而保证了对于合法的网络报文的处理。其中,对网络报文进行以太链路侧校验也即为判断网络报文是否为符合架构所能处理的网络协议(如以太网协议)的规范的报文,当然还可以根据实际需要进行其他设定,均在本发明的保护范围之内。
在一种具体应用场景中,本申请公开的技术方案可以包括如下步骤:
1:物理网卡NIC接收网络报文后,进行以太链路侧校验,如果符合以太网协议规范的合法报文,则上送至DPDK模块,否则丢弃;
2:DPDK模块接收物理网卡上送的网络报文,经过DPDK模块处理,主要做透传转发至VPP模块,由于DPDK模块的高性能处理特性,使得网络报文可直接送至用户太的应用程序VPP模块,无需经过操作系统内核协议栈而直接旁路,从而达到高效处理的目的。
3:VPP模块接收DPDK模块上送的网络报文,进入串联起来的网络图节点处理网络报文;VPP模块主要负责数据面的处理,在L2报文转发时利用VPP模块的高速L2网桥交换技术实现L2报文的加速转发,在L3报文转发时利用VPP模块的高速查找路由表、CAM表等技术实现L3报文的加速转发;另外,在实现网络报文转发过程中,涉及到路由、负载均衡、防火墙、IDS、网桥等技术是通过Networking-vpp负责同步下发配置到VPP模块的数据面,从而使得VPP模块在转发网络报文时,调用转发相关的配置生效到负责网络报文处理的图节点中,从而使得网络报文可以按照L2报文转发的网桥或者L3报文转发的路由规则进行转发,达到网络报文转发的加速目的。其中,VPP模块根据是二层转发还是三层转发确定走配置网桥的交换规则还是路由表规则,网桥交换是根据同网桥内同vlan的端口进行转发,最后将网络报文转发至与DPDK模块链接的虚拟接口(该虚拟接口属于VPP模块)上;
4:DPDK模块接收已经经过VPP模块处理过的网络报文,将网络报文从相应的网卡端口转发出去。
本发明在Openstack部署的集群环境中,在控制节点采用Nerworking-vpp同步用户配置,在网络节点采用VPP+DPDK网络方式实现网络报文转发,并可根据需求特性自定义增加VPP插件来扩展VPP模块的功能(如用户自己开发的第三方插件来实现一个自定义的功能,包括安全组、负载均衡器等,可直接在VPP模块的插件处注册,以丰富VPP模块的功能),简化用户配置架构和网络结构,利用高速收发包融合架构,增强容错能力和转发性能,实现网络报文的加速转发。
需要说明的是,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种网络报文转发架构,其特征在于,包括DPDK模块及VPP模块,所述DPDK模块及所述VPP模块均设置于集群环境的网络节点上;其中:
所述DPDK模块,用于:接收网络报文,将所述网络报文转发至所述VPP模块,以及接收所述VPP模块返回的与所述网络报文对应的转发路径信息,按照所述转发路径信息转发所述网络报文;
所述VPP模块,用于:解析所述网络报文解析得到相应的转发路径信息。
2.根据权利要求1所述的架构,其特征在于,还包括VPP控制模块,所述VPP控制模块设置于所述集群环境的控制节点上;其中:
所述VPP控制模块,用于:将外界输入的配置信息下发给所述VPP模块,指示所述VPP模块按照所述配置信息实现解析网络报文的功能的配置。
3.根据权利要求2所述的架构,其特征在于,所述VPP模块包括并行解析单元,所述并行解析单元用于:如果同时接收到多个网络报文,则对接收到的多个网络报文同时进行解析。
4.根据权利要求3所述的架构,其特征在于,所述并行解析单元包括协议解析单元、L2转发单元、L3转发单元及与多个网络协议版本一一对应的多个类型确定单元,其中:
所述协议解析单元,用于:解析所述网络报文得到相应的IP信息,确定所述IP信息对应的网络协议版本,并将所述网络报文转发至与该网络协议版本对应的类型确定单元中;
所述类型确定单元,用于:判断所述网络报文的源IP地址与目的IP地址是否位于同一网段,如果是,则将所述网络报文转发至L2转发单元,否则,将所述网络报文转发至L3转发单元;
所述L2转发单元及所述L3转发单元,用于:解析所述网络报文确定对应的出端口,指示所述DPDK模块将所述网络报文转发至与该出端口对应的网卡端口。
5.根据权利要求4所述的架构,其特征在于,所述L2转发单元包括L2转发子单元,所述L2转发子单元用于:解析所述网络报文得到相应的vlan信息,基于配置的网桥交换规则查询与该vlan信息对应的同网桥同vlan内的出端口信息,并基于该出端口信息确定出对应的出端口。
6.根据权利要求5所述的架构,其特征在于,所述L3转发单元包括L3转发子单元,所述L3转发子单元用于:解析所述网络报文得到相应的目的IP地址,查找路由表确定与所述目的IP地址对应的下一跳IP地址,查找转发表确定与该下一跳IP地址对应的出端口。
7.根据权利要求1所述的架构,其特征在于,所述VPP模块还包括判断单元,所述判断单元用于:解析得到任意网络报文的目的IP地址,判断是否存在目的IP地址与该任意网络报文的目的IP地址相同的已经实现转发的网络报文,如果是,则指示所述DPDK模块将该任意网络报文按照该已经实现转发的网络报文的转发路径信息进行转发。
8.根据权利要求7所述的架构,其特征在于,还包括网卡,所述网卡用于:接收所述网络报文,对所述网络报文进行合法性验证,如果验证通过,则将所述网络报文发送给所述DPDK模块,否则,将所述网络报文发送至指定管理终端进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664194.0A CN111901244B (zh) | 2020-07-10 | 2020-07-10 | 一种网络报文转发系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664194.0A CN111901244B (zh) | 2020-07-10 | 2020-07-10 | 一种网络报文转发系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111901244A true CN111901244A (zh) | 2020-11-06 |
CN111901244B CN111901244B (zh) | 2022-12-30 |
Family
ID=73192295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010664194.0A Active CN111901244B (zh) | 2020-07-10 | 2020-07-10 | 一种网络报文转发系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111901244B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565047A (zh) * | 2020-11-19 | 2021-03-26 | 浪潮思科网络科技有限公司 | 一种在docker中使用VPP构建网络的方法、装置、设备及介质 |
CN112769716A (zh) * | 2021-01-12 | 2021-05-07 | 烽火通信科技股份有限公司 | 基于混合型虚拟网桥的虚拟交换机的数据转发方法及装置 |
CN113489775A (zh) * | 2021-06-30 | 2021-10-08 | 深圳市风云实业有限公司 | 一种基于vpp的七层负载均衡服务器及负载均衡方法 |
CN113542156A (zh) * | 2021-07-26 | 2021-10-22 | 中移(杭州)信息技术有限公司 | 报文传输方法、装置、终端设备以及存储介质 |
CN113973052A (zh) * | 2021-09-30 | 2022-01-25 | 阿里巴巴达摩院(杭州)科技有限公司 | 云网络系统、数据传输方法、计算节点及存储介质 |
CN114025018A (zh) * | 2021-11-29 | 2022-02-08 | 北京天融信网络安全技术有限公司 | 数据处理方法、装置、网络设备及计算机可读存储介质 |
CN114095426A (zh) * | 2021-09-28 | 2022-02-25 | 浪潮软件科技有限公司 | 一种vpp平台的报文处理方法及装置 |
CN115037758A (zh) * | 2022-04-27 | 2022-09-09 | 浪潮通信技术有限公司 | 消息同步方法及服务器 |
CN115499386A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种数据转发方法、vpp网元设备和可读存储介质 |
CN115720222A (zh) * | 2022-12-19 | 2023-02-28 | 广西大学 | 基于dpdk的在arm多核架构上实现http转发的方法及存储介质 |
CN116170404A (zh) * | 2023-02-17 | 2023-05-26 | 通明智云(北京)科技有限公司 | 一种基于dpdk的数据转发方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833232A (zh) * | 2018-06-27 | 2018-11-16 | 烽火通信科技股份有限公司 | 一种基于VPP的PPPoE客户端实现方法及PPPoE客户端 |
CN109743244A (zh) * | 2019-03-21 | 2019-05-10 | 山东华辰泰尔信息科技股份有限公司 | 一种基于sdn与nfv技术实现高速互联互通的系统和方法 |
US20200145335A1 (en) * | 2018-11-04 | 2020-05-07 | Cisco Technology, Inc., A California Corporation | Processing Packets by an Offload Platform Adjunct to a Packet Switching Device |
CN111143034A (zh) * | 2019-12-23 | 2020-05-12 | 北京神州绿盟信息安全科技股份有限公司 | 一种控制网络数据转发平面的方法、装置及系统 |
-
2020
- 2020-07-10 CN CN202010664194.0A patent/CN111901244B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833232A (zh) * | 2018-06-27 | 2018-11-16 | 烽火通信科技股份有限公司 | 一种基于VPP的PPPoE客户端实现方法及PPPoE客户端 |
US20200145335A1 (en) * | 2018-11-04 | 2020-05-07 | Cisco Technology, Inc., A California Corporation | Processing Packets by an Offload Platform Adjunct to a Packet Switching Device |
CN109743244A (zh) * | 2019-03-21 | 2019-05-10 | 山东华辰泰尔信息科技股份有限公司 | 一种基于sdn与nfv技术实现高速互联互通的系统和方法 |
CN111143034A (zh) * | 2019-12-23 | 2020-05-12 | 北京神州绿盟信息安全科技股份有限公司 | 一种控制网络数据转发平面的方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
张宇巍等: "基于VPP的虚拟路由器数据平面加速方法", 《计算机系统应用》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565047B (zh) * | 2020-11-19 | 2022-03-04 | 浪潮思科网络科技有限公司 | 一种在docker中使用VPP构建网络的方法、装置、设备及介质 |
CN112565047A (zh) * | 2020-11-19 | 2021-03-26 | 浪潮思科网络科技有限公司 | 一种在docker中使用VPP构建网络的方法、装置、设备及介质 |
CN112769716A (zh) * | 2021-01-12 | 2021-05-07 | 烽火通信科技股份有限公司 | 基于混合型虚拟网桥的虚拟交换机的数据转发方法及装置 |
CN113489775A (zh) * | 2021-06-30 | 2021-10-08 | 深圳市风云实业有限公司 | 一种基于vpp的七层负载均衡服务器及负载均衡方法 |
CN113489775B (zh) * | 2021-06-30 | 2023-07-21 | 深圳市风云实业有限公司 | 一种基于vpp的七层负载均衡服务器及负载均衡方法 |
CN113542156A (zh) * | 2021-07-26 | 2021-10-22 | 中移(杭州)信息技术有限公司 | 报文传输方法、装置、终端设备以及存储介质 |
CN113542156B (zh) * | 2021-07-26 | 2024-03-12 | 中移(杭州)信息技术有限公司 | 报文传输方法、装置、终端设备以及存储介质 |
CN114095426B (zh) * | 2021-09-28 | 2023-04-04 | 浪潮软件科技有限公司 | 一种vpp平台的报文处理方法及装置 |
CN114095426A (zh) * | 2021-09-28 | 2022-02-25 | 浪潮软件科技有限公司 | 一种vpp平台的报文处理方法及装置 |
CN113973052A (zh) * | 2021-09-30 | 2022-01-25 | 阿里巴巴达摩院(杭州)科技有限公司 | 云网络系统、数据传输方法、计算节点及存储介质 |
CN114025018A (zh) * | 2021-11-29 | 2022-02-08 | 北京天融信网络安全技术有限公司 | 数据处理方法、装置、网络设备及计算机可读存储介质 |
CN115037758A (zh) * | 2022-04-27 | 2022-09-09 | 浪潮通信技术有限公司 | 消息同步方法及服务器 |
CN115499386A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种数据转发方法、vpp网元设备和可读存储介质 |
CN115499386B (zh) * | 2022-07-29 | 2024-04-26 | 天翼云科技有限公司 | 一种数据转发方法、vpp网元设备和可读存储介质 |
CN115720222A (zh) * | 2022-12-19 | 2023-02-28 | 广西大学 | 基于dpdk的在arm多核架构上实现http转发的方法及存储介质 |
CN116170404A (zh) * | 2023-02-17 | 2023-05-26 | 通明智云(北京)科技有限公司 | 一种基于dpdk的数据转发方法及装置 |
CN116170404B (zh) * | 2023-02-17 | 2023-09-29 | 通明智云(北京)科技有限公司 | 一种基于dpdk的数据转发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111901244B (zh) | 2022-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901244B (zh) | 一种网络报文转发系统 | |
US9755959B2 (en) | Dynamic service path creation | |
US10645028B2 (en) | Methods and apparatus for automatically provisioning resources within a distributed control plane of a switch | |
US8730793B2 (en) | Method and apparatus providing network redundancy and high availability to remote network nodes | |
US10749805B2 (en) | Statistical collection in a network switch natively configured as a load balancer | |
US9258255B2 (en) | Hierarchical programming of dual-stack switches in a network environment | |
CN109474627B (zh) | 一种基于sdn的虚拟租户网络隔离方法及系统 | |
US10237179B2 (en) | Systems and methods of inter data center out-bound traffic management | |
US9504016B2 (en) | Optimized multicast routing in a Clos-like network | |
US11336570B1 (en) | Layer three multi-homing for virtual networks | |
US8560660B2 (en) | Methods and apparatus for managing next hop identifiers in a distributed switch fabric system | |
US20140029412A1 (en) | Systems and methods for providing anycast mac addressing in an information handling system | |
US9258267B1 (en) | Highly scalable data center architecture with address resolution protocol (ARP)-free servers | |
CN109547354B (zh) | 负载均衡方法、装置、系统、核心层交换机及存储介质 | |
WO2023236858A1 (zh) | 流表规则的管理方法、流量管理方法、系统及存储介质 | |
US9397958B2 (en) | FCoE VN—port virtualizer | |
EP4344158A1 (en) | Network interface card management system, packet processing method, and device | |
CN112822097A (zh) | 报文转发的方法、第一网络设备以及第一设备组 | |
CN110380966B (zh) | 一种发现转发路径的方法及其相关设备 | |
CN109861912B (zh) | 优化用于电子设备内的虚拟节点的结构路径转发 | |
CN109729010B (zh) | 一种网络中确定流量传输路径的方法、设备和系统 | |
CN115426305B (zh) | 报文处理方法、装置、系统及存储介质 | |
CN117097818A (zh) | 一种报文处理的方法及相关设备 | |
EP4376375A1 (en) | Packet mirroring method, apparatus, and system | |
US8804708B1 (en) | Methods and apparatus for implementing access control at a network switch |
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 |