Vxlan网关的报文转发方法和设备的制造方法

文档序号:10473591阅读:197来源:国知局
Vxlan网关的报文转发方法和设备的制造方法
【专利摘要】本申请提供了VXLAN网关的报文转发方法和设备。本发明中,当网板接收到接口板发送的数据报文时,通过查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组ID,则依据聚合组ID匹配聚合组表项,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报文,能够将数据报文均匀分担到不同的接口板转发,实现了网板正确确定用于转发数据报文的接口板,避免现有技术中网板因为不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
【专利说明】
VXLAN网关的报文转发方法和设备
技术领域
[000。 本申请设及网络通信技术,特别设及虚拟可扩展局域网(VXLAN: Virtual extensible Local Access化twork)网关的报文转发方法和设备。
【背景技术】
[0002] 在网络中部署VXLAN网关,能够使VXLAN站点内的虚拟机(VM:Virtual Machine)通 过VXLAN网关与外界网络或其他VXLAN网络内的VM进行S层通信。
[0003] VXLAN网关由主控板、网板和接口板组成,其中,主控板、网板和接口板的数量并不 具体限定。本申请不设及主控板的改进,不对主控板进行描述,只对VXLAN网关中的网板和 接口板进行描述。图1所示为VXLAN网关的设备的结构,其中该设备由网板,网板连接的接口 板1-接口板mW及网板连接的主控板。
[0004] VXLAN网关使用代理方式转发报文。如图1所示,当VXLAN网关的接口板1收到报文 时,先判断报文是否为VXLAN封装的报文,如果是,执行VXLAN解封装,将VXLAN解封装后的报 文送到本网关的网板进行代理查表,如果不是,直接送到本网关的网板进行代理查表。网板 对来自接口板1的报文进行代理查表,依据查表结果对报文的VLAN、源MC和目的MAC进行修 改,并将报文送到用于转发该报文的接口板(W接口板2为例)进行转发;接口板2对来自网 板的报文进行转发,其中,对于需要VXLAN封装的报文,接口板2对报文进行VXlan封装并转 发。
[0005] 在上面描述中,网板依赖于查表得到的出接口确定用于转发报文的接口板,当通 过查表得到转发报文的出接口为单接口时,则网板直接确定该单接口所在的接口板为用于 转发报文的接口板;而当通过查表得到转发报文的出接口为多个跨接口板的等价路由出接 口时,意味着报文最终转发的出接口有多个且可能不在同一个接口板上,网板就不能精确 确定最终选择哪一个接口板用于转发报文,基于此,网板就会尝试将报文发送给各个接口 板W寻找正确地用于转发报文的接口板,而运会引起网板和接口板之间出现流量拥塞。

【发明内容】

[0006] 本申请提供了VXLAN网关的报文转发方法和设备,W避免网板因为不确定最终选 择哪一个接口板转发报文而引起的流量拥塞问题。
[0007] 本申请提供的技术方案包括:
[000引一种虚拟可扩展局域网VXLAN网关的报文转发方法,该方法应用于VXLAN网关,包 括:
[0009] 网板接收接口板发送的数据报文,查找与数据报文的内层目的IP地址匹配的ARP 表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项;
[0010] 网板确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚 合组表项,聚合组表项包含N个成员端口,N大于1,N个成员端口为从VXLAN网关至用于封装 所述数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在忍片的忍 片标识和忍片的代理端口标识;
[0011] 网板从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送数据报 文。
[0012] -种虚拟可扩展局域网VXLAN网关的报文转发设备,该设备应用于VXLAN网关,包 括:
[0013] 接口板处理单元,处于接口板,用于向网板发送数据报文;
[0014] 网板处理单元,处于网板,用于接收到接口板发送的数据报文时,查找与数据报文 的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表 项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项, 聚合组表项包含N个成员端口,从匹配的聚合组表项中选择一个成员端口,依据选择的成员 端口发送数据报文;N大于1,N个成员端口为从VXLAN网关至用于封装所述数据报文的VXLAN 封装表项中的外层目的IP地址的N条等价路由出接口所在忍片的忍片标识和忍片的代理端 口标识。
[0015] 由W上技术方案可W看出,本发明中,当网板接收到接口板发送的数据报文时,通 过查找与数据报文的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项 索引匹配下一跳表项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组 ID匹配聚合组表项,从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发送 数据报文,能够将数据报文均匀分担到不同的接口板转发,实现了网板正确确定用于转发 数据报文的接口板,避免现有技术中网板因为不确定最终选择哪一个接口板转发报文而引 起的流量拥塞问题。
【附图说明】
[0016] 图1为可作为VXLAN网关的设备结构示意图;
[0017] 图2为本发明提供的方法流程图;
[0018] 图3为本发明实施例1提供的流程图;
[0019] 图4为本发明实施例3提供的流程图;
[0020] 图5为本发明提供的设备结构示意图;
[0021 ]图6为本发明提供的设备硬件结构示意图。
【具体实施方式】
[0022] 为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对 本发明进行详细描述。
[0023] 参见图2,图2为本发明提供的方法流程图。如图2所示,该流程应用于VXLAN网关, 可包括W下步骤:
[0024] 步骤201,网板接收接口板发送的数据报文,查找与数据报文的内层目的IP地址匹 配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表项。
[0025] 步骤202,网板确定匹配的下一跳表项中的出接口为聚合组标识(ID),则依据聚合 组ID匹配聚合组表项,聚合组表项包含N个成员端口,N大于1,N个成员端口为从VXLAN网关 至用于封装数据报文的VXLAN封装表项中的外层目的IP地址的N条等价路由出接口所在忍 片的忍片标识和忍片的代理端口标识。
[0026] 本发明中,当VXLAN网关确定出从本VXLAN网关至VXLAN封装表项中的外层目的IP 地址存在N条等价出端口,则意味着需要在网板建立一个聚合组表项,将该聚合组表项的标 识(记为聚合组标识)作为出接口记录至与上述ARP表项中的下一跳表项索引匹配的下一跳 表项中。
[0027] 本发明中,VXLAN网关中的每一接口板可包含至少一个忍片,不管是同一接口板上 的忍片还是不同接口板上的忍片,其都具有不同的mod。但对于忍片的代理端口标识,在本 发明中,同一接口板上的忍片、不同接口板上的忍片可具有相同的代理端口标识,也可具有 不同的代理端口标识,本发明不具体限定。
[00%]步骤202,网板从匹配的聚合组表项中选择一个成员端口,依据选择的成员端口发 送数据报文。
[0029] 至此,完成图2所示的流程。
[0030] 通过图2所示的流程可W看出,V化AN网关的网板接收到接口板发送的数据报文 时,会为该数据报文选择正确的用于转发该数据报文的接口板,避免现有技术中网板因为 不确定最终选择哪一个接口板转发报文而引起的流量拥塞问题。
[0031 ]下面通过两个实施例对图2提供的流程进行描述:
[0032] 实施例1:
[0033] W图3所示的组网为例,在图3中,VLAN存在5个物理机(PM:陆ysical Machine),记 为PM 3_1 至PM 3_5,VXLAN中存在5个虚拟机(VM:Virtual Machine),记为VM 3_1 至VM 3_5。 VXLAN网关连接在VLAN和VXLAN之间,VXLAN网关包含主控板、接口板和网板。主控板在本申 请中不重点设及,图3未示出。图3 WVXLAN网关仅存在一个网板为例,网板记为网板3_1。图3 W VXLAN网关存在S个接口板为例,图3中的S个接口板记为接口板3_1至接口板3_3,接口 板3_1至接口板3_3上均存在一块忍片,分别记为忍片3_1至忍片3_3,忍片3_1至忍片3_3的 忍片标识分别记为111〇(13_1至111〇(1 3_3,忍片3_1至忍片3_3的代理端口标识分别记为化K 3_ 1 至化;Tt 3_3。
[0034] 图3中,网板3_1本地下发了VM 3_1的IP地址1.1.1.1匹配的ARP表项,记为ARP表项 3_1。
[0035] ARP表项3_1相关的VXLAN封装表项为封装表项3_1,封装表项3_1中的外层目的IP 地址为2.2.2.2,依据路由表项查找到从VXLAN网关至外层目的IP地址2.2.2.2存在S条等 价路由出接口,运S条等价路由出接口分别处于忍片3_1、忍片3_2、忍片3_3,则网板3_1上 创建一个聚合组表项,记为聚合组表项3_1,聚合组表项3_1的ID为聚合组31,聚合组表项3_ 1中的成员端口如表1所示: 「nmAl L0037J 表 1
[0038] ARP表项3_1中下一跳表项索引为索引3_1;与索引3_1匹配的下一跳表项为下一跳 表项3_1,设置下一跳表项3_1中的出接口为聚合组31。
[0039] 图3示出了PM 3_1访问VM 3_1的流程。如图3所示,网关VXLAN的接口板化K 3_1通 过端口化K 3_11收到PM 3_1发送的数据报文。为便于描述,运里将接口板3_1通过化K 3_ 11接收的数据报文记为报文3_1。报文3_1的内层目的IP地址为1.1.1.1。
[0040] 接口板3_1对报文3_1进行第一内部封装,第一内部封装中的第一目的忍片标识为 第一虚拟忍片标识(图3WcMpO_l为例),第一内部封装中的第一目的端口标识为第一虚拟 端口标识(图3W化K 0_1为例)。第一虚拟忍片标识为预先配置的用于指示网板可继续执 行查表进行报文转发的虚拟忍片标识,第一虚拟端口标识为预先配置的用于指示网板可继 续执行查表进行报文转发的虚拟端口标识。当VXLAN网关存在多个网板时,所有网板都会配 置上述的第一虚拟忍片标识和第一虚拟端口标识。
[0041 ]为便于描述,运里将第一内部封装后的报文3_1称为报文3_2。
[0042] 接口板3_1将报文3_2发送至网板3_1。
[0043] 网板3_1接收到报文3_2,从报文3_2的第一内部封装头中识别出第一目的忍片标 识为第一虚拟忍片标识,第一目的端口标识为第一虚拟端口标识,则对报文3_2的第一内部 封装进行解封装(即恢复了上述的报文3_1)。
[0044] 网板3_1依据报文3_1的内层目的IP地址1.1.1.1查找到匹配的ARP表项3_1。
[0045] 网板3_1依据匹配的ARP表项3_1中的下一跳表项索引即索引3_1匹配下一跳表项 3_1。
[0046] 网板3_1依据下一跳表项3_1中的出接口即聚合组31匹配聚合组表项3_1。
[0047] 网板3_1发现聚合组表项3_1中存在如表1所示的S个成员端口,则对报文3_1携带 的报文特征参数比如目的IP地址进行哈希运算,从上述表1所示的成员端口中选择一个与 哈希运算结果匹配的成员端口。运里W选择编号为2的成员端口为例,选择的成员端口包含 mod 3_2、Port 3_2〇
[004引网板3_1将报文3_1的源MAC地址修改为VXLAN网关的网关MAC地址,将报文3_1的目 的MAC地址修改为ARP表项3_1中的目的MAC地址(实质为VM 3_1的MAC地址),将报文3_1的 VLAN修改为ARP表项3_1中的VLAN(实质为VM 3_1所属的VLAN)。为便于描述,运里将修改后 的报文3_1称为报文3_3。
[0049]网板3_1对报文3_3进行第二内部封装,为便于描述,运里将第二内部封装的报文 3_3称为报文3_4。第二内部封装中的第二目的忍片标识为选择的成员端口中的mod 3_2,第 二目的端口标识为选择的成员端口中的化K3_2。
[(K)加]网板3_1向mod 3_2对应的忍片发送报文3_4emod 3_2为接口板3_2上忍片的忍片 标识,接口板3_2会接收到报文3_4。
[0051]接口板3_2接收到报文3_4,从报文3_4的第二内部封装头中确定出第二目的mod为 本地忍片3_2的忍片标识,第二目的化K为本地忍片3_2的代理端口标识,则对报文3_4的第 二内部封装进行解封装(即恢复了上述的报文3_3)。
[0化2] 接口板3_2在本地MAC表项中找到与报文3_3的目的MAC地址匹配的MAC表项;
[0053]接口板3_2依据查找到的MAC表项中的封装表项索引从本地VXLAN隧道封装表项中 匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对报文3_3进行VXLAN封装。为便 于描述,运里将VXLAN封装的报文3_3称为报文3_5, VXLAN封装中的外层目的IP地址为 2.2.2.2〇
[0054]接口板3_2依据VXLAN封装中的外层目的IP地址2.2.2.2匹配路由表项,依据匹配 的路由表项确定本地忍片仅3_2有1个出接口化K 3-23可W发送报文3_5,则通过该仅有的 1个出接口化K 3-23发送报文3_5。
[0化5] 最终,报文3_5会到达IP地址为2.2.2.2的第一VXLAN交换机。
[0056] 第一 VXLAN交换机收到报文3_5后,对报文3_5进行VXLAN解封装,并发送VXLAN解封 装后的报文至VM 3_1,实现了PM 3_1访问VM 3_1。即通过VXLAN网关实现了从VLAN至VXLAN 的报文转发。
[0057] 至此,完成实施例1的描述。
[0化引实施例2:
[0059] W图4所示的组网为例,在图4中,VXLAN网关连接在第一VXLAN和第二VXLAN之间。 第一V)(LAN的VNID为100,VM5_1至VM5_5为第一V)(LAN中的设备;第二V)(LAN的VNID为200, VM 4_1至VM 4_5为第二VXLAN中的设备。VXLAN网关包含主控板、接口板和网板。主控板在本 申请中不重点设及,图4未示出。图4W VXLAN网关仅存在一个网板为例,该仅存在的网板记 为网板4_1。图4 W VXLAN网关存在S个接口板为例,图4中的S个接口板记为接口板4_1至接 口板4_3,接口板4_1至接口板4_3上均存在一块忍片,分别记为忍片4_1至忍片4_3,忍片4_1 至忍片4_3的忍片标识分别记为mod 4_1至mod 4_3,忍片4_1至忍片4_3的代理端口标识分 别记为化:rt 4_1至化;Tt 4_3。
[0060] 图4中,网板4_1本地下发了VM 4_3的IP地址3.3.3.3匹配的ARP表项,记为ARP表项 4_1。
[0061 ] ARP表项4_1相关的VXLAN封装表项为封装表项4_1,封装表项4_1中的外层目的IP 地址为4.4.4.4,依据路由表项查找到从VXLAN网关至外层目的IP地址4.4.4.4存在S条等 价路由出接口,运S条等价路由出接口分别处于忍片4_1、忍片4_2、忍片4_3,则网板4_1上 创建一个聚合组表项,记为聚合组表项4_1,聚合组表项4_1的ID为聚合组41,聚合组表项4_ 1中的成员端口如表2所示: 「
[0064] ARP表项4_1中下一跳表项索引为索引4_1;与索引4_1匹配的下一跳表项为下一跳 表项4_1,设置下一跳表项4_1中的出接口为聚合组41。
[0065] 图4示出了VM 5_3访问VM 4_3的流程。如图4所示,网关VXLAN的接口板4_1通过端 口化K 4_33收到VM 5_3发送的数据报文。为便于描述,运里将接口板4_1通过化d 4_33接 收的数据报文记为报文4_1,报文4_1带有VXLAN封装,V化AN封装至少包含第一 VXLAN的 VNIDlOOo
[0066] 接口板4_1从报文4_1带有的VXLAN封装中获取VNID100,对报文4_1进行VXLAN解封 装,为便于描述,运里将VXLAN解封装后的报文4_1记为报文4_2。
[0067] 接口板4_1使用报文4_2的目的MAC地址和获取的VNID 100作为关键字在本地的 MC表项中查找匹配的MC表项。
[006引接口板4_1查找到匹配的MAC表项,并且报文4_2的目的MAC地址为VXLAN网关的网 关MAC地址,则对报文4_2进行第一内部封装,第一内部封装中的第一目的忍片标识为第一 虚拟忍片标识(图4仍Wchip0_l为例),第一内部封装中的第一目的端口标识为第一虚拟端 口标识(图4仍W化d 0_1为例)。为便于描述,运里将第一内部封装后的报文4_5称为报文 4_3。
[0069] 接口板4_1将报文4_3发送至网板4_1。
[0070] 网板4_1接收到报文4_3,从报文4_3的第一内部封装中识别出第一目的忍片标识 为第一虚拟忍片标识,第一目的端口标识为第一虚拟端口标识,则对报文4_3的第一内部封 装进行解封装(即恢复了上述的报文4_2)。
[0071] 网板4_1依据报文4_2的目的IP地址3.3.3.3查找到匹配的ARP表项4_1。
[0072] 网板4_1依据ARP表项4_1中的下一跳表项索引即索引4_1匹配下一跳表项4_1。
[0073] 网板4_1依据下一跳表项4_1中的出接口即聚合组41匹配聚合组表项4_1。
[0074] 网板4_1发现聚合组表项4_1中中存在如表2所示的S个成员端口,则对报文4_2携 带的报文特征参数比如目的IP地址进行哈希运算,从上述成员端口中选择一个与哈希运算 结果匹配的成员端口。运里W选择编号为3的成员端口为例,选择的成员端口包含mod 4_3、 化;Tt 4_3。
[0075] 网板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。
[0076] 网板4_1对报文4_4进行第二内部封装,为便于描述,运里将第二内部封装的报文 4_4称为报文4_5。第二内部封装中的第二目的忍片标识为选择的成员端口中的mod 4_3,第 二目的端口标识为选择的成员端口中的化K4_3。
[0077] 网板4_1向mod 4_3对应的忍片发送报文4_5emod 4_3为接口板4_3上忍片4_3的忍 片标识,接口板4_3会接收到报文4_5。
[0078] 接口板4_3接收到报文4_5,从报文4_5的第二内部封装头中确定出第二目的mod为 本地忍片4_3的忍片标识,第二目的化K为本地忍片4_3的代理端口标识,则对报文4_5的第 二内部封装进行解封装(即恢复了上述的报文4_4)。
[0079] 接口板4_3在本地MAC表项中找到与报文4_4的目的MAC地址匹配的MAC表项;
[0080] 接口板4_3依据查找到的MAC表项中的封装表项索引从本地VXLAN隧道封装表项中 匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项对报文4_4进行VXLAN封装。为便 于描述,运里将VXLAN封装的报文4_4称为报文4_6, VXLAN封装中VNID为第二VXLAN的 VNID200,VXLAN封装中的外层目的IP地址为4.4.4.4。
[0081 ]接口板4_3依据VXLAN封装中的外层目的IP地址4.4.4.4匹配路由表项,依据匹配 的路由表项确定本地忍片4_3上有Pod4-44、Port4-45共两个端口都可W发送报文4_6,贝。 对报文4_6携带的第二报文特征参数比如内层目的IP地址进行哈希运算,从Port4-44、 化的4-45中选择与哈希运算结果匹配的出接口,运里W选择化K4-44发送报文4_6为例。
[0082] 最终,报文4_6会到达IP地址为4.4.4.4的第二VXLAN交换机,第二XLAN交换机收到 报文4_6后,对报文4_6进行VXLAN解封装,并发送VXLAN解封装后的报文至VM 4_1,实现了VM 5_1访问VM 4_1。即通过VXLAN网关实现了从第一VXLAN至第二VXLAN的报文转发。
[0083] 至此,完成实施例2的描述。
[0084] W上对本发明提供的方法进行了描述,下面对本发明提供的设备进行描述:
[0085] 参见图5,图5为本发明提供的设备结构图。该设备应用于VXLAN网关,包括:
[0086] 接口板处理单元,处于接口板,用于向网板发送数据报文;
[0087] 网板处理单元,处于网板,用于接收到接口板发送的数据报文时,查找与数据报文 的内层目的IP地址匹配的ARP表项,依据匹配的ARP表项中的下一跳表项索引匹配下一跳表 项,确定匹配的下一跳表项中的出接口为聚合组标识ID,则依据聚合组ID匹配聚合组表项, 聚合组表项包含N个成员端口,从匹配的聚合组表项中选择一个成员端口,依据选择的成员 端口发送数据报文;N大于1,N个成员端口为从VXLAN网关至用于封装数据报文的VXLAN封装 表项中的外层目的IP地址的N条等价路由出接口所在忍片的忍片标识和忍片的代理端口标 识。
[0088] 优选地,网板处理单元从匹配的聚合组表项中选择一个成员端口包括:
[0089] 对数据报文携带的第一报文特征参数进行哈希运算,得到哈希运算结果;
[0090] 从匹配的聚合组表项中选择与哈希运算结果匹配的成员端口。
[0091] 优选地,网板处理单元依据选择的成员端口发送数据报文包括:
[0092] 将数据报文的源MAC地址修改为VXLAN网关的网关MC地址,将报文的目的MAC地址 修改为匹配的ARP表项中的目的MC地址,将报文的VLAN修改为匹配的ARP表项中的VLAN;
[0093] 对修改后的报文执行内部封装并向选择的成员端口中的忍片标识匹配的忍片发 送,内部封装的中的目的忍片标识为选择的成员端口中的忍片标识,目的端口标识为选择 的成员端口中的代理端口标识。
[0094] 优选地,接口板处理单元进一步接收来自网板的数据报文,确定数据报文的内部 封装中目的忍片标识、目的端口标识分别为本地忍片的忍片标识和本地忍片的代理端口标 识,对数据报文的内部封装进行解封装;依据数据报文的目的MAC地址匹配MAC表项,依据匹 配的MAC表项中的封装表项索引匹配VXLAN隧道封装表项,利用匹配的VXLAN隧道封装表项 对数据报文进行VXLAN封装,通过本地忍片上的一个出接口发送VXLAN封装后的数据报文。 [00M]优选地,接口板处理单元通过本地忍片上的一个出接口发送VXLAN封装后的数据 报文包括:
[0096] 依据VXLAN封装中的外层目的IP地址匹配路由表项;
[0097] 依据匹配的路由表项确定本地忍片有M个W上出接口发送VXLAN封装后的数据报 文,M大于1且小于或等于N;
[0098] 对VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从M个W上出 接口中选择与哈希运算结果匹配的出接口发送VXLAN封装后的数据报文。
[0099] 至此,完成本发明提供的设备结构描述。
[0100] 作为本发明的一个实施例,本发明还提供了图5所示设备的硬件结构图。如图6所 示,该设备硬件结构可包括:
[0101] 接口板和网板。
[0102] 其中,接口板上可包括:第一CPU和第一存储器。
[0103] 第一存储器,用于存放接口板处理单元;
[0104] 第一CPU,用于存放接口板处理单元运行的控制程序,W控制第一存储器中的接口 板处理单元执行如上的操作。至于第一存储器中的接口板处理单元执行的操作,其如上述 接口板处理单元执行的操作,运里不再寶述。
[01化]网板上可包括:第二CPU和第二存储器。
[0106] 第二存储器,用于存放网板处理单元;
[0107] 第二CPU,用于存放网板处理单元运行的控制程序,W控制第二存储器中的网板处 理单元执行操作。至于第二存储器中的网板处理单元执行的操作,其如上述网板处理单元 执行的操作,运里不再寶述。
[0108] 至此,完成图6所示的设备硬件结构图。
[0109] 本实施例图3-图6中仅W可作为VXLAN网关的设备内网板和接口板之间的报文转 发处理为例进行说明,但本领域技术人员可知的是图3-图6中可作为VXLAN网关的设备还具 有图1所示设备中的主控板。
[0110] W上所述仅为本发明的较佳实施例而已,并不用W限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
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地址匹配路由表项; 依据匹配的路由表项确定本地芯片有Μ个以上出接口发送所述VXLAN封装后的数据报 文,Μ大于1且小于或等于N; 对所述VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从所述Μ个以 上出接口中选择与哈希运算结果匹配的出接口发送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地址匹配路由表项; 依据匹配的路由表项确定本地芯片有Μ个以上出接口发送所述VXLAN封装后的数据报 文,Μ大于1且小于或等于N; 对所述VXLAN封装后的数据报文携带的第二报文特征参数进行哈希运算,从所述Μ个以 上出接口中选择与哈希运算结果匹配的出接口发送VXLAN封装后的数据报文。
【文档编号】H04L12/803GK105827495SQ201610005947
【公开日】2016年8月3日
【申请日】2016年1月5日
【发明人】谢瑞涛, 敖襄桥
【申请人】杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1