CN102055656B - 一种生成树协议网络中链路振荡的处理方法及交换机 - Google Patents

一种生成树协议网络中链路振荡的处理方法及交换机 Download PDF

Info

Publication number
CN102055656B
CN102055656B CN2009102358975A CN200910235897A CN102055656B CN 102055656 B CN102055656 B CN 102055656B CN 2009102358975 A CN2009102358975 A CN 2009102358975A CN 200910235897 A CN200910235897 A CN 200910235897A CN 102055656 B CN102055656 B CN 102055656B
Authority
CN
China
Prior art keywords
port
path cost
root
switch
link
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
Application number
CN2009102358975A
Other languages
English (en)
Other versions
CN102055656A (zh
Inventor
王奕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009102358975A priority Critical patent/CN102055656B/zh
Publication of CN102055656A publication Critical patent/CN102055656A/zh
Application granted granted Critical
Publication of CN102055656B publication Critical patent/CN102055656B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种生成树协议网络中链路振荡的处理方法及交换机。所述方法包括:统计在预设的第一时间内,交换机的端口的角色在根端口与替换端口之间变换的次数;用统计的变换次数除以所述第一时间,得到变换频率;判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销。依照本发明,能够降低链路振荡造成的对CPU资源的消耗。

Description

一种生成树协议网络中链路振荡的处理方法及交换机
技术领域
本发明涉及二层交换网络通信技术,特别是涉及一种生成树协议网络中链路振荡的处理方法及交换机。
背景技术
二层网络中,交换机并不象路由器那样知道报文经过了多少次转发,当网络中存在环路时,就会导致广播风暴的产生,所有有效带宽都被广播风暴占用。在这种情况下,生成树协议便应运而生了。
生成树协议是二层管理协议,从广义上包括普通的生成树协议(SpanningTree Protocol,STP)、快速生成树协议(Rapid Spanning Tree Protocol,RSTP)以及多生成树协议(Multiple Spanning Tree Protocol,MSTP)等。生成树协议的基本思想是根据网络拓扑生成无回路的连通图(即生成树),从而保证数据传输路径的唯一性,避免出现环路报文流量。启动了生成树协议的交换机互相之间发送配置桥协议数据单元(Bridge Protocol Data Unit,BPDU)来完成根桥的选举、指定桥的选举、端口角色的选举、端口状态的迁移以及整个网络拓扑结构的确定,其中,配置BPDU又称为配置消息。
所述端口可以分为根端口、指定端口、替换端口等角色,其中,根端口是离生成树的根桥最近的端口,负责与根桥进行通讯;指定端口是负责向自身下游设备发送报文的端口;而替换端口则可以作为根端口的备用端口。
在生成树协议中,通过比较配置消息中所包含的优先级向量来决定各端口的角色,所述优先级向量主要包括:根桥ID、根路径开销、指定桥ID、指定端口ID,配置消息的比较原则如下:
(1)根桥ID较小的配置消息优先级较高;
(2)若根桥ID相同,则比较根路径开销,比较方法为:用配置消息中的根路径开销加上本端口对应的路径开销,假设两者之和为S,则S较小的配置消息优先级较高;
(3)若根路径开销也相同,则依次比较指定桥ID、指定端口ID、接收该配置消息的端口ID等,上述值较小的配置消息优先级较高。
网络初始化时,网络中所有的交换机设备都认为自己是根桥,根桥ID为自身的设备ID。通过交换配置消息,设备之间比较根桥ID,网络中根桥ID最小的设备被选举为根桥。根桥确定后,根桥上所有端口都是指定端口,而每个非根桥交换机都要选择一个根端口,根端口对于一个交换机来说有且只有一个。其本质是“距离根桥最近的端口”,这个最近的衡量是靠累计根路径开销来判定的,即根路径开销最小的端口就应该是根端口。
根路径开销的计算方法如下:端口收到一个配置消息后,抽取该配置消息中根路径开销字段的值,加上该端口本身的路径开销。所谓该端口本身的路径开销只体现直连链路的开销,这个值是端口量,可以人为配置。如果有两个以上的端口计算得到的根路径开销相同,那么选择收到发送者的桥ID(BID)最小的那个端口作为根端口。
在拓扑状态稳定后,只有根端口和指定端口转发流量(处于转发状态),其它端口都处于阻塞状态,它们只接收配置消息而不转发用户流量。参照图1,在拓扑状态稳定后,各设备的状态及设备中各端口的角色如下:
交换机A(优先级为0):根桥
AP1:指定端口
AP2:指定端口
交换机B(优先级为1):指定桥
BP1:根端口
BP2:指定端口
交换机C(优先级为2):指定桥
CP1:替换端口
CP2:根端口
由于链路的不稳定性,可能发生的情况比如:端口的UP/Down、链路拥塞导致配置消息被丢弃、链路遭受攻击等,会导致网络拓扑发生变化。交换机一旦检测到网络拓扑发生变化,则采取如下措施:
为本交换机的根端口及所有非边缘指定端口启动一个拓扑变化定时器(TC While Timer),该定时器的定时时间是配置消息发送周期(Hello Time)的两倍。在这个定时时间内,清空这些端口上学来的MAC地址;同时,由这些端口向外发送拓扑变化BPDU,其中的TC字段置位。一旦TC While Timer超时,则停止发送TC BPDU。
其他交换机接收到TC BPDU,作如下工作:清空所有端口学来的MAC地址,收到TC BPDU的端口除外。然后也为所有自己的非边缘指定端口和自己的根端口启动TC While Timer,并重复上述的过程。
例如,若交换机C的CP2端口连接的链路发生故障,则拓扑将会发生变化,导致端口角色的重新计算,CP1会接替CP2成为根端口,并且清除CP2端口上学到的所有MAC/ARP。若CP2链路故障恢复,则又会抢占根端口的角色,接替CP1重新成为根端口,CP1还是替换端口的角色,此时,会再一次清除CP1端口上学到的MAC/ARP。可见,CP2端口连接的链路不稳定,会导致流量在CP1、CP2间不停切换,MAC/ARP也会不停的删除、重新学习,如此,消耗大量的CPU资源,并对业务造成极大的冲击。
发明内容
本发明所要解决的技术问题是提供一种生成树协议网络中链路振荡的处理方法及交换机,以降低链路振荡造成的对CPU资源的消耗。
为解决上述技术问题,本发明提供技术方案如下:
一种生成树协议网络中链路振荡的处理方法,包括:
统计在预设的第一时间内,交换机的端口的角色在根端口与替换端口之间变换的次数;
用统计的变换次数除以所述第一时间,得到变换频率;
判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;
当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销。
上述的处理方法,其中,在将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销之后还包括:在预设的第二时间到期时,将所述端口的根路径开销恢复为原根路径开销。
上述的处理方法,其中,所述第二时间为第一时间的3倍。
一种交换机,包括:
变换次数统计单元,用于统计在预设的第一时间内,本交换机的端口的角色在根端口与替换端口之间变换的次数;
变换频率计算单元,用于用统计的变换次数除以所述第一时间,得到变换频率;
判断单元,用于判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;
路径开销设置单元,用于当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销。
上述的交换机,其中,所述路径开销设置单元还用于:
在将端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销之后,在预设的第二时间到期时,将所述端口的根路径开销恢复为原根路径开销。
上述的交换机,其中,所述第二时间为第一时间的3倍。
本发明实施例通过判断交换机的端口所在的上行链路是否处于振荡状态,若是,则将该端口的根路径开销设置为大于该交换机的其他所有端口的根路径开销,这样,该端口就不会被选举为根端口,避免了该端口所在的上行链路的继续振荡,从而降低对CPU的大量消耗,使得业务运行更加可靠。
附图说明
图1为一种生成树协议的组网示意图;
图2为本发明实施例的生成树协议网络中链路振荡的处理方法流程图;
图3为本发明实施例的交换机的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
本发明的关键在于:判断交换机的端口所在的上行链路是否处于振荡状态,若是,则将该端口的根路径开销设置为大于该交换机的其他所有端口的根路径开销。这样,该端口就不会被选举为根端口,避免了该端口所在的上行链路的继续振荡,从而降低对CPU的大量消耗,使得业务运行更加可靠。
参照图2,本发明实施例的生成树协议网络中链路振荡的处理方法,包括如下步骤:
步骤201:统计在预设的第一时间内,交换机的端口的角色在根端口与替换端口之间变换的次数;
端口连接的上行链路发生故障时,网络拓扑将会发生变化,导致端口角色的重新计算。本发明中,需要预先设置一个观察期(即,第一时间),例如,设置该观察期为2秒,本步骤中,统计在一个观察期内端口的角色在根端口与替换端口之间变换的次数,假设统计的变换次数为12次。
步骤202:用统计的变换次数除以所述第一时间,得到变换频率;
端口的角色在2s内的变换次数为12次,则得到的变换频率为6次/秒。
步骤203:判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;
本发明中,需要预先设置一个链路震荡频率阈值,例如,设置该域值为5次/秒,本步骤中,将变换频率与该阈值进行比较,当变换频率(6次/秒)大于阈值(5次/秒)时,确定该端口所在的上行链路处于振荡状态。
步骤204:当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销;
所谓端口的根路径开销,是指该端口的配置消息的根路径开销,具体为:端口接收到的配置消息中的根路径开销,与端口所在的直连链路的路径开销之和。
端口所在的上行链路处于振荡状态时,获取本桥所有端口的根路径开销,并增大该端口的根路径开销,使其根路径开销大于本桥上的其他所有端口的根路径开销,这样,该端口就不会被选举为根端口,避免了该端口所在的上行链路的继续振荡,从而降低对CPU的大量消耗,使得业务运行更加可靠。
步骤205:在预设的第二时间到期时,将该端口的根路径开销恢复为原根路径开销。
在将端口的根路径开销设置为大于该交换机的其他所有端口的根路径开销之后,启动一定时器,定时器的定时时间为预设的第二时间。定时器超时后,将该端口的根路径开销恢复为原根路径开销,使其正常加入到端口角色的选举中去。优选地,所述第二时间为第一时间的3倍。
参照图3,本发明实施例的交换机包括,变换次数统计单元、变换频率计算单元、判断单元和路径开销设置单元,其中:
变换次数统计单元,用于统计在预设的第一时间内,本交换机的端口的角色在根端口与替换端口之间变换的次数。端口连接的上行链路发生故障时,网络拓扑将会发生变化,导致端口角色的重新计算。本发明中,需要预先设置一个观察期(即,第一时间),例如,设置该观察期为2秒,所述变换次数统计单元统计在一个观察期内端口的角色在根端口与替换端口之间变换的次数,假设统计的变换次数为12次。
变换频率计算单元,用于用统计的变换次数除以所述第一时间,得到变换频率。端口的角色在2s内的变换次数为12次,则得到的变换频率为6次/秒。
判断单元,用于判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果。本发明中,需要预先设置一个链路震荡频率阈值,例如,设置该域值为5次/秒,本步骤中,将变换频率与该阈值进行比较,当变换频率(6次/秒)大于阈值(5次/秒)时,确定该端口所在的上行链路处于振荡状态。
路径开销设置单元,用于当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销。
所谓端口的根路径开销,是指该端口的配置消息的根路径开销,具体为:端口接收到的配置消息中的根路径开销,与端口所在的直连链路的路径开销之和。端口所在的上行链路处于振荡状态时,获取本桥所有端口的根路径开销,并增大该端口的根路径开销,使其根路径开销大于本桥上的其他所有端口的根路径开销,这样,该端口就不会被选举为根端口,避免了该端口所在的上行链路的继续振荡,从而降低对CPU的大量消耗,使得业务运行更加可靠。
所述路径开销设置单元还用于:在将端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销之后,在预设的第二时间到期时,将所述端口的根路径开销恢复为原根路径开销。
在将端口的根路径开销设置为大于该交换机的其他所有端口的根路径开销之后,启动一定时器,定时器的定时时间为预设的第二时间。定时器超时后,将该端口的根路径开销恢复为原根路径开销,使其正常加入到端口角色的选举中去。优选地,所述第二时间为第一时间的3倍。
优选地,所述第二时间为第一时间的3倍。
综上所述,本发明实施例通过判断交换机的端口所在的上行链路是否处于振荡状态,若是,则将该端口的根路径开销设置为大于该交换机的其他所有端口的根路径开销,这样,该端口就不会被选举为根端口,避免了该端口所在的上行链路的继续振荡,从而降低对CPU的大量消耗,使得业务运行更加可靠。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种生成树协议网络中链路振荡的处理方法,其特征在于,包括:
统计在预设的第一时间内,交换机的端口的角色在根端口与替换端口之间变换的次数;
用统计的变换次数除以所述第一时间,得到变换频率;
判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;
当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销。
2.如权利要求1所述的处理方法,其特征在于:
在将所述端口的根路径开销设置为大于所述交换机的其他所有端口的根路径开销之后还包括:在预设的第二时间到期时,将所述端口的根路径开销恢复为原根路径开销。
3.如权利要求2所述的处理方法,其特征在于:
所述第二时间为第一时间的3倍。
4.一种交换机,其特征在于,包括:
变换次数统计单元,用于统计在预设的第一时间内,本交换机的端口的角色在根端口与替换端口之间变换的次数;
变换频率计算单元,用于用统计的变换次数除以所述第一时间,得到变换频率;
判断单元,用于判断所述变换频率是否大于预设的链路振荡频率阈值,产生一判断结果;
路径开销设置单元,用于当所述判断结果表示所述变换频率大于预设的链路振荡频率阈值时,确定所述端口所在的上行链路处于振荡状态,将所述端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销。
5.如权利要求4所述的交换机,其特征在于,所述路径开销设置单元还用于:
在将端口的根路径开销设置为大于本交换机的其他所有端口的根路径开销之后,在预设的第二时间到期时,将所述端口的根路径开销恢复为原根路径开销。
6.如权利要求5所述的交换机,其特征在于:
所述第二时间为第一时间的3倍。
CN2009102358975A 2009-10-28 2009-10-28 一种生成树协议网络中链路振荡的处理方法及交换机 Active CN102055656B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102358975A CN102055656B (zh) 2009-10-28 2009-10-28 一种生成树协议网络中链路振荡的处理方法及交换机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102358975A CN102055656B (zh) 2009-10-28 2009-10-28 一种生成树协议网络中链路振荡的处理方法及交换机

Publications (2)

Publication Number Publication Date
CN102055656A CN102055656A (zh) 2011-05-11
CN102055656B true CN102055656B (zh) 2013-03-20

Family

ID=43959607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102358975A Active CN102055656B (zh) 2009-10-28 2009-10-28 一种生成树协议网络中链路振荡的处理方法及交换机

Country Status (1)

Country Link
CN (1) CN102055656B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109729020B (zh) * 2017-10-27 2022-05-20 中兴通讯股份有限公司 会话传输的方法、装置、存储介质及处理器
CN110120891A (zh) * 2019-05-13 2019-08-13 北京东土军悦科技有限公司 组网中阻止链路回切的方法、装置、网络设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937567A (zh) * 2006-08-10 2007-03-28 杭州华为三康技术有限公司 一种确定端口角色的方法
CN101110820A (zh) * 2007-09-04 2008-01-23 杭州华三通信技术有限公司 一种处理生成树协议报文的方法和交换机

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937567A (zh) * 2006-08-10 2007-03-28 杭州华为三康技术有限公司 一种确定端口角色的方法
CN101110820A (zh) * 2007-09-04 2008-01-23 杭州华三通信技术有限公司 一种处理生成树协议报文的方法和交换机

Also Published As

Publication number Publication date
CN102055656A (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN102821050B (zh) 一种快速生成树协议应用于单环网拓扑的处理方法
US8811235B2 (en) System and method for assuring the operation of network devices in bridged networks
CN101060485B (zh) 拓扑改变报文的处理方法和处理装置
CN101753453B (zh) 一种分组传送网环网的组网方法
CN103001799B (zh) 基于链状网络的冗余实现方法及节点
US20070127367A1 (en) Communication system and communication method
CN101072154B (zh) 以太环网切换方法
WO2009023996A1 (fr) Procédé de mise en œuvre d'une interconnexion de réseau par l'intermédiaire d'une agrégation de liaisons
CN102255757B (zh) 一种链路切换方法及其装置
CN101399737A (zh) 用于以太环网的链路聚合组的保护方法及装置
CN105656645A (zh) 堆叠系统的故障处理的决策方法和装置
CN104539461A (zh) 一种抑制协议端口振荡上报的装置及方法
CN102244609A (zh) 解决vpls接入l3故障切换导致断流的方法及路由器
WO2012048585A1 (zh) 切换方法和路由器
CN103560947B (zh) 一种避免中间系统邻居关系震荡的方法及装置
US8681604B2 (en) Address refresh method and system
EP2466804A1 (en) Protection switching method for ethernet automatic protection switching (eaps) ring network and master node in eaps ring network
CN102957620A (zh) 一种trill网络中mac地址表项的管理方法和设备
CN102055656B (zh) 一种生成树协议网络中链路振荡的处理方法及交换机
CN103916318A (zh) 一种单环网实现方法
JP4467500B2 (ja) ネットワーク中継装置
EP2518948A1 (en) Methods, system and apparatus for protecting control virtual local network in ethernet ring network
CN101087221B (zh) 资源预留协议节点及其交互方法
CN101895409B (zh) 多路径域中操作管理维护机制的处理方法、装置及系统
CN101183921B (zh) 一种保证业务流连续的方法和设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.