CN101707538A - 一种检测以太网环路并且自动恢复的方法 - Google Patents
一种检测以太网环路并且自动恢复的方法 Download PDFInfo
- Publication number
- CN101707538A CN101707538A CN200910223878.0A CN200910223878A CN101707538A CN 101707538 A CN101707538 A CN 101707538A CN 200910223878 A CN200910223878 A CN 200910223878A CN 101707538 A CN101707538 A CN 101707538A
- Authority
- CN
- China
- Prior art keywords
- loop
- loop detection
- message
- user port
- detection message
- 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.)
- Granted
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
一种检测以太网环路并且自动恢复的方法,涉及以太网环路的检测与恢复,包括以下步骤:步骤1,环路检测初始化模块完成初始化;步骤2,构造、收发、分析环路检测报文,判断是否存在环路;步骤3,标志位赋值,当存在环路时报文重定向到CPU并发出警告信息;步骤4,环路故障恢复情况监测及处理;步骤5,重复步骤2到4。本发明所述的检测以太网环路并且自动恢复的方法,可以检测单端口与双端口的环路故障,也可以检测到环路并且能够判断相应的环路是否消除从而将环路恢复,同时提供了防止用户伪造环路检测报文来造成环路阻塞的假象的解决策略,具有对以太网交换芯片的硬件配置要求低,实现简单的特点。
Description
技术领域
本发明涉及以太网环路的检测与恢复,具体的说是一种检测以太网环路并且自动恢复的方法。
背景技术
基于以太网方式无源光网络EPON(Ethernet Passive OpticalSystem)是一种采用点到多点结构的单纤双向光接入网络,其系统由局侧的光线路终端OLT(Optical Line Terminal)、用户侧的光网络单元ONU(Optical Network Unit)和连接二者的光分配网络ODN(Optical Distribution Network)组成。根据目前EPON设备的应用场景,ONU可以划分为多种类型,提供以太网接口的多住户单元MDU(Multi-Dwelling Unit)就是其中的一种。为了简化说明,下面所述的光网络单元ONU,凡未明确限定或说明的,均是指提供以太网接口的MDU型ONU。图1给出了一种典型的MDU型ONU的硬件结构示意图,图1中包含三个硬件模块:以太网交换芯片、CPU以及EPON芯片。以太网交换芯片的上联端口与EPON芯片以太网侧接口相连,以太网交换芯片的管理接口与CPU相连,以太网交换芯片的用户端口1~用户端口16则与用户端设备相连,所说的用户端设备可以是电脑、家庭网关,或者是通过HUB或者交换机组成的一个小型网络等。
ONU用户侧的以太网接口(用户端口1~用户端口16)直接面向终端用户,由于用户可能存在不规范的操作,例如添加HUB(集线器)设备或简单的二层交换机,无意中误接成物理环路就可能会造成网络故障。这样的环路故障通常分为两种情况,单端口环路故障和双端口环路故障。其中单端口的环路故障是指从该端口发送出去的报文又从该端口接收回来了,双端口的环路故障是从该端口发送出去的报文从另外的端口接收回来了。如果端口存在环路,会导致以太网交换芯片的MAC地址学习错误,而且容易造成广播风暴,严重时甚至会导致网络瘫痪。
我们常常使用的生成树协议(Spanning Tree Protocol,STP)可应用于环路网络,它是一系列协议的泛称,通常包括普通生成树协议(STP),快速生成树协议(Rapid spanning tree protocol,RSTP)以及多生成树协议(Multiple Spanning Tree Protocol,MSTP)等,该协议通过一定的算法实现路径冗余,同时将环网修建成无环路的树型网络,从而避免报文在环路网络中的增生和无限循环。
生成树协议只能保护支持生成树协议的设备在启动了生成树协议后不成环路,而不能检测一些不支持生成树协议或者支持生成树协议但是没有启动该协议模块的设备之间所存在的环路。另外,对于我们ONU经常使用的一些应用场景,例如直接在ONU用户侧的两个以太网端口上物理成环,如果ONU用户侧的以太网端口之间是隔离的,即使ONU启动了生成树协议,ONU自身也无法发现这种物理环路的,但是这种物理环路对上游设备都是存在影响的。
现有其它的检测以太网环路的方法,例如在交换机的上联口串联或者内置一个网络CPU,通过网络CPU发包来监测发出的环路检测报文是否会被环回.这种方法对网络CPU的要求很高,由于网络CPU架在以太网数据流的中间,网络CPU不仅要完成数据的转发,还需要完成相应的环路控制.这对于许多已经成型的硬件来说并不可取.而且对于ONU来说,其上的CPU通常不是作为数据转发单元而存在的.
现有的检测以太网环路的方法除生成树协议之外,在一旦检测到环路将端口阻塞后,需要通过管理员来手工进行恢复。这在实际应用中会增加管理和维护的工作量。另一方面,如果有恶意的用户伪造相应的环路检测报文,上述提到的现有的检测以太网环路的方法均不能对此加以避免。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种检测以太网环路并且自动恢复的方法,可以检测单端口与双端口的环路故障,也可以检测到环路并且能够判断相应的环路是否消除从而将环路恢复,同时提供了防止用户伪造环路检测报文来造成环路阻塞的假象的解决策略,具有对以太网交换芯片的硬件配置要求低,实现简单的特点。
为达到以上目的,本发明采取的技术方案是:
一种检测以太网环路并且自动恢复的方法,其特征在于包括以下步骤:
步骤1,环路检测初始化模块完成初始化,初始化的内容包括:以太网交换芯片每个用户端口的环路检测收发信息表、环路状态标记、受控状态标记、环路检测定时器超时时间、环路检测执行的周期时间和以太网交换芯片的报文重定向规则,同时创建并运行三个任务:环路检测报文发送任务、环路检测报文接收任务和环路检测报文定时器任务;
步骤2,构造、收发、分析环路检测报文,判断是否存在环路:环路检测报文发送模块根据环路检测执行的周期时间周期性的为每个用户端口构造环路检测报文,并从每个用户端口向以太网网络中发送该环路检测报文并记录发送信息到每个用户端口所对应的环路检测收发信息表中;同时环路检测定时器模块调用环路检测接收定时器模块开始计时,并且环路检测报文接收模块开始尝试从每个用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,如果在环路检测定时器超时时间内收到环路检测报文,且经过环路检测报文防伪造模块检验确认该环路检测报文真实有效,则认为该用户端口下存在环路,并记录接收信息到该用户端口所对应的环路检测收发信息表中;
步骤3,标志位赋值,当用户端口下存在环路时,报文重定向到CPU并发出警告信息;当用户端口下不存在环路时,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;当用户端口下存在环路时,依据以太网交换芯片的报文重定向规则,环路检测报文被重定向到CPU,由环路检测报文接收模块处理;环路检测报文接收模块置该用户端口的环路状态标记为有环路、置受控状态标记为受控,受控状态是指被置为受控的用户端口除了环路检测报文的收发之外,丢弃掉其它报文;然后根据接收信息逆向查找到发送该环路检测报文的用户端口,对发送和接收的用户端口进行比较,判断是单端口环路故障还是多端口环路故障,同时报告告警信息;
步骤4,环路故障恢复情况监测及处理:环路检测定时器模块调用环路检测自动恢复定时器模块与环路检测接收定时器模块同步计时,环路检测报文接收模块开始尝试从受控状态被置为受控的用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;
步骤5,重复步骤2到4,根据环路检测执行的周期时间周期性的检测用户端口是否存在环路及存在环路的用户端口是否恢复正常。
在上述技术方案的基础上,步骤1中所说的环路检测收发信息表的表项包括:用户端口号、发送的Vlan ID、发送的时间戳、发送的随机序列号、发送的环路检测报文计数、接收的Vlan ID、接收的时间戳、接收的随机序列号、接收的环路检测报文计数;环路检测收发信息表的表项以用户端口号为索引。
在上述技术方案的基础上,步骤1中所说的环路状态标记、受控状态标记分别被初始化为无环路、不受控。
在上述技术方案的基础上,步骤1中所说的以太网交换芯片的报文重定向规则由规则条件和规则动作构成,其具体内容为:
规则条件1:以太网类型=0x9001,
规则条件2:目的MAC地址=广播地址,
规则条件3:源MAC地址=ONU的MAC地址,
规则动作:收到的报文重定向到CPU;
上面3个规则条件需要同时满足,才执行规则动作。
本发明所述的检测以太网环路并且自动恢复的方法,不仅可以检测单端口的环路故障,还可以检测双端口的环路故障;不仅可以检测到环路,而且还能判断相应的环路是否消除从而将环路恢复,还提供了防止用户伪造环路检测报文来造成环路阻塞的假象的解决策略,具有对以太网交换芯片的硬件配置要求低,实现简单的特点。
附图说明
本发明有如下附图:
图1MDU型ONU的硬件部分实施结构示意图;
图2环路检测软件模块结构图;
图3环路检测报文格式;
图4环路检测收发信息表;
图5环路检测初始化模块处理流程;
图6环路检测报文发送模块/接收模块/定时器模块处理流程;
图7环路检测伪造报文判断流程。
具体实施方式
以下结合附图对本发明作进一步详细说明。
本发明涉及以太网环路检测以及自动恢复的实现,由于需要将自定义的环路检测报文重定向到CPU进行处理,同时CPU还需要控制以太网交换芯片对报文的转发和过滤,因此要求以太网交换芯片能够支持报文的重定向和过滤功能,这项要求一般的以太网交换芯片都能满足,因此实现该功能和现有的ONU硬件相比没有任何改动。
图2给出了本发明的环路检测软件模块结构图,包括五个模块:环路检测初始化模块、环路检测报文发送模块、环路检测报文接收模块、环路检测定时器模块、环路检测报文防伪造模块.其中环路检测定时器模块包括环路检测接收定时器模块和环路检测自动恢复定时器模块.这些模块中,环路检测报文发送模块、环路检测报文接收模块和环路检测定时器模块需要周期性的运行,在本文中分别用任务来表示:环路检测报文发送任务、环路检测报文接收任务和环路检测报文定时器任务.环路检测初始化模块仅需要在初始时运行一次,环路检测报文防伪造模块被环路检测报文接收模块所调用.
本发明基于图2所示的环路检测软件模块结构图,公开了一种检测以太网环路并且自动恢复的方法,包括以下步骤:
步骤1,环路检测初始化模块完成初始化,初始化的内容包括:以太网交换芯片每个用户端口的环路检测收发信息表、环路状态标记、受控状态标记、环路检测定时器超时时间、环路检测执行的周期时间和以太网交换芯片的报文重定向规则,同时创建并运行三个任务:环路检测报文发送任务、环路检测报文接收任务和环路检测报文定时器任务;
步骤2,构造、收发、分析环路检测报文,判断是否存在环路:环路检测报文发送模块根据环路检测执行的周期时间周期性的为每个用户端口构造环路检测报文,并从每个用户端口向以太网网络中发送该环路检测报文并记录发送信息到每个用户端口所对应的环路检测收发信息表中;同时环路检测定时器模块调用环路检测接收定时器模块开始计时,并且环路检测报文接收模块开始尝试从每个用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,如果在环路检测定时器超时时间内收到环路检测报文,且经过环路检测报文防伪造模块检验确认该环路检测报文真实有效,则认为该用户端口下存在环路,并记录接收信息到该用户端口所对应的环路检测收发信息表中;
步骤3,标志位赋值,当用户端口下存在环路时,报文重定向到CPU并发出警告信息;当用户端口下不存在环路时,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;当用户端口下存在环路时,依据以太网交换芯片的报文重定向规则,环路检测报文被重定向到CPU,由环路检测报文接收模块处理;环路检测报文接收模块置该用户端口的环路状态标记为有环路、置受控状态标记为受控,受控状态是指被置为受控的用户端口除了环路检测报文的收发之外,丢弃掉其它报文;然后根据接收信息逆向查找到发送该环路检测报文的用户端口,对发送和接收的用户端口进行比较,判断是单端口环路故障还是多端口环路故障,同时报告告警信息;
步骤4,环路故障恢复情况监测及处理:环路检测定时器模块调用环路检测自动恢复定时器模块与环路检测接收定时器模块同步计时,环路检测报文接收模块开始尝试从受控状态被置为受控的用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;
步骤5,重复步骤2到4,根据环路检测执行的周期时间周期性的检测用户端口是否存在环路及存在环路的用户端口是否恢复正常。
在上述技术方案的基础上,步骤1中所说的环路检测收发信息表的表项包括:用户端口号、发送的Vlan ID、发送的时间戳、发送的随机序列号、发送的环路检测报文计数、接收的V1an ID、接收的时间戳、接收的随机序列号、接收的环路检测报文计数;环路检测收发信息表的表项以用户端口号为索引.
在上述技术方案的基础上,步骤1中所说的环路状态标记、受控状态标记分别被初始化为无环路、不受控。
在上述技术方案的基础上,步骤1中所说的以太网交换芯片的报文重定向规则由规则条件和规则动作构成,其具体内容为:
规则条件1:以太网类型=0x9001,
规则条件2:目的MAC地址=广播地址,
规则条件3:源MAC地址=ONU的MAC地址,
规则动作:收到的报文重定向到CPU;
上面3个规则条件需要同时满足,才执行规则动作。
以下通过一个具体实施例进一步说明本发明所述方法:
环路检测初始化模块完成初始化的具体步骤可以如图5所示,具体步骤简述如下:
步骤1.1,环路检测初始化模块初始化以太网交换芯片每个用户端口的环路检测收发信息表,该表的表项如图4所示;该表以用户端口号为索引,表项内容包括:用户端口号,发送的VLAN ID,发送的时间戳,发送的随机序列号、发送的环路检测报文计数、接收的VLANID,接收的时间戳,接收的随机序列号、接收的环路检测报文计数;
步骤1.2,初始化每个用户端口的环路状态标记和受控状态标记,其中环路状态标记初始化为“不存在环路”,受控状态标记初始化为“不受控”;
步骤1.3,初始化用户端口的环路检测接收定时器和环路检测自动恢复定时器的超时时间,分别记为T1和T2;在本发明中T1和T2针对所有用户端口都设置成相同的值,如确有需求,采用现有技术还可以针对单个用户设置成不同的值,同时初始化环路检测报文发送模块执行的周期T3和环路检测报文定时器模块执行的周期T4;
步骤1.4,初始化以太网交换芯片的报文重定向规则;
规则的格式如下:
规则=规则条件+规则动作;
规则条件=规则域+规则操作符+规则域的值+规则域掩码值;
规则动作={丢弃、重定向到某个端口等};
规则域={用户端口号、目的MAC地址、源MAC地址、以太网类型、VLAN ID等};
规则操作符={=、>=、<=、!=等};
规则域的值和规则域掩码值分别用数值表示,通常情况下分别用6个字节来表示。一条规则允许存在多个规则条件,各规则条件之间是“并且”的关系,只有当各规则条件均成立时,才执行相应的规则动作。
根据上述格式,假设环路检测初始化模块初始化报文重定向规则如下:
规则条件:
(1)以太网类型=0x9001,
(2)目的MAC地址=广播地址,
(3)源MAC地址=ONU的MAC地址,
规则动作:收到的报文重定向到CPU;
上面3个规则条件对应的掩码值均为以下6个字节:0xff,0xff,0xff,0xff,0xff,0xff,3个规则条件需要同时满足,才执行“收到的报文重定向到CPU”的规则动作。
步骤1.5,同时创建并运行三个任务:环路检测报文发送任务、环路检测报文接收任务和环路检测报文定时器任务,这三个任务分别对应着环路检测报文发送模块、环路检测报文接收模块以及环路检测定时器模块,并且是永远执行的,其中环路检测报文发送任务和环路检测报文定时器任务是按环路检测执行的周期时间周期运行的,环路检测报文接收任务则是收到了环路检测报文才开始运行,未收到环路检测报文时则处于等待状态。
本发明所述的环路检测报文格式如图3所示:目的MAC地址+源MAC地址+VLAN信息+以太网类型+净荷+填充字节+校验和,其中净荷部分的具体格式为:源用户端口号+源用户端口的VLAN ID+时间戳+随机序列号;所构造的环路检测报文中,VLAN信息中的VLAN ID和净荷部分的源用户端口的VLAN ID相同。所述VLAN信息是从其它配置模块中获取的,该模块并没有在本发明的软件模块结构图中标识出来,VLAN信息的获取可以采用现有技术实现。如果没有获取到VLAN信息,则报文中源MAC地址之后的VLAN信息不填写,净荷部分的源用户端口的VLAN ID填写为0。净荷部分的随机序列号针对每个端口是唯一的和随机的。
图6是环路检测报文发送模块/接收模块/定时器模块的处理流程,其中环路检测报文发送模块的具体工作步骤如下:
步骤1.环路检测报文发送模块周期性的为每个用户端口构造环路检测报文,并向该用户端口发送。这里的周期发送的间隔时间记为T3,T3可调,但是需要满足T3>T1这个条件。
步骤2.生成环路检测报文:环路检测报文发送模块为每个用户端口构造环路检测报文时需要生成一个随机数,按照图3的格式生成环路检测报文。
步骤3.环路检测报文发送模块为每个用户端口生成环路检测报文后,发送至以太网交换芯片对应的用户端口。
步骤4.环路检测报文发送模块发送环路检测报文后,将环路检测报文中净荷部分的信息填写到对应用户端口的环路检测发送信息中。例如填写的信息为:用户端口号=PORT1,发送的VLAN ID=VLAN1,发送的时间戳=TIMESTAMP1,发送的随机序列号=SESSION1。同时将用户端口PORT1的环路检测报文发送计数记为1,环路检测报文接收计数记为0。这样记录的目的是为了检测在一个发送周期内,环路检测报文接收的计数是否超过发送的计数以便判断环路检测报文是否是伪造的。
环路检测报文接收模块的具体工作步骤如下:
步骤1.环路检测报文接收模块等待接收、处理环路检测报文:以太网交换芯片收到环路检测报文后,将符合报文重定向规则的环路检测报文重定向到CPU,由环路检测报文接收模块处理。
步骤2.环路检测报文接收模块分析环路检测报文的净荷,净荷中的内容包括发送的用户端口号=PORT1,发送的VLAN ID=VLAN1,发送的时间戳=TIMESTAMP1,发送的随机序列号=SESSION1。
步骤3.环路检测报文接收模块记录环路检测报文接收时的状态信息,例如接收到环路检测报文的用户端口号=PORT2,接收的VLANID=VLAN2,接收的时间戳=TIMESTAMP2,接收的随机序列号=SESSION2,同时PORT2接收的环路检测报文计数加1.其中接收到环路检测报文的用户端口号来自该报文重定向到CPU时以太网交换芯片通知CPU的附加信息,接收的VLAN信息来自环路检测报文中的VLAN信息而不是净荷中的VLAN信息.接收的时间戳是指环路检测报文接收处理模块执行至此时所获取的系统当前时间.接收的随机序列号来自环路检测报文净荷中的随机序列号.
步骤4.环路检测报文接收模块按照图7所示的方法判断接收到的环路检测报文是否是伪造的,如果是伪造的,则直接丢弃该报文并转至步骤1等待接收下一个环路检测报文,否则转至步骤5;
步骤5.判断该报文净荷的PORT1与接收到环路检测报文的用户端口号PORT2是否相等,如果相等,则认为是单端口环路故障,转至步骤6,否则认为是双端口环路故障,转至步骤7。
步骤6.如果PORT1存在单端口环路故障,可以进一步判断单端口是在一个VLAN内部发生了环路故障还是在多个VLAN内部。如果接收到的环路检测报文中的VLAN信息(例如VLAN2)与净荷中发送的VLAN ID(例如VLAN1)相等,则认为是在单个VLAN内部发生了环路故障,否则认为是在多个VLAN内部发生了环路故障。转至步骤8。
步骤7.如果PORT1下存在双端口环路故障,即从PORT1发送出去的环路检测报文从PORT2收到了,同时从PORT1发送的VLAN信息为VLAN1,而从PORT2收到的VLAN信息为VLAN2,则此时向网管报告PORT1的VLAN1与PORT2的VLAN2形成了环路。
步骤8.出现环路故障后,不论是单端口环路故障还是多端口环路故障,都进行相关的告警处理,同时将接收端口PORT2的环路状态标记为“存在环路”,将受控状态标记置为“受控”状态,在TLOOP表中索引到PORT2的记录表项,记录相应的接收VLAN信息,接收的时间戳,接收的随机序列号。
步骤9.在以太网交换芯片上对应于PORT2增加“不是环路检测的报文全部丢弃”的规则,即PORT2只能通过环路检测报文,其它的报文都将被丢弃。这里需要使用两条不同优先级的规则联合来实现:
(1)高优先级规则同环路检测初始化流程中步骤1.4中的规则。
(2)低优先级规则:
规则条件:
用户端口号=PORT2,源MAC地址=00:00:00:00:00:01,值掩码为0x00,0x00,0x00,0x00,0x00,0x00,实际上任意报文都可以匹配该规则的条件,因此可以理解该规则的条件为一任意的条件。
规则的动作:丢弃。
以太网交换芯片首先匹配高优先级的规则,即将环路检测报文重定向到CPU;对于其他不匹配高优先级规则的报文,以太网交换芯片则会匹配到低优先级的规则,而任何报文都会匹配到该低优先级的规则,因此实现了“不是环路检测的报文全部丢弃”的规则。
如果仅隔离单个VLAN内的报文,即需要将特定VLAN内的报文丢弃,则需要将低优先级规则的条件改为:
用户端口号=PORT2并且VLAN ID=VLAN1,值掩码均为0xff,0xff,0xff,0xff,0xff,0xff。
环路检测定时器模块的具体工作步骤如下:
步骤1.环路检测定时器模块周期性逐一对用户端口进行下面的操作步骤2~步骤8,周期的间隔时间为T4,T4可调,需要满足T4<T1并且T4<T2这两个条件。
步骤2.检测用户端口的环路检测报文接收定时器是否超时,以PORT1为例,其判断条件如下,两个条件需要同时满足:
(1)PORT1的环路状态标记为“不存在环路”;
(2)当前时间戳-PORT1的发送时间戳>=环路检测定时器接收超时时间T1。当前时间戳是指环路检测定时器模块执行此时所获取的系统当前时间。
步骤3.如果满足上述条件,则判定PORT1下面没有环路,将PORT1的环路状态标记为“不存在环路”,转至步骤4。否则表示收到了环路检测报文,这在环路检测报文接收模块中已经处理了。
步骤4.设置PORT1的受控状态标记为“不受控”,转至步骤1继续下一个用户端口的判断。
步骤5.检测用户端口的环路检测自动恢复定时器是否超时,以PORT1为例,其判断条件如下,两个条件需要同时满足:
(1)PORT1的环路状态标记为“存在环路”,
(2)当前时间戳-PORT1的接收时间戳>=环路检测自动恢复定时器超时时间T2。
步骤6.如果满足上述条件,则认为PORT1下的环路已经消除。转至步骤7。否则认为该端口下的环路没有消除。转至步骤8。
步骤7.如果PORT1下的环路已经消除,则可以解除端口的“受控”状态,删除该端口上对应的低优先级的规则,从而使数据可以正常转发。PORT1的受控标记置为“不受控”。
步骤8.如果PORT1下的环路没有消除,即在超时时间T2内环路检测报文接收模块仍然接收到该报文,则不做处理,PORT1需要继续处于“受控”状态。
图7给出了判断是否存在伪造的环路检测报文的处理流程,具体步骤为:
步骤1.环路检测报文接收模块接收到环路检测报文并且进行解析后,获取报文净荷中的发送端口号,发送VLAN信息,发送的时间戳和发送的随机标识符信息。
步骤2.以报文净荷中的发送端口号为索引,匹配TLOOP中的内容,匹配条件是:报文净荷中的随机序列号和TLOOP中对应用户端口表项的随机序列号相等。若不等,则直接丢弃该环路检测报文。若相等,则转至步骤3。
步骤3.比较报文净荷中的时间戳信息与TLOOP表项中记录的该端口的时间戳信息的差值是否在预设的接收超时时间(T1)内,若不在该范围内,则直接丢弃该环路检测报文。若在相应的范围内,则转至步骤4。
步骤4.比较该用户端口至上次发送以后端口未被“受控”之前所接收到的环路检测报文的个数是否大于1,若满足该条件,则认为该端口下的设备在伪造环路检测报文,否则不是。对于伪造的环路检测报文,也需要报告给网管。
以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发明精神和原则之内所做的任何修改、等同替换和改进等,均含于本发明的保护范围之内。
Claims (4)
1.一种检测以太网环路并且自动恢复的方法,其特征在于包括以下步骤:
步骤1,环路检测初始化模块完成初始化,初始化的内容包括:以太网交换芯片每个用户端口的环路检测收发信息表、环路状态标记、受控状态标记、环路检测定时器超时时间、环路检测执行的周期时间和以太网交换芯片的报文重定向规则,同时创建并运行三个任务:环路检测报文发送任务、环路检测报文接收任务和环路检测报文定时器任务;
步骤2,构造、收发、分析环路检测报文,判断是否存在环路:环路检测报文发送模块根据环路检测执行的周期时间周期性的为每个用户端口构造环路检测报文,并从每个用户端口向以太网网络中发送该环路检测报文并记录发送信息到每个用户端口所对应的环路检测收发信息表中;同时环路检测定时器模块调用环路检测接收定时器模块开始计时,并且环路检测报文接收模块开始尝试从每个用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,如果在环路检测定时器超时时间内收到环路检测报文,且经过环路检测报文防伪造模块检验确认该环路检测报文真实有效,则认为该用户端口下存在环路,并记录接收信息到该用户端口所对应的环路检测收发信息表中;
步骤3,标志位赋值,当用户端口下存在环路时,报文重定向到CPU并发出警告信息;当用户端口下不存在环路时,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;当用户端口下存在环路时,依据以太网交换芯片的报文重定向规则,环路检测报文被重定向到CPU,由环路检测报文接收模块处理;环路检测报文接收模块置该用户端口的环路状态标记为有环路、置受控状态标记为受控,受控状态是指被置为受控的用户端口除了环路检测报文的收发之外,丢弃掉其它报文;然后根据接收信息逆向查找到发送该环路检测报文的用户端口,对发送和接收的用户端口进行比较,判断是单端口环路故障还是多端口环路故障,同时报告告警信息;
步骤4,环路故障恢复情况监测及处理:环路检测定时器模块调用环路检测自动恢复定时器模块与环路检测接收定时器模块同步计时,环路检测报文接收模块开始尝试从受控状态被置为受控的用户端口接收环路检测报文,如果超过环路检测定时器超时时间后依然未收到环路检测报文,则认为该用户端口下不存在环路,环路检测定时器模块置该用户端口的环路状态标记为无环路、置受控状态标记为不受控;
步骤5,重复步骤2到4,根据环路检测执行的周期时间周期性的检测用户端口是否存在环路及存在环路的用户端口是否恢复正常。
2.如权利要求1所述的检测以太网环路并且自动恢复的方法,其特征在于:步骤1中所说的环路检测收发信息表的表项包括:用户端口号、发送的Vlan ID、发送的时间戳、发送的随机序列号、发送的环路检测报文计数、接收的Vlan ID、接收的时间戳、接收的随机序列号、接收的环路检测报文计数;环路检测收发信息表的表项以用户端口号为索引。
3.如权利要求1所述的检测以太网环路并且自动恢复的方法,其特征在于:步骤1中所说的环路状态标记、受控状态标记分别被初始化为无环路、不受控。
4.如权利要求1所述的检测以太网环路并且自动恢复的方法,其特征在于:步骤1中所说的以太网交换芯片的报文重定向规则由规则条件和规则动作构成,其具体内容为:
规则条件1:以太网类型=0x9001,
规则条件2:目的MAC地址=广播地址,
规则条件3:源MAC地址=ONU的MAC地址,
规则动作:收到的报文重定向到CPU;
上面3个规则条件需要同时满足,才执行规则动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910223878.0A CN101707538B (zh) | 2009-11-25 | 2009-11-25 | 一种检测以太网环路并且自动恢复的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910223878.0A CN101707538B (zh) | 2009-11-25 | 2009-11-25 | 一种检测以太网环路并且自动恢复的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101707538A true CN101707538A (zh) | 2010-05-12 |
CN101707538B CN101707538B (zh) | 2011-09-14 |
Family
ID=42377734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910223878.0A Expired - Fee Related CN101707538B (zh) | 2009-11-25 | 2009-11-25 | 一种检测以太网环路并且自动恢复的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101707538B (zh) |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917298A (zh) * | 2010-09-02 | 2010-12-15 | 杭州华三通信技术有限公司 | 一种基于vlan的环路监测方法和设备 |
CN101931573A (zh) * | 2010-08-31 | 2010-12-29 | 武汉烽火网络有限责任公司 | 以太网环路定位方法 |
CN102045204A (zh) * | 2010-12-31 | 2011-05-04 | 瑞斯康达科技发展股份有限公司 | 一种故障处理系统及方法 |
CN102055525A (zh) * | 2010-12-17 | 2011-05-11 | 北京格林伟迪科技有限公司 | 环路检测和控制方法 |
CN102281172A (zh) * | 2011-09-20 | 2011-12-14 | 杭州华三通信技术有限公司 | 环路检测方法及装置 |
CN102325046A (zh) * | 2011-09-08 | 2012-01-18 | 杭州华三通信技术有限公司 | 用于触发网络设备恢复默认配置的方法及装置 |
WO2012163233A1 (zh) * | 2011-05-27 | 2012-12-06 | 华为技术有限公司 | 环回检测方法及装置 |
CN102904636A (zh) * | 2012-11-12 | 2013-01-30 | 上海斐讯数据通信技术有限公司 | 一种解除光节点中用户节点端口环回告警的方法 |
CN102970622A (zh) * | 2012-12-14 | 2013-03-13 | 广东东研网络科技股份有限公司 | 一种epon网络环路控制方法 |
CN103986619A (zh) * | 2014-05-09 | 2014-08-13 | 浙江中烟工业有限责任公司 | 光纤通道交换机的端口状态监控方法 |
CN104113442A (zh) * | 2013-04-18 | 2014-10-22 | 上海斐讯数据通信技术有限公司 | 以太网的环路检测系统及方法 |
CN104219122A (zh) * | 2014-08-26 | 2014-12-17 | 烽火通信科技股份有限公司 | Olt局端快速定位远端onu环路端口的检测方法 |
CN104539348A (zh) * | 2015-01-06 | 2015-04-22 | 烽火通信科技股份有限公司 | Pon系统链路环回检测的方法及装置 |
CN104955089A (zh) * | 2014-03-31 | 2015-09-30 | 中国移动通信集团公司 | 一种无线接入网、信号发送方法及接收方法 |
CN105071977A (zh) * | 2015-09-15 | 2015-11-18 | 深圳市万网博通科技有限公司 | 一种基于交换机的网络运行质量的自检和自愈的方法 |
CN105553739A (zh) * | 2015-12-25 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种实现mac地址追踪的方法及装置 |
CN105657584A (zh) * | 2014-12-01 | 2016-06-08 | 北京蓝山科技股份有限公司 | 一种用于epon/onu中的三网融合光路结构 |
CN105704020A (zh) * | 2014-11-25 | 2016-06-22 | 华为技术有限公司 | 环路避免方法,设备和系统 |
CN105794151A (zh) * | 2013-11-25 | 2016-07-20 | 三菱电机株式会社 | 中继装置及通信网络 |
CN106878057A (zh) * | 2016-12-31 | 2017-06-20 | 广东东研网络科技股份有限公司 | 以太网无源光网络epon系统中的环路检测及清除方法 |
CN107040431A (zh) * | 2017-03-16 | 2017-08-11 | 上海斐讯数据通信技术有限公司 | 一种检测ap的lan口环路的方法及系统 |
CN108156014A (zh) * | 2016-12-06 | 2018-06-12 | 华为技术有限公司 | 一种环路故障处理方法和交换机 |
CN108418838A (zh) * | 2016-01-05 | 2018-08-17 | 大连民族大学 | 一种检测端口环路的方法 |
CN108923987A (zh) * | 2018-07-24 | 2018-11-30 | 上海市共进通信技术有限公司 | 保护家庭网关连续工作的方法、系统及终端 |
CN111010328A (zh) * | 2019-11-08 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种白牌交换机防环的方法和设备 |
CN111585886A (zh) * | 2020-04-26 | 2020-08-25 | 深圳市三旺通信股份有限公司 | 基于生成树协议的自环处理方法、装置、设备及存储介质 |
CN112491688A (zh) * | 2020-11-18 | 2021-03-12 | 锐捷网络股份有限公司 | 一种环路检测方法、装置及可读存储介质 |
CN112968846A (zh) * | 2021-02-02 | 2021-06-15 | 武汉迈威通信股份有限公司 | 一种交换机端口非法短接的检测系统 |
CN113014466A (zh) * | 2019-12-19 | 2021-06-22 | 西安诺瓦星云科技股份有限公司 | 网口环路检测方法和系统 |
CN113875196A (zh) * | 2019-05-28 | 2021-12-31 | 小糸电工株式会社 | 通信装置 |
CN114389965A (zh) * | 2022-01-26 | 2022-04-22 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
CN114567572A (zh) * | 2022-04-29 | 2022-05-31 | 南京金阵微电子技术有限公司 | 一种网络环路监测方法、系统、设备及存储介质 |
CN114884806A (zh) * | 2022-04-01 | 2022-08-09 | 国网浙江省电力有限公司杭州供电公司 | 一种基于高集聚场景下的环路识别与阻断方法 |
CN115333974A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103166796B (zh) * | 2013-03-13 | 2014-12-10 | 武汉邮电科学研究院 | 电力通信网业务恢复时业务信号收发路径一致的实现方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6636484B1 (en) * | 1998-12-09 | 2003-10-21 | Cisco Technology, Inc. | Automatic generation of OAM cells for connection continuity detection |
EP1193597A3 (en) * | 2000-08-11 | 2009-07-29 | Texas Instruments Incorporated | Multiprocessor network node failure detection and recovery |
CN100495985C (zh) * | 2005-06-22 | 2009-06-03 | 中国长城计算机深圳股份有限公司 | 快速检测以太网交换机环路故障的方法 |
CN101064632A (zh) * | 2006-04-28 | 2007-10-31 | 西门子通信技术(北京)有限公司 | 一种以太网环路的保护方法及系统 |
-
2009
- 2009-11-25 CN CN200910223878.0A patent/CN101707538B/zh not_active Expired - Fee Related
Cited By (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101931573B (zh) * | 2010-08-31 | 2012-07-04 | 武汉烽火网络有限责任公司 | 以太网环路定位方法 |
CN101931573A (zh) * | 2010-08-31 | 2010-12-29 | 武汉烽火网络有限责任公司 | 以太网环路定位方法 |
CN101917298A (zh) * | 2010-09-02 | 2010-12-15 | 杭州华三通信技术有限公司 | 一种基于vlan的环路监测方法和设备 |
CN101917298B (zh) * | 2010-09-02 | 2012-10-17 | 杭州华三通信技术有限公司 | 一种基于vlan的环路监测方法和设备 |
CN102055525A (zh) * | 2010-12-17 | 2011-05-11 | 北京格林伟迪科技有限公司 | 环路检测和控制方法 |
CN102055525B (zh) * | 2010-12-17 | 2016-03-16 | 北京格林伟迪科技股份有限公司 | 环路检测和控制方法 |
CN102045204B (zh) * | 2010-12-31 | 2012-08-29 | 瑞斯康达科技发展股份有限公司 | 一种故障处理系统及方法 |
CN102045204A (zh) * | 2010-12-31 | 2011-05-04 | 瑞斯康达科技发展股份有限公司 | 一种故障处理系统及方法 |
WO2012163233A1 (zh) * | 2011-05-27 | 2012-12-06 | 华为技术有限公司 | 环回检测方法及装置 |
CN102325046A (zh) * | 2011-09-08 | 2012-01-18 | 杭州华三通信技术有限公司 | 用于触发网络设备恢复默认配置的方法及装置 |
CN102325046B (zh) * | 2011-09-08 | 2014-02-12 | 杭州华三通信技术有限公司 | 用于触发网络设备恢复默认配置的方法及装置 |
CN102281172A (zh) * | 2011-09-20 | 2011-12-14 | 杭州华三通信技术有限公司 | 环路检测方法及装置 |
CN102281172B (zh) * | 2011-09-20 | 2013-11-06 | 杭州华三通信技术有限公司 | 环路检测方法及装置 |
CN102904636B (zh) * | 2012-11-12 | 2015-08-05 | 上海斐讯数据通信技术有限公司 | 一种解除光节点中用户节点端口环回告警的方法 |
CN102904636A (zh) * | 2012-11-12 | 2013-01-30 | 上海斐讯数据通信技术有限公司 | 一种解除光节点中用户节点端口环回告警的方法 |
CN102970622A (zh) * | 2012-12-14 | 2013-03-13 | 广东东研网络科技股份有限公司 | 一种epon网络环路控制方法 |
CN102970622B (zh) * | 2012-12-14 | 2015-09-09 | 广东东研网络科技股份有限公司 | 一种epon网络环路控制方法 |
CN104113442A (zh) * | 2013-04-18 | 2014-10-22 | 上海斐讯数据通信技术有限公司 | 以太网的环路检测系统及方法 |
CN105794151B (zh) * | 2013-11-25 | 2018-02-09 | 三菱电机株式会社 | 中继装置及通信网络 |
CN105794151A (zh) * | 2013-11-25 | 2016-07-20 | 三菱电机株式会社 | 中继装置及通信网络 |
CN104955089A (zh) * | 2014-03-31 | 2015-09-30 | 中国移动通信集团公司 | 一种无线接入网、信号发送方法及接收方法 |
CN104955089B (zh) * | 2014-03-31 | 2019-02-05 | 中国移动通信集团公司 | 一种无线接入网、信号发送方法及接收方法 |
CN103986619A (zh) * | 2014-05-09 | 2014-08-13 | 浙江中烟工业有限责任公司 | 光纤通道交换机的端口状态监控方法 |
CN104219122A (zh) * | 2014-08-26 | 2014-12-17 | 烽火通信科技股份有限公司 | Olt局端快速定位远端onu环路端口的检测方法 |
US10142217B2 (en) | 2014-11-25 | 2018-11-27 | Huawei Technologies Co., Ltd | Loop avoidance method, device and system |
CN105704020A (zh) * | 2014-11-25 | 2016-06-22 | 华为技术有限公司 | 环路避免方法,设备和系统 |
CN105704020B (zh) * | 2014-11-25 | 2019-05-17 | 华为技术有限公司 | 环路避免方法,设备和系统 |
CN105657584A (zh) * | 2014-12-01 | 2016-06-08 | 北京蓝山科技股份有限公司 | 一种用于epon/onu中的三网融合光路结构 |
CN104539348B (zh) * | 2015-01-06 | 2017-04-12 | 烽火通信科技股份有限公司 | Pon系统链路环回检测的方法及装置 |
CN104539348A (zh) * | 2015-01-06 | 2015-04-22 | 烽火通信科技股份有限公司 | Pon系统链路环回检测的方法及装置 |
CN105071977B (zh) * | 2015-09-15 | 2019-01-15 | 深圳市万网博通科技有限公司 | 一种基于交换机的网络运行质量的自检和自愈的方法 |
CN105071977A (zh) * | 2015-09-15 | 2015-11-18 | 深圳市万网博通科技有限公司 | 一种基于交换机的网络运行质量的自检和自愈的方法 |
CN105553739B (zh) * | 2015-12-25 | 2019-04-26 | 瑞斯康达科技发展股份有限公司 | 一种实现mac地址追踪的方法及装置 |
CN105553739A (zh) * | 2015-12-25 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种实现mac地址追踪的方法及装置 |
CN108418838B (zh) * | 2016-01-05 | 2020-08-07 | 大连民族大学 | 一种检测端口环路的方法 |
CN108418838A (zh) * | 2016-01-05 | 2018-08-17 | 大连民族大学 | 一种检测端口环路的方法 |
CN108156014A (zh) * | 2016-12-06 | 2018-06-12 | 华为技术有限公司 | 一种环路故障处理方法和交换机 |
CN108156014B (zh) * | 2016-12-06 | 2021-08-13 | 华为技术有限公司 | 一种环路故障处理方法和交换机 |
CN106878057A (zh) * | 2016-12-31 | 2017-06-20 | 广东东研网络科技股份有限公司 | 以太网无源光网络epon系统中的环路检测及清除方法 |
CN107040431B (zh) * | 2017-03-16 | 2021-06-04 | 台州市吉吉知识产权运营有限公司 | 一种检测ap的lan口环路的方法及系统 |
CN107040431A (zh) * | 2017-03-16 | 2017-08-11 | 上海斐讯数据通信技术有限公司 | 一种检测ap的lan口环路的方法及系统 |
CN108923987A (zh) * | 2018-07-24 | 2018-11-30 | 上海市共进通信技术有限公司 | 保护家庭网关连续工作的方法、系统及终端 |
CN113875196A (zh) * | 2019-05-28 | 2021-12-31 | 小糸电工株式会社 | 通信装置 |
CN113875196B (zh) * | 2019-05-28 | 2024-01-05 | 小糸电工株式会社 | 通信装置 |
CN111010328A (zh) * | 2019-11-08 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种白牌交换机防环的方法和设备 |
CN113014466A (zh) * | 2019-12-19 | 2021-06-22 | 西安诺瓦星云科技股份有限公司 | 网口环路检测方法和系统 |
CN113014466B (zh) * | 2019-12-19 | 2022-08-16 | 西安诺瓦星云科技股份有限公司 | 网口环路检测方法和系统 |
CN111585886A (zh) * | 2020-04-26 | 2020-08-25 | 深圳市三旺通信股份有限公司 | 基于生成树协议的自环处理方法、装置、设备及存储介质 |
CN112491688A (zh) * | 2020-11-18 | 2021-03-12 | 锐捷网络股份有限公司 | 一种环路检测方法、装置及可读存储介质 |
CN112968846B (zh) * | 2021-02-02 | 2022-08-16 | 武汉迈威通信股份有限公司 | 一种交换机端口非法短接的检测系统 |
CN112968846A (zh) * | 2021-02-02 | 2021-06-15 | 武汉迈威通信股份有限公司 | 一种交换机端口非法短接的检测系统 |
CN114389965A (zh) * | 2022-01-26 | 2022-04-22 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
CN114389965B (zh) * | 2022-01-26 | 2024-03-29 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
CN114884806A (zh) * | 2022-04-01 | 2022-08-09 | 国网浙江省电力有限公司杭州供电公司 | 一种基于高集聚场景下的环路识别与阻断方法 |
CN114567572A (zh) * | 2022-04-29 | 2022-05-31 | 南京金阵微电子技术有限公司 | 一种网络环路监测方法、系统、设备及存储介质 |
CN114567572B (zh) * | 2022-04-29 | 2023-01-31 | 南京金阵微电子技术有限公司 | 一种网络环路监测方法、系统、设备及存储介质 |
CN115333974A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
CN115333974B (zh) * | 2022-08-10 | 2023-08-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101707538B (zh) | 2011-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101707538B (zh) | 一种检测以太网环路并且自动恢复的方法 | |
CN101336530B (zh) | 网络系统 | |
CN100512194C (zh) | 链路聚合方法、装置、mac帧收发方法和系统 | |
CN101262401B (zh) | 一种环形网络中实现网络恢复的方法 | |
CN100389578C (zh) | 传统光传送网和智能光网络组网时的资源分配方法 | |
CN101453666B (zh) | 无源光网络的主备链路保护方法、环路系统及装置 | |
US20080002570A1 (en) | Network redundancy method, and middle apparatus and upper apparatus for the network redundancy method | |
CN101364926A (zh) | 一种网络保护的方法和设备 | |
CN102546311B (zh) | 一种在eoc设备上实现环路检测的方法 | |
JP5862445B2 (ja) | 通信装置 | |
CN100466583C (zh) | 基于rrpp的快速环网防攻击的方法、装置和系统 | |
CN101072155B (zh) | 用于以太网自动保护系统的单光纤故障处理方法 | |
CN101141333A (zh) | 一种以太环网系统主节点从端口故障处理方法 | |
CN102684782A (zh) | Epon系统的保护装置和数据冗余备份方法及监控方法 | |
EP2178249B1 (en) | Method of redundancy of ring network | |
CN101330496B (zh) | 一种检测以太网组播环路的方法及装置 | |
US20070147231A1 (en) | Path protection method and layer-2 switch | |
CN101022388A (zh) | 用普通以太网技术构成自愈环的方法 | |
CN103078777B (zh) | 应用于弹性分组环网络中的环路消除方法和装置 | |
CN101834759A (zh) | 捆绑链路的检测方法及分布式设备 | |
CN106464356A (zh) | 一种流氓光网络单元的检测方法、装置及系统 | |
CN101483491B (zh) | 共享保护环及其组播源路由保护方法和节点 | |
CA2512710A1 (en) | Method and system for providing a signature signal in an optical networkin the event of loss of a client | |
CN104796200A (zh) | 中继系统以及交换机装置 | |
CN101478775B (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110914 Termination date: 20201125 |
|
CF01 | Termination of patent right due to non-payment of annual fee |