CN108965131A - 一种报文转发的方法及装置 - Google Patents
一种报文转发的方法及装置 Download PDFInfo
- Publication number
- CN108965131A CN108965131A CN201810848245.8A CN201810848245A CN108965131A CN 108965131 A CN108965131 A CN 108965131A CN 201810848245 A CN201810848245 A CN 201810848245A CN 108965131 A CN108965131 A CN 108965131A
- Authority
- CN
- China
- Prior art keywords
- message
- address
- exit port
- mac
- forwarding
- 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.)
- Pending
Links
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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- 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
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种报文转发方法及装置,当多个下行设备的源MAC地址相同时,所述方法包括:当首次收到下行设备发往上行设备的第一报文时,获取第一报文的VLAN标签,创建包含VLAN标签与第一出端口的对应关系的第一转发表项;获取第一报文的目的MAC地址,查找目的MAC地址对应的第二出端口,将第一报文从第二出端口转发至上行设备;当收到所述上行设备发往下行设备的第二报文时,获取第二报文的VLAN标签,查找第一转发表项,获取VLAN标签对应的第一出端口,将第二报文从第一出端口转发至下行设备。从而避免因MAC地址冲突导致的MAC地址迁移问题,保证报文可以正常转发。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种报文转发的方法及装置。
背景技术
目前在运营商城域网中,VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)技术已经较为普及,VXLAN技术可以使同一个客户不同地点的虚拟机可以实现二层互联,从而实现可以实现跨三层网络的大二层转发。这种VXLAN二层转发是在OVERLAY层面基于MAC的普通二层转发。
当前的城域网中会挂若干公有云和私有云用户,由于用户MAC数量较多,并且虚拟机软件生成的MAC不可控,有可能出现MAC地址冲突,即在私有云和公有云中的虚拟机管理软件可能产生地址冲突的虚拟机,从而会因MAC地址迁移导致报文无法转发问题。
发明内容
有鉴于此,本发明提供一种报文转发方法及装置,来避免因MAC地址冲突导致的报文无法转发的问题。
具体地,本发明是通过如下技术方案实现的:
第一方面,本发明提供一种报文转发方法,所述方法应用于交换机,当多个下行设备的源MAC地址相同时,所述方法包括:
当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
第二方面,本发明提供一种报文转发方法,所述方法应用于交换机,当多个上行设备的源MAC地址相同时,所述方法包括:
当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
第三方面,本发明提供一种报文转发装置,所述装置应用于交换机,当多个下行设备的源MAC地址相同时,所述装置包括:
第一创建单元,用于当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
查找单元,用于获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
转发单元,用于当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
第四方面,本发明提供一种报文转发装置,所述装置应用于交换机,当多个上行设备的源MAC地址相同时,所述装置包括:
第一创建单元,用于当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
查找单元,用于获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
转发单元,用于当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
由此可见,本发明可以当多个下行设备的源MAC地址相同时,在交换机首次收到下行设备发往上行设备的第一报文时,获取第一报文的VLAN标签,创建包含VLAN标签与第一出端口的对应关系的第一转发表项;获取第一报文的目的MAC地址,查找目的MAC地址对应的第二出端口,将第一报文从第二出端口转发至上行设备;当收到所述上行设备发往下行设备的第二报文时,获取第二报文的VLAN标签,查找第一转发表项,获取VLAN标签对应的第一出端口,将第二报文从第一出端口转发至下行设备;同理,当多个上行设备的源MAC地址相同时,在交换机首次收到上行设备发往下行设备的第三报文时,获取第三报文的VLAN标签,创建包含VLAN标签与第三出端口的对应关系的第三转发表项,以使交换机在收到下行设备发往上行设备的第四报文时,根据第三转发表项将该第四报文转发至上行设备。相比于现有技术,本发明可以通过学习报文的VLAN标签代替对报文的源MAC地址的学习,从而避免因MAC地址冲突导致的MAC地址迁移问题,保证报文可以正常转发。
附图说明
图1是本发明一种示例性实施方式中的一种VXLAN组网示意图;
图2是本发明一种示例性实施方式中的一种报文转发方法的处理流程图;
图3是本发明一种示例性实施方式中的另一种报文转发方法的处理流程图;
图4a本发明一种示例性实施方式中的一种报文转发装置所在交换机的硬件结构图;
图4b本发明一种示例性实施方式中的一种报文转发装置的逻辑结构图;
图5a本发明一种示例性实施方式中的另一种报文转发装置所在交换机的硬件结构图;
图5b本发明一种示例性实施方式中的另一种报文转发装置的逻辑结构图。
具体实施方式
请参考图1,为VBRAS(Virtual Broadband Remote Access Server,虚拟化宽带远程接入服务器)组网示意图,其中上行设备是VBRAS设备(对用户认证计费分配IP等的一种网络设备),下行设备是OLT(Optical Line Terminal,光线路终端)及下面的公共用户。目前可以采用VXLAN技术,在交换机上进行二层VXLAN转发,在交换机和VBRAS之间建立隧道,从而在OVERLAY层面,交换机做VXLAN二层转发。
交换机通常是基于MAC的二层VXLAN转发,报文转发流程是:假设上行报文的源MAC地址是A,目的MAC地址是B,则学习源MAC地址A到设备的MAC地址表,同时根据目的MAC地址B查MAC地址表,如果在MAC地址表中能查到目的MAC地址B(如指向上行隧道口),则从VXLAN隧道单播转发出去,如果没有目的MAC地址B对应的表项时,从VXLAN隧道广播出去。回程报文的目的MAC地址是A,源MAC地址是B,当回程报文从VXLAN隧道进入交换机时,在交换机查找目的MAC地址A对应的出端口,从而将回程报文从出端口转发出去。
若公众用户1和公众用户2的源MAC地址相同,并且业务类型相同,只是物理地点不同,在汇聚交换机上属于同一个VXLAN广播域时,两个公众用户会存在源MAC地址冲突。当公众用户1和公众用户2的源MAC地址均为A时,当交换机先收到公众用户1发送的报文,则会学习公众用户1的MAC地址A和对应的出端口1,当交换机收到公众用户2发送的报文时,又会学习公众用户2的MAC地址A对应的出端口2,这样很容易造成在交换机上MAC地址A的迁移,从而当VBRAS设备返回回程报文时,由于公众用户1和公众用户2的MAC地址相同,则无法正常转发数据报文。
为了解决现有技术存在的问题,本发明提供一种报文转发方法及装置,可以当多个下行设备的源MAC地址相同时,在交换机首次收到下行设备发往上行设备的第一报文时,获取第一报文的VLAN标签,创建包含VLAN标签与第一出端口的对应关系的第一转发表项;获取第一报文的目的MAC地址,查找目的MAC地址对应的第二出端口,将第一报文从第二出端口转发至上行设备;当收到所述上行设备发往下行设备的第二报文时,获取第二报文的VLAN标签,查找第一转发表项,获取VLAN标签对应的第一出端口,将第二报文从第一出端口转发至下行设备;同理,当多个上行设备的源MAC地址相同时,在交换机首次收到上行设备发往下行设备的第三报文时,获取第三报文的VLAN标签,创建包含VLAN标签与第三出端口的对应关系的第三转发表项,以使交换机在收到下行设备发往上行设备的第四报文时,根据第三转发表项将该第四报文转发至上行设备。相比于现有技术,本发明可以通过学习报文的VLAN标签代替对报文的源MAC地址的学习,从而避免因MAC地址冲突导致的MAC地址迁移问题,保证报文可以正常转发。
请参考图2,是本发明一种示例性实施方式中的一种报文转发的方法的处理流程图,所述方法应用于所述方法应用于交换机,在本实施例中,与交换机下行口连接的设备为下行设备,与交换机上行口连接的设备为上行设备。当多个下行设备的源MAC地址相同时,所述方法包括:
步骤201、当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
在本实施例中,当交换机首次收到任一下行设备发往上行设备的第一报文时,可以获取该第一报文携带的VLAN标签,通过学习VLAN标签和接收该第一报文的第一出端口信息,在本地创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项。
作为一个实施例,交换机可以获取第一报文的VLAN标签,根据所述VLAN标签生成MAC地址,根据生成的MAC地址与所述第一出端口的对应关系创建第一转发表项。
需要说明的是,下行设备发送的第一报文到达交换机可以有一层或两层VLAN标签(即VLAN TAG),其中:STAG指报文的外层VLAN TAG,CTAG指报文的内层VLAN TAG。获取VLAN标签生成MAC地址可以是根据报文的STAG生成,也可以是根据报文的STAG+CTAG生成。
根据VLAN标签生成MAC地址时,可以将VLAN TAG都变为16进制数,具体格式为:
当学习STAG+CTAG时,MAC地址的格式为:0-STAG-CTAG;
当学习STAG时,MAC地址的格式为:0-STAG-0;
例如,STAG=10,CTAG=20,按照上述学习模式,则根据STAG+CTAG格式生成的MAC地址为0-A-14;若仅根据STG格式,则生成的MAC地址为0-A-0。
步骤202、获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
在本实施例中,交换机可以获取该第一报文的目的MAC地址,通过查找该目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备。
需要说明的是,当交换机首次通过第二出端口(也就是交换机连接上行设备的上行口)收到所述上行设备发往所述下行设备的第二报文时,可以获取所述第二报文的源MAC地址,其中第一报文的目的MAC地址与该第二报文的源MAC地址相同,都是上行设备的MAC地址。交换机可以创建包含第二报文的源MAC地址与第二出端口的对应关系的第二转发表项。
因此当交换机获取第一报文的目的MAC地址时,由于该目的MAC地址与第二报文的源MAC地址相同,因此可以查找所述目的MAC地址对应的第二转发表项,获取所述目的MAC地址对应的第二出端口,从而可以将第一报文从第二出端口转发至该上行设备。
步骤203、当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
在本实施例中,当交换机收到所述上行设备发往所述下行设备的第二报文时,可以进一步获取该第二报文的VLAN标签,由于该第二报文的VLAN标签与第一报文的VLAN标签相同,因此可以根据该第二报文的VLAN标签查找所述第一转发表项,获取该VLAN标签对应的第一出端口,从而将第二报文从第一出端口转发至所述下行设备。
相比于现有技术的上行报文和下行报文都通过MAC学习并进行转发,本发明可以通过学习上行报文的VLAN标签来区分不同的下行设备,从而可以避免在下行设备存在MAC地址冲突时导致的MAC迁移问题,从而保证了报文的正常转发。
请参考图3,是本发明一种示例性实施方式中的一种报文转发的方法的处理流程图,所述方法应用于交换机,当多个上行设备的源MAC地址相同时,所述方法包括:
步骤301、当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
在本实施例中,当交换机首次收到任一上行行设备发往下行设备的第三报文时,可以获取该第三报文携带的VLAN标签,通过学习VLAN标签和接收该第三报文的第三出端口信息,在本地创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项。
作为一个实施例,交换机可以获取第三报文的VLAN标签,根据所述VLAN标签生成MAC地址,根据生成的MAC地址与所述第三出端口的对应关系创建第三转发表项。
需要说明的是,下行设备发送的第三报文到达交换机可以有一层或两层VLAN标签(即VLAN TAG),其中:STAG指报文的外层VLAN TAG,CTAG指报文的内层VLAN TAG。获取VLAN标签生成MAC地址可以是根据报文的STAG生成,也可以是根据报文的STAG+CTAG生成。
根据VLAN标签生成MAC地址时,可以将VLAN TAG都变为16进制数,具体格式为:
当学习STAG+CTAG时,MAC地址的格式为:0-STAG-CTAG;
当学习STAG时,MAC地址的格式为:0-STAG-0;
例如,STAG=10,CTAG=20,按照上述学习模式,则根据STAG+CTAG格式生成的MAC地址为0-A-14;若仅根据STG格式,则生成的MAC地址为0-A-0。
步骤302、获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
在本实施例中,交换机可以获取该第三报文的目的MAC地址,通过查找该目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备。
需要说明的是,当交换机首次通过第四出端口(也就是交换机连接下行设备的下行口)收到所述下行设备发往所述上行设备的第四报文时,可以获取所述第四报文的源MAC地址,其中第三报文的目的MAC地址与该第四报文的源MAC地址相同,都是下行设备的MAC地址。交换机可以创建包含第四报文的源MAC地址与第四出端口的对应关系的第四转发表项。
因此当交换机获取第三报文的目的MAC地址时,由于该目的MAC地址与第四报文的源MAC地址相同,因此可以查找所述目的MAC地址对应的第四转发表项,获取所述目的MAC地址对应的第四出端口,从而可以将第三报文从第四出端口转发至该下行设备。
步骤303、当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
在本实施例中,当交换机收到所述下行设备发往所述上行设备的第四报文时,可以进一步获取该第四报文的VLAN标签,由于该第四报文的VLAN标签与第三报文的VLAN标签相同,因此可以根据该第四报文的VLAN标签查找所述第三转发表项,获取该VLAN标签对应的第三出端口,从而将第四报文从第三出端口转发至所述上行设备。
相比于现有技术的上行报文和下行报文都通过MAC学习并进行转发,本发明可以通过学习下行报文的VLAN标签来区分不同的上行设备,从而可以避免在上行设备存在MAC地址冲突时导致的MAC迁移问题,从而保证了报文的正常转发。
为使本发明的目的、技术方案及优点更加清楚明白,下面结合图1对本发明的方案作进一步地详细说明。
假设图1中的交换机采用VXLAN二层转发(在同一VXLAN ID的广播域中,VSI VPNA,VXLAN 1000),公众用户1和公众用户2的MAC地址相同,VBRAS1和VBRAS2的MAC地址不同。交换机的下行口可采用按VLAN标签(STAG+CTAG)学习,按MAC转发模式;上行口可采用按MAC学习模式,按VLAN标签(STAG+CTAG)转发。
公众用户1到VBRAS1的上行报文在交换机的转发流程如下:
下行口1收到公众用户1发来的上行报文(其中DMAC=0-0-3,SMAC=0-0-1,STAG=10,CTAG=20),按照VLAN学习模式,根据公众用户1的报文STAG+CTAG生成本机MAC地址0-A-14,创建包含该MAC地址0-A-14与下行口1对应关系的转发表项,如表1中的编号1的表项所示。交换机可以对该上行报文按照MAC转发模式,在本机MAC地址表中查DMAC=0-0-3对应的表项,如表1中编号3的表项所示,获取该出端口为上行口1,从而从上行口1将上行报文转发给VBRAS1。
VBRAS1发送公众用户1的回程下行报文的转发流程如下:
上行口1收到VBRAS1发来的下行报文(其中DMAC=0-0-1,SMAC=0-0-3,STAG=10,CTAG=20),按照MAC学习模式,根据VBRAS1的报文SMAC=0-0-3生成本机MAC地址表0-0-3,如表1中编号3的表项所示。按照VLAN转发模式,在本机MAC地址表中根据STAG+CTAG查对应的DMAC=0-A-14,如表1中编号1的表项所示,查找到DMAC=0-A-14对应的出端口是下行口1,从而从下行口1将下行报文转发给公众用户1。
公众用户2到VBRAS2的上行报文在交换机转发流程如下:
下行口2收到公众用户2发来的上行报文(DMAC=0-0-4,SMAC=0-0-1,STAG=10,CTAG=30),按照VLAN学习模式,根据公众用户2的报文STAG+CTAG生成本机MAC地址表0-A-1E,创建包含该MAC地址0-A-1E与下行口2对应关系的转发表项,如表1中的编号2的表项所示。然后按照MAC转发模式,在本机MAC地址表中查DMAC=0-0-4,如表1中编号4的表项所示,查找到DMAC=0-0-4对应的出端口为上行口2,从而从上行口2将该上行报文转发给VBRAS2。
VBRAS2到公众用户2的回程下行报文的转发流程如下:
上行口2收到VBRAS2发来的上行报文(其中DMAC=0-0-1,SMAC=0-0-4,STAG=10,CTAG=30),按照MAC学习模式,根据VBRAS2的报文SMAC生成本机MAC地址表0-0-4,如表1中编号4的表项所示。按照VLAN转发模式,在本机MAC地址表中根据STAG+CTAG查DMAC=0-A-1E对应的表项,如表1中编号2的表项所示,查找到该表项中DMAC=0-A-1E对应的出端口是下行口2,从而从下行口2将该下行报文转发给公众用户2。
在此例中,汇聚交换机上实际转发所遵从的本机MAC表如下:
表1
在此通过在交换机上指定VXLAN二层转发的VLAN和MAC学习转发组合,报文可以在不被修改的情况下正常单播转发,避免了因为多个公众用户MAC地址相同而导致的冲突。
以此类推,当公众用户1和公众用户2的MAC地址不相同,VBRAS1和VBRAS2的MAC地址相同时,交换机的上行口可采用按VLAN标签(STAG+CTAG)学习,按MAC转发模式;下行口可采用按MAC学习模式,按VLAN标签(STAG+CTAG)转发的方法。转发流程与上述流程类似,此处不再赘述。
基于相同的构思,本发明还提供一种报文转发装置,该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的报文转发装置作为一个逻辑意义上的装置,是通过其所在装置的CPU将存储器中对应的计算机程序指令读取后运行而成。
请参考图4a,是本发明一种示例性实施方式中的一种报文转发装置400,所述装置应用于交换机,该装置基本运行环境包括CPU,存储器以及其他硬件,从逻辑层面上来看,该装置400的逻辑结构如图4b所示,当多个下行设备的源MAC地址相同时,所述装置包括:
第一创建单元401,用于当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
查找单元402,用于获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
转发单元403,用于当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
作为一个实施例,所述装置还包括:
第二创建单元404,用于当首次收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的源MAC地址,创建包含所述源MAC地址与第二出端口的对应关系的第二转发表项;
所述查找单元402,具体用于查找所述目的MAC地址对应的第二转发表项,获取所述目的MAC地址对应的第二出端口,所述目的MAC地址与所述源MAC地址相同。
作为一个实施例,所述第一创建单元401,具体用于获取所述第一报文的VLAN标签,根据所述VLAN标签生成MAC地址,根据生成的MAC地址与所述第一出端口的对应关系创建第一转发表项。
请参考图5a,是本发明一种示例性实施方式中的一种报文转发装置500,所述装置应用于交换机,该装置基本运行环境包括CPU,存储器以及其他硬件,从逻辑层面上来看,该装置500的逻辑结构如图5b所示,当多个上行设备的源MAC地址相同时,所述装置包括:
第一创建单元501,用于当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
查找单元502,用于获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
转发单元503,用于当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
作为一个实施例,所述装置还包括:
第二创建单元504,用于当首次收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的源MAC地址,创建包含所述源MAC地址与第四出端口的对应关系的第二转发表项;
所述查找单元502,具体用于查找所述目的MAC地址对应的第四转发表项,获取所述目的MAC地址对应的第四出端口,所述目的MAC地址与所述源MAC地址相同。
作为一个实施例,所述第一创建单元501,具体用于获取所述第三报文的VLAN标签,根据所述VLAN标签生成MAC地址;根据生成的MAC地址与所述第三出端口的对应关系创建第三转发表项。
综上所述,本发明可以当多个下行设备的源MAC地址相同时,在交换机首次收到下行设备发往上行设备的第一报文时,获取第一报文的VLAN标签,创建包含VLAN标签与第一出端口的对应关系的第一转发表项;获取第一报文的目的MAC地址,查找目的MAC地址对应的第二出端口,将第一报文从第二出端口转发至上行设备;当收到所述上行设备发往下行设备的第二报文时,获取第二报文的VLAN标签,查找第一转发表项,获取VLAN标签对应的第一出端口,将第二报文从第一出端口转发至下行设备;同理,当多个上行设备的源MAC地址相同时,在交换机首次收到上行设备发往下行设备的第三报文时,获取第三报文的VLAN标签,创建包含VLAN标签与第三出端口的对应关系的第三转发表项,以使交换机在收到下行设备发往上行设备的第四报文时,根据第三转发表项将该第四报文转发至上行设备。相比于现有技术,本发明可以通过学习报文的VLAN标签代替对报文的源MAC地址的学习,从而避免因MAC地址冲突导致的MAC地址迁移问题,保证报文可以正常转发。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种报文转发方法,其特征在于,所述方法应用于交换机,当多个下行设备的源媒体访问控制MAC地址相同时,所述方法包括:
当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的可扩展虚拟局域网络VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当首次收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的源MAC地址,创建包含所述源MAC地址与第二出端口的对应关系的第二转发表项;
所述查找所述目的MAC地址对应的第二出端口,具体为:
查找所述目的MAC地址对应的第二转发表项,获取所述目的MAC地址对应的第二出端口,所述目的MAC地址与所述源MAC地址相同。
3.根据权利要求1所述的方法,其特征在于,所述获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项,包括:
获取所述第一报文的VLAN标签,根据所述VLAN标签生成MAC地址;
根据生成的MAC地址与所述第一出端口的对应关系创建第一转发表项。
4.一种报文转发方法,其特征在于,所述方法应用于交换机,当多个上行设备的源MAC地址相同时,所述方法包括:
当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当首次收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的源MAC地址,创建包含所述源MAC地址与第四出端口的对应关系的第二转发表项;
所述查找所述目的MAC地址对应的第四出端口,具体为:
查找所述目的MAC地址对应的第四转发表项,获取所述目的MAC地址对应的第四出端口,所述目的MAC地址与所述源MAC地址相同。
6.根据权利要求4所述的方法,其特征在于,所述获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项,包括:
获取所述第三报文的VLAN标签,根据所述VLAN标签生成MAC地址;
根据生成的MAC地址与所述第三出端口的对应关系创建第三转发表项。
7.一种报文转发装置,其特征在于,所述装置应用于交换机,当多个下行设备的源MAC地址相同时,所述装置包括:
第一创建单元,用于当首次收到下行设备发往上行设备的第一报文时,获取所述第一报文的VLAN标签,创建包含所述VLAN标签与第一出端口的对应关系的第一转发表项;
查找单元,用于获取所述第一报文的目的MAC地址,查找所述目的MAC地址对应的第二出端口,将所述第一报文从所述第二出端口转发至所述上行设备;
转发单元,用于当收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的VLAN标签,查找所述第一转发表项,获取所述VLAN标签对应的第一出端口,将所述第二报文从所述第一出端口转发至所述下行设备。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二创建单元,用于当首次收到所述上行设备发往所述下行设备的第二报文时,获取所述第二报文的源MAC地址,创建包含所述源MAC地址与第二出端口的对应关系的第二转发表项;
所述查找单元,具体用于查找所述目的MAC地址对应的第二转发表项,获取所述目的MAC地址对应的第二出端口,所述目的MAC地址与所述源MAC地址相同。
9.根据权利要求7所述的装置,其特征在于,所述第一创建单元,具体用于获取所述第一报文的VLAN标签,根据所述VLAN标签生成MAC地址,根据生成的MAC地址与所述第一出端口的对应关系创建第一转发表项。
10.一种报文转发装置,其特征在于,所述装置应用于交换机,当多个上行设备的源MAC地址相同时,所述装置包括:
第一创建单元,用于当首次收到上行设备发往下行设备的第三报文时,获取所述第三报文的VLAN标签,创建包含所述VLAN标签与第三出端口的对应关系的第三转发表项;
查找单元,用于获取所述第三报文的目的MAC地址,查找所述目的MAC地址对应的第四出端口,将所述第三报文从所述第四出端口转发至所述下行设备;
转发单元,用于当收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的VLAN标签,查找所述第三转发表项,获取所述VLAN标签对应的第三出端口,将所述第四报文从所述第三出端口转发至所述上行设备。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二创建单元,用于当首次收到所述下行设备发往所述上行设备的第四报文时,获取所述第四报文的源MAC地址,创建包含所述源MAC地址与第四出端口的对应关系的第二转发表项;
所述查找单元,具体用于查找所述目的MAC地址对应的第四转发表项,获取所述目的MAC地址对应的第四出端口,所述目的MAC地址与所述源MAC地址相同。
12.根据权利要求10所述的装置,其特征在于,所述第一创建单元,具体用于获取所述第三报文的VLAN标签,根据所述VLAN标签生成MAC地址;根据生成的MAC地址与所述第三出端口的对应关系创建第三转发表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810848245.8A CN108965131A (zh) | 2018-07-27 | 2018-07-27 | 一种报文转发的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810848245.8A CN108965131A (zh) | 2018-07-27 | 2018-07-27 | 一种报文转发的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108965131A true CN108965131A (zh) | 2018-12-07 |
Family
ID=64466366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810848245.8A Pending CN108965131A (zh) | 2018-07-27 | 2018-07-27 | 一种报文转发的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108965131A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109495370A (zh) * | 2018-12-29 | 2019-03-19 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN110149263A (zh) * | 2019-04-17 | 2019-08-20 | 浪潮思科网络科技有限公司 | 一种vlan access端口功能扩展的装置及方法 |
CN113794657A (zh) * | 2021-09-14 | 2021-12-14 | 迈普通信技术股份有限公司 | Mac地址迁移处理方法、装置及交换设备 |
CN114039910A (zh) * | 2021-11-17 | 2022-02-11 | 杭州云合智网技术有限公司 | 基于分组标签策略的数据转发的方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744560A (zh) * | 2004-09-03 | 2006-03-08 | 上海贝尔阿尔卡特股份有限公司 | 一种控制网络mac地址冲突的方法、装置及其*** |
CN1980180A (zh) * | 2005-11-24 | 2007-06-13 | 武汉烽火网络有限责任公司 | 线速率学习和查找二层转发表项的方法和*** |
CN101043355A (zh) * | 2006-05-19 | 2007-09-26 | 华为技术有限公司 | 一种防止mac地址欺骗的方法 |
CN101291350A (zh) * | 2008-06-02 | 2008-10-22 | 中兴通讯股份有限公司 | 媒体访问控制地址冲突的处理方法和装置 |
EP2192725A1 (en) * | 2008-12-01 | 2010-06-02 | Fujitsu Limited | Packet switch being partitioned into virtual LANs (VLANs) |
CN104243630A (zh) * | 2014-09-29 | 2014-12-24 | 杭州华三通信技术有限公司 | Vxlan网络中的mac地址学习方法及装置 |
CN104378296A (zh) * | 2013-08-15 | 2015-02-25 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN108075956A (zh) * | 2016-11-16 | 2018-05-25 | 新华三技术有限公司 | 一种数据处理方法和装置 |
-
2018
- 2018-07-27 CN CN201810848245.8A patent/CN108965131A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744560A (zh) * | 2004-09-03 | 2006-03-08 | 上海贝尔阿尔卡特股份有限公司 | 一种控制网络mac地址冲突的方法、装置及其*** |
CN1980180A (zh) * | 2005-11-24 | 2007-06-13 | 武汉烽火网络有限责任公司 | 线速率学习和查找二层转发表项的方法和*** |
CN101043355A (zh) * | 2006-05-19 | 2007-09-26 | 华为技术有限公司 | 一种防止mac地址欺骗的方法 |
CN101291350A (zh) * | 2008-06-02 | 2008-10-22 | 中兴通讯股份有限公司 | 媒体访问控制地址冲突的处理方法和装置 |
EP2192725A1 (en) * | 2008-12-01 | 2010-06-02 | Fujitsu Limited | Packet switch being partitioned into virtual LANs (VLANs) |
CN104378296A (zh) * | 2013-08-15 | 2015-02-25 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN104243630A (zh) * | 2014-09-29 | 2014-12-24 | 杭州华三通信技术有限公司 | Vxlan网络中的mac地址学习方法及装置 |
CN108075956A (zh) * | 2016-11-16 | 2018-05-25 | 新华三技术有限公司 | 一种数据处理方法和装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109495370A (zh) * | 2018-12-29 | 2019-03-19 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN109495370B (zh) * | 2018-12-29 | 2020-11-24 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN110149263A (zh) * | 2019-04-17 | 2019-08-20 | 浪潮思科网络科技有限公司 | 一种vlan access端口功能扩展的装置及方法 |
CN110149263B (zh) * | 2019-04-17 | 2021-08-06 | 浪潮思科网络科技有限公司 | 一种vlan access端口功能扩展的装置及方法 |
CN113794657A (zh) * | 2021-09-14 | 2021-12-14 | 迈普通信技术股份有限公司 | Mac地址迁移处理方法、装置及交换设备 |
CN113794657B (zh) * | 2021-09-14 | 2023-10-31 | 迈普通信技术股份有限公司 | Mac地址迁移处理方法、装置及交换设备 |
CN114039910A (zh) * | 2021-11-17 | 2022-02-11 | 杭州云合智网技术有限公司 | 基于分组标签策略的数据转发的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10547463B2 (en) | Multicast helper to link virtual extensible LANs | |
US9698995B2 (en) | Systems and methods for providing multicast routing in an overlay network | |
US7808992B2 (en) | Platform independent implementation of private VLANS | |
CN108965131A (zh) | 一种报文转发的方法及装置 | |
US20210029615A1 (en) | Systems and method for routing data | |
US11665088B2 (en) | Assisted replication in software defined network | |
CN102263646B (zh) | 交换机的分布式控制平面内的多播 | |
CN105162704B (zh) | Overlay网络中组播复制的方法及装置 | |
US10999195B1 (en) | Multicast VPN support in data centers using edge replication tree | |
CN112804112B (zh) | 一种sd-wan网络环境中多云访问的方法 | |
US10841274B2 (en) | Federated virtual datacenter apparatus | |
CN103944828A (zh) | 一种协议报文的传输方法和设备 | |
US20220345331A1 (en) | Two-layer private line network system, configuration method, and device | |
CN107547242B (zh) | Vm配置信息的获取方法及装置 | |
US20170078115A1 (en) | Multi-homed access | |
US11296997B2 (en) | SDN-based VPN traffic scheduling method and SDN-based VPN traffic scheduling system | |
CN112422398B (zh) | 消息传输方法及通信装置 | |
CN109088819A (zh) | 一种报文转发方法、交换机及计算机可读存储介质 | |
US20150381384A1 (en) | Edge Network Virtualization | |
US20150055662A1 (en) | Internet group management protocol (igmp) leave message processing synchronization | |
US20140092902A1 (en) | Method for processing multicast group, dci router and system | |
Hartpence | Packet Guide to Routing and Switching: Exploring the Network Layer | |
CN101309154B (zh) | 报文的发送方法、发送装置和传输*** | |
Cisco | Introduction to Cisco Router Configuration Cisco Internetwork Operating System Release 10.3 | |
Chen et al. | Svdc: a highly scalable isolation architecture for virtualized layer-2 data center networks |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |