从VLAN至VXLAN的组播数据报文转发方法和设备与流程

文档序号:11959843阅读:来源:国知局

技术特征:

1.一种从虚拟局域网VLAN至虚拟可扩展局域网VXLAN的组播数据报文转发方法,其特征在于,该方法包括:

VXLAN交换机的接口板接收外部来自VLAN的组播数据报文,在本地的三层组播表中查找到与组播数据报文的目的IP地址和目的MAC地址匹配的三层组播组表项,在所述三层组播组表项中存在的至少一个组播组成员端口为第一虚拟端口时,将所述组播数据报文发送至所述VXLAN交换机的网板;

所述VXLAN交换机的网板接收接口板发送的组播数据报文,确定接收的组播数据报文由本网板进行三层组播转发,则在本地三层组播组表中找到与组播数据报文的目的IP地址和目的MAC地址匹配的三层组播组表项,在找到的三层组播组表项中的组播组成员端口为VXLAN隧道口时,将通过所述组播组成员端口发送的组播数据报文的源MAC地址的修改为所述VXLAN交换机的网关MAC地址,将修改后的组播数据报文发送至VXLAN交换机上与所述组播组成员端口相关联的接口板;

所述VXLAN交换机上与所述组播组成员端口相关联的接口板接收网板发送的组播数据报文,对接收的组播数据报文进行VXLAN封装并向VXLAN转发。

2.根据权利要求1所述的方法,其特征在于,所述将组播数据报文发送至所述VXLAN交换机的网板包括:

对组播数据报文进行第一内部封装,第一内部封装包含:第一目的芯片标识mod和第一目的端口标识port,第一目的mod为第一虚拟芯片的标识,第一目的port为第一虚拟端口的标识;

在本接口板仅连接一个网板时,通过本接口板连接网板的互连口发送第一内部封装的组播数据报文;在本接口板连接多个网板时,通过与多个网板分别连接的互连口中的一个互连口发送第一内部封装的组播数据报文。

3.根据权利要求2所述的方法,其特征在于,所述确定接收的组播数据 报文由本网板进行三层组播转发包括:

从接收的组播数据报文的第一内部封装头中确定出第一目的mod和第一目的port;如果确定出的第一目的mod为第一虚拟芯片的标识,第一目的port为第一虚拟端口的标识,则对组播数据报文的第一内部封装进行解封装,如果解封装后的组播数据报文的目的MAC地址为组播MAC地址、目的IP地址为组播IP地址,则确定接收的组播数据报文由本网板进行三层组播转发。

4.根据权利要求1所述的方法,其特征在于,所述将修改后的组播数据报文发送至VXLAN交换机上与所述组播组成员端口相关联的接口板包括:

依据所述组播组成员端口确定目标出端口,选择所述目标出端口所在的接口板为与所述组播组成员端口相关联的接口板;

对修改后的组播数据报文进行第二内部封装,将第二内部封装的报文发送至所述目标出端口所在的接口板;第二内部封装包含:所述组播组成员端口对应的VXLAN隧道封装表项索引和虚拟转发实例VFI;

所述对接收的组播数据报文进行VXLAN封装并向VXLAN转发包括:

从组播数据报文的第二内部封装头中确定出VXLAN隧道封装表项索引和VFI并对组播数据报文的第二内部封装进行解封装,依据所述VXLAN隧道封装表项索引在本地找到对应的VXLAN隧道封装表项,从预先设置的VFI和VNID之间的映射关系中找到与该确定出的VFI具有映射关系的VNID,利用所述VXLAN隧道封装表项和找到的VNID对组播数据报文进行VXLAN封装并通过该找到的VXLAN隧道封装表项中的出端口发送。

5.根据权利要求4所述的方法,其特征在于,依据所述组播组成员端口确定目标出端口包括:

在本地找到与所述组播组成员端口相关联的VXLAN隧道对应的下一跳表项;

在所述下一跳表项中仅有一个下一跳时,确定所述下一跳表项中所述下一跳为目标下一跳,在所述下一跳表项中有两个以上下一跳时,从所述下一跳表项中的两个以上下一跳中选择一个下一跳确定为目标下一跳;

在所述下一跳表项中与所述目标下一跳对应的出端口为单一的物理端口时,确定所述单一的物理端口为目标出端口;在所述下一跳表项中与所述目标下一跳对应的出端口为至少两个物理端口聚合形成的聚合端口,确定所述聚合端口中一个物理端口为所述目标出端口。

6.一种从虚拟局域网VLAN至虚拟可扩展局域网VXLAN的组播数据报文转发设备,其特征在于,该设备包括:

接口板处理单元,处于所述VXLAN交换机的接口板,用于接收外部来自VLAN的组播数据报文,在本地的三层组播表中查找到与组播数据报文的目的IP地址和目的MAC地址匹配的三层组播组表项,在所述三层组播组表项中存在的至少一个组播组成员端口为第一虚拟端口时,将所述组播数据报文发送至所述VXLAN交换机的网板;以及,接收网板发送的组播数据报文,对接收的组播数据报文进行VXLAN封装并向VXLAN转发;

网板处理单元,处于所述VXLAN交换机的网板,用于接收接口板发送的组播数据报文,确定接收的组播数据报文由本网板进行三层组播转发,则在本地三层组播组表中找到与组播数据报文的目的IP地址和目的MAC地址匹配的三层组播组表项,在找到的三层组播组表项中的组播组成员端口为VXLAN隧道口时,将通过所述组播组成员端口发送的组播数据报文的源MAC地址的修改为所述VXLAN交换机的网关MAC地址,将修改后的组播数据报文发送至VXLAN交换机上与所述组播组成员端口相关联的接口板。

7.根据权利要求6所述的设备,其特征在于,所述接口板处理单元通过以下步骤将组播数据报文发送至所述VXLAN交换机的网板:

对组播数据报文进行第一内部封装,第一内部封装包含:第一目的芯片标识mod和第一目的端口标识port,第一目的mod为第一虚拟芯片的标识,第一目的port为第一虚拟端口的标识;

在本接口板仅连接一个网板时,通过本接口板连接网板的互连口发送第一内部封装的组播数据报文;在本接口板连接多个网板时,通过与多个网板分别连接的互连口中的一个互连口发送第一内部封装的组播数据报文。

8.根据权利要求7所述的设备,其特征在于,所述网板处理单元通过以下步骤确定接收的组播数据报文由本网板进行三层组播转发:从接收的组播数据报文的第一内部封装头中确定出第一目的mod和第一目的port;如果确定出的第一目的mod为第一虚拟芯片的标识,第一目的port为第一虚拟端口的标识,则对组播数据报文的第一内部封装进行解封装,如果解封装后的组播数据报文的目的MAC地址为组播MAC地址、目的IP地址为组播IP地址,则确定接收的组播数据报文由本网板进行三层组播转发。

9.根据权利要求6所述的设备,其特征在于,所述网板处理单元通过以下步骤将修改后的组播数据报文发送至VXLAN交换机上与所述组播组成员端口相关联的接口板:

依据所述组播组成员端口确定目标出端口,选择所述目标出端口所在的接口板为与所述组播组成员端口相关联的接口板;对修改后的组播数据报文进行第二内部封装,将第二内部封装的报文发送至所述目标出端口所在的接口板;第二内部封装包含:所述组播组成员端口对应的VXLAN隧道封装表项索引和虚拟转发实例VFI;

所述接口板处理单元通过以下步骤对接收的组播数据报文进行VXLAN封装并向VXLAN转发:

从组播数据报文的第二内部封装头中确定出VXLAN隧道封装表项索引和VFI并对组播数据报文的第二内部封装进行解封装,依据所述VXLAN隧道封装表项索引在本地找到对应的VXLAN隧道封装表项,从预先设置的VFI和VNID之间的映射关系中找到与该确定出的VFI具有映射关系的VNID,利用所述VXLAN隧道封装表项和找到的VNID对组播数据报文进行VXLAN封装并通过该找到的VXLAN隧道封装表项中的出端口发送。

10.根据权利要求9所述的设备,其特征在于,所述网板处理单元通过以下步骤依据所述组播组成员端口确定目标出端口:

在本地找到与所述组播组成员端口相关联的VXLAN隧道对应的下一跳表项;

在所述下一跳表项中仅有一个下一跳时,确定所述下一跳表项中所述下一跳为目标下一跳,在所述下一跳表项中有两个以上下一跳时,从所述下一跳表项中的两个以上下一跳中选择一个下一跳确定为目标下一跳;

在所述下一跳表项中与所述目标下一跳对应的出端口为单一的物理端口时,确定所述单一的物理端口为目标出端口;在所述下一跳表项中与所述目标下一跳对应的出端口为至少两个物理端口聚合形成的聚合端口,确定所述聚合端口中一个物理端口为所述目标出端口。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1