Trill网络中的avf处理方法及装置的制造方法

xiaoxiao2021-2-23  109

Trill网络中的avf处理方法及装置的制造方法
【技术领域】
[0001]本申请涉及网络通信技术领域,特别涉及一种TRILL网络中的AVF处理方法及装置。
【背景技术】
[0002]TRILL (TRansparent Interconnect1n of Lots of Links,多链接透明互联)协议通过将三层路由技术 IS-1S (Intermediate System-to-1ntermediate System,中间系统到中间系统)的设计思路引入二层网络,从而将二层的简单、灵活性与三层的稳定、可扩展和高性能有机融合起来,非常适合数据中心构建大型二层网络的需要。
[0003]运行TRILL协议的设备称为RB (Router Bridge,路由桥)。当连接本地网络的同一链路上存在多个RB时,RB之间选举出DRB (Designed Router Bridge,指定路由桥),由DRB将该链路连接的本地网络中的每一个VLAN(虚拟局域网)的AVF (Appointed VLAN-xForwarder,指定VLAN转发者)分配给不同的RB,即,指定该链路上的哪一个RB作为哪些VLAN的AVF,然后,通过Hello (握手)报文通知给各个RB。本地网络中任一 VLAN的所有数据流必须从作为该VLAN的AVF的RB上的同一端口出、入TRILL网络。
[0004]当由于发生了 RB故障、故障RB恢复、链路故障、故障链路恢复、新RB加入链路、RB离开链路、或者用户重新配置AVF分配策略等,导致DRB重新分配AVF时,DRB会将重新分配的结果通过Hello报文通知给各个RB。当某一 RB通过该Hello报文获知本设备被减少了某些VLAN的AVF时,会立即删除与这些VLAN有关的表项,以使得本设备不再作为这些VLAN的AVF ;同样,当某一 RB通过该Hello报文获知本设备被新增为某些VLAN的AVF时,也会立即添加与这些VLAN有关的表项,以使得本设备作为这些新增VLAN的AVF。
[0005]例如,DRB将某一 VLAN的AVF从一 RB(为了描述方便,记为RB1)重新分配给了另一 RB (为了描述方便,记为RB2),RB1需要删除与该VLAN有关的表项,以使得本设备不再作为该VLAN的AVF,而RB2需要添加与该VLAN有关的表项,以使得本设备作为新增的该VLAN的AVF,但是,这样会存在以下问题:由于RB1执行删除表项动作的时间与RB2执行添加表项动作的时间并不一定是同步的,如果RB2执行添加表项的动作在先,而RB1执行删除表项动作在后,贝1J同一链路上在一定时间内同时存在同一 VLAN的两个AVF,这样,将导致瞬时环路,存在广播风暴的风险。

【发明内容】

