专利名称:相交环网中故障恢复处理方法、节点和相交环网的制作方法
技术领域:
本发明涉及以太环网技术,特别是涉及相交环网中故障恢复处理方法、 节点和相交环网。
背景技术:
目前,以太环网逐步普及并应用。图1是单个以太环网的结构示意图。 参见图1,在单个以太环网中,包括一个主节点和多个传输节点,主节点与 各个传输节点在以太环网上传输业务数据,完成各种业务功能。
由于以太环网是一个环状网络结构,因此,需要防止产生环路,从而避 免未知单播和广播在环路上循环传输所导致的广播风暴。目前,对于单个以
太环网,存在比较成熟的技术来避免环路的产生,保证数据的传输。如图1 所示,在单个以太环网正常工作时,对于数据报文,处于完整状态的主节点 只打开自身一侧的主端口,并阻塞自身另一侧的副端口,这样,在传输数据
报文时,以太环网则是一个链状,而不会产生环路;在以太环网的一条链路 故障时,主节点会切换到故障状态,快速打开阻塞端口,此时以太环网仍为 链状,从而仍然可保证环上的节点之间彼此相通,从坏上任何一个节点仍然 都可到达其它节点,当然,在故障恢复时,主节点会切换回完整状态,并阻
塞副端口 。
为了满足业务的各种需求,在实际的组网应用中,经常需要将多个以太 环网进行任意相交组网,形成相交环网,也就是说, 一个相交环网可以包含 多个以太环网, 一个以太环网物理上对应一个环形连接的以太网拓朴, 一个 相交环网就由彼此相接的多个以太环网构成。图2是多个以太环网相交形成 的相交环网的一种拓朴示意图。目前根据业务的需求, 一种常用的城域网组网模式可以如图2所示,并且,为了区分出相交环网中各个以太环网的重要 性和层次,在图2所示的网络结构中,将代表核心/汇聚层的以太环网
ABCDEFHIA设置为主环,该主环具有高带宽的特点;其他各区域的汇聚/ 接入网络与主环的一部分组成小的环,并被视为附着在主环上的段,比如, 图2中一个区域的节点V和W与主环的节点B和C组成一个以太环网,作 为附着在主环上的段BVWC。
多个以太环网相交的组网方式,能够形成更加灵活的网络拓朴结构,从 而为用户提供更加丰富的业务服务。由于相交环网本身的特点,在相交环网 中, 一条或多条链路中断后,可能会有不同的主节点均进行了打开副端口及 迁移到故障状态等故障保护处理,这样,对于相交环网,相应地就需要提供 一种有效的故障恢复处理机制,比如一条或多条故障的链路恢复后,应该由 相交环网中的哪个主节点进行故障恢复处理,才能保证环网链路的通畅以及 避免产生环路。如图2中,链路IH以及公共链路BC中断后又同时恢复, 此时,不仅需要分别保证相交环网中每一个以太环网即主环及附着在主环上 的每 一 个小环链路通畅且避免产生环路,而且还需要保证相交形成的各个大 环(比如AIHFEDCWVBA组成的环)不产生环路,以及需要考虑为了保证 所有环网链路的通畅,所应采取的应对措施等。
然而,在目前,仅仅存在对单个以太环网的故障恢复处理,对于多个以 太环网相交的任意拓朴方式,还没有一种有效的故障恢复处理方法来保证相 交环网链路的通畅以及避免产生环路。
发明内容
有鉴于此,本发明的主要目的在于提供一种相交环网中故障恢复处理方 法、主节点、传输节点以及相交环网,以便于对任意拓朴的多个相交的以太 环网提供有效的故障恢复处理方法,保证环网链路的通畅以及避免产生环路。
为了达到上述目的,本发明的技术方案是这样实现的
9相交环网中故障恢复处理方法,该方法应用于多个以太环网相交形成的 任意拓朴的相交环网中,每个以太环网包括主节点以及若干个传输节点,相
交环网中各个以太环网的主节点都配置有各自的优先级;该方法包括
相交环网中故障状态的主节点检测是否轮询正常,如果是,则通过相交 环网发送携带自身优先级的轮询正常报文;
故障状态的主节点如果接收到其他故障状态主节点发送的携带优先级 的轮询正常报文,则判断自身的优先级是否高于该轮询正常报文中的优先 级,如果是,则转发该轮询正常报文;
故障状态的主节点判断在预定时长内是否接收到自身发送的轮询正常 报文,如果是,则阻塞副端口。
一种主节点,该主节点位于相交环网中的以太环网上,该主节点包括
检测单元,用于在所在主节点处于故障状态时,检测所在主节点是否轮 询正常,如果是,则向故障恢复处理单元发送轮询正常通知;
故障恢复处理单元,用于在接收到轮询正常通知后,通过相交环网发送 携带所在主节点优先级的轮询正常报文,如果监测到其他故障状态主节点发 送的携带优先级的轮询正常报文,则判断所在主节点的优先级是否高于该轮 询正常报文中的优先级,如果是,则转发该轮询正常报文,以及判断在预定 时长内是否接收到自身发送的轮询正常报文,如果接收到,则向端口控制单 元发送阻塞通知;
端口控制单元,用于在接收到阻塞通知后,阻塞副端口。
一种传输节点,该传输节点位于相交环网中的以太环网上,该传输节点 包括
报文收发单元,用于在一个端口接收到外部发来的报文后,将该报文和 该端口信息上报给报文转发控制单元;
报文转发控制单元,用于在解析出上报的报文为轮询正常报文后,控制 报文收发单元从接收该轮询正常报文的端口之外的其他所有端口转发该轮 询正常报文。
10一种相交环网,该相交环网中包括多个以太环网,每个以太环网包括主 节点以及若干个传输节点;并且,该相交环网中每一个以太环网上的主节点 采用上述本发明的主节点实现,该相交环网中每一个以太环网上的传输节点 采用上述本发明的传输节点实现。
由此可见,在多个以太环网相交形成的任意拓朴的环网结构中,当任意 一点或多点的故障恢复时,本发明提供了有效的故障恢复处理方法,既能够 保证相交的所有环网的数据链路的通畅,而且还能够保证不产生环路,从而 对任意拓朴的多个相交的以太环网提供有效的环网保护机制。
图1是单个以太环网的结构示意图。
图2是多个以太环网相交形成的相交环网的一种拓朴示意图。
图3是在本发明实施例中对任意拓朴的相交环网进行故障恢复处理的
流程图。
图4是本发明实施例中 一种相交环网的示意图。
图5是本发明实施例中相交环网发生单点故障的 一种示意图。
图6是本发明实施例中相交环网发生多点故障的 一 种示意图。
图7是本发明实施例中相交环网多点故障中一点故障恢复的一种示意图。
图8是本发明实施例中相交环网多点故障同时恢复的一种示意图。 图9是在本发明实施例中主节点的基本结构示意图。 图10是在本发明实施例中传输节点的基本结构示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实 施例对本发明作进一步地详细描述。
本发明提出了 一种在任意拓朴的相交环网中故障恢复处理方法,该方法应用于多个以太环网相交形成的任意拓朴的相交环网中,每个以太环网包括 主节点以及若干个传输节点,相交环网中各个以太环网的主节点都配置有各 自的优先级,该方法包括相交环网中故障状态的主节点检测是否轮询正常, 如果是,则通过相交环网发送携带自身优先级的轮询正常报文;故障状态的 主节点如果接收到其他故障状态主节点发送的携带优先级的轮询正常报文, 则判断自身的优先级是否高于该轮询正常报文中的优先级,如果是,则转发
该轮询正常报文;故障状态的主节点判断在预定时长内是否接收到自身发送
的轮询正常报文,如果是,则阻塞副端口。
图3是在本发明实施例中对任意拓朴的相交环网进行故障恢复处理的 流程图。参见图3,该流程具体包括以下步骤
步骤301:在多个以太环网相交形成的任意拓朴的相交环网中,为每一 个以太环网设置主节点,并为每一个主节点设置标识及对应的优先级。
图4是本发明实施例中一种相交环网的示意图。参见图4,通过本步骤 301的处理,对于以太环网Rl,设置其主节点为A,该主节点A的标识为 ID1,对应的优先级为LEVEL1;对于以太环网R2,设置其主节点为E,该 主节点E的标识为ID2,对应的优先级为LEVEL2;对于以太环网R3,设 置其主节点为G,该主节点G的标识为ID3,对应的优先级为LEVEL3。其 中,LEVEL1、 LEVEL2和LEVEL3的伊C先级依次降^f氐。
本领域技术人员可以理解的是,对于图4所示的相交环网,所有以太环 网上的所有节点属于同一个相交环网域。该相交环网可以由整数表示的ID 来标识, 一组配置了相同的域ID和控制VLAN,并且相互连通的网络设备 群体构成一个相交环网。并且,在每一个以太环网上设置主节点时,将该主 节点在环上的两个端口加入控制VLAN,并设置主/副端口 (如果不做指定, 则选择端口号小的为主端口 ),在以太环网正常工作时,主节点阻塞副端口。
步骤302:在相交环网中,根据每一个节点所在的以太环网,设置该节 点的每一个端口所属的主节点。
这里,在设置节点的每一个端口所属的主节点时,如果该端口仅位于一个以太环网上,那么,该端口所属的主节点就是其所在的以太环网上的主节 点;如果该端口同时位于多个以太环网上,那么,该端口所属的主节点就是 该多个以太环网的多个主节点中,优先级最高的主节点。比如,参见图4,
对于节点C的端口 Ca (即节点C上连接链路CA的端口 ),该端口 Ca仅位 于一个以太环网Rl中,因此,该端口 Ca所属的主节点就是以太环网Rl的 主节点A ( ID1, LEVEL1 ),而对于节点C的端口 Cd (即节点C上连接链 3各CD的端口 ),该端口 Cd同时位于以太环网Rl和以太环网R2中,而由 于以太环网Rl的主节点A的优先级LEVLEl高于以太环网R2的主节点E 的优先级LEVEL2,因此,该端口 Cd所属的主节点就是以太环网Rl的主 节点A(IDl, LEVEL1 )。其中,具体地,标识端口所属的主节点的方式是 将该端口的标识和优先级设置为该端口所述主节点的标识和优先级,比如, 端口 Cd所属的主节点是主节点A (IDl, LEVEL 1 ),那么,该端口 Cd的 标识为ID 1 ,优先级为LEVEL 1 。
步骤303:在相交环网中,当一条或多条链路中断后,对应的主节点进 行故障保护处理,迁移到故障(Failed)状态、打开自身的副端口以及发送 刷新转发表报文。
这里,当相交环网中的链路中断后,为了保证相交环网链路的通畅及不 产生环路,具体由相交环网中的哪个或哪些对应的主节点进行故障保护处 理,可以参考本申请人提出的申请日为2008年1月31日,发明名称为"任 意拓朴的相交环网保护方法、节点和相交环网"的发明专利申请。
步骤304:主节点在相交环网上定期发送携带自身标识、状态信息以及 报文序列号的健康检测(HELLO )报文。
这里,如果一个主节点处于完整状态,那么,该主节点发送的HELLO
报文中的状态信息则为完整状态的信息;如果一个主节点处于Failed状态,
那么,该主节点发送的HELLO报文中的状态信息则为Failed状态的信息。
由于在相交环网中,任意一条链路故障恢复时,相邻节点会检测到该故 障恢复,如果该节点直接将与该链路直连的端口恢复为正常转发报文,那么,则可能出现由于主节点还未阻塞副端口而导致的环路,因此,目前通常的处 理是,节点检测到该故障恢复后,不会立即将直连端口恢复为正常状态,而
是首先将该直连端口设置为预阻塞(Pre-forwarding)状态,处于预阻塞 (Pre-forwarding)状态的端口不能发送数据报文,只能发送协议报文。
由此可以得到,当相交环网上的故障恢复时,在任意一个节点内部,其 端口可以有完整状态的端口(非故障恢复链路直连端口)或预阻塞状态的端 口 (故障恢复链路直连端口)。对于任意一个节点,如果该节点中端口的状 态为完整状态,那么,该节点从该端口上接收到HELLO报文之后,从自身 中其他所有正常的端口发送该HELLO报文。而对于存在预阻塞状态端口的 节点,其如何发送HELLO报文,则需要特别考虑,否则,则可能会导致相 交环网上产生环路。比如,参见图5,在相交环网中,两个以太环网的链路 CD中断(在本发明的其他实施例中,图5中的相交环网可以被划分为主环 ACDBA以及附着在主环上的段CEFD ),主节点A进行故障保护处理,迁 移到Failed状态并打开了副端口 。之后,链路CD恢复正常,节点C的端口 Cd以及节点D的端口 Dc均迁移到预阻塞状态,此时,如果主节点A还未 通过HELLO报文检测到该故障恢复,其副端口仍处于打开状态,那么,主 节点E发送的HELLO报文则会在CADBC上形成环路,因此,在本发明实 施例中,为了避免环路产生,包括预阻塞状态端口的节点则需要执行步骤 305至步骤307的处理。
步骤305:在相交环网中,节点如果从自身中预阻塞状态的端口上接收 到HELLO报文,那么,该节点判断接收到的HELLO报文中的状态信息是 完整状态的信息还是Failed状态的信息,如果是完整状态的信息,那么,执 行步骤3 06 ,如果是Failed状态的信息,执行步骤307 。
步骤306:该节点不再转发所接收到的HELLO报文,直接丢弃,执行 步骤308。
执行到本步骤,HELLO报文中携带的是完整状态的信息,因此,可以 确定发送该HELLO报文的主节点处于完整状态,也就是说,该主节点所控制的以太环网上存在通路,并且该通路不经过当前节点(包括预阻塞状态端
口 )所在链路,当前节点即使不转发该HELLO报文,该完整状态的主节点 也可以接收到自己发送的HELLO报文,因此,为了避免相交环网上产生环 路,并减少传输的报文数量,本步骤中,当前节点直接丢弃从预阻塞端口上 接收到的HELLO报文。
步骤307:该节点判断自身中是否记录有该HELLO报文中携带的主节 点标识和报文序列号,如果是,则转向执行步骤306,否则,记录该HELLO 报文中携带的主节点标识和报文序列号,并通过自身其它所有正常的端口发 送该HELLO报文,执行步骤308。
上述说明了在节点预阻塞状态的端口上收到HELLO报文后的转发处理 过程。在相交环网上,主节点转发接收到的HELLO报文的过程包括该主 节点将接收到的HELLO报文当作数据报文处理,即,如果该主节点的副端 口阻塞,则从主端口接收到的HELLO报文不从副端口转发,如果该主节点 的副端口打开,则从主端口接收到的HELLO报文可以从副端口转发;并且, 主节点从副端口收到的HELLO报文也不再进行任何转发处理,直接丢弃。 另外,相交环网上,任意一个传输节点从自身一个端口上接收到HELLO报 文后,如果该端口为预阻塞状态端口,则按照上述步骤305至307所述过程 处理,如果该端口是正常转发状态的端口 ,则通过其他所有端口转发该 HEL丄O才艮文。
步骤308:在相交环网中,处于Failed状态的每一个主节点判断在预定 时长内是否接收到自身发送的HELLO报文,如果是,则执行步骤309,否 则,保持Failed状态,返回步骤304。
需要说明的是,在现有的单个以太环网中,处于Failed状态的主节点接 收到自身发送的HELLO报文后,则可以确定以太环网中的故障已经恢复, 因此,直接进行包括阻塞副端口在内的故障恢复处理。
而在本发明实施例中,处于Failed状态的主节点如果在预定时长内接收 到自身发送的HELLO报文,那么,则表示在该主节点所控制环上中断的链
15路已经恢复正常,但是此时,考虑到相交环网的特点(多个以太环网相交, 不同的以太环网之间存在公共的节点和链路),为了保证相交环网中各个以 太环网数据链路的通畅,并且,不产生环路,该主节点不能按照单环的处理 方式直接阻塞副端口 ,该主节点还需要执行步骤309及后续步骤中与其他处
于Failed状态的主节点(即已经打开副端口的主节点)进行协商的过程,从 而确定由哪个处于Failed状态的主节点进行包括阻塞副端口在内的故障恢 复处理。
步骤309:该处于Failed状态的主节点在相交环网上发送携带自身标识 和优先级的轮询正常(POLLINGJUP )报文。
在本步骤之后,对于相交环网上的各个传输主节点,参见图3,其接收 到POLLING—UP 一艮文时执行步骤310及后续相应过程;对于各个处于完整 状态的主节点,参见图3,其接收到POLLING—UP报文时执行步骤311及 后续相应过程;对于各个处于Failed状态的主节点,参见图3,其接收到 POLLING—UP报文时执行步骤312及后续相应过程。
步骤310:在相交环网中,每一个传输节点从自身的一个端口上接收到 POLLING—UP报文后,都通过自身其它所有端口发送该POLLING—UP报文, 执行步骤318。
步骤311:在相交环网中,每一个处于完整状态的主节点将接收到的 POLLING—UP报文作为数据报文处理,执行步骤318。
在本步骤中,POLLING—UP报文作为数据报文处理的过程包括处于 完整状态的主节点从除副端口之外的端口上接收到轮询正常报文后,由于副 端口阻塞,因此,不再从副端口转发,并且,从副端口上接收到的轮询正常 报文不进行转发,可以直接丢弃。
步骤312:在相交环网中,每一个处于Failed状态的主节点接收到其他 主节点发来的POLLING—UP报文后,比较自身的优先级与该报文中携带的 优先级,如果自身的优先级高,则执行步骤313,如果自身的优先级低,则 执行步骤314。
16在相交环网中,当发生的故障同时影响多个主节点控制的以太环网时, 是按照主节点的优先级高低顺序来决定由哪个主节点进行故障保护处理,比 如,当相交环网中的故障同时影响最高优先级的主节点和次高优先级的主节 点所控制的以太环网,那么,在能够起到故障保护的条件下,是应该由最高 优先级的主节点进行打开副端口等故障保护处理。按照这一原则,在本发明 实施例中,在进行故障恢复处理时,则应该由故障恢复所影响的主节点中优 先级最低的主节点首先进行故障恢复处理,因此,在本步骤中,如果处于
Failed状态的主节点比较出自身的优先级比POLLING—UP报文中携带的主 节点的优先级高,那么,则说明自身并不是当前需要执行故障恢复的主节点, 应该执行步骤313中转发优先级相对较低的主节点发送的POLLING—UP报 文的处理;如果比较出自身的优先级比POLLING_UP报文中携带的主节点 的优先级低,那么,则说明发送该POLLING—UP报文的主节点并不是当前 需要执行故障恢复的主节点,因此,不应该转发该POLLING—UP报文,执 行步骤314。
由于为每一个主节点配置了标识(ID)和优先级(LEVEL),其中, 为不同主节点配置的ID互不相同,而为不同主节点配置的优先级则有可能 相同,因此,在本步骤中,如果比较的两个优先级(LEVEL)值相同,那么, 主节点进一步比较所接收到的POLLING—UP报文中的其他主节点的ID与自 身的1D,如果自身的ID号小,则认为自身的优先级高,如果自身的ID号 大,则认为自身的优先级低。
步骤313:在除接收端O之外的其他所有端口上发送该POLLINGJJP 报文,执行步骤315。
步骤314 :从主端口和副端口上接收到的其他主节点发送的 POLLING—UP报文都不再进行转发。
步骤315: Failed状态的主节点判断是否能够在预定时长内接收到自身 发送的POLLING—UP报文,如果是,则执行步骤316,否则,保持Failed 状态,转向执行步骤304。这里,如果Failed状态的主节点在预定时长内接收到自身发送的 POLLING—UP报文,那么,则说明该主节点应该执行后续阻塞副端口在内 的故障恢复处理,否则,不应执行。
步骤316:该Failed状态的主节点启动预先设置的延迟定时器,监测在 延迟定时器超时前是否接收到其他主节点发来的刷新转发表 (RINGJJP—FLUSH—FDB)报文,如果是,则立即执行步骤317,否则,等 待延迟定时器超时后再执行步骤317。
这里,Failed状态的主节点在确定应该执行阻塞副端口在内的故障恢复 处理后,并没有立即执行,是因为在相交环网中如果有多条故障链路恢复, 那么,为了保证相交环网的链路通畅并且不产生环路,可能需要多个Failed 状态的主节点均进行阻塞副端口等故障恢复处理,因此,该多个主节点需要 控制阻塞副端口的时间,否则,如果其中一个主节点过早阻塞副端口,则会 导致其他应该执行故障恢复处理的主节点无法接收到自身发送的 POLLING—UP报文,而不执行故障恢复处理。因此,Failed状态的主节点不 能立即执行故障恢复处理,在接收到其他主节点发来的刷新转发表报文或等 到延迟定时器超时后,才认为其他应该执行故障恢复处理的主节点已经接收 到了其发送的POLLING—UP报文,此时,则可以执行包括阻塞副端口在内 的故障恢复处理。
步骤317:进行故障恢复处理,包括迁移到完整状态,并阻塞副端口, 以及发送携带自身标识和优先级的刷新转发表报文。
步骤318:在相交环网中,每一个节点从自身的一个端口上接收到刷新 转发表报文后,都通过自身其它所有正常的端口发送该刷新转发表报文,同 时比较该报文中的优先级与自身每一个端口所属的主节点的优先级,如果端 口所属的主节点的优先级不小于该报文中的优先级,则在满足预定策略的条 件下,刷新该端口的转发表(FDB)。
本步骤中,是在端口所属的主节点的优先级不小于该报文中的优先级 时,考虑是否需要刷新该端口的转发表(FDB),其原因为在相交环网中,如果发生的故障影响多个主节点控制的以太环网(比如两个以太环网相交的公共节点发生故障),那么,是由完整状态的所有主节点中优先级最高的主节点执行打开副端口 、发送刷新转发表报文等故障保护处理,因此, 一个节点接收到刷新转发表报文后,如果一个端口所属主节点的优先级等于该报文中的优先级时,则说明该端口所属的主节点正是发送当前的刷新转发表报文的主节点,因此,应该刷新该端口的转发表,如果一个端口所属的主节点的优先级大于报文中的优先级时,则说明该端口传输报文
依据的转发表可能受到发送当前刷新转发表报文的主节点所控制的以太环网拓朴结构的影响,也应该考虑是否刷新该端口的转发表。因此,在本发明实施例中,具体是否需要刷新端口的转发表可以根据预先设定的策略来决定。比如,预先设定的策略为只要满足优先级条件就刷新,那么,节点在判断出端口所属主节点的优先级不小于刷新转发表报文中的优先级后,直接刷新该端口的转发表;再如,预先设定的策略为从两个端口上收到相同的刷新
转发表报文后刷新,那么,节点在判断出当前端口所属主节点的优先级不小于刷新转发表报文中的优先级后,还要确定是否从自身的另 一个端口上收到了相同的刷新转发表报文,如果是,则刷新当前端口的转发表。
下面举具体实例来说明利用上述图3所示的处理。
比如,在图5所示的相交环网中,如果一条链路CD中断,主节点A打开副端口并迁移到Failed状态。当链路CD恢复时,端口 Cd和Dc都处于预阻塞(Pre-forwarding )状态。主节点A从主端口发出的HELLO报文可以通过Pre-forwarding端口 ,并被A的副端口接收。根据上述图3所示处理,则A将发送POLLING—UP报文,该报文也可以通过Pre-forwarding端口 ,从而被A接收。A将启动延迟定时器,延迟定时器超时后比如为1S后,主节点A阻塞副端口 ,切换至完整状态,并发送RING—UP—FLUSH—FDB报文。节点C和D收到该报文将放开Pre-forwarding端口 ,使他们处于正常转发状态。这里E和F也将收到RING—UP—FLUSH_FDB报文,但他们所有端口的优先级比报文的优先级小,所以不用刷新FDB表。
19再如,在图6所示的相交环网中,如果链路CD和BD中断,为了保证
相交环网上各个环链路的通畅,主节点A、 E分别放开副端口,处于Failed状态。当CD恢复时,端口 Cd和Dc都处于Pre-forwarding状态。A从主端口发出的HELLO 4艮文无法被自己的副端口接收,仍将保持Failed状态。E从主端口发出的HELLO则可以被自己的副端口 4妻收,则E将发送POLLING—UP报文,该报文也可以通过Pre-forwarding端口 ,从而被E接收。E将启动延迟定时器,延迟定时器超时后比如为1S后,阻塞副端口,切换至完整状态,并发送RING—UP—FLUSH—FDB报文。节点C和D收到该报文将放开Pre-forwarding端口 ,使他们处于正常转发状态。
又如,在图7所示的相交环网中,如果链路CD和BD中断,为了保证相交环网上各个环链路的通畅,主节点A、 E分别放开副端口,处于Failed状态。当BD恢复时,端口 Bd和Db都处于Pre-forwarding状态。A从主端口发出的HELLO报文可以从自己的副端口接收,E从主端口发出的HELLO报文也可以被自己的副端口接收。主节点A和E都将从主端口发送POLLING—UP报文,A发出的POLLING—UP报文在E上软转发,由于报文中携带的优先级更高,此报文在E的副端口阻塞,A的副端口无法收到自己发送的POLLING—UP报文;E发出的POLLINGJJP报文在A上软转发,由于报文中携带的优先级较低,此报文在A的副端口允许通过,E的副端口收到自己发送的报文。E将启动延迟定时器,延迟定时器超时后比如为IS后,阻塞副端口,切换至完整状态,并发送RINGJJP—FLUSH—FDB报文。而A仍将保持在Failed状态。
又如,在图8所示的相交环网中,如果链路CD和BD中断,为了保证相交环网上各个环链路的通畅,主节点A、 E分别放开副端口,处于Failed状态。当CD、 BD同时恢复时,端口 Cd、 Dc、 Bd和Db都处于Pre-forwarding状态。A从主端口发出的HELLO报文可以被自己的副端口接收,E从主端口发出的HELLO报文也可以被自己的副端口接收。主节点A和E都将从主端口发送POLLING—UP报文,A发出的POLLING—UP报文通过A-C-D-B-A,最终被自己的副端口收到;E发出的POLLING—UP报文也可以被自己的副端口收到。主节点A和E将分别启动延迟定时器,这里假设A先超时,阻塞副端口,切换至完整状态,并发送RING—UP—FLUSH_FDB报文。该RING—UP_FLUSH—FDB报文被C、 D、 B节点收到后,将解除Pre-forwarding端口的预阻塞状态。而主节点E收到该RING—UP—FLUSH—FDB报文,将即刻阻塞副端口,切换至完整状态。
可以理解的是,虽然上述实施例中的图3,为便于理解,对方法的步骤采用了顺序性描述,但是应当指出的是,对于上述步骤的顺序并不做严格的限制。
本领域普通技术人员还可以理解,上述实施例中的全部或部分步骤可以通过程序来指令相关的硬件来实现,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,可以是ROM/RAM、磁碟、光盘等。
需要说明的是,在上述本发明的实施例中,没有在相交环网的各个以太环网中明确区分主环和依附于主环的外层次段,而通过主节点标识和优先级来区分各个环网。在本发明的其他实施例中,也可以在相交环网的各个以太环网中明确区分主环和依附于主环的外层次段,比如,根据实际业务的需要,'将相交环网中位于核心/汇聚层的以太环网设置为主环,将直接连接在主环上的环即与主环直接相交的以太环网设置为附着在主环上的低层次的段,将
太环网设置为更低层次的段。比如,参见图4,将以太环网Rl(由节点ABDCA组成)设置为主环,其主节点为A,与该主环Rl直接相交的以太环网R2(由节点CDFEC组成)就退化为连接在主环上的低层次的段CEFD,其主节点为E,并且,与附着在主环上的低层次的段CEFD直接相交的以太环网
的段EGHF,其主节点为G。当本发明采用上迷对相交环网中各个环划分主环和低层次段的方式时,其实现本发明的过程与上述实施例中图3的过程相同,只是上述图3所示过程中的每一个以太环网具体对应为主环、各个低层
21次的段以及各个更低层次的段。
一般地,要求当高层次段与低层次段的公共链路发生中断时,应放开高层段主节点的副端口,以保障高层次段上的大流量不会都沖到低层次段上,这样的目的是保障原有高层次段的流量,不至于跑到低层次的段上去。因此,当本发明采用上述对相交环网中各个环划分主环和低层次段的方式时,在执行
步骤301中设置各个主节点的优先级时,具体处理是设置主环中主节点的
优先级最高,直接连接在主环上的各个低层次段上的主节点的优先级较低,直接连接在该低层次段上的更低层次的段上的主节点的优先级更低。另夕卜,本发明还提出了一种主节点。该主节点位于相交环网中的任意一
个以太环网,参见图9,该主节点包括
检测单元,用于在所在主节点处于故障状态时,检测所在主节点是否轮询正常,如果是,则向故障恢复处理单元发送轮询正常通知;
故障恢复处理单元,用于在接收到轮询正常通知后,通过相交环网发送携带所在主节点优先级的轮询正常报文,如果监测到其他故障状态主节点发送的携带优先级的轮询正常报文,则判断所在主节点的优先级是否高于该轮询正常报文中的优先级,如果是,则转发该轮询正常报文,以及判断在预定时长内是否接收到自身发送的轮询正常报文,如果接收到,则向端口控制单元发送阻塞通知;
端口控制单元,用于在接收到阻塞通知后,阻塞副端口。
其中,所述检测单元,用于在相交环网中定期发送健康检测报文,检测在
预定时长内是否接收到自身发送的健康检测报文,如果接收到,则确定所在主
节点轮询正常。
所述故障恢复处理单元,进一步用于在所在主节点处于完整状态时,从除副端口之外的端口上接收到其他主节点发送的轮询正常报文后,不再从副端口转发,并且,从副端口上接收到的轮询正常报文不进行转发。
所述故障恢复处理单元,进一步用于在预定时长内接收到自身发送的轮询正常报文后,首先启动预先设置的延迟定时器,判断在延迟定时器超时前是否
接收到其他主节点发送的刷新转发表报文,如果是,则执行所述的向端口控制
单元发送阻塞通知的处理,否则,等到所述延迟定时器超时后,执行所述的向端口控制单元发送阻塞通知的处理。
所述故障恢复处理单元,进一步用于在预定时长内没有接收到自身发送的轮询正常报文后,向所述纟全测单元发送检测通知;
所述检测单元,进一步用于在接收到所述检测通知后,执行所述的检测所在主节点是否轮询正常的处理。
所述故障恢复处理单元,进一步用于在接收到其他主节点发来的携带优先级的刷新转发表报文后,比较该报文中的优先级与预先设置的自身端口所属的主节点的优先级,如果端口所属的主节点的优先级不小于该报文中的优先级,则在满足预定策略的条件下,根据该刷新转发表报文刷新该端口的转发表。
较佳地,该主节点所在的相交环网上, 一个以太环网被设置为主环,与主环直接相交的以太环网被设置为附着在主环上的低层次的段,与该低层次的段直接相交的以太环网被设置为连接在该低层次的段上的更低层次的段,并且,
当所述主节点为主环的主节点时,该主节点的优先级最高,且,所述主节点为低层次段上的主节点时的优先级高于该主节点为更低层次段上的主节点时的优先级。
另外,本发明还提出了一种传输节点。该传输节点位于相交环网中的任
意一个以太环网,参见图10,该传输节点包括
报文收发单元,用于在一个端口接收到外部发来的报文后,将该报文和该端口信息上报给报文转发控制单元;
报文转发控制单元,用于在解析出上报的报文为轮询正常报文后,控制报文收发单元从接收该轮询正常报文的端口之外的其他所有端口转发该轮询正常报文。
所述报文转发控制单元,
23进一步用于在解析出上报的报文为携带主节点标识、报文序列号和故障状态信息的健康检测报文,且上报的端口为预阻塞状态后,判断自身中是否记录有该健康检测报文中的主节点标识和报文序列号,如果是,则不再转发该健康检测报文,否则,记录该主节点标识和报文序列号,并控制所述报文收发单元转发该健康检测报文;
和/或,进一步用于在解析出上报的报文为携带完整状态信息的健康检测报文,且上报的端口为预阻塞状态后,不再转发该健康检测报文。
所述报文转发控制单元,进一步用于在解析出上报的报文为携带优先级的刷新转发表报文后,比较该报文中的优先级与预先设置的自身端口所属的主节点的优先级,如果端口所属的主节点的优先级不小于该报文中的优先级,则在满足预定策略的条件下,根据该刷新转发表报文刷新该端口的转发表。
较佳地,该传输节点所在的相交环网中, 一个以太环网被设置为主环,与主环直接相交的以太环网被设置为附着在主环上的低层次的段,与该低层次的段直接相交的以太环网被设置为连接在该低层次的段上的更低层次的段,并且,
该传输节点所在的相交环网中,主坏上主节点的优先级最高,直接连接在主环上的各个低层次段上的主节点的优先级高于直接连接在该低层次段上的更低层次的段上的主节点的优先级。
可以理解的是,附图中或实施例中所示仅仅是示意性的,表示逻辑结构,其中所述作为分离部件显示的单元可能是或者可能不是物理上分开的,作为单元显示的部件可能是或者可能不是物理单元,即可以位于一个地方,或者分布到几个网络单元上。
另外,本发明还提出了一种相交环网,该相交环网中包括至少两个相交的以太环网,每个以太环网包括主节点以及至少两个传输节点,主节点与各
个传输节点在以太环网上传输业务数据,完成各种业务功能;并且,该相交环网中的每 一 个主节点可以采用上述本发明实施例中的任意 一 种主节点来实现,该相交环网中每一个传输节点可以采用上述本发明实施例中的任意一 种传输节点来实现。
在本发明中,相交环网对应的一种较佳结构为相交环网中, 一个以太环 网被设置为主环,与主环直接相交的以太环网被设置为附着在主环上的低层次 的段,与该低层次的段直接相交的以太环网被设置为连接在该低层次的段上的 更低层次的段,并且,
相交环网中,主环上主节点的优先级最高,直接连接在主环上的各个低 层次段上的主节点的优先级高于直接连接在该低层次段上的更低层次的段 上的主节点的优先级。
需要说明的是,在本发明中,所涉及的"多个"均指至少两个,即,两
个或两个以上的^壬意一个^L
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的 保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改 进等,均应包含在本发明的保护范围之内。
权利要求
1、相交环网中故障恢复处理方法,其特征在于,该方法应用于多个以太环网相交形成的任意拓扑的相交环网中,每个以太环网包括主节点以及若干个传输节点,相交环网中各个以太环网的主节点都配置有各自的优先级;该方法包括相交环网中故障状态的主节点检测是否轮询正常,如果是,则通过相交环网发送携带自身优先级的轮询正常报文;故障状态的主节点如果接收到其他故障状态主节点发送的携带优先级的轮询正常报文,则判断自身的优先级是否高于该轮询正常报文中的优先级,如果是,则转发该轮询正常报文;故障状态的主节点判断在预定时长内是否接收到自身发送的轮询正常报文,如果是,则阻塞副端口。
2、 根据权利要求1所述的方法,其特征在于,所述检测是否轮询正常的步 骤包括相交环网中故障状态的主节点定期发送健康检测报文,检测在预定时 长内是否接收到自身发送的健康检测报文,如果接收到,则确定所控制的以太 环网轮询正常。
3、 根据权利要求2所述的方法,其特征在于,所述故障状态的主节点发送 的健康检测报文中携带主节点标识、报文序列号和故障状态信息;该方法进一步包括相交环网中的节点从自身预阻塞状态的端口上接收到 健康检测报文后,如果该报文中携带的是故障状态的信息,则判断自身中是否 记录有该健康检测报文中的主节点标识和报文序列号,如果是,则不再转发该 健康检测报文,否则,记录该主节点标识和报文序列号,并转发该健康^r测报 文。
4、 根据权利要求2所述的方法,其特征在于,该方法进一步包括相交环 网中完整状态的主节点定期发送携带完整状态信息的健康检测报文;相交环网 中的节点从自身预阻塞状态的端口上接收到健康检测报文后,如果该报文中携带的是完整状态的信息,则不再转发该健康检测报文。
5、 根据权利要求1至4中任意一项所述的方法,其特征在于,在故障状态 的主节点判断出自身的优先级低于所接收到的轮询正常报文中的优先级之后,进一步包括该故障状态的主节点直接丟弃当前接收到的轮询正常报文。
6、 根据权利要求1至4中任意一项所述的方法,其特征在于,该方法进一 步包括相交环网中传输节点从自身端口上接收到所述轮询正常报文后,都通 过自身其他所有端口转发;和/或,相交环网中处于完整状态的主节点从除副端 口之外的端口上接收到轮询正常报文后,不再从副端口转发,并且,从副端口 上接收到的轮询正常报文不进行转发。
7、 根据权利要求1至4中任意一项所述的方法,其特征在于,故障状态的 主节点在预定时长内接收到自身发送的轮询正常报文之后,并在阻塞副端口之 前,进一步包括该故障状态的主节点启动预先设置的延迟定时器,判断在延 迟定时器超时前是否接收到其他主节点发送的刷新转发表报文,如果是,则执 行所述的阻塞副端口的步骤,否则,等到所述延迟定时器超时后,执行所述的 阻塞副端口的步骤。
8、 根据权利要求1至4中任意一项所述的方法,其特征在于,在故障 状态的主节点阻塞副端口之后,进一步包括该主节点迁移到完整状态,并 通过相交环网发送携带自身优先级的刷新转发表报文,相交环网上节点接收 到刷新转发表报文后,比较该报文中的优先级与预先设置的自身端口所属的 主节点的优先级,如果端口所属的主节点的优先级不小于该报文中的优先 级,则在满足预定策略的条件下,根据该刷新转发表报文刷新该端口的转发 表。
9、 根据权利要求8所述的方法,其特征在于,设置节点的端口所属的 主节点包括对于节点的端口,如果该端口仅位于一个以太环网上,那么, 将该端口所在的以太环网上的主节点设置为该端口所属的主节点;如果该端 口同时位于多个以太环网上,那么,将该多个以太环网的主节点中优先级最 高的主节点设置为该端口所属的主节点。3
10、 根据权利要求1至4中任意一项所述的方法,其特征在于,故障状 态的主节点判断出在预定时长内没有接收到自身发送的轮询正常报文之后, 进一步包括该故障状态的主节点转向执行所述的检测是否轮询正常的步骤。
11、 根据权利要求1所述的方法,其特征在于,该方法进一步包括将相交环网中的一个以太环网设置为主环,将与主环直接相交的以太环网设置 为附着在主环上的低层次的段,将与该低层次的段直接相交的以太环网设置 为连接在该低层次的段上的更低层次的段,并设置主环中主节点的优先级最 高,直接连接在主环上的各个低层次段上的主节点的优先级高于直接连接在该低层次段上的更低层次的段上的主节点的优先级;所述相交环网中各个以太环网包括主环、所有4氐层次的段以及所有更 低层次的段。
12、 一种主节点,其特征在于,该主节点位于相交环网中的以太环网上, 该主节点包括检测单元,用于在所在主节点处于故障状态时,检测所在主节点是否轮询 正常,如果是,则向故障恢复处理单元发送轮询正常通知;故障恢复处理单元,用于在接收到轮询正常通知后,通过相交环网发送携 带所在主节点优先级的轮询正常报文,如果监测到其他故障状态主节点发送的 携带优先级的轮询正常报文,则判断所在主节点的优先级是否高于该轮询正常 报文中的优先级,如果是,则转发该轮询正常报文,以及判断在预定时长内是 否接收到自身发送的轮询正常报文,如果接收到,则向端口控制单元发送阻塞 通知;端口控制单元,用于在接收到阻塞通知后,阻塞副端口。
13、 根据权利要求12所述的主节点,其特征在于,所述检测单元,用于在 相交环网中定期发送健康检测报文,检测在预定时长内是否接收到自身发送的 健康检测报文,如果接收到,则确定所在主节点轮询正常。
14、 根据权利要求12所述的主节点,其特征在于,所述故障恢复处理单元,进一步用于在所在主节点处于完整状态时,从除副端口之外的端口上接收到其 他主节点发送的轮询正常报文后,不再从副端口转发,并且,从副端口上接收 到的轮询正常报文不进行转发。
15、 根据权利要求12、 13或14所述的主节点,其特征在于,所述故障恢复处理单元,进一步用于在预定时长内接收到自身发送的轮询正常报文后,首 先启动预先设置的延迟定时器,判断在延迟定时器超时前是否接收到其他主节 点发送的刷新转发表报文,如果是,则执行所述的向端口控制单元发送阻塞通 知的处理,否则,等到所述延迟定时器超时后,执行所述的向端口控制单元发 送阻塞通知的处理。
16、 根据权利要求12、 13或14所述的主节点,其特征在于,所述故障恢 复处理单元,进一步用于在预定时长内没有接收到自身发送的轮询正常报文后, 向所述检测单元发送一企测通知;所述检测单元,进一步用于在接收到所述检测通知后,执行所述的检测所 在主节点是否轮询正常的处理。
17、 根据权利要求12、 13或14所述的主节点,其特征在于,所述故障恢 复处理单元,进一步用于在接收到其他主节点发来的携带优先级的刷新转发表 报文后,比较该报文中的优先级与预先设置的自身端口所属的主节点的优先级, 如果端口所属的主节点的优先级不小于该报文中的优先级,则在满足预定策略的条件下,根据该刷新转发表报文刷新该端口的转发表。
18、 根据权利要求12所述的主节点,其特征在于,该主节点所在的相 交环网上, 一个以太环网被设置为主环,与主环直接相交的以太环网被设置 为附着在主环上的低层次的段,与该低层次的段直接相交的以太环网被设置 为连接在该低层次的段上的更低层次的段,并且,当所述主节点为主环的主节点时,该主节点的优先级最高,且,所述主 节点为低层次段上的主节点时的优先级高于该主节点为更低层次段上的主 节点时的优先级。
19、 一种传输节点,其特征在于,该传输节点位于相交环网中的以太环网上,该传输节点包括报文收发单元,用于在一个端口接收到外部发来的报文后,将该报文和该端口信息上报给报文转发控制单元;报文转发控制单元,用于在解析出上报的报文为轮询正常报文后,控制 报文收发单元从接收该轮询正常报文的端口之外的其他所有端口转发该轮 询正常报文。
20、 根据权利要求19所述的传输节点,其特征在于,所述报文转发控 制单元,进一步用于在解析出上报的报文为携带主节点标识、报文序列号和故障 状态信息的健康检测报文,且上报的端口为预阻塞状态后,判断自身中是否 记录有该健康检测报文中的主节点标识和报文序列号,如果是,则不再转发 该健康检测报文,否则,记录该主节点标识和报文序列号,并控制所述报文 收发单元转发该健康检测报文;和/或,进一 步用于在解析出上报的报文为携带完整状态信息的健康检 测报文,且上报的端口为预阻塞状态后,不再转发该健康检测报文。
21、 根据权利要求19所述的传输节点,其特征在于,所述报文转发控 制单元,进一步用于在解析出上报的报文为携带优先级的刷新转发表报文 后,比较该报文中的优先级与预先设置的自身每一个端口所属的主节点的优 先级,如果端口所属的主节点的优先级不小于该报文中的优先级,则在满足 预定策略的条件下,根据该刷新转发表报文刷新该端口的转发表。
22、 根据权利要求19至21中任意一项所述的传输节点,其特征在于, 该传输节点所在的相交环网中, 一个以太环网被设置为主环,与主环直接相 交的以太环网被设置为附着在主环上的低层次的段,与该低层次的段直接相 交的以太环网被设置为连接在该低层次的段上的更低层次的段,并且,该传输节点所在的相交环网中,主环上主节点的优先级最高,直接连接在 主环上的各个低层次段上的主节点的优先级高于直接连接在该低层次段上的更 低层次的段上的主节点的优先级。
23、 一种相交环网,其特征在于,该相交环网中包括多个以太环网,每个以太环网包括主节点以及若干个传输节点;并且,该相交环网中每一个以太环 网上的主节点如权利要求12至18中任意一项所述,该相交环网中每一个以太 环网上的传输节点如权利要求19至22中任意一项所述。
24、 根据权利要求23所述的相交环网,其特征在于,在该相交环网中,一 个以太环网被设置为主环,与主环直接相交的以太环网被设置为附着在主环上 的低层次的段,与该低层次的段直接相交的以太环网被设置为连接在该低层次 的段上的更低层次的段,并且,所述相交环网中,主环上主节点的优先级最高,直接连接在主环上的各 个低层次段上的主节点的优先级高于直接连接在该低层次段上的更低层次 的段上的主节点的优先级。
全文摘要
本发明公开了一种相交环网中故障恢复处理方法,相交环网中各个以太环网的主节点都配置有各自的优先级,该方法包括相交环网中故障状态的主节点检测到轮询正常后,通过相交环网发送携带自身优先级的轮询正常报文;故障状态的主节点如果接收到其他主节点发送的携带优先级的轮询正常报文,则判断自身的优先级是否高于该轮询正常报文中的优先级,如果是,则转发该轮询正常报文;故障状态的主节点判断在预定时长内是否接收到自身发送的轮询正常报文,如果是,则阻塞副端口。本发明还公开了一种主节点、传输节点以及相交环网。本发明能够对任意拓扑的相交环网提供有效的故障恢复处理方法。
文档编号H04L12/56GK101499949SQ20081005746
公开日2009年8月5日 申请日期2008年2月1日 优先权日2008年2月1日
发明者宋建永, 王明辉, 赵里遥 申请人:杭州华三通信技术有限公司