CN104811377B - 生成媒体接入控制表的方法及网络设备 - Google Patents
生成媒体接入控制表的方法及网络设备 Download PDFInfo
- Publication number
- CN104811377B CN104811377B CN201410043078.1A CN201410043078A CN104811377B CN 104811377 B CN104811377 B CN 104811377B CN 201410043078 A CN201410043078 A CN 201410043078A CN 104811377 B CN104811377 B CN 104811377B
- Authority
- CN
- China
- Prior art keywords
- network equipment
- topology
- message
- identifier
- mac address
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种生成媒体接入控制表的方法和网络设备,用以减少MAC表项替换。所述方法包括:远端网络设备接收来自聚合组包含的第一网络设备的第一报文,所述第一报文的源地址包含第一主机的MAC地址,第一报文包含第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识,所述第一标识为所述第一主机所属的广播域的标识;所述远端网络设备根据所述第一报文生成第一MAC表项,所述第一MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第一拓扑的拓扑标识和所述第一网络设备的标识,所述第一主机的MAC地址为所述第一MAC表项中的目的地址。
Description
技术领域
本发明涉及网络通信技术,尤其涉及一种生成媒体接入控制(英文全称为MediaAccess Control,英文缩写为MAC)表的方法、生成报文的方法、远端网络设备及第一网络设备。
背景技术
支持中间***到中间***的路由选择协议(英文全称为Intermediate System ToIntermediate System Routing Protocol,英文缩写为ISIS)或开放式最短路径优先(英文全称为Open Shortest Path First,英文缩写为OSPF)路由协议的网络中的设备在进行MAC地址学习时,会发生MAC表项替换的问题。
现仅以支持多链路透明互联协议(英文全称为Transparent Interconnection ofLots of Links,英文缩写为TRILL)的网络为例,对TRILL网络中存在的MAC表项替换的问题进行说明,具体如下:
TRILL网络中的交换机同时具备二层转发功能和三层路由功能,可称为路由桥(英文全称为Router Bridge或RBridges,英文缩写为RB)或TRILL交换机。TRILL网络中,RB运行ISIS路由协议,来实现RB到RB之间的路由,以取代过去的生成树协议(英文全称为SpanTree Protocol,英文缩写为STP),从而可以按照最短路径进行数据转发,并且使得多路径路由成为可能,使得带宽的利用更加充分。
TRILL协议在数据包中封装了TRILL交换机的别名(英文为nickname)、虚拟局域网(英文全称为Virtual Local Area Network,英文缩写为VLAN)信息、及MAC地址信息。其中,nickname是TRILL交换机的标识(英文为identifier);MAC地址是VLAN内的可与路由桥进行通信的主机的标识。当VLAN内的同一主机通过一个聚合组中的不同的RB与远端TRILL交换机所连的主机进行通信时,远端TRILL交换机在对该主机的MAC地址进行学习时,会发生MAC表项替换。当主机通过聚合组中的RB1向远端TRILL交换机RB3发送报文后,RB3会生成主机的第一MAC表项,第一MAC表项中的出口路由桥信息为RB1的nickname。但是主机还可能继续通过聚合组中的RB2向RB3发送报文,在这种情况下,RB3会生成主机的第二MAC表项,第二MAC表项中的出口路由桥信息为RB2的nickname。RB3需要使用第二MAC表项替换第一MAC表项,这就出现MAC表项替换。MAC表项替换可能会降低设备或设备所在的***的稳定性。
为了尽量避免MAC表项替换,现有的生成媒体接入控制表的TRILL网络中,利用伪节点RBv的nickname作为聚合组中的RB的nickname。例如:在主机通过聚合组中的RB1或RB2向RB3发送报文后,RB3生成的MAC表项中的出口路由桥信息均为RBv的nickname,避免了MAC表项替换。
TRILL网络采用上述包含RBv的nickname的MAC表项转发报文时,与RB3通信的RBn(RB1或RB2)需唯一的占用TRILL网络的一颗组播树,RB3需支持RBn数量一样多的组播树,而RB3所支持的组播树的数量是一定的,导致该方法可扩展性较差。
发明内容
有鉴于此,本发明实施例提供一种生成媒体接入控制表的方法、生成报文的方法、远端网络设备和第一网络设备,为尽量避免MAC表项的替换和实现扩展性强的报文发送方法提供帮助。
本发明实施例提供的技术方案如下。
第一方面,提供了一种生成媒体接入控制表的方法,包括:
远端网络设备接收来自聚合组包含的第一网络设备的第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识,所述第一标识为所述第一主机所属的广播域的标识;
所述远端网络设备根据所述第一报文生成第一MAC表项,所述第一MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第一拓扑的拓扑标识和所述第一网络设备的标识,所述第一主机的MAC地址为所述第一MAC表项中的目的地址。
在上述第一方面的第一种可能的实现方式中,还包括:
所述远端网络设备接收第一下行报文,所述第一下行报文的目的地址包含所述第一主机的MAC地址,且所述第一下行报文包含所述第一标识;
根据所述第一主机的MAC地址和所述第一标识查询所述第一MAC表项,确定所述第一拓扑的拓扑标识和所述第一网络设备的标识;
将所述第一拓扑的拓扑标识和所述第一网络设备的标识添加至所述第一下行报文,得到经扩展的第一下行报文;
通过所述第一拓扑,向所述第一网络设备发送所述经扩展的第一下行报文。
结合第一方面或第一方面的第一种可能的实现方式,还提供了第一方面的第二种可能的实现方式,还包括:
所述远端网络设备接收来自所述聚合组包含的第二网络设备的第二报文,所述第二报文的源地址包含所述第一主机的MAC地址,所述第二报文包含所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第二网络设备与所述第一网络设备不属于同一个拓扑;
所述远端网络设备根据所述第二报文生成第二MAC表项,所述第二MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第二拓扑的拓扑标识和所述第二网络设备的标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址。
结合第一方面或第一方面的第一种可能的实现方式,还提供了第一方面的第三种可能的实现方式,还包括:
所述远端网络设备为所述聚合组中的第二网络设备生成第二MAC表项,所述第二MAC表项包括所述第一主机的MAC地址、所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址,所述第二网络设备与所述第一网络设备不属于同一个拓扑。
结合第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,还提供了第一方面的第四种可能的实现方式,还包括:
所述远端网络设备接收第二下行报文,所述第二下行报文的目的地址包含所述第一主机的MAC地址,所述第二下行报文包含所述第一标识;
根据转发策略、所述第一主机的MAC地址、所述第一标识、所述远端网络设备中的所述第一MAC表项和所述第二MAC表项,从所述第一网络设备和所述第二网络设备中确定第i网络设备;
将所述第i网络设备的标识和包括所述第i网络设备的拓扑的拓扑标识添加至所述第二下行报文,得到经扩展的第二下行报文;
通过所述包括所述第i网络设备的拓扑,向所述第i网络设备发送所述经扩展的第二下行报文。
结合上述第一方面或第一方面的任意一种可能的实现方式,还提供了第一方面的第五种实现方式,所述远端网络设备接收来自聚合组包含的第一网络设备的第一报文之前,还包括:
远端网络设备接收来自聚合组中的第一网络设备的连接建立报文,所述连接建立报文包含所述第一拓扑的拓扑标识;
所述远端网络设备在所述第一拓扑的拓扑标识包含于拓扑标识集合时,与所述第一网络设备建立连接,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识。
结合上述第一方面或第一方面的任意一种可能的实现方式,还提供了第一方面的第六种实现方式,还包括:
所述远端网络设备接收所述聚合组中的第j网络设备发送的地址撤销报文,所述第j网络设备为所述聚合组中的任意一台网络设备,所述地址撤销报文为所述第j网络设备根据探测到的故障链路生成的,所述地址撤销报文包含第一标识、所述第j网络设备的标识和包括所述第j网络设备的第j拓扑的拓扑标识;
所述远端网络设备根据所述地址撤销报文,删除第j MAC表项,所述第j MAC表项包含所述第一标识、所述第j网络设备的标识和所述第j拓扑的拓扑标识。
结合上述第一方面或第一方面的任意一种可能的实现方式,还提供了第一方面的第七种实现方式,所述方法应用于多链路透明互联协议TRILL网络,所述远端网络设备为远端交换机,所述聚合组包含的网络设备为交换机。
第二方面,提供了一种生成报文的方法,包括:
第一网络设备接收上行报文,所述上行报文的源地址包含第一主机的MAC地址,所述上行报文包含第一标识,所述第一标识为所述第一主机所属的广播域的标识;
获得第一报文,所述第一报文的源地址包含所述第一主机的MAC地址,所述第一报文包含所述第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识;
向远端网络设备发送所述第一报文。
在上述第二方面的第一种可能的实现方式中,还包括:
所述第一网络设备接收来自远端网络设备的连接建立报文,所述连接建立报文包含拓扑标识集合,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识;
所述第一网络设备在所述第一拓扑的拓扑标识包含于所述拓扑标识集合时,与所述远端网络设备建立连接。
第三方面,提供了一种远端网络设备,包括:
接收单元,用于接收来自聚合组包含的第一网络设备的第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识,所述第一标识为所述第一主机所属的广播域的标识;
生成单元,用于根据所述第一报文生成第一MAC表项,所述第一MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第一拓扑的拓扑标识和所述第一网络设备的标识,所述第一主机的MAC地址为所述第一MAC表项中的目的地址。
在上述第三方面的第一种可能的实现方式中,还包括:查询单元、第一扩展单元和第一转发单元;
所述接收单元还用于接收第一下行报文,所述第一下行报文的目的地址包含所述第一主机的MAC地址,且所述第一下行报文包含所述第一标识;
所述查询单元用于根据所述第一主机的MAC地址和所述第一标识查询所述第一MAC表项,确定所述第一拓扑的拓扑标识和所述第一网络设备的标识;
所述第一扩展单元用于将所述第一拓扑的拓扑标识和所述第一网络设备的标识添加至所述第一下行报文,得到经扩展的第一下行报文;
所述第一转发单元用于通过所述第一拓扑,向所述第一网络设备发送所述经扩展的第一下行报文。
结合上述第三方面或第三方面的第一种可能的实现方式,还提供了第三方面的第二种可能的实现方式,包括:
所述接收单元还用于接收来自所述聚合组包含的第二网络设备的第二报文,所述第二报文的源地址包含所述第一主机的MAC地址,所述第二报文包含所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第二网络设备与所述第一网络设备不属于同一个拓扑;
所述生成单元还用于根据所述第二报文生成第二MAC表项,所述第二MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第二拓扑的拓扑标识和所述第二网络设备的标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址。
结合上述第三方面或第三方面的第一种可能的实现方式,还提供了第三方面的第三种可能的实现方式,还包括:
表项扩展单元,用于为所述聚合组中的第二网络设备生成第二MAC表项,所述第二MAC表项包括所述第一主机的MAC地址、所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址,所述第二网络设备与所述第一网络设备不属于同一个拓扑。
结合上述第三方面的第二种可能的实现方式或第三方面的第三种可能的实现方式,还提供了第三方面的第四种可能的实现方式,还包括:选择单元、第二扩展单元和第二转发单元;
所述接收单元还用于接收第二下行报文,所述第二下行报文的目的地址包含所述第一主机的MAC地址,所述第二下行报文包含所述第一标识;
所述选择单元用于根据转发策略、所述第一主机的MAC地址、所述第一标识、所述远端网络设备中的所述第一MAC表项和所述第二MAC表项,从所述第一网络设备和所述第二网络设备中确定第i网络设备;
所述第二扩展单元用于将所述第i网络设备的标识和包括所述第i网络设备的拓扑的拓扑标识添加至所述第二下行报文,得到经扩展的第二下行报文;
所述第二转发单元用于通过所述包括所述第i网络设备的拓扑,向所述第i网络设备发送所述经扩展的第二下行报文。
结合上述第三方面或第三方面的任意一种可能的实现方式,还包括:连接单元;
所述接收单元还用于接收来自聚合组中的第一网络设备的连接建立报文,所述连接建立报文包含所述第一拓扑的拓扑标识;
所述连接单元用于在所述第一拓扑的拓扑标识包含于拓扑标识集合时,与所述第一网络设备建立连接,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识。
结合上述第三方面或第三方面的任意一种可能的实现方式,还包括:更新单元;
所述接收单元还用于接收所述聚合组中的第j网络设备发送的地址撤销报文,所述地址撤销报文为所述第j网络设备根据探测到的故障链路生成的,所述地址撤销报文包含第一标识、所述第j网络设备的标识和包括所述第j网络设备的第j拓扑的拓扑标识;
所述更新单元用于根据所述地址撤销报文,删除第j MAC表项;所述第j MAC表项包含所述第一标识、所述第j网络设备的标识和所述第j拓扑的拓扑标识。
第四方面,还提供了一种第一网络设备,包括:
接收单元,用于接收上行报文,所述上行报文的源地址包含第一主机的MAC地址,所述上行报文包含第一标识,所述第一标识为所述第一主机所属的广播域的标识;
生成单元,用于获得第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含所述第一标识、所述第一网络设备的标识和包括所述第一网络设备的拓扑的拓扑标识;
发送单元,用于发送所述第一报文至远端网络设备。
在上述第四方面的第一种可能的实现方式中,还包含:连接单元;
所述接收单元还用于接收来自远端网络设备的连接建立报文,所述连接建立报文包含拓扑标识集合,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识;
所述连接单元用于在所述拓扑的拓扑标识包含于所述拓扑标识集合时,与所述远端网络设备建立连接。
通过上述方案,远端网络设备接收来自聚合组包含的第一网络设备的第一报文,所述第一报文中包含有包括所述第一网络设备的第一拓扑的拓扑标识,远端网络设备利用来自第一网络设备的第一报文中的拓扑标识,生成了包含拓扑标识的新的MAC表项。由于这种新的MAC表项包括了拓扑标识这个新的匹配项,因此,用于将报文转发至同一个目的设备的多个MAC转发表项可以在MAC表中同时存在,只要这多个MAC转发表项是针对不同的拓扑的MAC转发表项即可。由于用于将报文转发至同一个目的设备的多个MAC转发表项可以在MAC表中同时存在,因此这种新的MAC表项有助于避免MAC表项的替换。又由于使用所述新的MAC表项的数量进行转发报文的方法不受远端网络设备支持的组播树的数量的限制,因此当聚合组中的网络设备的数量较多时,远端网络设备也可以生成对应的MAC表项。由此可见,这种新的MAC表项还有助于显现一种扩展性强的报文发送方案。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的网络示意图。
图2为本发明实施例中提供的生成媒体接入控制表的方法的流程图。
图3为本发明实施例中提供的生成媒体接入控制表的方法的流程图。
图4为本发明实施例中提供的生成媒体接入控制表的方法的流程图。
图5为本发明实施例中提供的生成媒体接入控制表的方法的流程图。
图6为本发明实施例提供的LSP报文包含的TLV的数据格式示意图。
图7为本发明实施例中提供的生成报文的方法的流程图。
图8为本发明实施例提供的远端网络设备的结构示意图。
图9为本发明实施例提供的远端网络设备的结构示意图。
图10为本发明实施例提供的远端网络设备的结构示意图。
图11为本发明实施例提供的远端网络设备的结构示意图。
图12为本发明实施例提供的第一网络设备的结构示意图。
图13为本发明实施例提供的生成媒体接入控制表的设备的结构示意图。
图14为本发明实施例提供的生成报文的设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
支持ISIS或OSPF路由协议的网络包括第一设备、第二设备和第三设备,其中,第一设备、第二设备、第三设备是支持ISIS或OSPF路由协议的网络中的网络边缘设备。第一设备、第二设备和第三设备通过人工配置后连接一个多框链路聚合组(英文全称为Multi-Chassis Link Aggregation Group,英文缩写为MC-LAG),形成一个聚合组,或者第一设备、第二设备和第三设备通过参与链路聚合控制协议(英文全称为Link Aggregation ControlProtocol,英文缩写为LACP),形成一个聚合组。聚合组中的第一设备、第二设备和第三设备可通过转发设备将属于同一个广播域的一台或多台主机接入所述支持ISIS或OSPF路由协议的网络,也可以认为聚合组用于将属于同一个广播域的一台或多台主机接入所述支持ISIS或OSPF路由协议的网络。
在所述支持ISIS或OSPF路由协议的网络还包括第四设备,第四设备也为所述网络的网络边缘设备。第四设备与聚合组中的一台或多台网络设备之间建立有连接。
当聚合组用于将属于第一广播域的主机接入所述网络时,第四设备则不用于将属于所述第一广播域的所述主机接入所述网络。因此,第四设备相对于聚合组,或者,第四设备相对于聚合组中的第一设备、第二设备或第三设备来说,是远端网络设备。
如图1所示,D1为第一设备,D2为第二设备,D3为第三设备,D4为第四设备,D5为第五设备,D6为第六设备,D7为第七设备,B1为转发设备,H1为第一主机,H2为第二主机,H3为第三主机。其中,D1、D2和D3为同一个聚合组中的网络设备;D1、D2和D3分别连接B1,并通过B1与H1、H2和H3进行通信;H1、H2和H3属于同一广播域;D4为远端网络设备;D4和D1之间存在一个包含D1的第一拓扑,该第一拓扑还可包含D5、D6和D7,D4可直接或间接与D1相连;D4和D2之间还存在包含D2的第二拓扑(图中未示出);D3和D4之间还存在包含D3的第三拓扑(图中未示出);可用拓扑标识对上述多个拓扑进行区分,比如:用拓扑1表示第一拓扑,用拓扑2表示第二拓扑,用拓扑3表示第三拓扑。
图1所示的网络为TRILL网络时,远端网络设备为TRILL网络中的交换机,可称为远端交换机,聚合组中的网络设备为TRILL网络中的交换机。
图1所示的网络为以太网虚拟专用网(英文全称为Ethernet Virtual PrivateNetwork,英文缩写为EVPN)时,远端网络设备为EVPN中的路由器,可称为远端路由器,聚合组中的网络设备为EVPN中的路由器。
图1中,H1、H2和H3可以是物理主机,H1、H2和H3还可以是虚拟主机。当H1、H2和H3是虚拟主机时,H1、H2和H3可通过支持虚拟网络设备的服务器来实现。
本发明实施例中,聚合组中的网络设备与远端网络设备建立的连接可以是通过链路的直接连接,也可以是通过多跳中转网络设备的间接连接。本发明实施例中提及的连接既包含上述的直接连接方式,也包含上述的间接连接方式,在下述实施例中不再对具体的连接方式进行说明。
与图2对应的实施例提供的方法可应用于图1所示的网络。如图2所示,本发明实施例提供的生成媒体接入控制的方法,包括:
步骤20,远端网络设备接收来自聚合组包含的第一网络设备的第一报文。
该实施例中的第一网络设备为聚合组中的任意一台网络设备。
该实施例中,第一报文的源地址包含第一主机的MAC地址;第一报文包含第一标识、第一网络设备的标识和包括第一网络设备的第一拓扑的拓扑标识;第一标识为第一主机所属的广播域的标识。
该实施例中的第一主机可以是与第一网络设备通信的物理设备,还可以是与第一网络设备通信的虚拟网络设备。第一主机所属的广播域的标识可以是第一主机所属的VLAN的标识,还可以是细粒度数据标签(英文全称为Fine Grain Label,英文缩写为FGL)、网络虚接口(英文全称为Virtual Network Interface,英文缩写为VNI)等租户标识。
该实施例中的第一网络设备的标识可以是第一网络设备的名称,比如第一网络设备的别名(英文为nickname)。
该实施例中的远端网络设备支持多个拓扑,每个拓扑包含有远端网络设备和聚合组中的一台网络设备的传输路径。该实施例中的第一拓扑中包含有远端网络设备和第一网络设备之间的传输路径。
当包括远端网络设和聚合组的网络为TRILL网络时,第一报文可以为TRILL数据报文,第一拓扑的拓扑标识可被携带在TRILL数据报文的拓扑(英文为topology)字段中进行发送。当然,第一拓扑的拓扑标识也可携带在TRILL数据报文的其它未被使用的且可被记录于MAC表项的字段中,在本发明的实施例中就不再逐一列举。
可选地,远端网络设备为图1中的D4,第一网络设备为图1中的D1,聚合组为图1中包括D1、D2和D3的聚合组,第一主机为图1中的H1。
步骤21,远端网络设备根据第一报文生成第一MAC表项。
该实施例中,第一MAC表项包含第一主机的MAC地址、第一标识、第一拓扑的拓扑标识和第一网络设备的标识。第一主机的MAC地址为第一MAC表项中的目的地址。
该实施例中的第一MAC表项中的目的地址是第一MAC表项中包含的用以接收远端网络设备发送的报文的目的MAC地址。
如图1所示,D4会根据第一报文,将拓扑1、H1的MAC地址、H1所属的VLAN的标识及D1的nickname写入表一所示的第一MAC表中。
拓扑 | 目的地址 | VLAN | 出口路由桥 |
拓扑1 | MACH1 | 10 | NicknameD1 |
表一第一MAC表
如表一所示,拓扑1为第一拓扑的标识,MACH1为H1的MAC地址,10为H1所属的VLAN的标识,NicknameD1为D1的nickname。包含拓扑1、MACH1、10、NicknameD1的表项为第一MAC表项。
该实施例提供的方法中,远端网络设备生成的第一MAC表项增加了包含第一网络设备的第一拓扑的拓扑标识,远端网络设备在进行MAC地址学习时,如果同一主机的MAC地址是通过聚合组中的不同网络设备发送至远端网络设备,由于拓扑的拓扑标识的存在,远端网络设备不会利用新生成的MAC表项覆盖已生成的包含相同主机的MAC地址的MAC表项,可生成多条包含同一主机的MAC地址的MAC表项,尽量避免用于向同一主机转发报文的至少两个MAC表项相互替换,提高了设备的稳定性。
与图3对应的实施例提供的方法可应用于图1所示的网络。如图3所示本发明的实施例中,可在与图2对应的实施例提供的方法包括的步骤21之后进一步包括:
步骤22,远端网络设备接收第一下行报文,根据第一MAC表项转发第一下行报文。
其中,第一下行报文包括第一标识,第一下行报文的目的地址包括第一主机的MAC地址。
该实施例中将连接远端网络设备的主机或网络设备沿远端网络设备至聚合组中的网络设备的方向,与连接聚合组中的网络设备的主机的通信称为下行通信;沿远端网络设备至聚合组中的网络设备的方向发送的报文称为下行报文。
该步骤具体包括:远端网络设备接收第一下行报文;根据包含于第一下行报文的目的地址的第一主机的MAC地址和第一下行报文包含的第一标识,查询第一MAC表项,确定第一拓扑的拓扑标识和第一网络设备的标识;将第一拓扑的拓扑标识和第一网络设备的标识添加至第一下行报文,得到经扩展的第一下行报文;通过第一拓扑,向第一网络设备发送经扩展的第一下行报文。其中,经扩展的第一下行报文需要包括第一下行报文中的负载的部分或全部,并不必须包括第一下行报文中的全部参数。
可选地,远端网络设备为图1中的D4,第一网络设备为图1中的D1,聚合组为图1中包括D1、D2和D3的聚合组,第一主机为图1中的H1,第一拓扑的标识为拓扑1。
如图1所示,D4接收第一下行报文后,根据H1的MAC地址和VLAN的标识,查询第一MAC表项,确定采用标识为拓扑1的第一拓扑发送第一下行报文,即采用第一拓扑中的D4和D1之间的路径传输第一下行报文。
该实施例中,远端网络设备利用生成的第一MAC表项,实现了对第一下行报文的转发,使得第一下行报文能够通过第一拓扑,到达聚合组中的第一网络设备。
与图4对应的实施例提供的方法可应用于图1所示的网络。如图4所示,本发明实施例提供的生成媒体接入控制表的方法,包括:
步骤30,远端网络设备接收来自聚合组包含的第一网络设备的第一报文。
该步骤与图2对应的实施例提供的方法包含的步骤20的内容相同,在此不再赘述。
步骤31,远端网络设备根据第一报文生成第一MAC表项。
该步骤与图2对应的实施例提供的方法包含的步骤21的内容相同,在此不再赘述。
步骤32,远端网络设备生成第二MAC表项。
可以通过独立学习的方式生成第二MAC表项,也可以通过地址共享的方式生成第二MAC表项。
可选地,通过独立学习的方式生成第二MAC表项可以具体包括:远端网络设备接收来自聚合组包含的第二网络设备的第二报文,根据第二报文生成第二MAC表项。
其中,第二网络设备为与第一网络设备属于同一聚合组、且不同于第一网络设备的网络设备;第二网络设备和第一网络设备不属于同一个拓扑。第二报文的源地址包含第一主机的MAC地址;第二报文包含第一标识、第二网络设备的标识和包括第二网络设备的第二拓扑的拓扑标识。第二MAC表项包含第一主机的MAC地址、第一标识、第二拓扑的拓扑标识和第二网络设备的标识;第一主机的MAC地址为第二MAC表项中的目的地址。
该实施例中的远端网络设备在利用包含有第一主机的MAC地址的第二报文生成第二MAC表项时,由于拓扑标识的存在,远端网络设备不会用包含第一主机的MAC地址的第二MAC表项覆盖已生成的包含第一主机的MAC地址的第一MAC表项,尽量避免包含同一主机的MAC地址的MAC表项的替换。
可选地,通过地址共享的方式生成第二MAC表项可以具体包括:远端网络设备为聚合组中的第二网络设备生成第二MAC表项,第二MAC表项包括第一主机的MAC地址、第一标识、第二网络设备的标识和包括第二网络设备的第二拓扑的拓扑标识。其中,第二网络设备和第一网络设备不属于同一个拓扑。
该实施例中的远端网络设备通过地址共享的方式生成第二MAC表项时,由于第二网络设备和第一网络设备属于同一聚合组,第二网络设备和第一网络设备可通过MC-LAG与一台主机进行通信,比如第一主机,远端网络设备可以确定第一MAC表项与第二MAC表项包含相同的第一主机MAC地址和相同的第一标识。
可选地,远端网络设备预先配置的信息包含有聚合组的网络设备的标识,还可包含有远端网络设备支持的拓扑及拓扑的标识。远端网络设备可根据第一网络设备的标识及预先配置的信息,确定与第一网络设备属于同一聚合组的第二网络设备的标识,还可进一步根据第二网络设备的标识确定包含第二网络设备的第二拓扑,进而获得第二拓扑的拓扑标识。上述仅为远端网络设备在通过地址共享的方式生成第二MAC表项时,确定第二拓扑的标识和第二网络设备的标识的一种方式,但并不局限于这一种方式。
该实施例中的远端网络设备通过地址共享的方式生成第二MAC表项,能够提高MAC地址的学习效率。
可选地,远端网络设备为图1中的D4,第一网络设备为图1中的D1,第二网络设备为图1中的D2,聚合组为图1中包括D1、D2和D3的聚合组,第一主机为图1中的H1。
如图1所示,该实施例中的D4生成如表二所示的包含多条MAC表项的第二MAC表。
拓扑 | 目的地址 | VLAN | 出口路由桥 |
拓扑1 | MACH1 | 10 | NicknameD1 |
拓扑2 | MACH1 | 10 | NicknameD2 |
表二第二MAC表
如表二所示,拓扑1为第一拓扑的标识,MACH1为H1的MAC地址,10为H1所属的VLAN的标识,NicknameD1为D1的nickname,拓扑2为第二拓扑的标识,NicknameD2为D2的nickname。包含拓扑1、MACH1、10和NicknameD1的MAC表项为D4根据来自D1的第一报文生成的第一MAC表项;包含拓扑2、MACH1、10和NicknameD2的MAC表项可以是D4根据来自D2的第二报文生成的第二MAC表项,或者是D4根据来自D1的第一报文,通过地址共享的方式生成的第二MAC表项。
与图5对应的实施例提供的方法可应用于图1所示的网络。如图5所示,本发明实施例提供的生成媒体接入控制表的方法中,可在与图4对应的实施例提供的方法包括的步骤32之后进一步包括:
步骤33,远端网络设备接收第二下行报文并转发经扩展的第二下行报文。
该实施例中将连接远端网络设备的主机或网络设备沿远端网络设备至聚合组中的网络设备的方向,与连接聚合组中的网络设备的主机的通信称为下行通信;沿远端网络设备至聚合组中的网络设备的方向发送的报文称为下行报文。
该步骤包括:远端网络设备接收第二下行报文,第二下行报文包括第一标识,第二下行报文的目的地址包括第一主机的MAC地址;根据转发策略、第一主机的MAC地址、第一标识、远端网络设备中的第一MAC表项和第二MAC表项,从第一网络设备和第二网络设备中确定第i网络设备;将第i网络设备的标识和包括第i网络设备的拓扑的拓扑标识添加至第二下行报文,得到经扩展的第二下行报文;通过包括第i网络设备的拓扑,向第i网络设备发送经扩展的第二下行报文。其中,经扩展的第二下行报文需要包括第二下行报文中的负载的部分或全部,并不必须包括第二下行报文中的全部参数。
其中,转发策略为聚合组中的多个网络设备都支持下行报文的发送时对聚合组中的网络设备的选择策略,可为根据负载均衡选择发送下行报文的第i网络设备,也可以是以非负载分担的方式选择第i网络设备。第i网络设备为第一网络设备或第二网络设备。
可选地,远端网络设备为图1中的D4,第一网络设备为图1中的D1,第二网络设备为图2中的D2,聚合组为图1中包括D1、D2和D3的聚合组,第一主机为图1中的H1。
如图1所示,D4可选择拓扑1对应的第一拓扑包含的D4和D1之间的传输路径发送经扩展的第二下行报文,或者选择拓扑2对应的第二拓扑包含的D4和D2之间的传输路径发送经扩展的第二下行报文。在D4和D1之间的传输路径包含中转网络设备(中转网络设备为图1中的D5)时,中转网络设备还可根据第一拓扑的结构和经扩展的第二下行报文中包含的拓扑结构的拓扑标识,确定中转网络设备与D1之间的传输路径,以便准确地传输经扩展的第二下行报文。
该实施例提供的远端网络设备在生成多条MAC表项之后,比如生成第一MAC表项和第二MAC表项之后,可根据转发策略和已生成的多条MAC表项,从聚合组中确定一台网络设备来接收下行报文,有助于流量在聚合组包含的网络设备之间进行负载均衡。该实施例中的远端网络设备无需支持与聚合组包含的网络设备数量相同的组播树,为实现扩展性强的报文发送方法提供帮助。
本发明实施例提供的生成媒体接入控制表的方法中,在上述与图2至图5对应的实施例提供的方法包括的远端网络设备接收来自聚合组包含的第一网络设备的第一报文之前,该实施例提供的方法还包括:远端网络设备与聚合组包含的第一网络设备建立连接。
远端网络设备与聚合组包含的第一网络设备建立连接包括:远端网络设备接收来自聚合组中的第一网络设备的连接建立报文,且在第一拓扑的拓扑标识包含于拓扑标识集合时,与第一网络设备建立连接。
其中,连接建立报文包含第一拓扑的拓扑标识。拓扑标识集合包括远端网络设备支持的多个拓扑的标识。
该实施例提供的方法中,远端网络设备利用与第一网络设备之间的交互,与第一网络设备建立连接。可选地,可采用静态配置的方式,使得远端网络设备与第一网络设备建立连接。在此不再对远端网络设备与第一网络设备建立连接的可能方式进行逐一举例说明。
可选地,连接建立报文可为分层服务提供程序(英文全称为LayeredServiceProvider,英文缩写为LSP)报文。连接建立报文中的拓扑标识集合可携带在标签-长度-值(英文全称为tag-length-value,英文缩写为TLV)中进行发送。例如:远端网络设备将拓扑标识集合携带在LSP报文中预设的Topology List Capability TLV中进行发送。Topology List Capability TLV的数据格式可采用图6所示的格式,其中,Topology IDs表示TLV的值,该TLV的值可包含远端网络设备所支持的多个拓扑的标识。
该实施例提供的方法中,远端网络设备可在与聚合组中的网络设备建立连接后,与聚合组中的网络设备交互流量,在实际部署网络设备时,无需重新设计向后兼容机制,减少了实施的复杂度。
本发明实施例提供的生成媒体接入控制表的方法中,在上述与图2至图5对应的实施例提供的方法的基础上,该方法还包括:远端网络设备删除第j MAC表项。
远端网络设备删除第j MAC表项的步骤可在远端网络设备生成MAC表项之后执行,比如:在远端网络设备生成第一MAC表项之后执行,或在远端网络设备生成第二MAC表项之后执行,在此不对其具体的执行顺序进行限定。
远端网络设备删除第j MAC表项包括:远端网络设备接收聚合组中的第j网络设备发送的地址撤销报文;远端网络设备根据地址撤销报文,删除包含的第一标识、第j网络设备的标识和包括第j网络设备的第j拓扑的拓扑标识的第j MAC表项。其中,第j网络设备为聚合组中的任意一台网络设备,即第j网络设备可以是第一网络设备,或者是第二网络设备,或者是聚合组中除第一网络设备和第二网络设备之外的网络设备。地址撤销报文可以为第j网络设备根据探测到的故障链路生成的,也可以是根据预定策略或者撤销指令生成的。第j MAC表项包含第一标识、第j网络设备的标识和第j拓扑的拓扑标识。
可选地,远端网络设备为图1中的D4,第一网络设备为图1中的D1,第二网络设备为图2中的D2,第j网络设备为图1中的D1,聚合组为图1中包括D1、D2和D3的聚合组,第一主机为图1中的H1。
如图1所示,D1在探测到链路故障,比如D1与B1之间的链路故障,生成地址撤销报文,或者D1根据预定策略或撤销指令生成地址撤销报文,该地址撤销报文用以指示D1与B1之间的链路故障。D1发送地址撤销报文至D4,D4会根据地址撤销报文更新已生成的MAC表,获得如表三所示的更新后的MAC表。
表三更新后的MAC表
如表三所示,拓扑1为第一拓扑的标识,MACH1为H1的MAC地址,10为H1所属的VLAN的标识,NicknameD1为D1的nickname,拓扑2为第二拓扑的标识,NicknameD2为D2的nickname。D4已经将D1连接的故障链路对应的MAC表项(第一MAC表项)进行了撤销,D4不会再将VLAN10内去往H1的流量发送到D1,但是D4仍可通过D2发送去往H1的流量,避免发生流量黑洞(英文为black hole)。
该实施例提供的方法中,远端网络设备能够通过对已生成的MAC表项的撤销操作,避免发生流量黑洞。
与图7对应的实施例提供的方法应用于图1所示的网络。如图7所示,本发明实施例提供的生成报文的方法,包括:
步骤40,第一网络设备接收上行报文。
该实施例中,将连接聚合组中的网络设备的第一主机沿聚合组中的网络设备至远端网络设备的方向,与连接远端网络设备的主机或网络设备进行的通信称为上行通信;第一主机在沿聚合组中的网络设备至远端网络设备的方向发送的报文称为上行报文。该实施例中,聚合组中的网络设备可为第一网络设备。
其中,上行报文的源地址包含第一主机的MAC地址,上行报文包含第一标识,第一标识为第一主机所属的广播域的标识。
步骤41,第一网络设备获得第一报文,并向远端网络设备发送第一报文。
其中,第一报文的源地址包含第一主机的MAC地址,第一报文包含第一标识、第一网络设备的标识和包括第一网络设备的第一拓扑的拓扑标识。其中,第一报文需要包括上行报文中的负载的部分或全部,并不必须包括上行报文中的全部参数。
该实施例中,第一网络设备可根据接收到的上行报文获得第一报文,比如:第一网络设备对接收到的上行报文进行扩展,将第一网络设备的标识和第一拓扑的拓扑标识加入上行报文中,获得第一报文,但该实施例提及的获得第一报文的方式方法并不局限于这一种,在此不再逐一举例说明。
可选地,第一网络设备可通过第一拓扑,发送第一报文至远端网络设备,或者采用其它传输路径,发送第一报文至远端网络设备,在此不再逐一举例说明。
该实施例提供的方法中,第一网络设备发送了一个携带有第一拓扑的拓扑标识的报文至远端网络设备,有助于远端网络设备生成包含第一拓扑的拓扑标识的第一MAC表项。
可选地,在第一网络设备获得第一报文之前,该实施例提供的方法还包括:第一网络设备与远端网络设备建立连接。
第一网络设备与远端网络设备建立连接包括:第一网络设备接收来自远端网络设备的连接建立报文,且在第一拓扑的拓扑标识包含于拓扑标识集合时,与远端网络设备建立连接。
其中,连接建立报文包含拓扑标识集合,拓扑标识集合包括远端网络设备支持的多个拓扑的标识。
可选地,第一网络设备接收的连接建立报文可以为LSP报文,拓扑标识集合可携带在LSP报文中的TLV中,TLV的格式如图6所示。第一网络设备可在确定包含自身的第一拓扑的拓扑1包含于LSP报文的TLV中时,与远端网络设备建立连接。
该步骤中,第一网络设备是通过与远端网络设备的交互,动态地建立连接。可选地,还可采用静态配置的方案,使得第一网络设备与远端网络设备建立连接。在此不再对远端网络设备与第一网络设备建立连接的可能方式进行逐一举例说明。
本发明实施例提供的生成报文的方法中,在与图7对应的实施例提供的方法的基础上,该方法还包括:第一网络设备还可生成地址撤销报文,发送地址撤销报文至远端网络设备。其中,地址撤销报文可以为第一网络设备根据探测到的故障链路生成的,也可以是根据预定策略或者撤销指令生成的。地址撤销报文包含第一标识、第一网络设备的标识和第一拓扑的拓扑标识。可选地,第一网络设备可通过第一拓扑,发送地址撤销报文至远端网络设备,或者通过其它传输路径,发送地址撤销报文至远端网络设备,在此不再逐一举例说明。
如图8所示,本发明实施例提供的远端网络设备包括:接收单元50和生成单元51。
接收单元50用于接收来自聚合组包含的第一网络设备的第一报文。其中,第一报文的源地址包含第一主机的MAC地址,第一报文包含第一标识、第一网络设备的标识和包括第一网络设备的第一拓扑的拓扑标识。第一标识为第一主机所属的广播域的标识。
该实施例中的第一网络设备为聚合组中的任意一台网络设备。
该实施例中的第一主机可以是通过MC-LAG与第一网络设备通信的设备,还可以是通过MC-LAG与第一网络设备通信的虚拟网络设备。第一主机所属的广播域的标识可以是第一主机所属的VLAN的标识,还可以是FGL、VNI等租户标识。第一网络设备的标识可以是第一网络设备的名称,比如第一网络设备的nickname。
该实施例中的远端网络设备支持多个拓扑,每个拓扑包含有远端网络设备和一台网络设备之间的传输路径。该实施例中的第一拓扑中包含有远端网络设备和第一网络设备之间的传输路径。
生成单元51用于根据第一报文生成第一MAC表项。其中,第一MAC表项包含第一主机的MAC地址、第一标识、第一拓扑的拓扑标识和第一网络设备的标识。第一主机的MAC地址为第一MAC表项中的目的地址。
该实施例中的第一MAC表项中的目的地址是第一MAC表项中包含的用以接收远端网络设备发送的报文的目的MAC地址。
该实施例提供的远端网络设备能够实现与图2对应的实施例中远端网络设备的所有功能。
该实施例提供的远端网络设备生成的第一MAC表项中增加了第一拓扑的拓扑标识,远端网络设备在进行MAC地址学习时,如果同一主机的MAC地址是通过聚合组中不同的网络设备发送至远端网络设备,由于拓扑的拓扑标识的存在,远端网络设备不会利用新生成的MAC表项覆盖已生成的包含相同主机的MAC地址的MAC表项,可生成多条包含同一主机的MAC地址的MAC表项,尽量避免用于向同一主机转发报文的至少两个MAC表项相互替换,提高设备的稳定性。
如图9所示,本发明实施例提供的远端网络设备,包括:接收单元60、生成单元61、查询单元62、扩展单元63和转发单元64。其中,生成单元61与图8所示实施例提供的远端网络设备包含的生成单元51相同,在此不再赘述。
接收单元60用于接收来自聚合组包含的第一网络设备的第一报文。其中,第一报文的源地址包含第一主机的MAC地址,第一报文包含第一标识、第一网络设备的标识和包括第一网络设备的第一拓扑的拓扑标识。第一标识为第一主机所属的广播域的标识。
该实施例中的第一网络设备为聚合组中的任意一台网络设备。
接收单元60用于接收第一下行报文。其中,第一下行报文的目的地址包含第一主机的MAC地址,第一下行报文包含第一标识。
该实施例中将连接远端网络设备的主机或网络设备沿远端网络设备至网络设备的方向,与连接网络设备的主机的通信称为下行通信;沿远端网络设备至网络设备的方向发送的报文称为下行报文。
查询单元62用于根据第一下行报文的目的地址包含的第一主机的MAC地址和第一下行报文包含的第一标识,查询第一MAC表项,确定第一拓扑的拓扑标识和第一网络设备的标识。其中,查询单元62从生成单元51获取第一MAC表项,或者从存储第一MAC表项的其它单元中获取。
扩展单元63用于将第一拓扑的拓扑标识和第一网络设备的标识添加至第一下行报文,得到经扩展的第一下行报文。其中,经扩展的第一下行报文需要包括第一下行报文中的负载的部分或全部,并不必须包括第一下行报文中的全部参数。
转发单元64用于通过第一拓扑,向第一网络设备发送经扩展的第一下行报文。
可选地,第一拓扑包含的远端网络设备和第一网络设备的传输路径上的中转网络设备可接收经扩展的第一下行报文,根据经扩展的第一下行报文包含的第一拓扑的拓扑标识,确定第一拓扑,将经扩展的第一下行报文通过第一拓扑发送至第一网络设备。其中,远端网络设备和第一网络设备的传输路径上的中转网络设备预置有自身所属的拓扑的结构,中转网络设备根据第一拓扑的拓扑标识和第一网络设备的标识,能够确定自身与第一网络设备之间的传输路径。
该实施例提供的远端网络设备能够实现与图3对应的实施例中远端网络设备的所有功能。
该实施例提供的远端网络设备在生成第一MAC表项之后,可根据第一MAC表项中拓扑标识对应的第一拓扑,确定与第一网络设备之间的传输路径,通过第一拓扑,将第一下行报文发送至第一网络设备。
如图10所示,本发明实施例提供的远端网络设备,包括:接收单元70、生成单元71和表项扩展单元72。其中,接收单元70与图8所示实施例提供的远端网络设备包含的接收单元50相同,生成单元71与图8所示实施例提供的远端网络设备包含的生成单元51相同,在此不再赘述。
该实施例中的远端网络设备能够实现与图4对应的实施例中通过地址共享方式生成第二MAC表项的远端网络设备的所有功能。
表项扩展单元72用于为聚合组中的第二网络设备生成第二MAC表项。其中,第二网络设备为与第一网络设备属于同一聚合组、且不同于第一网络设备的网络设备。第二MAC表项包括第一主机的MAC地址、第一标识、第二网络设备的标识和包括第二网络设备的第二拓扑的拓扑标识。第一主机的MAC地址为第二MAC表项中的目的地址;第二网络设备和第一网络设备不属于同一个拓扑。
该实施例的远端网络设备通过地址共享的方式生成第二MAC表项,能够提高MAC地址的学习效率。
如图11所示,本发明实施例提供的远端网络设备,包括:接收单元80、生成单元81、选择单元82、扩展单元83和转发单元84。
该实施例的远端网络设备能够实现与图5对应的实施例中远端网络设备的所有功能。
该实施例的远端网络设备包含的接收单元80除了接收第一报文外,还接收来自聚合组包含的第二网络设备的第二报文。其中,第二报文的源地址包含第一主机的MAC地址,第二报文报文第一标识、第二网络设备的标识和包括第二网络设备的第二拓扑的拓扑标识。接收单元80接收第一报文的操作与图8对应的实施例提供的远端网络设备包含的接收单元50相同,在此不再赘述。
其中,第二网络设备为与第一网络设备属于同一聚合组、且不同于第一网络设备的网络设备;第二网络设备与第一网络设备不属于同一个拓扑。
该实施例的远端网络设备包含的生成单元81除了生成第一MAC表项外,还根据第二报文生成第二MAC表项。其中,第二MAC表项包含第一主机的MAC地址、第一标识、第二拓扑的拓扑标识和第二网络设备的标识。第一主机的MAC地址为第二MAC表项中的目的地址。生成单元81生成第一MAC表项的操作与图8对应的实施例提供的远端网络设备包含的生成单元51相同,在此不再赘述
接收单元80用于接收第二下行报文。其中,第二下行报文的目的地址包含第一主机的MAC地址,第二下行报文包含第一标识。
选择单元81用于根据转发策略、第二下行报文的目的地址包含的第一主机的MAC地址、第二下行报文包含的第一标识、远端网络设备中的第一MAC表项和第二MAC表项,从第一网络设备和第二网络设备中确定第i网络设备。其中,转发策略为多个网络设备都支持下行报文的发送时对网络设备的选择策略,可为根据负载均衡选择发送下行报文的网络设备,也可以是以非负载分担的方式选择第i网络设备。第i网络设备为第一网络设备或第二网络设备。
扩展单元83用于将第i网络设备的标识和包括第i网络设备的拓扑的拓扑标识添加至第二下行报文,得到经扩展的第二下行报文。其中,经扩展的第二下行报文需要包括第二下行报文中的负载的部分或全部,并不必须包括第二下行报文中的全部参数。
转发单元84用于通过包括第i网络设备的拓扑,向第i网络设备发送经扩展的第二下行报文。
该实施例提供的远端网络设备在生成多条MAC表项之后,比如生成第一MAC表项和第二MAC表项之后,可根据转发策略和已生成的多条MAC表项,从聚合组中确定一台网络设备来接收下行报文,有助于流量在聚合组包含的网络设备之间进行负载均衡。
本发明实施例提供的远端网络设备,包括:与图10对应的实施例提供的远端网络设备包含的接收单元70、生成单元71和表项扩展单元72、以及与图11对应的实施例提供的远端网络设备包含的选择单元82、扩展单元83和转发单元84,在此不再对该实施例的远端网络设备的结构进行赘述。
本发明实施例提供的远端网络设备,可在与图8至图11对应的实施例提供的远端网络设备的结构的基础上,增加一个连接单元。
该实施例包含的接收单元还用于接收来自聚合组中的第一网络设备的连接建立报文。其中,连接建立报文包含第一拓扑的拓扑标识。
该实施例包含的连接单元用于在第一拓扑的拓扑标识包含于拓扑标识集合时,与第一网络设备建立连接。其中,拓扑标识集合包括远端网络设备支持的多个拓扑的标识。
该实施例提供的远端网络设备可在与聚合组中的网络设备建立连接后,与聚合组中的网络设备交互流量,在实际部署网络设备时,无需重新设计向后兼容机制,减少了实施的复杂度。
本发明实施例提供的远端网络设备,可在与图8至图11对应的实施例提供的远端网络设备的结构的基础上,增加一个更新单元。
该实施例的接收单元还用于接收聚合组中的第j网络设备发送的地址撤销报文。其中,第j网络设备为聚合组中的任意一台网络设备,即第j网络设备可以是第一网络设备,或者是第二网络设备,或者是除第一网络设备和第二网络设备之外的网络设备。地址撤销报文可以为第j网络设备根据探测到的故障链路生成的,也可以是根据预定策略或者撤销指令生成的。地址撤销报文包含第一标识、第j网络设备的标识和包括第j网络设备的第j拓扑的拓扑标识。
该实施例的更新单元用于根据地址撤销报文,删除第j MAC表项。其中,第j MAC表项包含第一标识、第j网络设备的标识和第j拓扑的拓扑标识。
该实施例提供的远端网络设备能够通过对已生成的MAC表项的撤销操作,避免发生流量黑洞。
如图12所示,本发明实施例提供的第一网络设备,包括:接收单元90、生成单元91。
本实施例中的第一网络设备为聚合组中的任意一台网络设备。
接收单元90用于接收上行报文。其中,上行报文的源地址包含第一主机的MAC地址,上行报文包含第一标识,第一标识为第一主机所属的广播域的标识。
生成单元91用于获得第一报文。其中,第一报文的源地址包含第一主机的MAC地址,第一报文包含第一标识、第一网络设备的标识和拓扑的拓扑标识。该实施例的拓扑为包含生成单元91所属网络设备的拓扑,若生成单元91所属的网络设备是第一网络设备,则第一报文包含的拓扑为第一拓扑。其中,第一报文需要包括上行报文中的负载的部分或全部,并不必须包括上行报文中的全部参数。
发送单元91用于通过第一拓扑,发送第一报文至远端网络设备。
该实施例中,将连接第一网络设备的第一主机沿第一网络设备至远端网络设备的方向,与连接远端网络设备的主机或网络设备进行的通信称为上行通信;第一主机在沿第一网络设备至远端网络设备的方向发送的报文称为上行报文。
该实施例提供的第一网络设备发送了一个携带有拓扑的拓扑标识的报文至远端网络设备,有助于远端网络设备生成一条包含拓扑的拓扑标识的MAC表项。
本发明的实施例中提供的第一网络设备,可在与图12对应的实施例提供的第一网络设备的结构的基础上,增加一个连接单元。
该实施例的第一网络设备包含的接收单元用于接收来自远端网络设备的连接建立报文。其中,连接建立报文包含拓扑标识集合。拓扑标识集合包括远端网络设备支持的多个拓扑的标识。
该实施例的连接单元用于在包括连接单元所属第一网络设备的拓扑的拓扑标识包含于拓扑标识集合时,与远端网络设备建立连接。
本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。图13示出了一种生成媒体接入控制表的设备的实施例,在该实施例中,设备包括发送电路101、接收电路102、处理器103、存储器104和总线105。该实施例的设备可以应用于通信***的交换机或路由器等网络设备。该实施例的生成媒体接入控制表的设备可以是与图2至图5,以及图8至图11对应的实施例中的远端网络设备。存储器104中存储有计算机可读指令,处理器103读取所述计算机可读指令,对通过接收电路102接收到的第一报文进行处理,生成第一MAC表项,还可对通过接收电路102接收到的第一下行报文进行处理,获得经扩展的第一下行报文,通过发送电路101向聚合组的网络设备发送经扩展的第一下行报文。总线105可将生成媒体接入控制表的设备的各个硬件组件耦合在一起。总线105除包括数据总线外,还包括电源总线和控制总线。为了清楚说明,图13中的各种总线都标为总线105。所述生成媒体接入控制表的设备能够实现与图2至图5,以及图8至图11对应的实施例中的远端网络设备的全部功能。
图14示出了一种生成报文的设备的实施例,在该实施例中,生成报文的设备包括发送电路106、接收电路107、处理器108、存储器109和总线110。该实施例的设备可以应用于通信***的交换机或路由器等网络设备。该实施例的生成报文的设备可以是与图7或图12对应的实施例中的第一网络设备。存储器109中存储有计算机可读指令,处理器108读取所述计算机可读指令,对通过接收电路107接收到的上行报文进行处理,获得包含该设备所属拓扑的拓扑标识的第一报文,并通过发送电路106向远端设备发送经所述处理后得到的第一报文。总线110可将生成报文的设备的各个硬件组件耦合在一起。总线110除包括数据总线外,还包括电源总线和控制总线。为了清楚说明,图14中的各种总线都标为总线110。所述生成报文的设备能够实现与图7和/或图12对应的实施例中的第一网络设备的全部功能。
上述通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
总之,以上仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种生成媒体接入控制MAC表的方法,其特征在于,所述方法包括:
远端网络设备接收来自聚合组包含的第一网络设备的第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识,所述第一标识为所述第一主机所属的广播域的标识;
所述远端网络设备根据所述第一报文生成第一MAC表项,所述第一MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第一拓扑的拓扑标识和所述第一网络设备的标识,所述第一主机的MAC地址为所述第一MAC表项中的目的地址。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述远端网络设备接收第一下行报文,所述第一下行报文的目的地址包含所述第一主机的MAC地址,所述第一下行报文包含所述第一标识;
根据所述第一主机的MAC地址和所述第一标识查询所述第一MAC表项,确定所述第一拓扑的拓扑标识和所述第一网络设备的标识;
将所述第一拓扑的拓扑标识和所述第一网络设备的标识添加至所述第一下行报文,得到经扩展的第一下行报文;
通过所述第一拓扑,向所述第一网络设备发送所述经扩展的第一下行报文。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述远端网络设备接收来自所述聚合组包含的第二网络设备的第二报文,所述第二报文的源地址包含所述第一主机的MAC地址,所述第二报文包含所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第二网络设备与所述第一网络设备不属于同一个拓扑;
所述远端网络设备根据所述第二报文生成第二MAC表项,所述第二MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第二拓扑的拓扑标识和所述第二网络设备的标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述远端网络设备为所述聚合组中的第二网络设备生成第二MAC表项,所述第二MAC表项包括所述第一主机的MAC地址、所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址,所述第二网络设备与所述第一网络设备不属于同一个拓扑。
5.如权利要求3或4所述的方法,其特征在于,所述方法还包括:
所述远端网络设备接收第二下行报文,所述第二下行报文的目的地址包含所述第一主机的MAC地址,所述第二下行报文包含所述第一标识;
根据转发策略、所述第一主机的MAC地址、所述第一标识、所述远端网络设备中的所述第一MAC表项和所述第二MAC表项,从所述第一网络设备和所述第二网络设备中确定第i网络设备;
将所述第i网络设备的标识和包括所述第i网络设备的拓扑的拓扑标识添加至所述第二下行报文,得到经扩展的第二下行报文;
通过所述包括所述第i网络设备的拓扑,向所述第i网络设备发送所述经扩展的第二下行报文。
6.如权利要求1至4任一项所述的方法,其特征在于,所述远端网络设备接收来自聚合组包含的第一网络设备的第一报文之前,所述方法还包括:
远端网络设备接收来自聚合组中的第一网络设备的连接建立报文,所述连接建立报文包含所述第一拓扑的拓扑标识;
所述远端网络设备在所述第一拓扑的拓扑标识包含于拓扑标识集合时,与所述第一网络设备建立连接,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识。
7.如权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
所述远端网络设备接收所述聚合组中的第j网络设备发送的地址撤销报文,所述第j网络设备为所述聚合组中的任意一台网络设备,所述地址撤销报文为所述第j网络设备根据探测到的故障链路生成的,所述地址撤销报文包含第一标识、所述第j网络设备的标识和包括所述第j网络设备的第j拓扑的拓扑标识;
所述远端网络设备根据所述地址撤销报文,删除第j MAC表项,所述第jMAC表项包含所述第一标识、所述第j网络设备的标识和所述第j拓扑的拓扑标识。
8.如权利要求1至4任一项所述的方法,其特征在于,所述方法应用于多链路透明互联协议TRILL网络,所述远端网络设备为远端交换机,所述聚合组中的网络设备为交换机。
9.一种生成报文的方法,其特征在于,所述方法包括:
第一网络设备接收上行报文,所述上行报文的源地址包含第一主机的MAC地址,所述上行报文包含第一标识,所述第一标识为所述第一主机所属的广播域的标识;
获得第一报文,所述第一报文的源地址包含所述第一主机的MAC地址,所述第一报文包含所述第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识;
向远端网络设备发送所述第一报文。
10.如权利要求9所述的方法,其特征在于,所述第一网络设备获得所述第一报文之前,所述方法还包括:
所述第一网络设备接收来自远端网络设备的连接建立报文,所述连接建立报文包含拓扑标识集合,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识;
所述第一网络设备在所述第一拓扑的拓扑标识包含于所述拓扑标识集合时,与所述远端网络设备建立连接。
11.一种远端网络设备,其特征在于,所述远端网络设备包含:
接收单元,用于接收来自聚合组包含的第一网络设备的第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含第一标识、所述第一网络设备的标识和包括所述第一网络设备的第一拓扑的拓扑标识,所述第一标识为所述第一主机所属的广播域的标识;
生成单元,用于根据所述第一报文生成第一MAC表项,所述第一MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第一拓扑的拓扑标识和所述第一网络设备的标识,所述第一主机的MAC地址为所述第一MAC表项中的目的地址。
12.如权利要求11所述的远端网络设备,其特征在于,所述远端网络设备还包含:查询单元、第一扩展单元和第一转发单元;
所述接收单元还用于接收第一下行报文,所述第一下行报文的目的地址包含所述第一主机的MAC地址,所述第一下行报文包含所述第一标识;
所述查询单元用于根据所述第一主机的MAC地址和所述第一标识查询所述第一MAC表项,确定所述第一拓扑的拓扑标识和所述第一网络设备的标识;
所述第一扩展单元用于将所述第一拓扑的拓扑标识和所述第一网络设备的标识添加至所述第一下行报文,得到经扩展的第一下行报文;
所述第一转发单元用于通过所述第一拓扑,向所述第一网络设备发送所述经扩展的第一下行报文。
13.如权利要求11所述的远端网络设备,其特征在于,所述接收单元还用于接收来自所述聚合组包含的第二网络设备的第二报文,所述第二报文的源地址包含所述第一主机的MAC地址,所述第二报文包含所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第二网络设备与所述第一网络设备不属于同一个拓扑;
所述生成单元还用于根据所述第二报文生成第二MAC表项,所述第二MAC表项包含所述第一主机的MAC地址、所述第一标识、所述第二拓扑的拓扑标识和所述第二网络设备的标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址。
14.如权利要求11所述的远端网络设备,其特征在于,所述远端网络设备还包含:
表项扩展单元,用于为所述聚合组中的第二网络设备生成第二MAC表项,所述第二MAC表项包括所述第一主机的MAC地址、所述第一标识、所述第二网络设备的标识和包括所述第二网络设备的第二拓扑的拓扑标识,所述第一主机的MAC地址为所述第二MAC表项中的目的地址,所述第二网络设备与所述第一网络设备不属于同一个拓扑。
15.如权利要求13或14所述的远端网络设备,其特征在于,所述远端网络设备还包含:选择单元、第二扩展单元和第二转发单元;
所述接收单元还用于接收第二下行报文,所述第二下行报文的目的地址包含所述第一主机的MAC地址,所述第二下行报文包含所述第一标识;
所述选择单元用于根据转发策略、所述第一主机的MAC地址、所述第一标识、所述远端网络设备中的所述第一MAC表项和所述第二MAC表项,从所述第一网络设备和所述第二网络设备中确定第i网络设备;
所述第二扩展单元用于将所述第i网络设备的标识和包括所述第i网络设备的拓扑的拓扑标识添加至所述第二下行报文,得到经扩展的第二下行报文;
所述第二转发单元用于通过所述包括所述第i网络设备的拓扑,向所述第i网络设备发送所述经扩展的第二下行报文。
16.如权利要求11至14任一项所述的远端网络设备,其特征在于,所述远端网络设备还包含:连接单元;
所述接收单元还用于接收来自聚合组中的第一网络设备的连接建立报文,所述连接建立报文包含所述第一拓扑的拓扑标识;
所述连接单元用于在所述第一拓扑的拓扑标识包含于拓扑标识集合时,与所述第一网络设备建立连接,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识。
17.如权利要求11至14任一项所述的远端网络设备,其特征在于,所述远端网络设备还包含更新单元;
所述接收单元还用于接收所述聚合组中的第j网络设备发送的地址撤销报文,所述地址撤销报文为所述第j网络设备根据探测到的故障链路生成的,所述地址撤销报文包含第一标识、所述第j网络设备的标识和包括所述第j网络设备的第j拓扑的拓扑标识;
所述更新单元用于根据所述地址撤销报文,删除第j MAC表项;所述第jMAC表项包含所述第一标识、所述第j网络设备的标识和所述第j拓扑的拓扑标识。
18.一种第一网络设备,其特征在于,所述第一网络设备包含:
接收单元,用于接收上行报文,所述上行报文的源地址包含第一主机的MAC地址,所述上行报文包含第一标识,所述第一标识为所述第一主机所属的广播域的标识;
生成单元,用于获得第一报文,所述第一报文的源地址包含第一主机的MAC地址,所述第一报文包含所述第一标识、所述第一网络设备的标识和包括所述第一网络设备的拓扑的拓扑标识;
发送单元,用于发送所述第一报文至远端网络设备。
19.如权利要求18所述的第一网络设备,其特征在于,所述第一网络设备还包含:连接单元;
所述接收单元还用于接收来自远端网络设备的连接建立报文,所述连接建立报文包含拓扑标识集合,所述拓扑标识集合包括所述远端网络设备支持的多个拓扑的标识;
所述连接单元用于在所述拓扑的拓扑标识包含于所述拓扑标识集合时,与所述远端网络设备建立连接。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410043078.1A CN104811377B (zh) | 2014-01-29 | 2014-01-29 | 生成媒体接入控制表的方法及网络设备 |
PCT/CN2015/070036 WO2015113456A1 (zh) | 2014-01-29 | 2015-01-04 | 生成媒体接入控制表的方法及网络设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410043078.1A CN104811377B (zh) | 2014-01-29 | 2014-01-29 | 生成媒体接入控制表的方法及网络设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104811377A CN104811377A (zh) | 2015-07-29 |
CN104811377B true CN104811377B (zh) | 2018-09-07 |
Family
ID=53695886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410043078.1A Active CN104811377B (zh) | 2014-01-29 | 2014-01-29 | 生成媒体接入控制表的方法及网络设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104811377B (zh) |
WO (1) | WO2015113456A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453073A (zh) * | 2016-09-30 | 2017-02-22 | 北京小米移动软件有限公司 | 传输信息的方法及装置 |
CN109347841B (zh) * | 2018-10-26 | 2021-08-10 | 深圳市元征科技股份有限公司 | Mac地址认证方法、装置、终端、服务器及存储介质 |
CN113872861B (zh) * | 2020-06-30 | 2023-07-18 | 华为技术有限公司 | 一种生成表项的方法、发送报文的方法及设备 |
CN114553706B (zh) * | 2020-11-18 | 2023-09-19 | ***通信集团广东有限公司 | 网络拓扑发现方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102150148A (zh) * | 2008-09-09 | 2011-08-10 | 思科技术公司 | 层2拓扑中针对单播帧和多播帧的差别化服务 |
CN102946357A (zh) * | 2012-11-28 | 2013-02-27 | 杭州华三通信技术有限公司 | 组播转发表项的下发方法及设备 |
CN102957589A (zh) * | 2011-08-23 | 2013-03-06 | 华为技术有限公司 | 业务数据传输的方法、网络节点及*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110299533A1 (en) * | 2010-06-08 | 2011-12-08 | Brocade Communications Systems, Inc. | Internal virtual network identifier and internal policy identifier |
WO2012113251A1 (zh) * | 2011-02-21 | 2012-08-30 | 中兴通讯股份有限公司 | 一种trill网络互连的方法和*** |
CN102404216A (zh) * | 2011-11-23 | 2012-04-04 | 华为技术有限公司 | 一种trill网络保护的方法、路由桥和*** |
-
2014
- 2014-01-29 CN CN201410043078.1A patent/CN104811377B/zh active Active
-
2015
- 2015-01-04 WO PCT/CN2015/070036 patent/WO2015113456A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102150148A (zh) * | 2008-09-09 | 2011-08-10 | 思科技术公司 | 层2拓扑中针对单播帧和多播帧的差别化服务 |
CN102957589A (zh) * | 2011-08-23 | 2013-03-06 | 华为技术有限公司 | 业务数据传输的方法、网络节点及*** |
CN102946357A (zh) * | 2012-11-28 | 2013-02-27 | 杭州华三通信技术有限公司 | 组播转发表项的下发方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2015113456A1 (zh) | 2015-08-06 |
CN104811377A (zh) | 2015-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200067812A1 (en) | First Hop Gateway Redundancy In A Network Computing Environment | |
US8964531B2 (en) | Resilient attachment to provider link state bridging (PLSB) networks | |
US8995444B2 (en) | Method and system for extending routing domain to non-routing end stations | |
CN105812259A (zh) | 一种报文转发方法和设备 | |
US20200396162A1 (en) | Service function chain sfc-based communication method, and apparatus | |
CN102986176B (zh) | 用于bgp mac-vpn的mpls标签分配的方法和装置 | |
EP2962431B1 (en) | Spanning tree in fabric switches | |
CN107040469A (zh) | 网络设备及方法 | |
CN102368727B (zh) | 跨ip网络的trill网络通信方法、***和设备 | |
US9288067B2 (en) | Adjacency server for virtual private networks | |
US8902794B2 (en) | System and method for providing N-way link-state routing redundancy without peer links in a network environment | |
CN101005452A (zh) | 一种在ip设备之间进行通信的方法和*** | |
WO2015055016A1 (zh) | 网元设备配置和管理方法、装置及网元设备 | |
CN103023773B (zh) | 多拓扑网络中转发报文的方法、装置和*** | |
CN104378297A (zh) | 一种报文转发方法及设备 | |
CN108390821B (zh) | 一种openflow交换机实现双活的方法及*** | |
CN104811377B (zh) | 生成媒体接入控制表的方法及网络设备 | |
CN103716169A (zh) | 点到多点的组播实现方法、网络节点和*** | |
CN106034072A (zh) | 报文转发方法、装置及服务提供商网络边缘pe设备 | |
WO2012078523A1 (en) | Systems and methods for pseudo-link creation | |
CN101674229A (zh) | 一种链路聚合组信息管理的方法和网络节点 | |
CN1960325B (zh) | 一种桥接网络中的数据处理方法及一种桥接网络 | |
CN102739519B (zh) | 根基多点服务实现方法、装置和***、运营商边缘设备 | |
JP7273125B2 (ja) | BIERv6パケットを送信するための方法および第1のネットワークデバイス | |
CN109309619A (zh) | 一种域间二维路由协议的实现方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |