一种网络设备清除mac地址表的方法及装置的制造方法

文档序号:9567066阅读:1170来源:国知局
一种网络设备清除mac地址表的方法及装置的制造方法
【技术领域】
[0001]本发明涉及工业以太网技术领域,尤其涉及一种网络设备清除MAC地址表的方法及装置。
【背景技术】
[0002]在网络拓扑结构发生变化时,一般支持快速生成树协议(rapid spanning TreeProtocol, RSTP)的交换机在接收到TC报文或者携带TC标记的RSTP报文时,将会引发清理自身各端口学习到的MAC地址表的操作。
[0003]但是,对于某些低端的网络设备,当该设备接收到TC报文或者携带TC标记的RSTP报文时,由于其不具备清除自身各端口学习到的MAC地址表的功能,其仅能清除自身学习到的MAC地址表。对于这类设备,当该设备在网络拓扑发生变化,RSTP拓扑状态机未稳定之前,该设备可能会接收到多个TC报文或者携带TC标记的RSTP报文,只要该设备接收到上述报文就会清除自身学习到的MAC地址表,从而引发多次清除自身学习到的MAC地址表的操作,形成不必要的流量泛洪。

【发明内容】

[0004]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种网络设备清除MAC地址表的方法及装置。
[0005]本发明实施例提供了一种网络设备清除MAC地址表的方法,该方法包括:
[0006]网络设备接收TC报文或者携带TC标记的RSTP报文;
[0007]根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,判断在定时器的定时时间长度内清除该端口的MAC地址表的次数是否达到设定阈值;
[0008]当清除该端口的MAC地址表的次数未达到设定阈值时,清除所述端口的MAC地址表,并将该端口对应的清表次数加1,否则,禁止清除该端口的MAC地址表。
[0009]为了进一步减少端口震荡,避免必要的流量泛洪,所述判断在设定时间长度内清除该端口的MAC地址表的次数是否达到设定阈值之前,所述方法还包括:
[0010]判断当前自身的状态机是否稳定;
[0011 ] 当当前自身的状态机稳定时,根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,清除该端口学习到的MAC地址表;
[0012]否则,判断在设定时间长度内清除该端口的MAC地址表的次数是否达到设定阈值。
[0013]为了确定进行清楚MAC地址表的端口,所述TC报文或携带TC标记的RSTP报文中通过全局变量stp_fdb_port_mask携带端口信息。
[0014]为了进一步减少端口震荡,避免必要的流量泛洪,该方法还包括:
[0015]当该端口对应的定时器超时时,将清除该端口的MAC地址表的次数清零。
[0016]本发明实施例提供了一种网络设备清除MAC地址表的装置,该装置包括:
[0017]接收模块,用于接收TC报文或者携带TC标记的RSTP报文;
[0018]判断模块,用于根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,判断在定时器的定时时间长度内清除该端口的MAC地址表的次数是否达到设定阈值;
[0019]执行模块,用于当清除该端口的MAC地址表的次数未达到设定阈值时,清除所述端口的MAC地址表,并将该端口对应的清表次数加1,否则,禁止清除该端口的MAC地址表。
[0020]为了进一步减少端口震荡,避免必要的流量泛洪,所述判断模块,还用于判断当前自身的状态机是否稳定;当当前自身的状态机稳定时,通知执行模块根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,清除该端口学习到的MAC地址表;否则,判断在设定时间长度内清除该端口的MAC地址表的次数是否达到设定阈值。
[0021 ] 为了确定进行清楚MAC地址表的端口,所述判断模块,具体用于根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,判断在定时器的定时时间长度内清除该端口的MAC地址表的次数是否达到设定阈值,其中,所述TC报文或携带TC标记的RSTP报文中通过全局变量stp_fdb_port_mask携带端口信息。
[0022]为了进一步减少端口震荡,避免必要的流量泛洪,所述装置还包括:
[0023]重置模块,用于当该端口对应的定时器超时时,将清除该端口的MAC地址表的次数清零。
[0024]本发明实施例提供了一种网络设备清除MAC地址表的方法及装置,该方法中,网络设备接收TC报文或者携带TC标记的RSTP报文;根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,判断在定时器的定时时间长度内清除该端口的MAC地址表的次数是否达到设定阈值;当清除该端口的MAC地址表的次数未达到设定阈值时,清除所述端口的MAC地址表,并将该端口对应的清表次数加1,否则,禁止清除该端口的MAC地址表。由于在本发明中设置了在定时器的时间长度内对端口 MAC地址表的清除次数,因此在网络设备的状态机稳定之前,对每个端口的MAC地址表的清除次数在定时器的时间长度内最多是设定阈值,因此本方案可以有效的避免流量泛洪。
[0025]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0026]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0027]图1为本发明实施例提供的一种网络设备清楚MAC地址表的过程;
[0028]图2为本发明实施例提供的一种网络设备清除MAC地址表的详细过程;
[0029]图3为本发明实施例提供的另一种网络设备清除MAC地址表的详细过程;
[0030]图4为本发明实施例提供的一种网络设备清除MAC地址表的具体实施过程;
[0031]图5为本发明实施例提供的一种网络设备清除MAC地址表的装置结构示意图。
【具体实施方式】
[0032]为了有效的避免流量泛洪,本发明实施例提供了一种获取设备间拓扑连接关系的方法及装置。
[0033]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0034]下面结合说明附图,对本发明实施例进行说明。
[0035]图1为本发明实施例提供的一种网络设备清楚MAC地址表的过程,该过程包括以下步骤:
[0036]S101:网络设备接收TC报文或携带TC标记的RSTP报文。
[0037]在网络拓扑结构发生变化时,网络中会生成并发送TC报文或携带TC标记的RSTP报文,该TC报文或携带TC标记的RSTP报文用于通知网络设备清除MAC地址表。
[0038]S102:根据所述TC报文或携带TC标记的RSTP报文中携带的端口信息,判断在定时器的定时时间长度内清除该端口的MAC地址表的次数是否达到设定阈值,当判断结果为是时,进行步骤S103,否则,进行步骤S104。
[0039]为了有效的避免网络拓扑发生变化时的流量泛洪,在本发明实施例中针对网络设备的每个端口设置了定时器的定时时间长度内的,该端口的MAC地址表的清除阈值。并且,为了使低端的网络设备也能清除每个端口的MAC地址表,在本发明实施例中TC报文或携带TC标记的RSTP报文中通过全局变量stp_f db_port_mask携带端口信息,以便使本发明实施例的清除MAC地址表的方法能有更高广泛的使用范围。
[0040
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1