[0006]有鉴于此,本申请提供了一种TRILL网络中的AVF处理方法及装置。
[0007]本申请的技术方案如下:
[0008]一方面,提供了一种TRILL网络中的AVF处理方法,该方法应用于同一链路上至少两个RB中的任一 RB,该方法包括:
[0009]当获知本设备被新增为VLAN的AVF时,根据本地保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB ;其中,AVF信息包括:以该RB作为AVF的VLAN信息;
[0010]若不属于其它RB,则配置本设备作为第一 VLAN的AVF ;
[0011]若属于第一其它RB,则在确定第一其它RB已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF ;
[0012]当获知本设备被减少了第二 VLAN的AVF时,配置本设备停止作为第二 VLAN的AVF。
[0013]另一方面,还提供了一种TRILL网络中的AVF处理装置,该装置应用于同一链路上至少两个RB中的任一 RB中,该装置包括:
[0014]保存模块,用于保存与本设备在同一链路上的其它RB对应的AVF信息,其中,AVF信息包括:以该RB作为AVF的VLAN信息;
[0015]判断模块,用于当获知本设备被新增为第一 VLAN的AVF时,根据保存模块中保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB ;
[0016]配置模块,用于若判断模块判断出第一 VLAN的AVF不属于其它RB,则配置本设备作为第一 VLAN的AVF ;还用于若判断模块判断出第一 VLAN的AVF属于第一其它RB,则在确定第一其它RB已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF ;还用于当获知本设备被减少了第二 VLAN的AVF时,配置本设备停止作为第二 VLAN的AVF。
[0017]本申请的以上技术方案中,当DRB将某VLAN的AVF从一 RB (为了描述方便,称为RB1)重新分配给另一 RB(为了描述方便,称为RB2)时,RB2可以根据本地保存的同一链路上其它RB对应的AVF信息,即,是哪些VLAN的AVF,判断新增VLAN的AVF是否属于其它RB,若不属于其它RB,则立即配置本设备作为该新增VLAN的AVF,若属于其它RB (为了描述方便,称为第一其它RB),则在确定出第一其它RB已经停止作为该新增VLAN的AVF之后,才配置本设备作为该新增VLAN的AVF。这样,可以确保在RB1不再作为该新增VLAN的AVF之后,RB2才开始作为该新增VLAN的AVF,避免了同一链路上在一定时间内同时存在同一 VLAN的两个AVF的现象的发生,从而,避免了瞬时环路和广播风暴的风险。
【附图说明】
[0018]图1是一种TRILL网络的实际组网结构示意图;
[0019]图2是本申请实施例的RB在获知本设备被新增为第一 VLAN的AVF时执行的操作的流程图;
[0020]图3是在图1的TRILL网络中,同一链路上的RB4?RB6执行的AVF处理方法的流程图;
[0021]图4是本申请一实施例的包含AVF处理装置的RB的硬件架构示意图;
[0022]图5是本申请另一实施例的包含AVF处理装置的RB的硬件架构示意图。
【具体实施方式】
[0023]在如图1所示的TRILL网络中,同一链路上的RB4、RB5和RB6通过普通交换机与本地网络1相连,RB4被选举为DRB。假设,本地网络1中的VLAN范围为VLAN 1?VLAN 120,RB4首次分配本地网络1中的各个VLAN的AVF的情况如下:RB4作为VLAN 1?VLAN 40的AVF, RB5 作为 VLAN 41 ?VLAN 80 的 AVF, RB6 作为 VLAN 81 ?VLAN 120 的 AVF,使得本地网络1中各个VLAN的数据流可以正常出、入TRILL网络。
[0024]当由于某种原因,作为DRB的RB4需要重新分配AVF时,例如,将之前RB6负责的VLAN 101?VLAN 120的AVF分配给RB5,此时,RB4会将重新分配的结果通过Hello报文通知给RB5和RB6。
[0025]RB5接收到RB4发来的Hello报文后,获知本设备被新增为VLAN 101?VLAN 120的AVF,则立即添加与VLAN 101?VLAN 120有关的表项,从而,RB5作为VLAN 101?VLAN120的AVF ;RB6接收到RB4发来的Hello报文后,获知本设备被删除(或减少)了 VLAN101?VLAN 120的AVF,则立即删除与VLAN 101?VLAN 120有关的表项,从而RB6停止作为 VLAN101 ?VLAN 120 的 AVF。
[0026]如果RB5添加与VLAN 101?VLAN 120有关的表项的时间比RB6删除与VLAN101?VLAN 120有关的表项的时间早,贝丨j此时,同一链路上会在一定时间内同时存在同一VLAN的两个AVF,例如,RB5和RB6同时作为VLAN 101的AVF,将导致数据流瞬时环路,存在广播风暴的风险。
[0027]为了解决上述问题,本申请以下实施例中提供了一种TRILL网络中的AVF处理方法,以及一种可以应用该方法的装置。
[0028]以下实施例中的DRB特指连接本地网络的同一链路上的指定路由桥,非DRB指的是同一链路上除DRB以外的其它RB,RB指的是包括DRB和非DRB在内的任一 RB,即,可以是DRB也可以是非DRB。其中,同一链路指的是连接于同一本地网络,用于将多个RB连接起来的链路,这多个RB中的任两个RB之间不跨RB,该本地网络对于RB来说是透明的,从而,RB之间可以看做是直连的。其中的 本地网络由不运行TRILL协议的二层交换机和/或终端设备组成。
[0029]本申请实施例的AVF处理方法包括以下步骤:
[0030]在TRILL网络中,任一 RB均周期性地发送Hello报文。在DRB首次将各个VLAN的AVF分配给同一链路上的不同RB并通过Hello报文通知给各个非DRB之后,任一 RB向同一链路上的其它RB发送的Hello报文中携带以本设备作为AVF的VLAN信息,即,通过Hello报文声明本设备是哪些VLAN的AVF ;具体的,可以在Hello报文中的Appointed ForwardersSub-TLV (指定转发者子类型长度值)或VLANs Appointed Sub-TLV (虚拟局域网的指定子类型长度值)中携带以本设备作为AVF的VLAN信息。
[0031]接收到同一链路上的其它RB发来的携带有以该其它RB作为AVF的VLAN信息的Hello报文之后,任一 RB在本地保存该其它RB与该Hello报文中携带的以该其它RB作为AVF的VLAN信息之间的对应关系,即,记录同一链路上的其它RB是哪些VLAN的AVF。这样,每一个RB上均保存有同一链路上的其它RB对应的AVF信息,其中,AVF信息是以RB作为AVF的VLAN信息,即,保存有同一链路上的其它RB是哪些VLAN的AVF。
[0032]在由于发生了 RB故障、故障RB恢复、链路故障、故障链路恢复、新RB加入链路、RB离开链路、或者用户重新配置AVF分配策略等,导致DRB重新分配AVF时,DRB会将重新分配的结果通过Hello报文通知给各个非DRB。这样,DRB本身可以获知本设备被重新分配了哪些VLAN的AVF,并且,非DRB在接收到DRB发来的该Hello报文后,会获知本设备被重新分配了哪些VLAN的AVF。
[0033]任一 RB在获知本设备被减少了 VLAN(为了描述方便,称为第二 VLAN)的AVF时,立即配置本设备停止作为第二 VLAN的AVF,即,不再作为第二 VLAN的AVF。在配置完毕后,发送的Hello报文中携带的以本设备作为AVF的VLAN信息中删除了第二 VLAN,以便其它RB接收到该Hello报文后,更新本地保存的对应AVF信息。也就是说,在配置本设备停止作为第二 VLAN的AVF完毕之前发送的Hello报文中,携带的是包含有第二 VLAN的原有VLAN信息,而在配置完毕后发送的Hello报文中,携带的是删除了第二 VLAN的更新VLAN信息,此时,在以本设备作为AVF的更新VLAN信息中,已经不存在第二 VLAN。在实际实施过程中,通过删除与第二 VLAN有关的表项,来配置本设备停止作为第二 VLAN的AVF,在删除完毕之后,向同一链路上的其它RB发送的Hello报文用于声明本设备当前是删除了第二 VLAN后的更新VLAN的AVF,不再是第二 VLAN的AVF。如果本设备还连接到了 STP (Spanning TreeProtocol,生成树协议)网络,也要在此时发送STP TCN(Topology Change Notificat1n,拓扑变化通知)报文。
[0034]如图2所示,任一 RB在获知本设备被新增为某VLAN(为了描述方便,称为第一VLAN)的AVF时,会执行以下步骤:
[0035]步骤S202,根据本地保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB,若是,则执行步骤S204,否则,执行步骤S206 ;
[0036]其中,AVF信息中包括:以RB作为AVF的VLAN信息,即,RB当前是哪些VLAN的AVF ;
[0037]步骤S204,在获知第一 VLAN的AVF所属的其它RB (为了描述方便,称为第一其它RB)已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF,之后执行步骤S208 ;
[0038]具体的,在步骤S204中,在判断出第一 VLAN的AVF属于第一其它RB的同时启动定时器,若在定时器超时之前接收到了第一其它RB发来的Hello报文,且通过比较本地保存的第一其它RB对应的AVF信息以及该Hello报文中携带的以第一其它RB作为AVF的VLAN信息,判断出本地保存的第一其它RB对应的AVF信息中存在第一 VLAN,而该Hello报文中携带的VLAN信息中不存在第一 VLAN,则确定第一其它RB已经停止作为第一 VLAN的AVF,此时,通过添加与第一 VLAN有关的表项,配置本设备作为第一 VLAN的AVF ;若在定时器超时时仍未接收到第一其它RB发来的不再包含第一 VLAN的Hello报文,则立即通过添加与第一 VLAN有关的表项,配置本设备作为第一 VLAN的AVF。
[0039]另外,在步骤S204中,若在定时器超时之前,感知到第一其它RB的状态变为不可用(DOWN),则立即通过添加与第一 VLAN有关的表项,配置本设备作为第一 VLAN的AVF。
[0040]步骤S206,立刻配置本设备作为第一 VLAN的AVF ;之后执行步骤S208 ;
[0041]具体的,在步骤S206中通过添加与第一 VLAN有关的表项,配置本设备作为第一VLAN 的 AVF。
[0042]步骤S208,向同一链路上的其它RB发送Hello报文,该Hello报文中携带有以本设备作为AVF的包含第一 VLAN的VLAN信息,以便其它RB接收到该Hello报文后,更新对应的AVF信息。此时,在以本设备作为AVF的VLAN信息中,已经增加了第一 VLAN。
[0043]本申请实施例的技术方案中,当DRB将某VLAN的AVF从一 RB(为了描述方便,称为RB1)重新分配给另一 RB(为了描述方便,称为RB2)时,RB2可以根据本地保存的同一链路上其它RB对应的AVF信息,即,是哪些VLAN的AVF,判断新增VLAN的AVF是否属于其它RB,若不属于其它RB,则立即配置本设备作为该新增VLAN的AVF,若属于其它RB (为了描述方便,称为第一其它RB),则在确定出第一其它RB已经停止作为该新增VLAN的AVF之后,才配置本设备作为该新增VLAN的AVF。这样,可以确保在RB1不再作为该新增VLAN的AVF之后,RB2才开始作为该新增VLAN的AVF,避免了同一链路上在一定时间内同时存在同一 VLAN的两个AVF的现象的发生,从而,避免了瞬时环路和广播风暴的风险。
[0044]仍以图1所示的TRILL网络为例进行说明。如图3所示,本申请实施例的AVF处理方法包括以下步骤:
[0045]步骤S302,RB4?RB6各自向同一链路上的其它RB发送Hello报文,Hello报文中使用 Appointed Forwarders Sub-TLV 或 VLANs Appointed Sub-TLV 携带以本设备作为AVF的VLAN信息,即,声明本设备当前是哪些VLAN的AVF ;
[0046]其中,RB4发送的Hello报文中携带的是VLAN 1?VLAN 40,RB5发送的Hello报文中携带的是VLAN 41?VLAN 80,RB6发送的Hello报文中携带的是VLAN 81?VLAN 120。
[0047]RB4?RB6各自可以接收同一链路上的其它RB发来的Hello报文。
[0048]其中,RB4可以接收到RB5发来的携带有以RB5作为AVF的VLAN 41?VLAN 80的Hello报文,以及RB6发来的携带有以RB6作为AVF的VLAN81?VLAN 120的Hello报文;RB5可以接收到RB4发来的携带有以RB4作为AVF的VLAN 1?VLAN 40的Hello报文,以及RB6发来的携带有以RB6作为AVF的VLAN 81?VLAN 120的Hello报文;RB6可以接收到RB4发来的携带有以RB4作为AVF的VLAN 1?VLAN 40的Hello报文,以及RB5发来的携带有以RB5作为AVF的VLAN 41?VLAN 80的Hello报文。
[0049]步骤S304,RB4?RB6各自根据接收到的同一链路上的其它RB发来的Hello报文,记录其它RB对应的AVF信息,即,记录其它RB是哪些VLAN的AVF ;
[0050]步骤S306,由于某种原因,作为DRB的RB4需要重新分配AVF,例如,将之前RB6负责的VLAN 101?VLAN 120的AVF分配给RB5 ;
[0051]步骤S308,RB4将重新分配的结果通过Hello报文通知给RB5和RB6 ;
[0052]其中,通过Hello报文通知RB5新增为VLAN 101?VLAN 120的AV F,通过Hello报文通知RB6减少(或删除)VLAN 101?VLAN 120的AVF。
[0053]步骤S310,RB6接收到RB4发来的Hello报文后,获知本设备被减少了 VLAN 101?VLAN 120的AVF,则立即通过删除与VLAN 101?VLAN 120有关的表项,配置本设备停止作为 VLAN 101 ?VLAN 120 的 AVF ;
[0054]步骤S312,在配置本设备停止作为VLAN 101?VLAN 120的AVF之后,RB6向RB4和RB5发送携带以本设备作为AVF的VLAN 81?VLAN 100的Hello报文,以便RB4和RB5将本地保存的RB6对应的AVF信息更新为VLAN 81?VLAN 100 ;
[0055]在步骤S312中,如果RB6还连接到了 STP网络,则也要发送STP TCN报文。
[0056]步骤S314,RB5接收到RB4发送的Hello报文,获知本设备被新增为VLAN 101?VLAN 120的AVF,则根据本地保存的RB4、RB6对应的AVF信息,判断VLAN 101?VLAN120的AVF是否属于其它RB,判断结果是属于RB6,则启动定时器,等待RB6停止作为VLAN101 ?VLAN 120 的 AVF ;
[0057]步骤S316,若在定时器超时之前,RB5接收到了 RB6发来的携带以RB6作为AVF的VLAN 81?VLAN 100的Hello报文,则确定RB6已经停止作为VLAN 101?VLAN 120的AVF,通过添加与VLAN 101?VLAN 120有关的表项,配置本设备作为VLAN 101?VLAN 120的 AVF ;
[0058]步骤S318,在配置本设备作为VLAN 101?VLAN 120的AVF之后,RB5向RB4和RB6发送携带以本设备作为AVF的VLAN 41?VLAN 80.VLAN 101?VLAN 120的Hello报文,以便RB4和RB6将本地保存的RB5对应的AVF信息更新为VLAN 41?VLAN 80、VLAN101 ?VLAN 120ο
[0059]本申请具体实施例的TRILL网络中的RB是可以软硬件结合的可编程设备,从硬件层面而言,RB的硬件架构示意图具体可以参见图4。图4为本申请具体实施例中包含AVF处理装置的RB的硬件结构示意图。该RB中包括:非易失性存储器、CPU(中央处理器)、转发芯片、内存和其它硬件;其中:
[0060]非易失性存储器,用于存储指令代码;所述指令代码被CPU执行时完成的操作主要为内存中的AVF处理装置完成的功能。
[0061]CPU,用于与转发芯片通信,进行Hello报文的收发;用于与非易失性存储器通信,读取和执行非易失性存储器中存储的所述指令代码,完成上述AVF处理装置完成的功能。
[0062]转发芯片,用于负责各种报文的收发处理,将同一链路上其它RB发来的Hello报文上送给CPU,将CPU发来的Hello报文发送给同一链路上的其它RB。
[0063]从软件层面而言,如图4所示,应用于RB中的AVF处理装置中包括以下模块:保存模块10、判断模块20和配置模块30,其中:
[0064]保存模块10,用于保存与本设备在同一链路上的其它RB对应的AVF信息,其中,AVF信息包括:以该RB作为AVF的VLAN信息;
[0065]判断模块20,用于当获知本设备被新增为第一 VLAN的AVF时,根据保存模块10中保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB ;
[0066]配置模块30,用于若判断模块20判断出第一 VLAN的AVF不属于其它RB,则配置本设备作为第一 VLAN的AVF ;还用于若判断模块20判断出第一 VLAN的AVF属于第一其它RB,则在确定第一其它RB已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF ;还用于当获知本设备被减少了第二 VLAN的AVF时,配置本设备停止作为第二 VLAN的 AVF。
[0067]另外,该AVF处理装置中还包括:发送模块40和接收模块50,其中:
[0068]发送模块40,用于在配置模块30配置本设备作为第一 VLAN的AVF完毕之后,向同一链路上的其它RB发送Hello报文,其中,该Hello报文中携带有以本设备作为AVF的增加了第一 VLAN的VLAN信息;还用于在配置模块30配置本设备停止作为第二 VLAN的AVF完毕之后,向同一链路上的其它RB发送Hello报文,其中,该Hello报文中携带有以本设备作为AVF的删除了第二 VLAN的VLAN信息。
[0069]接收模块50,用于接收同一链路上的其它RB发来的携带有以该其它RB作为AVF的VLAN信息的Hello报文。
[0070]如图5所示,在图4中的保存模块10中进一步包括以下单元:判断单元101、对应关系保存单元102和更新单元103,其中:
[0071 ] 判断单元101,用于在接收模块接收到其它RB发来的以该其它RB作为AVF的VLAN信息的Hello报文之后,判断本地是否保存有该其它RB对应的AVF信息;
[0072]对应关系保存单元102,用于若判断单元101判断出本地没有保存该其它RB对应的AVF信息,则在本地保存该其它RB与该Hello报文中携带的VLAN信息之间的对应关系;
[0073]更新单元103,用于若判断单元101判断出本地已经保存有该其它RB对应的AVF信息,则将该其它RB对应的AVF信息,更新为该Hello报文中携带的VLAN信息。
[0074]在图4中的配置模块30中进一步包括以下单元:计时单元301、确定单元302和AVF配置单元303,其中:
[0075]计时单元301,用于在判断模块20判断出第一 VLAN的AVF属于第一其它RB的同时,启动定时器;
[0076]确定单元302,用于确定第一其它RB是否已经停止作为第一 VLAN的AVF ;还用于确定同一链路上的其它RB的状态;
[0077]AVF配置单元303,用于若在定时器超时之前确定单元302确定第一其它RB已经停止作为第一 VLAN的AVF,或者,若在定时器超时之前确定单元302确定第一其它RB的状态变为不可用,则配置本设备作为第一 VLAN的AVF;还用于若在定时器超时时,确定单元302仍无法确定第一其它RB已经停止作为第一 VLAN的AVF,则立即配置本设备作为第一VLAN 的 AVF。
[0078]其中,确定单元中包括:比较单元,用于在接收模块接收到第一其它RB发来的Hello报文之后,比较保存模块中保存的第一其它RB对应的AVF信息以及该接收到的Hello报文中携带的以第一其它RB作为AVF的VLAN信息;AVF确定单元,用于若保存模块中保存的第一其它RB对应的AVF信息中存在第一 VLAN,而该接收到的Hello报文中携带的VLAN信息中不存在第一 VLAN,则确定第一其它RB已经停止作为第一 VLAN的AVF。
[0079]其中,Hello报文中的 Appointed Forwarders Sub-TLV 或 VLANs AppointedSub-TLV用于携带以RB作为AVF的VLAN信息。
[0080]上述的AVF处理装置作为一个逻辑意义上的装置,其是通过CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。当对应的计算机程序指令被执行时,形成的AVF处理装置用于按照上述实施例中的AVF处理方法执行相应操作。
[0081]综上,本申请以上实施例可以达到以下技术效果:
[0082]本申请的以上技术方案中,当DRB将某VLAN的AVF从一 RB(为了描述方便,称为RB1)重新分配给另一 RB(为了描述方便,称为RB2)时,RB2可以根据本地保存的同一链路上其它RB对应的AVF信息,即,是哪些VLAN的AVF,判断新增VLAN的AVF是否属于其它RB,若不属于其它RB,则立即配置本设备作为该新增VLAN的AVF,若属于其它RB (为了描述方便,称为第一其它RB),则在确定出第一其它RB已经停止作为该新增VLAN的AVF之后,才配置本设备作为该新增VLAN的AVF。这样,可以确保在RB1不再作为该新增VLAN的AVF之后,RB2才开始作为该新增VLAN的AVF,避免了同一链路上在一定时间内同时存在同一 VLAN的两个AVF的现象的发生,从而,避免了瞬时环路和广播风暴的风险。
[0083]以上所述仅为本申请的较佳实施例而已,并不用以 限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
【主权项】
1.一种多链接透明互联TRILL网络中的指定虚拟局域网转发者AVF处理方法,所述方法应用于同一链路上至少两个路由桥RB中的任一 RB,其特征在于,所述方法包括: 当获知本设备被新增为第一虚拟局域网VLAN的AVF时,根据本地保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB ;其中,所述AVF信息包括:以该RB作为AVF的VLAN信息; 若不属于其它RB,则配置本设备作为第一 VLAN的AVF ; 若属于第一其它RB,则在确定第一其它RB已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF ; 当获知本设备被减少了第二 VLAN的AVF时,配置本设备停止作为第二 VLAN的AVF。2.根据权利要求1所述的方法,其特征在于,还包括: 在配置本设备作为第一 VLAN的AVF完毕之后,向同一链路上的其它RB发送握手Hello报文,其中,该Hello报文中携带有以本设备作为AVF的增加了第一 VLAN的VLAN信息; 在配置本设备停止作为第二 VLAN的AVF完毕之后,向同一链路上的其它RB发送Hello报文,其中,该Hello报文中携带有以本设备作为AVF的删除了第二 VLAN的VLAN信息。3.根据权利要求2所述的方法,其特征在于,还包括: 接收到同一链路上的其它RB发来的携带有以该其它RB作为AVF的VLAN信息的Hello报文; 若本地没有保存该其它RB对应的AVF信息,则在本地保存该其它RB与该Hello报文中携带的VLAN信息之间的对应关系; 若本地已经保存有该其它RB对应的AVF信息,则将该其它RB对应的AVF信息,更新为该Hello报文中携带的VLAN信息。4.根据权利要求1所述的方法,其特征在于,在确定第一其它RB已经停止作为第一VLAN的AVF之后,配置本设备作为第一 VLAN的AVF的方法包括: 在判断出所述第一 VLAN的AVF属于第一其它RB的同时,启动定时器; 若在定时器超时之前确定所述第一其它RB已经停止作为第一 VLAN的AVF,或者,若在定时器超时之前确定所述第一其它RB的状态变为不可用,则配置本设备作为第一 VLAN的AVF ; 若在定时器超时时仍无法确定所述第一其它RB已经停止作为第一 VLAN的AVF,则立即配置本设备作为第一 VLAN的AVF。5.根据权利要求4所述的方法,其特征在于,所述确定第一其它RB已经停止作为第一VLAN的AVF的方法包括: 在接收到所述第一其它RB发来的Hello报文之后,比较本地保存的所述第一其它RB对应的AVF信息以及该接收到的Hello报文中携带的以所述第一其它RB作为AVF的VLAN信息; 若本地保存的所述第一其它RB对应的AVF信息中存在第一 VLAN,而该接收到的Hello报文中携带的VLAN信息中不存在第一 VLAN,则确定所述第一其它RB已经停止作为第一VLAN 的 AVF。6.根据权利要求2、3或5所述的方法,其特征在于,所述Hello报文中的指定转发者子类型长度值Appointed Forwarders Sub_TLV或虚拟局域网的指定子类型长度值VLANsAppointed Sub-TLV用于携带以RB作为AVF的VLAN信息。7.一种多链接透明互联TRILL网络中的指定虚拟局域网转发者AVF处理装置,所述装置应用于同一链路上至少两个路由桥RB中的任一 RB中,其特征在于,所述装置包括: 保存模块,用于保存与本设备在同一链路上的其它RB对应的AVF信息,其中,所述AVF信息包括:以该RB作为AVF的虚拟局域网VLAN信息; 判断模块,用于当获知本设备被新增为第一 VLAN的AVF时,根据所述保存模块中保存的同一链路上其它RB对应的AVF信息,判断第一 VLAN的AVF是否属于其它RB ; 配置模块,用于若所述判断模块判断出第一 VLAN的AVF不属于其它RB,则配置本设备作为第一 VLAN的AVF ;还用于若所述判断模块判断出第一 VLAN的AVF属于第一其它RB,则在确定第一其它RB已经停止作为第一 VLAN的AVF之后,配置本设备作为第一 VLAN的AVF ;还用于当获知本设备被减少了第二 VLAN的AVF时,配置本设备停止作为第二 VLAN的AVF。8.根据权利要求7所述的装置,其特征在于,还包括: 发送模块,用于在所述配置模块配置本设备作为第一 VLAN的AVF完毕之后,向同一链路上的其它RB发送握手Hello报文,其中,该Hello报文中携带有以本设备作为AVF的增加了第一 VLAN的VLAN信息;还用于在所述配置模块配置本设备停止作为第二 VLAN的AVF完毕之后,向同一链路上的其它RB发送Hello报文,其中,该Hello报文中携带有以本设备作为AVF的删除了第二 VLAN的VLAN信息。9.根据权利要求8所述的装置,其特征在于,还包括:接收模块,用于接收同一链路上的其它RB发来的携带有以该其它RB作为AVF的VLAN信息的Hello报文; 其中,所述保存模块包括:判断单元、对应关系保存单元和更新单元,其中: 所述判断单元,用于在所述接收模块接收到其它RB发来的携带有以该其它RB作为AVF的VLAN信息的Hello报文之后,判断本地是否保存有该其它RB对应的AVF信息; 所述对应关系保存单元,用于若所述判断单元判断出本地没有保存该其它RB对应的AVF信息,则在本地保存该其它RB与该Hello报文中携带的VLAN信息之间的对应关系; 所述更新单元,用于若所述判断单元判断出本地已经保存有该其它RB对应的AVF信息,则将该其它RB对应的AVF信息,更新为该Hello报文中携带的VLAN信息。10.根据权利要求7所述的装置,其特征在于,所述配置模块包括: 计时单元,用于在所述判断模块判断出所述第一 VLAN的AVF属于第一其它RB的同时,启动定时器; 确定单元,用于确定所述第一其它RB是否已经停止作为第一 VLAN的AVF ;还用于确定同一链路上的其它RB的状态; AVF配置单元,用于若在定时器超时之前所述确定单元确定所述第一其它RB已经停止作为第一 VLAN的AVF,或者,若在定时器超时之前所述确定单元确定所述第一其它RB的状态变为不可用,则配置本设备作为第一 VLAN的AVF ;还用于若在定时器超时时,所述确定单元仍无法确定所述第一其它RB已经停止作为第一 VLAN的AVF,则立即配置本设备作为第一VLAN 的 AVF。11.根据权利要求10所述的装置,其特征在于,所述确定单元包括: 比较单元,用于在所述接收模块接收到所述第一其它RB发来的Hello报文之后,比较所述保存模块中保存的所述第一其它RB对应的AVF信息以及该接收到的Hello报文中携带的以所述第一其它RB作为AVF的VLAN信息; AVF确定单元,用于若所述保存模块中保存的所述第一其它RB对应的AVF信息中存在第一 VLAN,而该接收到的Hello报文中携带的VLAN信息中不存在第一 VLAN,则确定所述第一其它RB已经停止作为第一 VLAN的AVF。12.根据权利要求8、9或11所述的装置,其特征在于,所述Hello报文中的指定转发者子类型长度值Appointed Forwarders Sub_TLV或虚拟局域网的指定子类型长度值VLANsAppointed Sub-TLV用于携带以RB作为AVF的VLAN信息。
【专利摘要】本申请公开了一种TRILL网络中的AVF处理方法及装置,其中,该方法应用于同一链路上至少两个RB中的任一RB,该方法包括:当获知本设备被新增为第一VLAN的AVF时,根据本地保存的同一链路上其它RB对应的AVF信息,判断第一VLAN的AVF是否属于其它RB;其中,AVF信息包括:以该RB作为AVF的VLAN信息;若不属于其它RB,则配置本设备作为第一VLAN的AVF;若属于第一其它RB,则在确定第一其它RB已经停止作为第一VLAN的AVF之后,配置本设备作为第一VLAN的AVF;当获知本设备被减少了第二VLAN的AVF时,配置本设备停止作为第二VLAN的AVF。本申请避免了同一链路上在一定时间内同时存在同一VLAN的两个AVF的现象的发生,从而,避免了瞬时环路和广播风暴的风险。
【IPC分类】H04L12/24, H04L12/46
【公开号】CN105490909
【申请号】CN201410477864
【发明人】邹文宇, 曲进, 田小强
【申请人】杭州华三通信技术有限公司
【公开日】2016年4月13日
【申请日】2014年9月18日

最新回复(0)