CN105827495A - Vxlan网关的报文转发方法和设备 - Google Patents
Vxlan网关的报文转发方法和设备 Download PDFInfo
- Publication number
- CN105827495A CN105827495A CN201610005947.0A CN201610005947A CN105827495A CN 105827495 A CN105827495 A CN 105827495A CN 201610005947 A CN201610005947 A CN 201610005947A CN 105827495 A CN105827495 A CN 105827495A
- Authority
- CN
- China
- Prior art keywords
- vxlan
- coupling
- data message
- message
- list item
- 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
Classifications
-
- 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/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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了VXLAN网关的报文转发方法和设备。本发明中,当网板接收到接口板发送的数据报文时,通过查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组ID,则依据聚合组ID匹配聚合组表项,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文,能够将数据报文均匀分担到不同的接口板转发,实现了网板正确确定用于转发数据报文的接口板,避免现有技术中网板因为不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
Description
技术领域
本申请涉及网络通信技术,特别涉及虚拟可扩展局域网(VXLAN:VirtualeXtensibleLocalAccessNetwork)网关的报文转发方法和设备。
背景技术
在网络中部署VXLAN网关,能够使VXLAN站点内的虚拟机(VM:VirtualMachine)通过VXLAN网关与外界网络或其他VXLAN网络内的VM进行三层通信。
VXLAN网关由主控板、网板和接口板组成,其中,主控板、网板和接口板的数量并不具体限定。本申请不涉及主控板的改进,不对主控板进行描述,只对VXLAN网关中的网板和接口板进行描述。图1所示为VXLAN网关的设备的结构,其中该设备由网板,网板连接的接口板1-接口板m以及网板连接的主控板。
VXLAN网关使用代理方式转发报文。如图1所示,当VXLAN网关的接口板1收到报文时,先判断报文是否为VXLAN封装的报文,如果是,执行VXLAN解封装,将VXLAN解封装后的报文送到本网关的网板进行代理查表,如果不是,直接送到本网关的网板进行代理查表。网板对来自接口板1的报文进行代理查表,依据查表结果对报文的VLAN、源MAC和目的MAC进行修改,并将报文送到用于转发该报文的接口板(以接口板2为例)进行转发;接口板2对来自网板的报文进行转发,其中,对于需要VXLAN封装的报文,接口板2对报文进行vxlan封装并转发。
在上面描述中,网板依赖于查表得到的出接口确定用于转发报文的接口板,当通过查表得到转发报文的出接口为单接口时,则网板直接确定该单接口所在的接口板为用于转发报文的接口板;而当通过查表得到转发报文的出接口为多个跨接口板的等价路由出接口时,意味着报文最终转发的出接口有多个且可能不在同一个接口板上,网板就不能精确确定最终选择哪一个接口板用于转发报文,基于此,网板就会尝试将报文发送给各个接口板以寻找正确地用于转发报文的接口板,而这会引起网板和接口板之间出现流量拥塞。
发明内容
本申请提供了VXLAN网关的报文转发方法和设备,以避免网板因为不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
本申请提供的技术方案包括:
一种虚拟可扩展局域网VXLAN网关的报文转发方法,该方法应用于VXLAN网关,包括:
网板接收接口板发送的数据报文,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项;
网板确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,聚合组表项包含N个成员端口,N大于1,N个成员端口为从VXLAN网关至用于封装所述数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识;
网板从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文。
一种虚拟可扩展局域网VXLAN网关的报文转发设备,该设备应用于VXLAN网关,包括:
接口板处理单元,处于接口板,用于向网板发送数据报文;
网板处理单元,处于网板,用于接收到接口板发送的数据报文时,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,聚合组表项包含N个成员端口,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文;N大于1,N个成员端口为从VXLAN网关至用于封装所述数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识。
由以上技术方案可以看出,本发明中,当网板接收到接口板发送的数据报文时,通过查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文,能够将数据报文均匀分担到不同的接口板转发,实现了网板正确确定用于转发数据报文的接口板,避免现有技术中网板因为不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
附图说明
图1为可作为VXLAN网关的设备结构示意图;
图2为本发明提供的方法流程图;
图3为本发明实施例1提供的流程图;
图4为本发明实施例3提供的流程图;
图5为本发明提供的设备结构示意图;
图6为本发明提供的设备硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图2,图2为本发明提供的方法流程图。如图2所示,该流程应用于VXLAN网关,可包括以下步骤:
步骤201,网板接收接口板发送的数据报文,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项。
步骤202,网板确定匹配的下一跳表项中的出接口为聚合组标识(ID),则依据聚合组ID匹配聚合组表项,聚合组表项包含N个成员端口,N大于1,N个成员端口为从VXLAN网关至用于封装数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识。
本发明中,当VXLAN网关确定出从本VXLAN网关至VXLAN封装表项中的外层目的IP地址存在N条等价出端口,则意味着需要在网板建立一个聚合组表项,将该聚合组表项的标识(记为聚合组标识)作为出接口记录至与上述ARP表项中的下一跳表项索引匹配的下一跳表项中。
本发明中,VXLAN网关中的每一接口板可包含至少一个芯片,不管是同一接口板上的芯片还是不同接口板上的芯片,其都具有不同的mod。但对于芯片的代理端口标识,在本发明中,同一接口板上的芯片、不同接口板上的芯片可具有相同的代理端口标识,也可具有不同的代理端口标识,本发明不具体限定。
步骤202,网板从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文。
至此,完成图2所示的流程。
通过图2所示的流程可以看出,VXLAN网关的网板接收到接口板发送的数据报文时,会为该数据报文选择正确的用于转发该数据报文的接口板,避免现有技术中网板因为不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
下面通过两个实施例对图2提供的流程进行描述:
实施例1:
以图3所示的组网为例,在图3中,VLAN存在5个物理机(PM:PhysicalMachine),记为PM3_1至PM3_5,VXLAN中存在5个虚拟机(VM:VirtualMachine),记为VM3_1至VM3_5。VXLAN网关连接在VLAN和VXLAN之间,VXLAN网关包含主控板、接口板和网板。主控板在本申请中不重点涉及,图3未示出。图3以VXLAN网关仅存在一个网板为例,网板记为网板3_1。图3以VXLAN网关存在三个接口板为例,图3中的三个接口板记为接口板3_1至接口板3_3,接口板3_1至接口板3_3上均存在一块芯片,分别记为芯片3_1至芯片3_3,芯片3_1至芯片3_3的芯片标识分别记为mod3_1至mod3_3,芯片3_1至芯片3_3的代理端口标识分别记为Port3_1至Port3_3。
图3中,网板3_1本地下发了VM3_1的IP地址1.1.1.1匹配的ARP表项,记为ARP表项3_1。
ARP表项3_1相关的VXLAN封装表项为封装表项3_1,封装表项3_1中的外层目的IP地址为2.2.2.2,依据路由表项查找到从VXLAN网关至外层目的IP地址2.2.2.2存在三条等价路由出接口,这三条等价路由出接口分别处于芯片3_1、芯片3_2、芯片3_3,则网板3_1上创建一个聚合组表项,记为聚合组表项3_1,聚合组表项3_1的ID为聚合组31,聚合组表项3_1中的成员端口如表1所示:
成员端口 | 芯片标识 | 代理端口标识 |
1 | mod 3_1 | Port3_1 |
2 | mod 3_2 | Port3_2 |
3 | mod 3_3 | Port3_3 |
表1
ARP表项3_1中下一跳表项索引为索引3_1;与索引3_1匹配的下一跳表项为下一跳表项3_1,设置下一跳表项3_1中的出接口为聚合组31。
图3示出了PM3_1访问VM3_1的流程。如图3所示,网关VXLAN的接口板Port3_1通过端口Port3_11收到PM3_1发送的数据报文。为便于描述,这里将接口板3_1通过Port3_11接收的数据报文记为报文3_1。报文3_1的内层目的IP地址为1.1.1.1。
接口板3_1对报文3_1进行第一内部封装,第一内部封装中的第一目的芯片标识为第一虚拟芯片标识(图3以chip0_1为例),第一内部封装中的第一目的端口标识为第一虚拟端口标识(图3以Port0_1为例)。第一虚拟芯片标识为预先配置的用于指示网板可继续执行查表进行报文转发的虚拟芯片标识,第一虚拟端口标识为预先配置的用于指示网板可继续执行查表进行报文转发的虚拟端口标识。当VXLAN网关存在多个网板时,所有网板都会配置上述的第一虚拟芯片标识和第一虚拟端口标识。
为便于描述,这里将第一内部封装后的报文3_1称为报文3_2。
接口板3_1将报文3_2发送至网板3_1。
网板3_1接收到报文3_2,从报文3_2的第一内部封装头中识别出第一目的芯片标识为第一虚拟芯片标识,第一目的端口标识为第一虚拟端口标识,则对报文3_2的第一内部封装进行解封装(即恢复了上述的报文3_1)。
网板3_1依据报文3_1的内层目的IP地址1.1.1.1查找到匹配的ARP表项3_1。
网板3_1依据匹配的ARP表项3_1中的下一跳表项索引即索引3_1匹配下一跳表项3_1。
网板3_1依据下一跳表项3_1中的出接口即聚合组31匹配聚合组表项3_1。
网板3_1发现聚合组表项3_1中存在如表1所示的三个成员端口,则对报文3_1携带的报文特征参数比如目的IP地址进行哈希运算,从上述表1所示的成员端口中选择一个与哈希运算结果匹配的成员端口。这里以选择编号为2的成员端口为例,选择的成员端口包含mod3_2、Port3_2。
网板3_1将报文3_1的源MAC地址修改为VXLAN网关的网关MAC地址,将报文3_1的目的MAC地址修改为ARP表项3_1中的目的MAC地址(实质为VM3_1的MAC地址),将报文3_1的VLAN修改为ARP表项3_1中的VLAN(实质为VM3_1所属的VLAN)。为便于描述,这里将修改后的报文3_1称为报文3_3。
网板3_1对报文3_3进行第二内部封装,为便于描述,这里将第二内部封装的报文3_3称为报文3_4。第二内部封装中的第二目的芯片标识为选择的成员端口中的mod3_2,第二目的端口标识为选择的成员端口中的Port3_2。
网板3_1向mod3_2对应的芯片发送报文3_4。mod3_2为接口板3_2上芯片的芯片标识,接口板3_2会接收到报文3_4。
接口板3_2接收到报文3_4,从报文3_4的第二内部封装头中确定出第二目的mod为本地芯片3_2的芯片标识,第二目的Port为本地芯片3_2的代理端口标识,则对报文3_4的第二内部封装进行解封装(即恢复了上述的报文3_3)。
接口板3_2在本地MAC表项中找到与报文3_3的目的MAC地址匹配的MAC表项;
接口板3_2依据查找到的MAC表项中的封装表项索引从本地VXLAN隧道封装表项中匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对报文3_3进行VXLAN封装。为便于描述,这里将VXLAN封装的报文3_3称为报文3_5,VXLAN封装中的外层目的IP地址为2.2.2.2。
接口板3_2依据VXLAN封装中的外层目的IP地址2.2.2.2匹配路由表项,依据匹配的路由表项确定本地芯片仅3_2有1个出接口Port3-23可以发送报文3_5,则通过该仅有的1个出接口Port3-23发送报文3_5。
最终,报文3_5会到达IP地址为2.2.2.2的第一VXLAN交换机。
第一VXLAN交换机收到报文3_5后,对报文3_5进行VXLAN解封装,并发送VXLAN解封装后的报文至VM3_1,实现了PM3_1访问VM3_1。即通过VXLAN网关实现了从VLAN至VXLAN的报文转发。
至此,完成实施例1的描述。
实施例2:
以图4所示的组网为例,在图4中,VXLAN网关连接在第一VXLAN和第二VXLAN之间。第一VXLAN的VNID为100,VM5_1至VM5_5为第一VXLAN中的设备;第二VXLAN的VNID为200,VM4_1至VM4_5为第二VXLAN中的设备。VXLAN网关包含主控板、接口板和网板。主控板在本申请中不重点涉及,图4未示出。图4以VXLAN网关仅存在一个网板为例,该仅存在的网板记为网板4_1。图4以VXLAN网关存在三个接口板为例,图4中的三个接口板记为接口板4_1至接口板4_3,接口板4_1至接口板4_3上均存在一块芯片,分别记为芯片4_1至芯片4_3,芯片4_1至芯片4_3的芯片标识分别记为mod4_1至mod4_3,芯片4_1至芯片4_3的代理端口标识分别记为Port4_1至Port4_3。
图4中,网板4_1本地下发了VM4_3的IP地址3.3.3.3匹配的ARP表项,记为ARP表项4_1。
ARP表项4_1相关的VXLAN封装表项为封装表项4_1,封装表项4_1中的外层目的IP地址为4.4.4.4,依据路由表项查找到从VXLAN网关至外层目的IP地址4.4.4.4存在三条等价路由出接口,这三条等价路由出接口分别处于芯片4_1、芯片4_2、芯片4_3,则网板4_1上创建一个聚合组表项,记为聚合组表项4_1,聚合组表项4_1的ID为聚合组41,聚合组表项4_1中的成员端口如表2所示:
成员端口 | 芯片标识 | 代理端口标识 |
1 | mod 4_1 | Port4_1 |
2 | mod 4_2 | Port4_2 |
3 | mod 4_3 | Port4_3 |
表2
ARP表项4_1中下一跳表项索引为索引4_1;与索引4_1匹配的下一跳表项为下一跳表项4_1,设置下一跳表项4_1中的出接口为聚合组41。
图4示出了VM5_3访问VM4_3的流程。如图4所示,网关VXLAN的接口板4_1通过端口Port4_33收到VM5_3发送的数据报文。为便于描述,这里将接口板4_1通过Port4_33接收的数据报文记为报文4_1,报文4_1带有VXLAN封装,VXLAN封装至少包含第一VXLAN的VNID100。
接口板4_1从报文4_1带有的VXLAN封装中获取VNID100,对报文4_1进行VXLAN解封装,为便于描述,这里将VXLAN解封装后的报文4_1记为报文4_2。
接口板4_1使用报文4_2的目的MAC地址和获取的VNID100作为关键字在本地的MAC表项中查找匹配的MAC表项。
接口板4_1查找到匹配的MAC表项,并且报文4_2的目的MAC地址为VXLAN网关的网关MAC地址,则对报文4_2进行第一内部封装,第一内部封装中的第一目的芯片标识为第一虚拟芯片标识(图4仍以chip0_1为例),第一内部封装中的第一目的端口标识为第一虚拟端口标识(图4仍以Port0_1为例)。为便于描述,这里将第一内部封装后的报文4_5称为报文4_3。
接口板4_1将报文4_3发送至网板4_1。
网板4_1接收到报文4_3,从报文4_3的第一内部封装中识别出第一目的芯片标识为第一虚拟芯片标识,第一目的端口标识为第一虚拟端口标识,则对报文4_3的第一内部封装进行解封装(即恢复了上述的报文4_2)。
网板4_1依据报文4_2的目的IP地址3.3.3.3查找到匹配的ARP表项4_1。
网板4_1依据ARP表项4_1中的下一跳表项索引即索引4_1匹配下一跳表项4_1。
网板4_1依据下一跳表项4_1中的出接口即聚合组41匹配聚合组表项4_1。
网板4_1发现聚合组表项4_1中中存在如表2所示的三个成员端口,则对报文4_2携带的报文特征参数比如目的IP地址进行哈希运算,从上述成员端口中选择一个与哈希运算结果匹配的成员端口。这里以选择编号为3的成员端口为例,选择的成员端口包含mod4_3、Port4_3。
网板4_1将报文4_2的源MAC地址修改为VXLAN网关的网关MAC地址,将报文4_2的目的MAC地址修改为ARP表项4_1中的目的MAC地址(实质为VM4_3的MAC地址),将报文4_2的VLAN修改为ARP表项4_1中的VLAN(实质为PM4_3所属的VLAN)。为便于描述,这里将修改后的报文4_2称为报文4_4。
网板4_1对报文4_4进行第二内部封装,为便于描述,这里将第二内部封装的报文4_4称为报文4_5。第二内部封装中的第二目的芯片标识为选择的成员端口中的mod4_3,第二目的端口标识为选择的成员端口中的Port4_3。
网板4_1向mod4_3对应的芯片发送报文4_5。mod4_3为接口板4_3上芯片4_3的芯片标识,接口板4_3会接收到报文4_5。
接口板4_3接收到报文4_5,从报文4_5的第二内部封装头中确定出第二目的mod为本地芯片4_3的芯片标识,第二目的Port为本地芯片4_3的代理端口标识,则对报文4_5的第二内部封装进行解封装(即恢复了上述的报文4_4)。
接口板4_3在本地MAC表项中找到与报文4_4的目的MAC地址匹配的MAC表项;
接口板4_3依据查找到的MAC表项中的封装表项索引从本地VXLAN隧道封装表项中匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对报文4_4进行VXLAN封装。为便于描述,这里将VXLAN封装的报文4_4称为报文4_6,VXLAN封装中VNID为第二VXLAN的VNID200,VXLAN封装中的外层目的IP地址为4.4.4.4。
接口板4_3依据VXLAN封装中的外层目的IP地址4.4.4.4匹配路由表项,依据匹配的路由表项确定本地芯片4_3上有Port4-44、Port4-45共两个端口都可以发送报文4_6,则对报文4_6携带的第二报文特征参数比如内层目的IP地址进行哈希运算,从Port4-44、Port4-45中选择与哈希运算结果匹配的出接口,这里以选择Port4-44发送报文4_6为例。
最终,报文4_6会到达IP地址为4.4.4.4的第二VXLAN交换机,第二XLAN交换机收到报文4_6后,对报文4_6进行VXLAN解封装,并发送VXLAN解封装后的报文至VM4_1,实现了VM5_1访问VM4_1。即通过VXLAN网关实现了从第一VXLAN至第二VXLAN的报文转发。
至此,完成实施例2的描述。
以上对本发明提供的方法进行了描述,下面对本发明提供的设备进行描述:
参见图5,图5为本发明提供的设备结构图。该设备应用于VXLAN网关,包括:
接口板处理单元,处于接口板,用于向网板发送数据报文;
网板处理单元,处于网板,用于接收到接口板发送的数据报文时,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,聚合组表项包含N个成员端口,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文;N大于1,N个成员端口为从VXLAN网关至用于封装数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识。
优选地,网板处理单元从匹配的聚合组表项中选择一个成员端口包括:
对数据报文携带的第一报文特征参数进行哈希运算,得到哈希运算结果;
从匹配的聚合组表项中选择与哈希运算结果匹配的成员端口。
优选地,网板处理单元依据选择的成员端口发送数据报文包括:
将数据报文的源MAC地址修改为VXLAN网关的网关MAC地址,将报文的目的MAC地址修改为匹配的ARP表项中的目的MAC地址,将报文的VLAN修改为匹配的ARP表项中的VLAN;
对修改后的报文执行内部封装并向选择的成员端口中的芯片标识匹配的芯片发送,内部封装的中的目的芯片标识为选择的成员端口中的芯片标识,目的端口标识为选择的成员端口中的代理端口标识。
优选地,接口板处理单元进一步接收来自网板的数据报文,确定数据报文的内部封装中目的芯片标识、目的端口标识分别为本地芯片的芯片标识和本地芯片的代理端口标识,对数据报文的内部封装进行解封装;依据数据报文的目的MAC地址匹配MAC表项,依据匹配的MAC表项中的封装表项索引匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对数据报文进行VXLAN封装,通过本地芯片上的一个出接口发送VXLAN封装后的数据报文。
优选地,接口板处理单元通过本地芯片上的一个出接口发送VXLAN封装后的数据报文包括:
依据VXLAN封装中的外层目的IP地址匹配路由表项;
依据匹配的路由表项确定本地芯片有M个以上出接口发送VXLAN封装后的数据报文,M大于1且小于或等于N;
对VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从M个以上出接口中选择与哈希运算结果匹配的出接口发送VXLAN封装后的数据报文。
至此,完成本发明提供的设备结构描述。
作为本发明的一个实施例,本发明还提供了图5所示设备的硬件结构图。如图6所示,该设备硬件结构可包括:
接口板和网板。
其中,接口板上可包括:第一CPU和第一存储器。
第一存储器,用于存放接口板处理单元;
第一CPU,用于存放接口板处理单元运行的控制程序,以控制第一存储器中的接口板处理单元执行如上的操作。至于第一存储器中的接口板处理单元执行的操作,其如上述接口板处理单元执行的操作,这里不再赘述。
网板上可包括:第二CPU和第二存储器。
第二存储器,用于存放网板处理单元;
第二CPU,用于存放网板处理单元运行的控制程序,以控制第二存储器中的网板处理单元执行操作。至于第二存储器中的网板处理单元执行的操作,其如上述网板处理单元执行的操作,这里不再赘述。
至此,完成图6所示的设备硬件结构图。
本实施例图3-图6中仅以可作为VXLAN网关的设备内网板和接口板之间的报文转发处理为例进行说明,但本领域技术人员可知的是图3-图6中可作为VXLAN网关的设备还具有图1所示设备中的主控板。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种虚拟可扩展局域网VXLAN网关的报文转发方法,其特征在于,该方法应用于VXLAN网关,包括:
网板接收接口板发送的数据报文,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项;
网板确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,所述聚合组表项包含N个成员端口,N大于1,N个成员端口为从VXLAN网关至用于封装所述数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识;
网板从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文。
2.根据权利要求1所述的方法,其特征在于,所述从匹配的聚合组表项中选择一个成员端口包括:
对数据报文携带的第一报文特征参数进行哈希运算,得到哈希运算结果;
从匹配的聚合组表项中选择与哈希运算结果匹配的成员端口。
3.根据权利要求1所述的方法,其特征在于,所述依据选择的成员端口发送数据报文包括:
将数据报文的源MAC地址修改为VXLAN网关的网关MAC地址,将报文的目的MAC地址修改为匹配的ARP表项中的目的MAC地址,将报文的VLAN修改为匹配的ARP表项中的VLAN;
对修改后的报文执行内部封装并向选择的成员端口中的芯片标识匹配的芯片发送,内部封装的中的目的芯片标识为选择的成员端口中的芯片标识,目的端口标识为选择的成员端口中的代理端口标识。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括:
接口板接收来自网板的数据报文,确定数据报文的内部封装中目的芯片标识、目的端口标识分别为本地芯片的芯片标识和本地芯片的代理端口标识,对数据报文的内部封装进行解封装;
依据数据报文的目的MAC地址匹配MAC表项,依据匹配的MAC表项中的封装表项索引匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对数据报文进行VXLAN封装,通过本地芯片上的一个出接口发送VXLAN封装后的数据报文。
5.根据权利要求4所述的方法,其特征在于,所述通过本地芯片上的一个出接口发送VXLAN封装后的数据报文包括:
依据VXLAN封装中的外层目的IP地址匹配路由表项;
依据匹配的路由表项确定本地芯片有M个以上出接口发送所述VXLAN封装后的数据报文,M大于1且小于或等于N;
对所述VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从所述M个以上出接口中选择与哈希运算结果匹配的出接口发送VXLAN封装后的数据报文。
6.一种虚拟可扩展局域网VXLAN网关的报文转发设备,其特征在于,该设备应用于VXLAN网关,包括:
接口板处理单元,处于接口板,用于向网板发送数据报文;
网板处理单元,处于网板,用于接收到接口板发送的数据报文时,查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项,所述聚合组表项包含N个成员端口,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文;N大于1,N个成员端口为从VXLAN网关至用于封装所述数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在芯片的芯片标识和芯片的代理端口标识。
7.根据权利要求6所述的设备,其特征在于,所述网板处理单元从匹配的聚合组表项中选择一个成员端口包括:
对数据报文携带的第一报文特征参数进行哈希运算,得到哈希运算结果;
从匹配的聚合组表项中选择与哈希运算结果匹配的成员端口。
8.根据权利要求6所述的设备,其特征在于,所述网板处理单元依据选择的成员端口发送数据报文包括:
将数据报文的源MAC地址修改为VXLAN网关的网关MAC地址,将报文的目的MAC地址修改为匹配的ARP表项中的目的MAC地址,将报文的VLAN修改为匹配的ARP表项中的VLAN;
对修改后的报文执行内部封装并向选择的成员端口中的芯片标识匹配的芯片发送,内部封装的中的目的芯片标识为选择的成员端口中的芯片标识,目的端口标识为选择的成员端口中的代理端口标识。
9.根据权利要求6所述的设备,其特征在于,所述接口板处理单元进一步接收来自网板的数据报文,确定数据报文的内部封装中目的芯片标识、目的端口标识分别为本地芯片的芯片标识和本地芯片的代理端口标识,对数据报文的内部封装进行解封装;依据数据报文的目的MAC地址匹配MAC表项,依据匹配的MAC表项中的封装表项索引匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对数据报文进行VXLAN封装,通过本地芯片上的一个出接口发送VXLAN封装后的数据报文。
10.根据权利要求9所述的设备,其特征在于,所述接口板处理单元通过本地芯片上的一个出接口发送VXLAN封装后的数据报文包括:
依据VXLAN封装中的外层目的IP地址匹配路由表项;
依据匹配的路由表项确定本地芯片有M个以上出接口发送所述VXLAN封装后的数据报文,M大于1且小于或等于N;
对所述VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从所述M个以上出接口中选择与哈希运算结果匹配的出接口发送VXLAN封装后的数据报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610005947.0A CN105827495B (zh) | 2016-01-05 | 2016-01-05 | Vxlan网关的报文转发方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610005947.0A CN105827495B (zh) | 2016-01-05 | 2016-01-05 | Vxlan网关的报文转发方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105827495A true CN105827495A (zh) | 2016-08-03 |
CN105827495B CN105827495B (zh) | 2019-04-12 |
Family
ID=56986913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610005947.0A Active CN105827495B (zh) | 2016-01-05 | 2016-01-05 | Vxlan网关的报文转发方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105827495B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360096A (zh) * | 2017-08-14 | 2017-11-17 | 北京优帆科技有限公司 | 一种vxlan报文的转发方法及系统 |
CN107547341A (zh) * | 2017-06-23 | 2018-01-05 | 新华三技术有限公司 | 虚拟扩展局域网vxlan的接入方法及装置 |
CN108809793A (zh) * | 2017-04-27 | 2018-11-13 | 华为技术有限公司 | 一种数据传输方法、装置及系统 |
CN109194585A (zh) * | 2018-10-26 | 2019-01-11 | 新华三技术有限公司合肥分公司 | 报文转发方法及网络设备 |
CN109286564A (zh) * | 2017-07-20 | 2019-01-29 | 迈普通信技术股份有限公司 | 一种报文转发方法及装置 |
CN109525501A (zh) * | 2018-12-27 | 2019-03-26 | 新华三技术有限公司 | 一种调整转发路径的方法和装置 |
CN110768884A (zh) * | 2018-07-25 | 2020-02-07 | 华为技术有限公司 | Vxlan报文封装及策略执行方法、设备、系统 |
CN112751791A (zh) * | 2020-12-30 | 2021-05-04 | 迈普通信技术股份有限公司 | 报文转发及信息处理方法、装置、电子设备及存储介质 |
CN112968839A (zh) * | 2021-03-29 | 2021-06-15 | 新华三信息安全技术有限公司 | 报文处理方法及装置 |
CN114615216A (zh) * | 2022-03-11 | 2022-06-10 | 深圳市风云实业有限公司 | 一种基于交换芯片的路由表动态调整方法 |
CN115065660A (zh) * | 2022-07-15 | 2022-09-16 | 杭州云合智网技术有限公司 | Arp代答的优化方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104821914A (zh) * | 2015-05-04 | 2015-08-05 | 杭州华三通信技术有限公司 | 跨多链路透明连接trill网络的报文转发方法和设备 |
CN105099922A (zh) * | 2015-06-18 | 2015-11-25 | 杭州华三通信技术有限公司 | 一种跨虚拟可扩展局域网的数据报文转发方法和装置 |
US20150358232A1 (en) * | 2014-05-29 | 2015-12-10 | Huawei Technologies Co., Ltd. | Packet Forwarding Method and VXLAN Gateway |
-
2016
- 2016-01-05 CN CN201610005947.0A patent/CN105827495B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150358232A1 (en) * | 2014-05-29 | 2015-12-10 | Huawei Technologies Co., Ltd. | Packet Forwarding Method and VXLAN Gateway |
CN104821914A (zh) * | 2015-05-04 | 2015-08-05 | 杭州华三通信技术有限公司 | 跨多链路透明连接trill网络的报文转发方法和设备 |
CN105099922A (zh) * | 2015-06-18 | 2015-11-25 | 杭州华三通信技术有限公司 | 一种跨虚拟可扩展局域网的数据报文转发方法和装置 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809793A (zh) * | 2017-04-27 | 2018-11-13 | 华为技术有限公司 | 一种数据传输方法、装置及系统 |
CN107547341A (zh) * | 2017-06-23 | 2018-01-05 | 新华三技术有限公司 | 虚拟扩展局域网vxlan的接入方法及装置 |
CN107547341B (zh) * | 2017-06-23 | 2020-07-07 | 新华三技术有限公司 | 虚拟扩展局域网vxlan的接入方法及装置 |
CN109286564A (zh) * | 2017-07-20 | 2019-01-29 | 迈普通信技术股份有限公司 | 一种报文转发方法及装置 |
CN107360096B (zh) * | 2017-08-14 | 2020-08-25 | 北京青云科技股份有限公司 | 一种vxlan报文的转发方法及系统 |
CN107360096A (zh) * | 2017-08-14 | 2017-11-17 | 北京优帆科技有限公司 | 一种vxlan报文的转发方法及系统 |
CN110768884A (zh) * | 2018-07-25 | 2020-02-07 | 华为技术有限公司 | Vxlan报文封装及策略执行方法、设备、系统 |
US11588665B2 (en) | 2018-07-25 | 2023-02-21 | Huawei Technologies Co., Ltd. | VXLAN packet encapsulation and policy execution method, and VXLAN device and system |
CN109194585B (zh) * | 2018-10-26 | 2022-05-10 | 新华三技术有限公司合肥分公司 | 报文转发方法及网络设备 |
CN109194585A (zh) * | 2018-10-26 | 2019-01-11 | 新华三技术有限公司合肥分公司 | 报文转发方法及网络设备 |
CN109525501B (zh) * | 2018-12-27 | 2022-05-24 | 新华三技术有限公司 | 一种调整转发路径的方法和装置 |
CN109525501A (zh) * | 2018-12-27 | 2019-03-26 | 新华三技术有限公司 | 一种调整转发路径的方法和装置 |
CN112751791B (zh) * | 2020-12-30 | 2022-05-17 | 迈普通信技术股份有限公司 | 报文转发及信息处理方法、装置、电子设备及存储介质 |
CN112751791A (zh) * | 2020-12-30 | 2021-05-04 | 迈普通信技术股份有限公司 | 报文转发及信息处理方法、装置、电子设备及存储介质 |
CN112968839B (zh) * | 2021-03-29 | 2022-02-22 | 新华三信息安全技术有限公司 | 报文处理方法及装置 |
CN112968839A (zh) * | 2021-03-29 | 2021-06-15 | 新华三信息安全技术有限公司 | 报文处理方法及装置 |
CN114615216A (zh) * | 2022-03-11 | 2022-06-10 | 深圳市风云实业有限公司 | 一种基于交换芯片的路由表动态调整方法 |
CN115065660A (zh) * | 2022-07-15 | 2022-09-16 | 杭州云合智网技术有限公司 | Arp代答的优化方法 |
CN115065660B (zh) * | 2022-07-15 | 2023-08-15 | 杭州云合智网技术有限公司 | Arp代答的优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105827495B (zh) | 2019-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105827495A (zh) | Vxlan网关的报文转发方法和设备 | |
EP3544240B1 (en) | Data processing | |
JP6581277B2 (ja) | データパケット転送 | |
CN104601432B (zh) | 一种报文传输方法和设备 | |
CN103166874B (zh) | 一种报文转发方法及设备 | |
CN105577548B (zh) | 一种软件定义网络中报文处理方法和装置 | |
US10193707B2 (en) | Packet transmission method and apparatus | |
WO2016045637A1 (en) | Forwarding data packets in software defined network | |
CN107645431B (zh) | 报文转发方法及装置 | |
EP2966815A1 (en) | Packet forwarding method and vxlan gateway | |
CN107547349A (zh) | 一种虚拟机迁移的方法及装置 | |
CN103685006A (zh) | 一种在边缘设备上的报文转发方法和边缘设备 | |
CN110460684B (zh) | Vxlan同网段的广播域隔离方法及装置 | |
CN106130819B (zh) | Vtep异常的检测方法及装置 | |
CN106209689B (zh) | 从vxlan至vlan的组播数据报文转发方法和设备 | |
CN108632122B (zh) | 一种实现双控制平面的方法、装置 | |
US10574570B2 (en) | Communication processing method and apparatus | |
CN105515992A (zh) | Vxlan网络中的流表项处理方法及装置 | |
CN106209638A (zh) | 从虚拟局域网至虚拟可扩展局域网的报文转发方法和设备 | |
CN102857414A (zh) | 一种转发表写入、报文转发方法及装置 | |
CN106209648A (zh) | 跨虚拟可扩展局域网的组播数据报文转发方法和设备 | |
CN105379228A (zh) | 实现arp的方法、交换设备及控制设备 | |
CN106209637A (zh) | 从虚拟可扩展局域网至虚拟局域网的报文转发方法和设备 | |
CN106209557A (zh) | 报文转发方法及装置 | |
CN106330719A (zh) | 一种vxlan报文转发方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |