以太环网故障检测、连接的方法和系统的制作方法

文档序号:7745737阅读:222来源:国知局
专利名称:以太环网故障检测、连接的方法和系统的制作方法
技术领域
本发明涉及网络技术领域,更具体的说是涉及一种以太环网故障检测、连接的方法和系统。
背景技术
以太网具有传输速度高、低耗、易于安装和兼容性好等优势,由于它支持几乎所有流行的网络协议,所以在商业系统中被广泛采用。其中,环形以太网作为主流的工业以太网拓扑结构,具有其他以太网拓扑结构所无法比拟的优势。环形以太网是由多个交换机节点相连构成环,以太环网中的交换机节点分为主节点和从节点,每个节点均包括两个端口。其中,主节点的一个端口为主端口,另一个端口为副端口。当环网链路完好时,主节点阻塞其副端口,此时副端口只能进行环网相关协议报文的接收和发送,不能进行任何数据报文的转发;当环网链路出现故障时,主节点打开副端口,此时副端口可以接收、发送环网相关的报文,并可以接收、转发和发送环网相关协议报文之外的任何数据报文,以保证环网的连通性。现有技术中在进行以太环网的故障检测,以及当链路出现故障后,所有节点均需要刷新转发数据报文(FDBJorwarding Date Base)表来刷新并维护MAC表。同时,在链路故障恢复后,故障恢复后的节点发送报文来通知主节点,并由主节点确认后,从节点才可以打开故障恢复的报文,各节点刷新MAC表。由于现有是技术中在进行以太环网故障检测以及环网故障恢复的过程中,均需要维护MAC表,而一旦用于刷新FDB表的报文丢失,将会导致整个业务中断,以太环网长期无法进行数据通信,而且维护MAC地址列表操作复杂,造成资源浪费。另外,当以太网中故障恢复后,故障恢复的节点需要主节点确认后,才可以进行打开其故障恢复后的端口,而这样就可能由于主节点和故障恢复的节点之间的自协商时间不确定而导致延长通信中断的时间。

发明内容
有鉴于此,本发明提供一种以太环网故障检测、连接的方法和系统,在进行故障检测以及故障恢复的过程中,降低系统操作的复杂度,节省资源,并减少通信中断的时间。为实现上述目的,本发明提供了一种以太环网故障检测的方法,关闭主节点和从节点的MAC地址学习功能,该方法包括分别从主端口和副端口周期性的向其相邻节点发送健康探测报文;在连续指定数量的探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文,如果否,则确定链路出现故障,打开所述副端口的用户业务数据转发功能。优选的,当在连续指定数量的探测周期内,主端口和副端口均接收到相邻节点返回的健康探测报文,则将继续阻塞所述副端口。
优选的,该方法还包括当接收到从节点发送的端口故障报文时,响应所述端口故障报文,确定链路出现故障。本发明还提供了一种以太环网连接的方法,关闭节点的MAC地址学习功能,该方法包括当检测到某端口的物理链路连接恢复正常时,判断处于正常物理链路连接的端口
数量;如果只有一个端口的物理链路连接正常,则将该端口设为工作状态;如果两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理;判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态;如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。优选的,该方法还包括当从第一端口接收到其他节点发送的恢复请求报文后,判断第二端口是否与相邻节点之间存在正常的物理链路连接,如果是,则通过所述第二端口将所述恢复请求报文转发给所述相邻节点;如果否,响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点,所述第一端口为接收到恢复请求报文的端口,所述第二端口为第一端口之外的另一侧端口优选的,所述停止发送恢复请求报文,将所述两侧端口均设定为工作状态,具体包括判断从所述两侧端口均接收到第一包恢复应答报文到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,则在停止发送恢复请求报文的同时,将所述处于预工作状态的端口设定为工作状态,使所述两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。本发明还提供了一种以太环网故障检测的系统,关闭主节点和从节点的MAC地址学习功能,本系统包括健康报文发送单元,用于分别从主端口和副端口周期性的向其相邻节点发送健康探测报文;检测单元,用于在预设的若干探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文;故障确定单元,用于当主端口和副端口中至少一个端口未接收到返回的健康探测报文时,确定链路出现故障,打开所述副端口的用户业务数据转发功能。优选的,本系统还包括副端口状态维持单元,用于当在连续指定数量的探测周期内,主端口和副端口均接收到相邻节点返回的健康探测报文,则将继续阻塞所述副端口的用户业务数据转发功能。优选的,故障确定单元,还包括第一故障确定单元,用于当接收到从节点发送的端口故障报文时,响应所述端口故障报文,确定链路出现故障。本发明还提供了一种以太环网连接的系统,包括关闭维持单元,用于维持节点的MAC地址学习功能的关闭状态;端口数量判断单元,用于当检测到从节点中某端口的物理链路连接恢复正常时, 判断处于正常物理链路连接的端口数量;第一连接单元,用于当只有一个端口的物理链路连接正常时,将该端口设为工作状态;恢复请求单元,用于当两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理;第二连接单元,用于判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态;如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。优选的,本系统还包括链路检测单元,用于当从第一端口接收到恢复请求报文后,判断第二端口是否与其相邻节点之间存在正常的物理链路连接,所述第一端口为接收到恢复请求报文的端口, 所述第二端口为第一端口之外的另一侧端口;转发单元,用于当链路检测单元确定第二端口与相邻节点之间存在正常的物理链路连接时,则通过所述第二端口将所述恢复请求报文转发给所述相邻节点;恢复请求响应单元,用于当链路检测单元确定第二端口与相邻节点之间不存在正常的物理链路连接时,响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点。优选的,所述第二连接单元包括第二连接子单元,用于判断从所述两侧端口均接收到第一包恢复应答报文到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,在停止发送恢复请求报文的同时,将所述处于预工作状态的端口设定为工作状态,使所述两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种以太环网故障检测、连接的方法和系统,在进行故障检测的过程中关闭节点的MAC地址的学习功能,并由主节点周期性的从两侧端口向相邻节点发送健康探测报文,当在连续指定数量的探测周期内,主端口和副端口中至少一个端口未接收到相邻节点返回的健康探测报文时,则认为以太环网中存在链路故障,并打开所述副端口的用户业务数据转发功能,不需要维护MAC 地址,降低了操作复杂度、节省了数据资源。同时,当从节点的端口从故障中恢复后建立连接时,保持MAC地址学习功能的关闭状态,节省了维护MAC所消耗的数据资源。另外,当从节点在预设时间内未收到恢复应答报文,则从节点自动将从故障中恢复的端口设定为工作状态,从而避免了由于环网多处链路中断而导致局部的通信中断。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本发明实施例一种以太环网故障检测的方法一个实施例的步骤流程图;图2为本发明实施例一种以太环网故障检测的方法另一个实施例的步骤流程图;图3为本发明实施例一种以太环网连接的方法一个实施例的步骤流程图;图4为本发明实施例一种以太环网连接的方法另一个实施例的步骤流程图;图5为本发明实施例一种以太环网故障检测的系统一个实施例的结构示意图;图6为本发明实施例一种以太环网连接的系统一个实施例的结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。参见图1,为本发明实施例一种以太环网故障检测的方法一个实施例的步骤流程图,本实施例包括步骤101 关闭所有节点的MAC地址学习功能。现有技术中在进行故障检测的过程中,均需要维护MAC地址列表,当某节点出现故障时,则需要进行节点的MAC地址学习功能,系统中的节点需要刷新MAC列表,而维护MAC 地址列表的操作过程复杂,浪费资源,本发明实施例中在检测节点故障时,关闭主节点的 MAC地址学习功能,从而避免由于刷新地址的报文丢失,导致环网后续通信的中断。关闭MAC地址学习功能后,当系统中的节点发生故障后,节点设备无需刷新设备中的保存的MAC地址表,可以保护节点设备的安全。步骤102 主节点分别从主端口和副端口周期性的向其相邻节点发送健康探测报文。为了检测出系统故障,主节点可以分别从主端口和副端口发送健康探测报文,以检测链路是否存在故障。当从主端口发送健康探测报文到其相邻节点的端口时,该相邻节点接收到健康探测报文后并从另一个端口将该健康探测报文转发给下一个节点(相邻节点),如果链路没有出现故障,则主节点会从副端口收到该健康探测报文;同样,当从副端口发送健康探测报文后,如果以太网系统中各个节点均未出现故障,则主节点会从主端口收到副端口发送的健康探测报文。步骤103 在连续的指定数量的探测周期内,主节点检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文,如果否,进入步骤S104;如果是,则进入步骤 S105 ;其中,探测周期是指,当主节点从主端口(或者副端口)发送健康探测报文,到下一次主节点从主端口(或者是副端口)发送的健康探测报文的间隔时间为一个探测周期。连续的若干个探测周期可以根据需要进行设定,如可以为,在连续三个探测周期内,判断是否在主端口和副端口均接收到相邻节点返回的的健康探测报文,如果其中任一个端口没有接收到返回的健康探测报文,则可以判定该以太环网中存在链路故障。
当从主端口发送健康探测报文后,在一个探测周期内主节点的副端口没有接收到该健康探测报文,则以太环网链路有出现故障的可能性,为了使得检测故障准确性较高,可以设定在连续若干个探测周期内,判断副端口是否接收到主端口发送的健康探测报文;同样,当主节点从副端口发送健康探测报文后,在连续若干个探测周期内,判断主端口是否接收到从副端口发送的健康探测报文。 当在设定的连续若干个探测周期内,主端口和副端口有一个端口未收到健康探测报文,则表明以太环网链路出现故障。步骤104 主节点确定链路出现故障,打开所述副端口的用户业务数据转发功能。当确定链路出现故障后,主节点打开副端口的用户业务数据转发功能,也就是将副端口设定为打开状态,此时,副端口既可以接收和发送环网相关的协议报文(如健康探测报文、恢复请求报文等),也可以接收、发送和转发用户业务数据相关的报文,其中用户业务数据相关的报文是指处环网相关的协议报文之外的报文数据。步骤105 主节点继续阻塞所述副端口。如果在连续的若干个探测周期内,主节点的主端口和从端口均接收到相邻节点返回的健康探测报文,则表明链路正常,主节点保持副端口的阻塞状态,副端口只可以接收和发送环网相关的协议报文,但不能转发环网相关的协议报文,也不能接收、转发和发送用户业务数据报文(环网相关数据报文之外的报文)。其中,报文的发送是指需要对数据进行处理形成待发送的报文,或对接收到的报文进行处理后发送。而报文的转发不需要对报文进行处理。需要说明的是,主节点还可以通过接收到从节点发送的端口故障报文,来确定链路出现故障,并在接收到从节点发送的端口故障报文时,响应该端口故障报文,确定链路出现故障,并打开副端口。具体的为,当从节点检测到自身的某一端口发生故障后,从节点会从另一侧的端口发送端口故障报文给该从节点的相邻节点,以便该相邻节点最终将该端口故障报文转发给主节点。为了节省网络流量,从节点发送端口故障报文时,可以以非固定的周期发送端口故障报文,也就是说,从节点发送各包端口故障报文的时间间隔并不相同, 如,当第一次发送端口故障报文与第二次发送端口故障报文的时间间隔为5毫秒,则第二次和第三次发送端口故障报文的时间间隔可以为8毫秒。参见图2,为本发明实施例一种以太环网故障检测的方法的流程示意图,包括步骤S201 子节点关闭节点的MAC地址学习功能。此处关闭节点的MAC学习功能和主节点关闭MAC地址学习功能的作用是相同的, 在此不再赘述。步骤S202 当子节点检测到自身端口故障时,以预设的非固定周期从另一侧端口发送端口故障报文给其相邻节点,以便通过相邻节点将所述端口故障报文发送到主节点。子节点检测到自身的故障后可以从另一侧端口发送故障探测报文给其相邻节点, 以便最终就能够将端口故障报文发送给主节点,并由主节点响应该端口故障报文。为了节省网络资源,子节点向主节点发送端口故障报文的周期为非固定周期,也就是说,子节点发送的相邻两包端口故障报文的时间间隔是不相同的,可以为,第一包端口故障报文发送时间和第二包端口故障报文的发送时间的时间间隔较短,而第二包和第三包端口故障报文的发送时间间隔的时长可以为前两包时间间隔的若干倍。该过程具体为子节点从另一侧正常端口发送故障报文给其相邻节点;如果在预定间隔时间内未接收到故障确认报文,则从所述另一侧端口继续发送端口故障报文;如果在所述间隔时间的指定倍数的时长内未收到所述故障确认报文,则继续从所述另一侧端口继续发送端口故障报文。步骤S203 子节点接收主节点返回的故障确认报文,响应所述故障确认报文,并停止发送端口故障报文。当主节点接收到从节点上报的端口故障报文后,主节点会响应该端口故障报文, 并确定故障端口,并向该从节点发送故障确认报文。从节点接收到故障确认报文后,停止发送端口故障报文。当节点的端口故障恢复后,从节点会对先判断当前处于正常物理链路连接的端口数量,依据端口数量进行相应的操作,参见图3,为本发明实施例一种以太环网连接的方法一个实施例的流程示意图,该方法包括步骤301 保持节点的MAC地址学习功能的关闭状态。为了避免维护MAC地址学习功能带来各种问题,在节点的端口故障修复后,仍需要关闭节点的MAC地址学习功能。步骤302 当从节点检测到某端口的物理链路连接恢复正常时,判断处于正常物理链路连接的端口数量。当从节点的某个端口从故障中恢复后,从节点检测当前处于正常物理链路连接的端口数量,以确定将该端口设定为工作状态还是预工作状态。当端口处于工作状态,端口被打开,该端口可以接收、转发和发送任何报文数据;当端口处于预工作状态,该端口可以接收、发送和转发环网相关的数据报文,但是不能接收、转发和发送环网相关的数据报文之外的其他报文。步骤303 如果从节点只有一个端口的物理链路连接正常,则将该端口设为工作状态。当从节点的某个端口从故障中恢复后,如果当前只有这一个端口处于正常物理链路连接,则从节点直接将该端口设置为工作状态。步骤304 如果两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理。如果从节点检测到其一侧端口从故障中恢复后,并进一步判断出另一侧端口也处于正常的物理链路连接状态,则从节点将该从故障中恢复的端口设定为预工作状态,以便进行环网相关报文的发送。为了处于预工作状态的端口能接收、发送和转发所有的报文,该从节点需要从两侧端口发送恢复请求报文给相邻节点,以便相邻节点对该报文进行处理。相邻节点对该报文的处理可以包括,将该报文进行转发,以便最终有节点响应该恢复请求报文。例如,设以太环网系统中其他节点间不存在断路,从节点能与主节点进行通信,某从节点一个端口从故障中恢复后,从节点的两侧端口的物理链路均正常,则从节点发送恢复请求报文给相邻节点,以便相邻节点对该报文进行转发,直至该恢复请求报文被发送到主节点。主节点接收到该报文后,在接收到该恢复请求报文的端口响应该恢复请求报文,并从该端口发送恢复应答报文给该恢复请求报文的源节点。当然该主节点发送恢复应答报文给源节点的过程,也是先将该恢复应答报文发送给主节点的相邻节点,并最终将该恢复应答报文转发给源节点。当然,以太环网中可能有多处存在断路,导致该从节点不能与主节点进行通信,针对这种情况,本发明中增加了边缘节点响应恢复请求报文的步骤,也就是说,当该从节点将恢复请求报文发送给相邻节点后,相邻节点需要经该报文进行转发,转发该恢复请求报文的节点可以称为传递节点,如果传递节点从一侧端口接收该恢复请求报文,而该传递节点另一侧端口与其他节点之间不存在连接关系(该传递节点无法再转发该恢复请求报文), 此时,该传递节点会响应该恢复请求报文,并从接收到该恢复请求报文的端口将恢复应答报文发送出去。因此当从节点将该恢复请求报文发送给相邻节点后,相邻节点有可能会响应该恢复请求报文。步骤305 判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态;如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。从节点判断在预设时间内两侧端口是否均接收到指定数量的恢复应答报文,如果是,则说明该从节点的两侧端口与其他节点之间可以正常通信,则该从节点停止发送恢复请求报文,并将两侧端口均设定为工作状态。其中两侧端口接收到的恢复应答报文的指定数量可以为两侧端口均接收到一包恢复应答报文,也可以为两包或多包,具体数量可以根据需要进行设定。将两侧端口为工作状态的过程具体可以为判断从两侧端口均接收到第一包恢复应答报文的时刻到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,则在停止发送恢复请求报文的同时,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。其中,延迟多少个探测周期后才将预工作状态的端口设定为工作状态可以根据需要设定,在此不加以限制。当然,为了网络拓扑系统的可靠性,还可以将判断从两侧端口均接收到第一包恢复应答报文的时刻到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,改为判断从两侧端口均接收到第一包恢复应答报文的时刻到最终停止发送恢复请求报文的时间间隔是否大于两个探测周期等,具体大于几个探测周期可以根据需要进行设定。。为了防止主节点(或其他节点)不能及时响应该恢复请求报文,而造成通信中断, 则从节点可以预先设定时间,当在预设时间未接收到恢复应答报文,该从节点将从故障中恢复的端口设定为工作状态,以便该端口可以接收、发送和转发各种报文数据,从而可以减少通信的中断时间。当以太环网中有多处链路处于断开状态时,从节点和主节点之间不能进行报文转发,从节点发送的恢复请求报文不能发送给主节点,此时,当从节点从一侧端口接收到其他节点发送的恢复请求报文后,如果该从节点的另一侧端口与其他节点间不存在物理链路连接,即该从节点为边缘节点,则该从节点响应接收到的恢复请求报文,并从接收到恢复请求报文的端口发送恢复应答报文给相邻节点,以便相邻节点将该恢复应答报文发送给恢复请求报文对应源节点。为了清楚的描述从节点接收到故障恢复请求报文后处理过程,参见图 4,为本发明一种以太环网连接的方法的另一个实施例的流程示意图,包括步骤401 维持节点的MAC地址学习功能的关闭状态。步骤402 当从节点从第一端口接收到其他节点发送的恢复请求报文时,判断从节点的第二端口是否与其他相邻节点之间存在正常的物理链路连接,如果是,则进入步骤 403 ;如果否,则进入步骤404。其中,第一端口是指从节点接收到恢复请求报文的端口,同时将从节点的另一个端口称为第二端口。步骤403 从节点通过第二端口将所述恢复请求报文转发给相邻节点,以便相邻节点对该恢复请求报文进行处理。当从节点的第二端口与其他节点之间存在正常的物理链路连接,可以通过第二端口转发报文,此时从节点就可以将该恢复请求报文从第二端口转发给相邻节点,相邻节点的第一端口接收到该恢复请求报文后,该相邻节点也会判断其第二端口是否与其他节点之间存在正常的物理链路连接,如果是,相邻节点便从其第二端口将该恢复请求报文发送出去;如果否,该相邻节点的第二端口也处于断开状态(与其他节点间不存在正常的物理链路连接),则该相邻节点会响应该恢复请求报文。步骤404:从节点响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点。当以太环网中存在断点,该从节点的一个端口与另一个节点之间存在连接,而从节点的另一个端口可能与其他节点之间没有任何连接关系,该从节点无法继续发送该恢复请求报文时,主节点无法接收到故障节点恢复后发送的恢复请求报文,因此该从节点可以响应该恢复请求报文,并发送恢复应答报文到该恢复请求报文的源节点(即,发送该恢复请求报文的节点)。需要说明的是,本实施例适用于以太环网中存在多个从节点的端口故障问题,导致从节点不能与主节点进行通信。本实施例的方法也适用于将多个线型网络相互连接构成以太环网的过程,如多个节点构成线型网络,再将两条这样的线型网络A和B相连来构成以太环网,在两条线型网络中会分别有两个处于边缘的节点,当将线型网络A中处于边缘的节点al的一个端口 alO与线性网络B中处于边缘的节点bl的一个端口 blO建立连接后, 节点al和节点bl分别从其两侧端口发送恢复请求报文,由于线型网络A的另一侧处于边缘的节点a2和线型网络B的另一侧处于边缘的节点1^2之间还未建立连接,因此节点al和节点bl发送的恢复请求报文不可能均发送到主节点,此时,处于节点a2或1^2就可以响应恢复请求报文,以便节点al和节点bl接收到恢复应答报文,进而将端口 alO和端口 blO设置为打开状态。参见图5,为本发明一种以太环网故障检测的系统一个实施例的结构示意图,预先关闭主节点和从节点的MAC地址学习功能,该系统包括健康报文发送单元501、检测单元 502、故障确定单元503。健康报文发送单元501,用于分别从主端口和副端口周期性的向其相邻节点发送健康探测报文;
检测单元502,用于在预设的若干探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文;其中,探测周期是指,当主节点从主端口(或者副端口)发送健康探测报文,到下一次主节点从主端口(或者是副端口)发送的健康探测报文的间隔时间为一个探测周期。 连续的若干个探测周期可以根据需要进行设定,如可以为在连续三个探测周期内,判断是否主端口和副端口均接收到健康探测报文。故障确定单元503,用于当主端口和副端口中至少一个端口未接收到返回的健康探测报文时,确定链路出现故障,打开所述副端口的用户业务数据转发功能。主节点确定链路出现故障后,主节点会打开副端口的用户业务数据转发功能,此时,副端口可以接收和发送任何报文,但只转发用户业务数据报文(即环网协议报文之外的报文数据)。进一步的,本实施例的系统还包括副端口状态维持单元,用于当在连续指定数量的探测周期内,主端口和副端口均接收到相邻节点返回的健康探测报文,则将继续阻塞所述副端口。当副端口被堵塞后,副端口只可以接收和发送环网相关的协议报文(如,健康探测报文、恢复应答报文),但是不能转发环网相关的报文,也不能接收、发送和转发任何环网相关报文之外的报文。其中,本发明中当从节点检测到自身故障后,也可以由从节点主动上报端口故障, 对应的,故障确定单元,还包括第一故障确定单元,用于当接收到从节点发送的端口故障报文时,响应端口故障报文,确定链路出现故障。当子节点检测到自身的端口故障时,子节点可以向主节点上报端口故障报文,本发明还提供了一种以太环网故障检测的系统的另一实施例,该实施例的系统可以是子节点,也可以是子节点的一部分,甚至可以是子节点外的独立装置,本实施例的系统包括学习关闭单元、故障报文发送单元和确认报文接收单元。学习关闭单元,用于关闭子节点的MAC地址学习功能。故障报文发送单元,用于当子节点检测到自身的端口故障时,以预设的非固定周期从另一侧正常端口发送端口故障报文给其相邻节点,以便通过相邻节点将所述端口故障报文转发到主节点。确认报文接收单元,用于接收主节点返回的故障确认报文,并响应所述故障确认报文——停止发送端口故障报文。当子节点检测到自身的端口故障时,以预设的非固定周期从另一侧正常端口发送端口故障报文给其相邻节点时,发送的端口故障报文是以不同的时间间隔发送的端口故障报文,非固定周期可以根据需要进行设定。对应的,故障报文发送单元,包括第一故障报文发送单元,用于当检测到自身端口故障时,从另一侧端口发送故障报文给其相邻节点;第一时间判断单元,用于判断在预定间隔时间内是否接收到故障确认报文,如果否,则执行第一故障报文发送单元的操作;第二时间判断单元,用于判断在所述间隔时间的指定倍数的时长内,是否收到所述故障确认报文,如果否,则执行第一故障报文发送单元的操作。
12
对应本发明的一种以太环网连接的方法,本发明还提供了一种以太环网连接的系统,参见图6,为本发明一种以太环网连接的系统一个实施例的结构示意图,本实施例的系统包括关闭维持单元601、端口数量判断单元602、第一连接单元603、恢复请求单元604 和第二连接单元605。关闭维持单元601,用于维持节点的MAC地址学习功能的关闭状态。在以太环网中节点的端口故障恢复后,需要继续保持MAC地址的关闭状态,以便在子节点发送恢复请求报文到故障端口处于打开状态的过程中,不需要进行MAC地址的学习。端口数量判断单元602,用于当检测到从节点中某端口的物理链路连接恢复正常时,判断处于正常物理链路连接的端口数量。第一连接单元603,用于当只有一个端口的物理链路连接正常时,将该端口设为工作状态。恢复请求单元604,用于当两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理。第二连接单元605,用于判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态; 如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。为了避免由于故障恢复节点之间的自协商时间不确定而导致的通信中断,可以预先设定一个时间,如果从节点在该预设时间内未接收到恢复应答报文,则从节点自动将从故障中恢复的端口设定为工作状态。将端口设定为工作状态后,该端口既可以接收、发送和转发环网相关的协议报文 (如健康探测报文、恢复请求报文等),也可以接收、发送和转发用户业务数据相关的报文。当以太环网中有多处链路处于断开状态时,从节点和主节点之间不能进行报文转发,从节点发送的恢复请求报文不能发送给主节点,此时,当从节点从一侧端口接收到其他节点发送的恢复请求报文后,如果该从节点的另一侧端口与其他节点间不存在物理链路连接,即该从节点为边缘节点,则该从节点响应接收到的恢复请求报文,并发送恢复应答报文给相邻节点,以便相邻节点将该恢复应答报文发送给恢复请求报文对应源节点。与此情况对应,本实施例的系统还包括链路检测单元,用于当从第一端口接收到恢复请求报文后,判断第二端口是否与相邻节点之间存在正常的物理链路连接;所述第一端口为接收到恢复请求报文的端口,所述第二端口为第一端口之外的另一侧端口。转发单元,用于当链路检测单元确定第二端口与相邻节点之间存在正常的物理链路连接时,则通过所述第二端口将所述恢复请求报文转发给所述相邻节点;恢复请求响应单元,用于当链路检测单元确定第二端口与相邻节点之间不存在正常的物理链路连接时,响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点。当以太环网中存在多个断点,从节点的一个端口与另一个从节点或主节点之间存在连接,而从节点的另一个端口可能与其他节点之间没有任何连接关系,当从节点的一个端口接收到恢复请求报文后,该从节点无法继续发送该恢复请求报文,主节点也就无法从两侧接收到故障节点恢复后发送的恢复请求报文,该种情况下,该从节点可以响应该恢复请求报文,并发送恢复应答报文到该恢复请求报文的源节点(即,发送该恢复请求报文的节点),以便源节点接收到恢复应答报文,将从故障中恢复的端口设置为打开状态。在从节点的两侧端口均接收到指定数量的恢复应答报文后,为了避免广播风暴,从节点会延迟一定时间再将预工作状态的端口设定为工作状态,对应的,该第二连接单元包括第二连接子单元,用于判断从两侧端口均接收到第一包恢复应答报文到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,在停止发送恢复请求报文的同时,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
权利要求
1.一种以太环网故障检测的方法,其特征在于,关闭主节点和从节点的MAC地址学习功能,该方法包括分别从主端口和副端口周期性的向其相邻节点发送健康探测报文; 在连续指定数量的探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文,如果否,则确定链路出现故障,打开所述副端口的用户业务数据转发功能。
2.根据权利1所述的方法,其特征在于,当在连续指定数量的探测周期内,主端口和副端口均接收到相邻节点返回的健康探测报文,则将继续阻塞所述副端口。
3.根据权利要求1所述的方法,其特征在于,还包括当接收到从节点发送的端口故障报文时,响应所述端口故障报文,确定链路出现故障。
4.一种以太环网连接的方法,其特征在于,关闭节点的MAC地址学习功能,该方法包括当检测到某端口的物理链路连接恢复正常时,判断处于正常物理链路连接的端口数量;如果只有一个端口的物理链路连接正常,则将该端口设为工作状态; 如果两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理;判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态;如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。
5.根据权利要求4所述的方法,其特征在于,还包括当从第一端口接收到其他节点发送的恢复请求报文后,判断第二端口是否与相邻节点之间存在正常的物理链路连接,如果是,则通过所述第二端口将所述恢复请求报文转发给所述相邻节点;如果否,响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点,所述第一端口为接收到恢复请求报文的端口,所述第二端口为第一端口之外的另一侧端口
6.根据权利要求4所述的方法,其特征在于,所述停止发送恢复请求报文,将所述两侧端口均设定为工作状态,具体包括判断从所述两侧端口均接收到第一包恢复应答报文到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,则在停止发送恢复请求报文的同时,将所述处于预工作状态的端口设定为工作状态,使所述两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。
7.一种以太环网故障检测的系统,其特征在于,关闭主节点和从节点的MAC地址学习功能,包括健康报文发送单元,用于分别从主端口和副端口周期性的向其相邻节点发送健康探测报文;检测单元,用于在预设的若干探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文;故障确定单元,用于当主端口和副端口中至少一个端口未接收到返回的健康探测报文时,确定链路出现故障,打开所述副端口的用户业务数据转发功能。
8.根据权利要求7所述的系统,其特征在于,还包括副端口状态维持单元,用于当在连续指定数量的探测周期内,主端口和副端口均接收到相邻节点返回的健康探测报文,则将继续阻塞所述副端口的用户业务数据转发功能。
9.根据权利要求7所述的系统,其特征在于,故障确定单元,还包括第一故障确定单元,用于当接收到从节点发送的端口故障报文时,响应所述端口故障报文,确定链路出现故障。
10.一种以太环网连接的系统,其特征在于,包括关闭维持单元,用于维持节点的MAC地址学习功能的关闭状态;端口数量判断单元,用于当检测到从节点中某端口的物理链路连接恢复正常时,判断处于正常物理链路连接的端口数量;第一连接单元,用于当只有一个端口的物理链路连接正常时,将该端口设为工作状态;恢复请求单元,用于当两侧端口的物理链路均正常,则将所述检测到的物理链路连接恢复正常的端口设定为预工作状态,并从所述两侧端口分别发送恢复请求报文到其相邻节点,以便所述相邻节点对该恢复请求报文进行处理;第二连接单元,用于判断在预设时间内所述两侧端口是否均接收到指定数量的恢复应答报文,如果是,则停止发送恢复请求报文,将所述两侧端口均设定为工作状态;如果否,则在预定时间到达时,将所述两侧端口均设定为工作状态。
11.根据权利要求10所述的系统,其特征在于,还包括链路检测单元,用于当从第一端口接收到恢复请求报文后,判断第二端口是否与其相邻节点之间存在正常的物理链路连接,所述第一端口为接收到恢复请求报文的端口,所述第二端口为第一端口之外的另一侧端口;转发单元,用于当链路检测单元确定第二端口与相邻节点之间存在正常的物理链路连接时,则通过所述第二端口将所述恢复请求报文转发给所述相邻节点;恢复请求响应单元,用于当链路检测单元确定第二端口与相邻节点之间不存在正常的物理链路连接时,响应所述恢复请求报文,并通过所述第一端口将恢复应答报文返回给所述恢复请求报文对应的源节点。
12.根据权利要求10所述的系统,其特征在于,所述第二连接单元包括第二连接子单元,用于判断从所述两侧端口均接收到第一包恢复应答报文到最终停止发送恢复请求报文的时间间隔是否大于一个探测周期,如果是,在停止发送恢复请求报文的同时,将所述处于预工作状态的端口设定为工作状态,使所述两侧端口均为工作状态;如果否,则在停止恢复请求报文之后,延迟预设数量的探测周期后,将处于预工作状态的端口设定为工作状态,使两侧端口均为工作状态。
全文摘要
本发明公开提供了一种以太环网故障检测、连接的方法和系统,关闭主节点和从节点的MAC地址学习功能,该故障检测方法包括主节点分别从主端口和副端口周期性的向其相邻节点发送健康探测报文;在连续指定数量的探测周期内,检测是否在主端口和副端口均接收到相邻节点返回的健康探测报文,如果否,则确定链路出现故障,打开所述副端口的用户业务数据转发功能。该方法不需要维护MAC地址学习功能,就可以完成以太环网的故障检测,减少了数据资源的消耗。
文档编号H04L12/437GK102291290SQ20111022615
公开日2011年12月21日 申请日期2011年8月8日 优先权日2011年8月8日
发明者张健, 章维, 陆卫军 申请人:浙江中控技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1