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

文档序号:9730054阅读:来源:国知局
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]以上所述仅为本申请的较佳实施例而已,并不用以
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1