清除媒体接入控制转发表项的方法和设备的制作方法

文档序号:7979663阅读:170来源:国知局
清除媒体接入控制转发表项的方法和设备的制作方法
【专利摘要】本发明提供一种清除MAC转发表项的方法和设备。该方法包括第一RB检测到本地终端接入的网络拓扑发生变化;第一RB向第二RB发送第一报文,以便所述第二RB接收到所述第一报文后清除对应的转发表项,所述第二RB是指至少配置了一个与所述第一RB相同VLAN的RB。本发明实施例可以在本地终端接入的网络拓扑发生变化后,及时清除整网相关设备的MAC转发表项,避免转发错误。
【专利说明】清除媒体接入控制转发表项的方法和设备
【技术领域】
[0001]本发明涉及网络通信技术,尤其涉及一种清除媒体接入控制(Media AccessControl, MAC)转发表项的方法和设备。
【背景技术】
[0002]透明多链路互联(TransparentInterconnect of Lots of Links,TRILL)协议是一种在二层网络上基于链路状态计算的路由协议,运行TRILL协议的设备叫做路由桥接设备(Route Bridge,RB),由 RB 组成的网络叫做 TRILL 网络(TRILL Campus)。通过 TRILL 可以实现大二层组网,克服传统二层网络带宽利用率低、收敛时间慢等缺点。
[0003]传统二层本地以太网(native ethernet)可以接入TRILL网络,为了提高接入网络的可靠性,一般通过多归(Mult1-Homing)方式接入。如果终端(End Station, ES)接入的网络拓扑发生切换,会导致本地终端设备接入的RB会发生切换,如果远端RB上的用于保存MAC地址和接入(Ingress) RB的别名(nickname)对应关系的MAC转发表项不能得到及时的清除,远端RB会通过陈旧的MAC转发表项进行转发,会造成转发不通。

【发明内容】

[0004]本发明实施例提供一种清除MAC转发表项的方法和设备,用以在本地终端接入的网络拓扑发生变化后及时清除MAC转发表项,避免转发不通。
[0005]一方面,提供了一种清除MAC转发表项的方法,包括:
[0006]第一 RB检测到本地终端接入的网络拓扑发生变化;
[0007]所述第一 RB向第二 RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同VLAN的RB。
[0008]另一方面,提供了一种清除MAC转发表项的方法,包括:
[0009]第二 RB接收第一报文,所述第一报文为第一 RB检测到本地终端接入的网络拓扑发生变化后发送的,所述第二 RB是指至少配置了一个与所述第一 RB相同VLAN的RB ;
[0010]所述第二 RB根据所述第一报文清除对应的MAC转发表项。
[0011]一方面,提供了一种清除MAC转发表项的设备,包括:
[0012]检测模块,用于检测到本地终端接入的网络拓扑发生变化;
[0013]发送模块,用于向第二 RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同VLAN的RB。
[0014]另一方面,提供了一种清除MAC转发表项的设备,包括:
[0015]接收模块,用于接收第一报文,所述第一报文为第一 RB检测到本地终端接入的网络拓扑发生变化后发送的;
[0016]处理模块,用于根据所述第一报文清除对应的MAC转发表项。
[0017]由上述技术方案可知,通过第一 RB在本地终端接入的网络拓扑发生变化后,采用第一报文通知给第二 RB,可以快速清除第二 RB上的MAC转发表项,触发TRILL网络数据流量快速收敛,保证数据流程转发通畅。
【专利附图】

【附图说明】
[0018]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0019]图1为本发明清除MAC转发表项的方法一实施例的流程示意图;
[0020]图2为本发明中采用AF机制实现破坏的结构示意图;
[0021]图3为本发明中采用边缘RB模拟STP根桥实现破坏的结构示意图;
[0022]图4为本发明中RB信道的一种封装格式示意图;
[0023]图5为本发明中RB信道的另一种封装格式示意图;
[0024]图6为本发明清除MAC转发表项的方法另一实施例的流程示意图;
[0025]图7为图6对应的初始通信路径示意图;
[0026]图8为图6对应的切换后的通信路径示意图;
[0027]图9为图6对应的RB信道的封装个数示意图;
[0028]图10为本发明清除MAC转发表项的方法另一实施例的流程示意图;
[0029]图11为图10对应的初始通信路径示意图;
[0030]图12为图10对应的切换后的通信路径示意图;
[0031]图13为图10对应的RB信道的封装个数示意图;
[0032]图14为本发明清除MAC转发表项的设备一实施例的结构示意图;
[0033]图15为本发明清除MAC转发表项的设备另一实施例的结构示意图。
【具体实施方式】
[0034]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0035]图1为本发明清除MAC转发表项的方法一实施例的流程示意图,包括:
[0036]步骤11:第一 RB检测到本地终端接入的网络拓扑发生变化。
[0037]其中,第一 RB可以是指TRILL网络的边缘RB。在多归组网情况下,为了避免多个接入RB都能转发数据流量引起的广播风暴问题,可以对多归组网的接入链路进行破坏,使得传统二层网络只能通过一条接入链路接入TRILL网络。
[0038]其中,可以通过TRILL协议中的指定转发者(Appointed Forwarders, AF)机制实现破坏,或者,通过边缘RB模拟生成树协议(Spanning Tree Protocol, STP)根桥实现破坏,STP是泛指STP、快速生成树协议(Rapid Spanning Tree Protocol, RSTP)、多实例生成树协议(Mult1-1nstance Spanning Tree Protocol, MSTP)。
[0039]参见图2,为AF机制实现破坏的结构示意图,RBl和RB3之间运行TRILL协议,通过TRILL交互报文(具体为TRILL Hello报文)进行消息交互,RBl和RB3中的一个被指定为对应某些虚拟局域网(Virtual Local Area Network, VLAN)的转发者(Forwarder),另外一个RB不能转发该VLAN内的数据流量,从而可以实现破环。参见图2,以破坏桥设备(Bridge)与RB3之间的链路为例。
[0040]参见图3,为边缘RB模拟STP根桥实现破坏的结构示意图,参见图3,假设RBl和RB2接入同一个STP网络,RBl和RB2对外呈现相同的桥ID、桥优先级,其中桥优先级配置最高。对于下面接入的由交换机S1、S2、S3、S4组成的STP网络来说,RBl和RB2相当于是一台根桥设备,本实施例中,S3设备上连接S2的端口被阻塞(block)、S2设备上连接SI的端口被阻塞(block)。
[0041]对于AF机制实现破坏的场景,当边缘RB检测到AF切换后,具体由非AF切换为AF,可以理解为本地终端接入的网络拓扑发生变化。如图2中RBl和桥设备之间发生链路故障后,终端接入的RB将从RBl切换到RB3,此时,可以理解为本地终端接入的网络拓扑发
生变化。
[0042]对于边缘RB模拟STP根桥实现破坏的场景,当边缘RB从面向终端的接入端口接收到拓扑变化(Topology Change Notification, TCN)报文后,就可以确定出终端接入的网络拓扑发生切换。如图3TRILL接入的STP网络初始阻塞端口在S2和S3设备上,分别位于S2与SI设备连接的端口,以及S3与S2设备连接的端口。ESl到ES5都属于同一个VLAN,当SI与S3之间的链路发生故障后,S3设备上连接S2的端口会由阻塞状态变为转发(Forwarding)状态,这样S3会产生TCN报文,该TCN报文通过S3和S2之间的链路发送给S2,S2然后向RB2发送TCN报文。因此,当RB2的接入端口接收到TCN报文后,就可以确定本地终端接入的网络拓扑发生变化。
[0043]步骤12:第一 RB向第二 RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同VLAN的RB。
[0044]第一 RB在确定本地终端接入的网络拓扑发生变化后,就可以向第二 RB发送第一报文。
[0045]例如,第一 RB对应的VLAN包括VLAN1?VLAN10,如果该第一 RB之外的某个RB对应的VLAN包括VLANfVLANlO中的至少一个,那么该RB就是上述的第二 RB。
[0046]可选的,第一报文可以为MAC清除(MAC flush)报文,或者为TCN报文。
[0047]例如,参见图2,对于AF机制实现破坏的场景,RB3可以向RB2发送MAC flush报文;或者,参见图3,对于边缘RB模拟STP根桥实现破坏的场景,RB2向RB3和RB4发送MACflush报文,RB2向RBl发送TCN报文。
[0048]第一报文可以通过数据通道,例如RB信道(RBridge channel)发送。第一报文可以采用组播或广播方式发送,如果为组播方式,则TRILL Header中目的别名(nickname)为TRILL网络中分发树树根的nickname,如果为单播方式TRILL Header中目的nickname为目的端 RB 的 nickname (比如 RBl 的 nickname)。
[0049]具体的,在组播方式发送时,所有第二 RB和第一 RB需要在同一颗分发树或剪枝后的分发树上,第一 RB只需要通过该分发树或剪枝后的分发树对应的组播TRILL数据通道,发送一份MAC清除报文或TCN报文。在单播方式发送时,通过查找整网链路状态数据库(LSDB7Link State Data Base)预先获得所有第二 RB,然后给每个第二 RB,通过单播TRILL通道各发送一份MAC清除报文或TCN报文。以RB2发送第一报文为例,若采用组播方式发送,RB2只需要发送一份第一报文;若采用单播方式,RB2需要给每个远端RB设备都发送一份第一报文。对于组播方式发送,可以通过一颗共用的分发树发送,也可以通过基于某个VLAN的剪枝后的分发树发送,需要确保需要发送到的所有边缘RB是这棵分发树或剪枝后的分发树的叶子节点。
[0050]其中,在单播或通过分发树组播发送第一报文时,RBridge channel的封装格式可以参见图4,包括外部以太网头(Outer Ethernet)、Trill头(Trill Header)、内部以太网头(Inner Ethernet Header)、OAM 信道头(0AM channel header)和净荷(payload)。与现有技术不同的是,OAM信道头中新增加两种信道协议类型,表明净荷部分是TCN报文,或者为MAC flush报文。
[0051]在通过剪枝后的分发树组播发送第一报文时,RBridge channel的封装格式可以参见图5,图5以需要发送到的所有边缘RB都加入VLAN 10为例,此时,相当于图4,需要增加VLAN 10字段。
[0052]可选的,第一 RB也可以将第一报文发送给每个相同VLAN的RB,此时,接收到第一报文的RB可以忽略不进行处理。
[0053]上述的MAC转发表项中包含终端MAC地址与接入RB (ingress RB)的别名(nickname)之间的对应关系。其中,接入RB是转发数据流量的边缘RB,如上述图2或图3中的RBl。
[0054]另外,所述第一 RB检测到本地终端接入的网络拓扑发生变化后,会清除本地MAC转发表项。
[0055]本实施例在第一 RB在本地终端接入的网络拓扑发生变化后,采用第一报文通知给第二 RB,可以快速清除第二 RB设备上的MAC转发表项,触发TRILL网络数据流量快速收敛。
[0056]图6为本发明清除MAC转发表项的方法另一实施例的流程示意图,本实施例以应用场景为:通过TRILL协议中AF机制实现传统二层网络和TRILL网络互联。本实施例包括:
[0057]步骤61:两个ES通过初始通信路径进行通信。
[0058]参见图7,两个ES分别为ESl和ES2,ES2和ESl的初始通信路径为:ES2 — RB2 — RBl — Bridge — ES1,也就是由粗实线所示的数据报文转发路径,后续图粗实线含义相同。
[0059]步骤62:RB3检测到AF发生切换。
[0060]例如,配置或RBl和Bridge之间链路故障之后,AF会进行切换。RB3可以检测到该AF切换。
[0061]步骤63:RB3向RB2发送MAC清除(MAC flush)报文,该报文中包含切换后的AF对应的VLAN信息。
[0062]其中,每个RB可以确定自身对应的VLAN信息,因此,当AF切换后,切换后的AF,如上述的RB3可以获取自身对应的VLAN信息并携带在MACflush报文中。
[0063]VLAN信息可以为 VLAN列表(VLAN list)或者VLAN位图(VLAN bitmap),其中,VLAN位图是用每个bit表示一个VLAN,相对于VLAN列表可以节省空间。
[0064]为了更精确的清除VLAN对应的MAC转发表项,所述MAC清除报文中除了包含VLAN信息,还可以包含一个或多个MAC地址或者别名(nickname),用于指示所述第二 RB清除匹配所述VLAN信息和所述MAC地址的MAC转发表项,或者清除匹配所述VLAN和所述别名的MAC转发表项。也就是清除VLAN信息指示的VLAN对应的所有MAC转发表项中包含该MAC地址或者别名的MAC转发表项。
[0065]当包含VLAN信息和nickname时,用于指示所述第二 RB清除匹配所述VLAN和所述nickname的MAC转发表项。在AF机制下,所述nickname为本地终端接入的原有RB的nickname,比如图7中,所述nickname就为RBl设备的nickname, AF由RBl切换到RB3之外,需要通知第二 RB (RB2)清除接入RB为RBl的MAC表项;在边缘RB模拟STP根桥情况下,接入同一个STP域的所有RB的nickname,比如图12中,接入网络拓扑发生变化后,需要通知第二 RB清除接入RB为RBl和RB2的MAC表项,所述nickname为RBl和RB2设备的nickname。在这种情况下,MAC flush报文包括内容:(VLANl、nickname列表)、(VLAN2、nickname列表)...。第二 RB只清除从这些nickname对应的RB学习到的在指定VLAN中的MAC转发表项。
[0066]如果明确知道本地接入网络的终端对应哪些MAC地址,MAC flush报文也可以通过指定VLAN信息和MAC地址用于指示第二 RB清除相应MAC转发表项。在这种情况下,MACflush报文包括内容:(VLANUMAC地址列表)、(VLAN2.MAC地址列表)…。第二 RB只清除这些指定VLAN中的包含指定MAC地址的MAC转发表项。
[0067]MAC flush报文可以在数据通道中发送,该数据通道可以为RBridge Channel。参见图9,为采用数据通道发送MAC flush报文的格式示意图。
[0068]另外,MAC flush报文可以通过单播或组播方式发送。具体的单播或组播时采用的数据通道的格式可以参见 上述的图4或图5。
[0069]步骤64:RB2收到MAC flush报文后,清除该MAC flush报文中包含的VLAN对应的MAC转发表项。
[0070]其中,具体可以是RB2的转发芯片将MAC flush报文上送给CPU控制层面,CPU控制层面根据MAC flush报文中的VLAN信息,清除相应VLAN内的MAC转发表项。例如,MACflush报文中包含VLANl和VLAN2,则RB2接收到MAC flush报文后,清除VLANl对应的MAC转发表项和VLAN2对应的MAC转发表项。
[0071]可选的,RB3也可以将MAC flush报文发送给RBl,RBl收到MAC flush报文后,清除对应VLAN的MAC转发表项。或者,RBl也可以在检测到AF切换后,清除自身的MAC转发表项。或者,RBl也可以等待MAC转发表项的老化实现MAC转发表项的清除。
[0072]进一步的,当MAC转发表项被清除后,可以采用如下的方式学习新的MAC转发表项,实现MAC转发表项的及时更新。
[0073]ES2发送单播数据报文给RB2,RB2收到该二层单播数据报文之后,由于MAC转发表项已经被清除,因此RB2会将该报文当做未知单播报文进行处理,通过分发树将报文发送给RBl和RB3。
[0074]RB3收到之后,进行TRILL解封装,学习ES2的源MAC,然后将报文通过接入端口发送给Bridge, Bridge上也学习ES2的源MAC。Bridge再将报文发送给ESl。[0075]ESl收到ES2的单播数据报文之后,进行回应。回应报文通过单播报文转发路径到达ES2,转发路径为ESl->Bridge->RB3->RB2->ES2,RB2上会进行源MAC学习,学习到ESl的源MAC,源Nickname为RB3的Nickname。类似的,桥设备也可以在上述的单播数据报文以及回应报文时,学习到ES2的MAC地址以及ESl的MAC地址。
[0076]后续ES2和ESl之间可以通过单播流程进行互通。
[0077]总之AF发生切换后,参见图8,切换后的通信路径切换为:ES2 — RB2 — RB3 — Bridge — ESI。
[0078]本实施例在AF切换后,切换后的AF (具体为RB3)向第二 RB (具体为RB2)发送MAC flush报文,RB2接收到该MAC flush报文后清除MAC转发表项,可以快速清除RB2设备上的MAC转发表项,触发TRILL网络数据流量快速收敛。
[0079]图10为本发明清除MAC转发表项的方法另一实施例的流程示意图,本实施例以应用场景为:通过边缘RB设备模拟STP根桥实现STP网络和TRILL网络互联场景。本实施例包括:
[0080]步骤101:两个ES通过初始通信路径进行通信。
[0081]参见图11,TRILL接入的STP网络初始阻塞端口在S2和S3设备上,分别位于S2与SI设备连接的端口,以及S3与S2设备连接的端口。ESl到ES5都属于同一个VLAN。
[0082]ES5 通过 S4 — SI — S3 和 ESl 进行通信,ES3 通过 RB3 — RBl — SI — S3 和 ESl通信。
[0083]步骤102:接入STP拓扑发生切换。
[0084]当接入STP拓扑发生切换时,例如SI和S3之间链路故障时,S3的阻塞端口(S3 — S2)会变为Forwarding状态,S3会清除本地MAC转发表项,并且会生成TCN报文,将TCN报文发送给S2 ;S2接收到TCN报文后清除本地的MAC转发表项,并再发送TCN报文给RB2。当RB2接收到TCN报文后,送给RB2内的STP协议组件进行处理,STP协议组件会清除本地转发芯片中的MAC转发表项,并向同一个STP域内的其他RB发送TCN报文,向不在同一个STP域内的其他RB发送MAC flush报文。S卩,RB2向RBl发送TCN报文;RB2向RB3和RB4发送MAC flush报文,其中包含VLAN信息。
[0085]其中,TCN报文和MAC flush报文都可以米用RBridge channel发送,MAC flush报文采用RBridge channel发送的结构示意图可以参见图9, TCN报文采用RBridge channel发送的结构示意图可以参见图13。
[0086]另外,需要说明的是,在STP或RSTP情况下,本实施例中,清除本地的MAC转发表项是指清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项;而在MSTP情况下,每个RB可以对应多个MSTP实例,RB的本地会配置MSTP实例和VLAN的对应关系,收到的TCN报文中会包括实例的信息,RB收到TCN报文后,便可以清除该实例对应VLAN的MAC转发表项。
[0087]即在步骤102之后可以包括步骤103和步骤104,或者,包括步骤105?109。
[0088]步骤103:RB2向RB3和RB4发生MAC清除(MAC flush)报文,该MAC清除报文中包含VLAN信息;
[0089]步骤104:RB3和RB4收到MAC flush报文后,清除MAC flush报文中包含的VLAN信息对应的MAC转发表项。[0090]步骤105:RB2向RBl发送TCN报文;
[0091]步骤106 =RBl接收到TCN报文后,清除本地的MAC转发表项。
[0092]其中,例如,在MSTP情况下,RBl接收到TCN报文后,会清除该TCN报文包含的实例信息指示的实例对应VLAN的MAC转发表项。在STP或RSTP情况下,RBl接收到TCN报文后清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项,比如接入端口上配置的接入VLAN为100到200,则收到TCN报文之后需要清除VLAN 100到200内的MAC转发表项,同一个STP域内各RB对应的接入端口配置的VLAN要一致。
[0093]RB3和RB4接收到MAC flush报文后,清除MAC flush报文中包含的VLAN信息对应的MAC转发表项。
[0094]进一步的,当RBl接收到TCN报文后,还可以指示同一个STP域内的其它交换机设备清除MAC转发表项。即还可以包括:
[0095]步骤107 =RBl向SI发送TCN报文。
[0096]步骤108:S1接收到TCN报文后,清除本地的MAC转发表项,并发送TCN报文给S4。
[0097]步骤109:S4接收到TCN报文后,清除本地的MAC转发表项。
[0098]进一步的,当MAC转发表项被清除后,可以采用如下的方式学习新的MAC转发表项,实现MAC转发表项的及时更新。
[0099]ES3和ESl后续通信过程:
[0100]ES3后续和ESl进行通信,RB3收到ES3的二层单播数据报文,由于本地MAC表项已经被清除,这样该二层数据报文会作为未知单播报文发往所有RB设备,包括RB2设备,RB2设备上会学习ES3的MAC。同时,RB2会将报文通过接入端口发给ESI,ESl收到之后,ESl会进行回应。
[0101]RB2从接入端口收到ES I的回应报文,由于目的MAC为ES3的MAC,通过查找本地MAC转发表进行单播TRILL封装,然后将报文发往RB3,RB3上学习ESl的MAC,同时将报文送给ES3。后续ES3和ESl之间通信都通过单播方式进行,报文转发路径变为RB3->RB2->S2->S3,而不是原来的 RB3->RB1->S1_>S3。
[0102]假如接入STP拓扑变化事件没有及时通知给RB3,RB3设备仍然保留陈旧的ESl的MAC表项,源Nickname仍然为RBl设备的Nickname,这样ES3到ESl的单播报文会发往RBl设备,但是由于SI到S3的链路故障,因此RBl不能将该报文发到ES1,从而转发不通。后续,只有在RB3设备上的MAC自然老化之后,ES3才能和ESl通信正常,这个老化时间比较长,一般为几分钟。因此,通过本方案可以实现TRILL网络数据转发的快速收敛。
[0103]ES5和ESl后续通信过程:
[0104]假如ES5后续和ESl通信,SI收到ES5的单播数据报文之后,由于ES5上的MAC表项已经清除,因此ES5会将该单播数据报文作为未知单播报文进行处理,发给RBl。
[0105]RBl收到该单播数据报文之后,由于MAC转发表已经被清除,当做未知单播报文进行处理。通过组播分发树将报文发送给所有其他RB,包括RB2。
[0106]RB2收到该数据报文之后,进行TRILL数据解封装,学习ES5的源MAC,然后发送给S2。
[0107]S2再发送给S3,S3再发送给ESI。
[0108]ESl后续会通过S3->S2->RB2->RB1->S1将回应报文发送给ES5,RB1上会学习ESl的源MAC,源Nickname为RB2设备的Nickname。这样,接入的STP拓扑发生变化之后,ES5和ESl之间可以正常通信。若S4和SI没有感知拓扑变化事件,则S4和SI设备上仍然保留陈旧的MAC表项,ES5到ESl的报文会通过S4->S1_>S3将报文发送给ES1,但是由于ES1_>ES3故障,因此会导致转发不通。
[0109]例如,参见图12,接入网络拓扑发生变化后,最终ES3通过RB3 — RB2 — S2 — S3和ESl通信。
[0110]本实施例在本地终端接入的网络拓扑发生变化时,可以让整个TRILL网络所有节点及时清除MAC转发表项,以便及时更新,从而触发数据转发快速收敛。另外,本实施例对于通过第一 RB模拟STP根桥进行破环情况下,可以让TCN报文洪泛到整个接入网络,使整个接入网络设备的MAC表项得到快速清除,触发接入网络流量快速收敛。
[0111]图14为本发明清除MAC转发表项的设备一实施例的结构示意图,该设备可以为TRILL网络的边缘RB,该设备包括检测模块141和发送模块142 ;检测模块141用于检测到本地终端接入的网络拓扑发生变化;发送模块142用于向第二 RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同VLAN的RB。
[0112]可选的,所述检测模块具体用于:在指定转发者AF机制下检测到所述设备由非AF转变为AF后,确定本地终端接入的网络拓扑发生变化。
[0113]可选的,所述发送模块发送的所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
[0114]可选的,该MAC清除报文中还可以包括一个或多个MAC地址或别名,指示第二 RB清除所述VLAN信息对应的所有MAC转发表项中包含所述MAC地址或别名的MAC转发表项。
[0115]可选的,所述检测模块具体用于:在第一 RB模拟STP根桥机制下,从面向本地终端的接入端口接收到TCN报文时,确定终端接入的网络拓扑发生切换。
[0116]可选的,所述发送模块发送的所述第一报文为TCN报文,指示所述第二 RB清除本地的MAC转发表项,其中,在STP或RSTP场景下,所述第一报文指示第二 RB清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项,在MSTP场景下,所述第一报文中包含实例信息,指示第二 RB清除与所述实例信息对应的VLAN的MAC转发表项;或者,
[0117]所述发送模块发送的所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
[0118]可选的,所述第一报文通过数据通道发送,所述数据通道为RB信道。
[0119]可选的,所述第一报文采用组播方式或单播方式发送,在组播方式发送时候,RB信道为组播TRILL数据报文封装格式,在单播方式发送时候,RB信道为单播TRILL数据报文封装格式。
[0120]本实施例在本地终端接入的网络拓扑发生变化后,采用第一报文通知给第二 RB,可以快速清除第二 RB设备上的MAC转发表项,触发TRILL网络数据流量快速收敛。
[0121]图15为本发明清除MAC转发表项的设备另一实施例的结构示意图,该设备可以为远端RB,该设备包括接收模块151和处理模块152 ;接收模块151用于接收第一报文,所述第一报文为第一RB检测到本地终端接入的网络拓扑发生变化后发送的;处理模块152用于根据所述第一报文清除对应的MAC转发表项。[0122]可选的,所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,所述处理模块具体用于:清除所述VLAN信息指示的VLAN对应的MAC转发表项。
[0123]可选的,该MAC清除报文中还可以包括一个或多个MAC地址或别名,所述处理模块具体用于:清除所述VLAN信息指示的VLAN对应的所有MAC转发表项中包含所述MAC地址或别名的MAC转发表项。
[0124]可选的,所述第一报文为TCN报文,所述处理模块具体用于:
[0125]在STP或RSTP场景下,清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项;或者,
[0126]在MSTP场景下,根据本地配置的实例与VLAN的对应关系,以及所述TCN报文中包含的实例信息,清除所述实例信息指示的实例对应的VLAN的MAC转发表项。
[0127]可选的,该设备还可以包括:
[0128]发送模块,用于向同一个STP域内的其它交换机设备发送TCN报文,以便所述其它交换机设备清除本地的MAC转发表项。
[0129]本实施例在本地终端接入的网络拓扑发生变化后,通过第一报文获知该切换并清除MAC转发表项,可以快速清除第二 RB设备上的MAC转发表项,触发TRILL网络数据流量快速收敛。
[0130]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0131]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种清除媒体接入控制MAC转发表项的方法,其特征在于,包括: 第一路由桥接设备RB检测到本地终端接入的网络拓扑发生变化; 所述第一 RB向第二 RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同虚拟局域网VLAN的RB。
2.根据权利要求1所述的方法,其特征在于,在指定转发者AF机制下,所述第一RB检测到本地终端接入的网络拓扑发生变化,包括: 第一 RB检测到自身由非AF切换为AF。
3.根据权利要求2所述的方法,其特征在于,所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
4.根据权利要求3所述的方法,其特征在于,所述MAC清除报文中还包含一个或多个MAC地址或者别名,用于指示所述第二 RB清除所述VLAN信息对应的所有MAC转发表项中包含所述MAC地址或者别名的MAC转发表项。
5.根据权利要求1所述的方法,其特征在于,在第一RB模拟生成树协议STP根桥机制下,所述第一 RB检测 到本地终端接入的网络拓扑发生变化,包括: 第一 RB从面向本地终端的接入端口接收到拓扑变化TCN报文。
6.根据权利要求5所述的方法,其特征在于,在所述第二RB与所述第一 RB位于同一个STP域时,所述第一报文为TCN报文,指示所述第二 RB清除本地的MAC转发表项,其中,在STP或快速生成树协议RSTP场景下,所述第一报文指示第二 RB清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项,在多实例生成树协议MSTP场景下,所述第一报文中包含实例信息,指示第二 RB清除与所述实例信息对应的VLAN的MAC转发表项。
7.根据权利要求5所述的方法,其特征在于,在所述第二RB为所述第一 RB位于的STP域之外的RB时,所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述MAC转发表项包含终端MAC地址与接入RB的别名之间的对应关系。
9.一种清除媒体接入控制MAC转发表项的方法,其特征在于,包括: 第二路由桥接设备RB接收第一报文,所述第一报文为第一 RB检测到本地终端接入的网络拓扑发生变化后发送的,所述第二 RB是指至少配置了一个与所述第一 RB相同虚拟局域网VLAN的RB ; 所述第二 RB根据所述第一报文清除对应的MAC转发表项。
10.根据权利要求9所述的方法,其特征在于,所述第一报文为MAC清除报文,所述MAC清除报文中包含虚拟局域网VLAN信息,所述根据所述第一报文清除对应的MAC转发表项,包括: 清除所述VLAN信息指示的VLAN对应的MAC转发表项。
11.根据权利要求10所述的方法,其特征在于,所述MAC清除报文中还包括一个或多个MAC地址或者别名,所述清除所述VLAN信息指示的VLAN对应的MAC转发表项,包括: 清除所述VLAN信息指示的VLAN对应的所有MAC转发表项中包含所述MAC地址或者别名的MAC转发表项。
12.根据权利要求9所述的方法,其特征在于,所述第一报文为拓扑变化TCN报文,所述根据所述第一报文清除对应的MAC转发表项,包括: 在生成树协议STP或快速生成树协议RSTP场景下,清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项;或者, 在多实例生成树协议MSTP场景下,所述TCN报文中包含实例信息,根据本地配置的实例与VLAN的对应关系,以及所述TCN报文中包含的实例信息,清除所述实例信息指示的实例对应的VLAN的MAC转发表项。
13.根据权利要求12所述的方法,其特征在于,还包括: 所述第二 RB向同一个STP域内的其它交换机设备发送所述TCN报文,以便所述其它交换机设备清除本地的MAC转发表项。
14.一种清除媒体接入控制MAC转发表项的设备,其特征在于,包括: 检测模块,用于检测到本地终端接入的网络拓扑发生变化; 发送模块,用于向第二路由桥接设备RB发送第一报文,以便所述第二 RB接收到所述第一报文后清除对应的MAC转发表项,所述第二 RB是指至少配置了一个与所述第一 RB相同虚拟局域网VLAN的RB。
15.根据权利要求14所述的设备,其特征在于,所述检测模块具体用于: 在指定转发者AF机制下检测到所述设备由非AF转变为AF后后,确定本地终端接入的网络拓扑发生变化。
16.根据权利要求15所述的设备,其特征在于,所述发送模块发送的所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
17.根据权利要求14所述的设备,其特征在于,所述检测模块具体用于: 在第一 RB模拟生成树协议STP根桥机制下,从面向本地终端的接入端口接收到TCN报文时,确定终端接入的网络拓扑发生切换。
18.根据权利要求17所述的设备,其特征在于, 所述发送模块发送的所述第一报文为拓扑变化TCN报文,指示所述第二 RB清除本地的MAC转发表项,其中,在STP或快速生成树协议RSTP场景下,所述第一报文指示第二 RB清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项,在多实例生成树协议MSTP场景下,所述第一报文中包含实例信息,指示第二 RB清除与所述实例信息对应的VLAN的MAC转发表项;或者, 所述发送模块发送的所述第一报文为MAC清除报文,所述MAC清除报文中包含VLAN信息,指示所述第二 RB清除所述VLAN信息对应的MAC转发表项。
19.一种清除媒体接入控制MAC转发表项的设备,其特征在于,包括: 接收模块,用于接收第一报文,所述第一报文为第一路由桥接设备RB检测到本地终端接入的网络拓扑发生变化后发送的; 处理模块,用于根据所述第一报文清除对应的MAC转发表项。
20.根据权利要求19所述的设备,其特征在于,所述第一报文为MAC清除报文,所述MAC清除报文中包含虚拟局域网VLAN信息,所述处理模块具体用于: 清除所述VLAN信息指示的VLAN对应的MAC转发表项。
21.根据权利要求19所述的设备,其特征在于,所述第一报文为拓扑变化TCN报文,所述处理模块具体用于: 在生成树协议STP或快速生成树协议RSTP场景下,清除面向本地终端的接入端口加入的所有VLAN中的MAC转发表项;或者, 在多实例生成树协议MSTP场景下,根据本地配置的实例与VLAN的对应关系,以及所述TCN报文中包含的实例信息,清除所述实例信息指示的实例对应的VLAN的MAC转发表项。
22.根据权利要求21所述的设备,其特征在于,还包括: 发送模块,用于向同一个STP域内的其它交换机设备发送TCN报文,以便所述其它交换机设备清除本地的MAC转 发表项。
【文档编号】H04L12/741GK103475583SQ201210186577
【公开日】2013年12月25日 申请日期:2012年6月7日 优先权日:2012年6月7日
【发明者】郝卫国, 厉益舟, 李振斌, 阴元斌, 丁成龙 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1