CN105814847A - 使用数据面协议来修复故障网络路由弧 - Google Patents
使用数据面协议来修复故障网络路由弧 Download PDFInfo
- Publication number
- CN105814847A CN105814847A CN201480067503.9A CN201480067503A CN105814847A CN 105814847 A CN105814847 A CN 105814847A CN 201480067503 A CN201480067503 A CN 201480067503A CN 105814847 A CN105814847 A CN 105814847A
- Authority
- CN
- China
- Prior art keywords
- arc
- node
- cursor
- management frame
- fault
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/18—Loop-free operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/557—Error correction, e.g. fault recovery or fault tolerance
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
网络包括用于将网络流量路由至目的地的多个路由弧。每个弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点且朝向第一边缘节点和第二边缘节点中的一个边缘节点,网络流量通过该边缘节点退出弧。每个节点包括网络设备。弧中的节点在弧中检测第一故障。响应于检测到第一故障,节点通过数据面在弧内交换第一管理帧,从而将光标从最初持有光标的节点转移至第一故障附近的第一节点,并且视情况逆转弧中的链路,以便弧中的网络流量被引导离开第一故障且朝向弧的第一边缘节点,网络流量能够通过该第一边缘节点退出弧。
Description
相关申请的交叉引用
本申请要求于2013年12月9日提交的序列号为61/913,555的美国临时申请的权益,该申请通过引用以其整体合并于此。
技术领域
本公开一般地涉及检测网络中的故障链路,并且作为响应,使用数据面(plane)协议重新路由网络流量。
背景技术
数据网络以数据分组的形式来将网络流量路由至目的地设备,以及从目的地设备路由网络流量。数据网络通常包括许多通过网络链路互相连接的网络设备或节点。网络控制器通过控制面使用控制面操作、管理、和维护(OAM)消息来控制节点,从而在链路故障/破损的情形中重新配置网络链路。如果与网络控制器的连接丢失,则响应这样的链路故障的能力也丢失。即使连接没有丢失,被用来重新配置节点和网络链路的控制面OAM消息通常花费大量时间来在网络控制器与任意目标节点之间传播,因为目标节点可能位于数据网络的拓扑结构的深处。这在链路故障事件中产生不可接受的长时间的重新配置延迟。
附图说明
图1是本文所提供的技术可以被实现于的示例网络环境的框图。
图2示出了图1的计算机网络的示例无环的弧拓扑。
图3示出了图2的弧拓扑中的示例路由弧。
图4是在路由弧中的节点之间交换的示例数据面管理帧的图示。
图5示出了用于可以由路由弧中的节点发射和/或接收的与检测和/或修复路由弧故障有关的各种类型的数据面管理帧的示例格式。
图6是在路由弧的节点中实现的示例计算机系统的框图。
图7是使用数据面管理帧来处理路由弧中的第一故障的示例方法流程图。
图8是扩展图7的方法的故障检测操作的示例操作流程图。
图9是扩展图7的方法中的数据面管理帧的使用的示例方法流程图。
图10-15共同描绘了结合图9所描述的单个弧故障情形,其中路由弧经历第一/单个故障。
图16是检测路由弧中的第二故障以及在该路由弧之内交换第二管理帧以处理第二故障的示例方法流程图。
图17-26共同描绘了结合图16所描述的两个弧故障情形,其中路由弧在第一故障之后获得第二故障。
图27-34共同描绘了第三示例弧故障情形,其中图2的弧拓扑中的多个弧中的每一个弧几乎同时出现单个故障。
具体实施方式
概述
本文提供了响应于网络中的一个或多个故障使用数据面协议来重新路由网络中的网络流量的技术。网络包括用于将网络流量无环路由至目的地的多个路由弧(arc)。每个路由弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,网络流量通过边缘节点和它相应的边缘退出弧。每个节点包括网络设备。根据处理弧中的单个故障的第一技术,在弧中检测第一故障。响应于第一故障检测,第一管理帧通过数据面在弧之内的节点之间被交换,从而将光标从最初持有光标的节点转移至第一故障附近的第一节点,并且视情况逆转弧中的链路,以便弧中的网络流量被引导离开第一故障而朝向弧的第一边缘节点,网络流量通过该第一边缘节点能够退出弧。
根据处理弧中的第二故障的第二技术,在第一故障被检测到之后在弧中检测到第二故障。响应于第二故障检测,第二管理帧在弧中的节点之间被交换:冻结进入弧的入口边缘从而防止相应的父弧中的网络流量进入弧;逆转每个入口边缘,以便弧中发起的并且经过弧中相应的入口节点(接纳(receive)相应的入口边缘)的网络流量将被引导朝向相应的父弧;以及视情况逆转弧中的链路,以便弧中发起的所有网络流量被引导至入口边缘。
根据第三技术,如果一个或多个父弧包括故障,则第一技术和第二技术跨该一个或多个父弧被递归地应用,直到重新配置的路径被建立以用于网络流量退出它去往目的地的路上的故障弧。
示例实施例
首先参考图1,示出了本文所呈现的技术可以被执行于的示例网络环境100的框图。环境100包括多个目的地设备102(例如,客户端计算机),目的地设备102被配置为通过通信网络104互相通信,通信网络104可以包括广域网(WAN)(例如,互联网)和局域网(LAN)。通信网络104包括以数据分组的形式在通信网络104之内将网络流量路由至目的地设备102并且从目的地设备102路由网络流量的一个或多个路由网络106。路由网络106各自包括通信链路,例如无线链路、有线链路、和/或光缆链路,网络流量通过通信链路被路由。每个路由网络106可以根据任意数量的不同网络拓扑被配置,以实现在正常操作中有效地路由其中的网络流量并且当路由网络中发生故障时快速重新路由网络流量(如下面所描述的)。
弧拓扑
参考图2,描绘了路由网络106中的一个路由网络的示例无环的弧拓扑200。弧拓扑200可被配置为有向非循环图(DAG)。弧拓扑200包括用于到达目的地(被描述为图2底部的水平线)(例如,目的地设备102中的一个目的地设备)的多个路由弧210。每个路由弧210包括多个网络设备214(为了简单起见图2中仅描述了一些),每个网络设备214具有用于到达给定网络设备的左侧和右侧的邻近网络设备的至少两个数据链路。网络控制器220可以初始建立弧拓扑200的特定拓扑,并且一旦建立拓扑则使用控制面操作、管理、和维护(OAM)消息来提供对弧拓扑的高级控制。OAM消息在本文中也被称为“OAM帧”和“管理帧”。
一旦建立,弧拓扑200保证在任意路由弧210上的任意位置处的任意网络设备214具有用于到达目的地的至少两个非全等路径,保证到目的地的可到达性,即使弧拓扑中遇到链路故障。在随后的描述中,网络设备(例如,网络设备214)在本文中也被称为在弧拓扑200之内被分配有可识别的位置的“网络节点”或简称为“节点”。因此,弧拓扑200也被更广泛地称为网络设备或节点的网络。
节点214在它们相应的弧中通过它们的数据链路接收和转发网络流量(例如,数据分组)。因为节点朝向目的地互相“转发”网络流量,所以它们被称为在弧拓扑200的“转发面”中进行操作。“转发面”和“数据面”是同义词并且可以被互换使用。每个路由弧210还包括在路由弧中控制网络流量流的方向的光标(在图2中标为“CURSOR”并且被描绘为倒置的T)。持有光标的节点总是引导网络流量离开节点自身而朝向路由弧的相对端中的一个,网络流量从相对端中的一个退出路由弧。因此,在正常操作中,网络流量离开每个路由弧中的光标,并且沿到目的地的最短网络路径从路由弧到路由弧倾泻而下。在示例中,位置X处的网络流量沿路径P1流向目的地,而位置Y处的网络流量沿路径P2流向目的地。
弧配置
参考图3,描绘了代表弧拓扑200中的任意路由弧210的示例路由弧300。在高级方面,路由弧300是用于转发网络流量的双端可逆路径/弧。可逆路由弧包括一个或多个可逆链路,并且可逆路由弧在路由弧的每个端处可以包括一个或多个非可逆链路。在其他实施例中,端处的链路也可以是可逆的。同样,路由弧包括控制路由弧中的网络流量流的方向的光标。持有光标的节点通常引导流量离开节点自身朝向路由弧的两个相对端中的一个,网络流量从路由弧的两个相对端中的一个退出路由弧,或许进入另一路由弧。路由弧可以包括仅一个节点、或多个节点(例如,两个节点、三个节点、或多于三个节点)。
在图3的示例中,路由弧300包括多个连续节点,多个连续节点包括终止弧的弧的两个相对端处的边缘节点A和E,以及边缘节点之间的中间节点B、C、和D。可逆链路(在图3中标为“Rev”)连接连续节点A-E,即,节点A在它的右侧通过第一可逆链路被连接至下一个节点B,节点B在它的右侧通过第二可逆链路被连接至下一个节点C,并且沿线依此类推。节点A-E被认为是“安全的”,因为每个节点都与在附图中被表示为“Rev”的可逆链路连接。可逆链路Rev被称为可逆的,因为连接至这些链路的节点能够逆转方向(向左或向右),其中网络链路通过链路传播。边缘节点A和E分别被连接至出口(即,向外导向的)边缘302E和302A(也被称为边缘链路302E和302A)。
路由弧300中的网络流量可以通过边缘节点E和相应的边缘302E来退出路由弧的右端,或通过边缘节点A和相应的边缘302A来退出弧的左端。边缘302E的一端被连接至边缘节点E,而边缘302E的另一端被连接至节点“f”,节点“f”通常是拓扑200中的另一个弧的一部分,由此,边缘302E被称为是该另一个路由弧的“入口”,并且弧300被称为是该另一个路由弧的父弧。类似地,边缘302A的一端被连接至边缘节点A,而边缘302A的另一端被连接至节点“a”,节点“a”通常是拓扑200中的另一个路由弧的一部分,由此,边缘302A被称为是该另一个路由弧的“入口”。
安全节点B和D分别从父路由弧(图3中未示出)接收边缘链路306B和306D。相对于弧300,边缘链路306B和306D表示入口链路,来自父路由弧的网络流量可以通过这些入口链路进入路由弧300。术语“路由弧”还被简称为“弧”。
弧300还包括可移动的或可转移的光标320,该光标320由节点C(也被称为光标节点)持有,并且该光标320对沿弧引导网络流量进行独占控制。在任意给定时刻,弧300的一个节点拥有弧光标320。拥有弧光标320的节点(例如,节点C)可以基于拥有弧光标来控制沿弧的网络流量。具体地,持有光标的节点引导网络流量离开节点自身并沿着它向外导向的(即,左指向和右指向)链路中的一个链路朝向弧的相对端(即,朝向边缘节点A和E以及相应的边缘302A和302E)。在图3的示例中,所有网络流量被引导离开节点C,因为节点C持有光标。这意味着弧300中节点C的右侧的网络流量被引导至边缘节点E,而弧中节点C的左侧的网络流量被引导至边缘节点A。
弧故障
返回图2,现在简要描述弧拓扑200中的链路故障和在弧拓扑中处理这样的故障的方式。共享风险链路组(SRLG)指弧拓扑200中的链路共享共同的光纤(或其他共同物理属性,例如铜线)的布置。因此,组中的链路具有共享风险;如果共同的光纤发生故障,则组中的多个链路可能同时发生故障。例如,弧拓扑200中的SRLG故障可能意味着在弧拓扑中的多个弧中同时发生链路故障。当SRLG故障发生时,弧拓扑200能够快速地且自主地自我修复从而重新路由弧拓扑中的网络流量离开故障位置(即,离开弧中的破损(breakage))以继续朝目的地路由,这是重要的。在用于在弧拓扑200中修复/重新路由的一个方法中,网络控制器220可以与目标节点214交换控制面OAM消息从而重新配置弧拓扑的链路以避免破损;然而,这是耗时并且低效的,因为控制面OAM帧可能从弧拓扑深处接近于破损的节点处前进一直传播至弧拓扑外围的网络控制器220。
因此,本所呈现的技术在弧拓扑200中使用严格数据面协议来执行链路修复和重新路由操作,严格数据面协议在断裂/故障弧和与之相连接的弧之内进行操作,这比使用控制面协议更简单并且更高效。基于数据面协议,断裂弧之内的节点在数据面中互相交换管理帧,从而在断裂弧中重新配置链路并且重新路由网络流量以补偿破损,并由此提供网络流量到目的地的连续路由。在弧拓扑200中使用这样的数据面管理消息(而不是控制面管理消息)来执行修复和重新路由操作,这不再需要节点214在链路故障事件中与网络控制器220进行通信。因此,使用数据面管理消息是针对链路修复和重新路由操作的高效、自主的方法,该方法避免了与使用控制面协议相关联的低效率和延迟。
在实施例中,在节点之间被交换以在弧拓扑200中检测并且修复SRLG故障的数据面管理帧也被称为网络的联合操作和自动化(JOAN)帧。JOAN帧是停留在弧拓扑200的弧210之内的数据面OAM帧。JOAN帧可以基于触发事件在任意时刻被从给定弧中的任意节点发射。JOAN帧是从向弧的一个边缘发射JOAN帧的节点发送的,参见下面将讨论的图4的示例。通过交换JOAN帧,弧中光标的位置和链路的方向可以被操控来重新路由弧中的网络流量,从而以网络流量可以找到它到目的地的路径的方式来避免故障。
JOAN帧
参考图4,示出了示例数据面管理帧(例如,在弧中的边缘节点A和E之间分别遍历路径402A和404B的弧300中的JOAN帧402和404)的图示。在图4的示例中,左侧的边缘节点A向右侧的边缘节点E发射JOAN帧402。随着JOAN帧402沿路径402A从节点A向右遍历至节点E,JOAN帧402相继经过节点B、C、D、和E中的每一个节点。类似地,右侧的边缘节点E向左侧的边缘节点A发射JOAN帧404。随着JOAN帧404沿路径404A向左遍历,JOAN帧404相继经过节点D、C、B、和A中的每一个节点。
下面参考图5将进行简要描述,存在若干不同类型的、在弧中的节点之间进行交换的JOAN帧,每个JOAN帧适用于特定情形。图5示出了用于可以由弧中的节点发射和/或接收的、与检测和/或修复弧故障有关的各种类型的JOAN帧的示例格式500。格式500包括:
a.JOAN帧类型/号504,该JOAN帧类型/号504指示活跃的JOAN帧的类型。在一个实施例中,存在五种类型的JOAN帧:
i.JOAN1帧=光标-请求JOAN帧;
ii.JOAN2帧=光标-授权JOAN帧;
iii.JOAN3帧=光标-拒绝JOAN帧;
iv.JOAN4帧=逆转-入口JOAN帧;以及
v.JOAN5——端到端(ETO)PingJOAN帧(可选的)。
b.发送/发射节点标识符(ID)506,例如发起JOAN帧的节点的地址;
c.可选的目的地节点地址508;
d.与JOAN2帧相关联的令牌字段510,当JOAN2帧经过当前持有光标的节点时,该令牌字段510被声称。经声称的令牌表示光标;
e.JOAN帧是活跃的弧的弧ID512;以及
f.JOAN帧是活跃的弧拓扑的网络ID514;
现在已经简要描述了每种类型的JOAN帧,随后将描述使用不同JOAN帧的若干示例弧故障情形。
JOAN1帧——光标-请求JOAN帧:在节点自身附近(例如,在节点的一个链路中)检测到故障的节点向边缘节点发送JOAN1帧以请求占有光标(即,使光标从弧中最初持有光标的节点转移至该请求节点)。如果请求节点获得光标,则所有网络流量将被引导离开该节点,由此,离开故障位置。
JOAN2帧——光标-授权JOAN帧:响应于接收JOAN1光标-请求帧,边缘节点(网络流量通过该边缘节点可以退出弧(因为边缘节点和它连接的边缘没有破损))将JOAN2光标-授权帧发送回请求节点以指示光标可以被转移至该节点。
JOAN3帧——光标-拒绝JOAN帧:该帧在弧经历多个间隔故障(破损)的情形(例如,两个故障情形)中被使用。在两个故障情形中,在第一故障附近的第一节点已经使用JOAN1-JOAN2帧交换获得了光标。在第二、随后的故障附近的第二节点发送另一JOAN1(光标-请求)帧以获得光标。响应于JOAN1光标-请求帧,第一节点将JOAN3(光标-拒绝)帧发送回第二节点,因为由于第一故障,光标已经被转移了一次并且不能被再次转移。在返回至第二节点的路上,JOAN3(光标-拒绝)帧冻结来自父弧的所有入口边缘。一旦冻结,入口边缘不能传递网络流量。
JOAN4帧——逆转-入口JOAN帧:该帧也在两个故障情形中被使用。JOAN4(逆转-入口)帧被从同样请求光标(使用JOAN1)并且被拒绝(使用JOAN3)的节点发送。JOAN4(逆转-入口)帧逆转来自父弧的每个入口边缘(链路),并且从发送节点开始直到由JOAN4帧经过的入口节点(例如,接纳来自父弧的入口边缘的节点)中的第一入口节点,来逆转由JOAN4(逆转-入口)帧经过的弧中的每个节点的链路,这样弧中发起的网络流量将被引导至入口节点(并且被引导至父弧)。
JOAN5帧——PingJOAN帧(可选的):JOAN5(Ping)帧是在弧的相对端处的边缘节点之间被来回发送的故障-检测帧。当从一个边缘节点发送至另一边缘节点的一个JOAN5(Ping)帧没有在该另一边缘节点处被接收时,在弧中检测到故障。JOAN5(Ping)帧是可选的,因为也可以使用用于在弧中检测故障的其他机制。
网络设备-节点
参考图6,示出了在节点(例如,弧拓扑200的节点214中的每一个节点)中被实现的系统600的框图。系统600包括网络接口单元602、处理器604、和存储器608。网络接口(I/F)单元602例如是允许系统600通过网络(例如,有线(以太网)网络)进行通信的以太网卡设备。网络I/F单元602还可以包括无线连接能力。网络I/F单元602支持通过连接至弧拓扑中的相邻节点的数据链路602a和602b进行的通信,并且采用数据分组形式的网络流量通过数据链路602a和602b在相邻节点之间被交换。数据链路602a和602b可以是如上所述的可逆链路,以便在处理器604和网络I/F单元602的控制下将网络流量传输至系统600或传输离开系统600。处理器604例如是被配置为执行存储在存储器608中的软件指令的微控制器或微处理器。
存储器608可以包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质设备、光存储介质设备、闪存设备、电的、光的、或其他物理的/有形的(例如,非暂态)存储器存储设备。因此,一般地,存储器608可以包括编码有包括计算机可执行指令的软件的一个或多个计算机可读存储介质(例如,存储器设备),当软件被(处理器604)执行时,处理器604可操作以执行本文所描述的操作。例如,存储器608存储或被编码有指令,以用于数据面修复协议逻辑610基于数据面协议来执行故障检测和修复操作(即,交换数据面管理消息),如本文所描述的。此外,存储器608存储数据面管理帧格式612(例如,JOAN帧格式),该数据面管理帧格式612被数据面修复协议逻辑610用来构造和解释将通过链路602a和602b从系统600发送或由系统600接收的数据面管理帧。
弧中的单个故障
现在转向图7,示出了使用JOAN帧来检测和处理弧中的故障的示例方法700的流程图。如上所述,在图3中的300处描绘了弧210中的一个弧的示例配置,其中弧300包括通过可逆链路Rev按序连接的节点A-E,可逆链路Rev离开最初持有光标的节点C,朝向弧的相对端处的第一边缘节点A和第二边缘节点E(和它们相应的边缘302A和302E)中的一个边缘节点(和它相应的边缘),并且网络流量通过边缘节点(和它相应的边缘)退出弧。
在705处,弧中的第一故障附近的第一节点检测到第一故障。
在710处,响应于故障检测,弧中的节点通过数据转发面在弧内的节点之间交换第一管理帧(例如,JOAN帧)。JOAN帧的交换将光标从最初持有光标的节点转移至第一故障附近的第一节点,并且视情况逆转弧中的链路,以便弧中的网络流量被引导离开第一故障且朝向弧的第一边缘节点,网络流量能够通过该第一边缘节点退出弧。在710中,在数据面中交换第一JOAN帧使得可以在不与网络的网络控制器进行任何交互的情况下(即,不与网络控制器(例如,网络控制器220)交换OEM管理帧),在弧中进行修复/重新路由。
图8是扩展方法700的故障检测操作705的示例操作的流程图。
在805处,弧的第一边缘节点和第二边缘节点周期性地在它们自身之间来回发送Ping(即,故障-检测)JOAN帧。
在810处,当从第一边缘节点和第二边缘节点中的一个边缘节点发送至第一边缘节点和第二边缘节点中的另一边缘节点的故障-检测JOAN帧中的一个故障-检测JOAN帧没有在第一边缘节点和第二边缘节点中的所述另一边缘节点处被接收时,在弧中检测到故障(例如,第一故障)。故障表现为弧的破损,该破损防止故障-检测JOAN帧到达指定的边缘节点。
图9是扩展被用来处理弧中检测到的故障(即,在操作705处检测到的故障)的交换JOAN帧操作710的示例方法的流程图。下面也将按序参考图10-15来描述图9。图10-15描绘了弧拓扑200中的弧1000(对应于图2中的弧210中的一个弧)在弧的右端附近获得第一故障F1的第一示例弧故障情形。示例第一弧故障情形被称为单个故障情形。
在905处,检测到的第一故障(如上面结合操作705所提到的)附近的第一节点在使得JOAN帧经过最初持有光标的节点的方向向第一边缘节点发送光标-请求JOAN帧。在图10的示例中,故障F1附近的(第一)节点向弧1000的左端发送光标-请求JOAN帧,如左箭头1015所指示的。故障位置F1变为JOAN源,网络流量不能通过该JOAN源进行传递(即,不能退出弧1000),并且该JOAN源向弧1000的左端发送光标-请求JOAN帧。
在910处,响应于光标-请求JOAN帧,如果第一边缘节点和它相应的边缘能够传递网络流量(即,如果网络流量能够通过第一边缘节点和它的边缘退出弧),则第一边缘节点将光标-授权JOAN帧发送回第一节点。在图11的示例中,因为第一边缘节点(在弧1000的左端,但是未具体示出)仍然能够传递网络流量,所以第一边缘节点接受光标-请求JOAN帧并且向弧的右端发出响应(即,光标-授权JOAN帧),如右箭头1100所指示的。
响应于光标-授权JOAN帧经过最初持有光标的节点以及接下来的节点(包括第一节点),将发生下面的操作915、920、和925,如下面将描述的。
在915处,当光标-授权JOAN帧经过最初持有光标的节点时,最初持有光标的节点将表示光标的令牌转移至光标-授权JOAN帧(即,在光标-授权JOAN帧的字段510中声称令牌)。在图12的示例中,在回到弧1000的右端的路上,光标-授权JOAN帧接受光标作为令牌,即,切换自最初持有光标的节点的光标/令牌在箭头1200处被指示。
在920处,在经过最初持有光标的节点之后,由光标-授权JOAN帧经过的接下来的节点使得接下来的节点中的每一个节点逆转它们的链路,这样弧中的网络流量被引导离开第一节点且朝向第一边缘节点。每个接下来的节点响应于光标-授权JOAN帧中的令牌的出现来逆转它的链路。在图13的示例中,右箭头1300表示:(i)光标-授权JOAN帧(它将经过接下来的节点),以及(ii)逆转接下来的节点的链路(它们将变为左指向链路)。换句话说,令牌使得所有接下来的节点将它们的链路转向旧的(最初的)光标位置。
在925处,当光标-授权JOAN帧在第一节点处被接收时,第一节点接受光标-授权JOAN帧中的令牌作为光标。在图14的示例中,光标-授权JOAN帧在第一节点处的接收以及所产生的对令牌/光标的接受/转移在右箭头1400处被表示。此外,光标现在位于故障F1附近,即,破损现在在光标附近。
作为上述操作的结果,所有链路都被重新导向离开故障的位置。在图15的示例中,在弧1000中的位置1500处发起的网络流量沿所指示的路径1505离开故障F1流向目的地。弧1000的右边缘处的光标本质上是向内导向的分离光标。
弧中的两个故障
图16是检测弧中的第二故障并且在该弧内交换第二JOAN帧以处理第二故障的示例方法1600(即,方法1600处理相同弧中的两个故障以便在该弧中的网络流量可以被重新路由至目的地)的流程图。当弧经历第一故障时,方法700被执行。然后,如果弧经历第二故障,则方法1600被执行。
下面将参考图17-26来描述方法1600的操作。图17-26描绘了弧1000在第一故障F1之后获得第二故障F2的第二示例弧故障情形。这种故障情形也被称为“在相同弧中的第二错误”故障情形。
假定经历第二故障的弧可以包括一个或多个入口节点,每个入口节点与相应父弧的相应入口边缘相连接。在正常操作下,即,在弧中没有故障的情况下,父弧将父弧中的网络流量引导向相应的入口节点。
在1605处,在弧中的第二节点附近检测到第二故障,该第二故障与第一节点附近的第一故障相间隔。在图17的示例中,弧1000中位于故障F1的左侧的故障F2被检测到。
响应于第二故障被检测到,第二JOAN帧(相对于方法700中响应于第一故障被交换的“第一JOAN帧”)在弧中的节点之间被交换。总之,第二JOAN帧的交换将:冻结每个入口边缘以防止相应的父弧中的网络流量通过所冻结的入口边缘进入弧;逆转每个入口边缘,以便弧中发起的并且经过相应入口节点的网络流量将被引导向相应的父弧;以及视情况逆转弧中的链路,以便弧中发起的所有网络流量被引导至入口边缘。这些和进一步的效果在对方法1600的详细描述中将变得显而易见。
在1610处,响应于第二故障被检测到,第二节点向第二边缘节点发送光标-请求JOAN帧。在图17的示例中,故障F2附近的(第二)节点(图17中未明确示出)变为JOAN源,(为了获得光标)该JOAN源将光标-请求JOAN帧发送至弧1000的右端,如右箭头1700所指示的。
在1615处,响应于光标-请求JOAN帧,第一故障附近的第一节点向第二节点发送指示光标不能被转移(因为第二节点附近的第一故障)的光标-拒绝JOAN帧,从而冻结光标-拒绝JOAN帧所经过的相应入口节点的每个入口边缘。在图18的示例中,左箭头1800表示被从故障F1附近的第一节点发送至故障F2附近的第二节点的光标-拒绝JOAN帧。换句话说,由于远处的边缘(在图18中的故障F1附近)已经是故障点,它不能接受来自故障F2附近的节点的光标-请求JOAN帧,所以它将否定响应(即,光标-拒绝JOAN帧1800)发送回故障F2。在图19的示例中,光标-拒绝JOAN帧冻结父弧1810的入口边缘1805,如由与入口边缘重合的“X”所指示的。
如果1615中发射的光标-拒绝JOAN帧使得冻结来自父弧的入口边缘,则父弧将该冻结的边缘看作(指定)为在父弧中检测到的故障/破损,这发起一系列操作1622(操作1622中的一些在父弧中被执行),操作1622与在第二故障被检测到的弧中被执行的下一个操作1620(跟随着操作1615)同时被执行。在图20的示例中,父弧1810中的右箭头1820表示响应于父弧的入口边缘1805被冻结,在父弧中发起操作1622。下面在描述了操作1620之后将详细描述父弧中的并发操作1622。注意,冻结和回转(return)操作在父弧中都被解释为破损,所以方法700和1600将在父弧中被递归,由于父弧中所解释的破损尝试获得它们相应的弧中对光标的占有。
在1620处,响应于光标-拒绝JOAN帧,第二节点向第一节点发送逆转-入口JOAN帧,以:
a.逆转(即,回转)由逆转-入口JOAN帧经过的相应入口节点的每个入口边缘;以及
b.从第二节点直到由逆转-入口JOAN帧经过的入口节点(入口节点接纳入口边缘)中的第一入口节点,逆转弧中由逆转-入口JOAN帧经过的每个节点的链路。
在图21的示例中,右箭头2100表示从故障位置F2(现在的汇点(sink))附近的第二节点发送的逆转-入口JOAN帧,逆转-入口JOAN帧逆转由该JOAN帧从第二节点直到第一入口边缘1805所经过的链路中的每一个链路。此外,在图22的示例中,由于逆转-入口JOAN帧2100向弧1000的右端行进,逆转-入口JOAN帧2100逆转(或转向)入口边缘1805(这样入口边缘1805相对于弧1000变为“出口”边缘),如右箭头2200所指示的。
如上所述,冻结的入口边缘被看作(指定)为相应父弧中的故障,并且发起至少部分在父弧中被执行的并发操作1622。操作1622包括操作1625、1630、和1635,现在将详细描述它们。
在1625处,每个经逆转的入口边缘(来自相应的父弧)被看作为在相应父弧中检测到的故障。因此,父弧中的节点根据上述操作710来交换第一JOAN帧的第二实例,从而尝试将光标转移至父弧中对应于冻结的、逆转的入口边缘的边缘节点。返回图20的示例,父弧1810中的右箭头1820表示由对应于父弧1810中的边缘1805的边缘节点发送的、用于从父弧中最初持有光标的节点请求光标的光标-请求JOAN帧。
在1630处,如果使用第一JOAN帧的第二实例的交换,成功尝试转移父弧中的光标,则迄今冻结的、逆转的入口边缘被解冻。在图23的示例中,左箭头2300表示光标-授权JOAN帧将父弧1810中对光标的占有成功地转移至父弧的边缘节点,即,对转移父弧中的光标的尝试成功,并且父弧解冻入口边缘(现在逆转的)1805。所有其他父弧递归冻结它们的入口边缘。在图24的示例中,成功转移的光标被描绘为与父弧1810的边缘1805重合。注意,在父弧中随后出现两个破损的情况下,边缘1805的回转的链路将被重新冻结。
作为上述操作的结果,具有两个故障的弧(例如,弧1000)中发起的所有网络流量被引导朝向父弧(例如,父弧1810)并且经由解冻的、逆转的入口边缘(例如,入口边缘1805)进入父弧(例如,父弧1810)。一旦在父弧中,网络流量跟随路径到达目的地。
在一个实施例中,解冻操作1630触发附加JOAN帧,该附加JOAN帧使得弧中第一故障和第二故障附近的第一节点和第二节点获得对分离光标或半光标的占有,从而同样实现重新引导网络流量离开故障朝向父弧入口边缘。在图25的示例中,所触发的附加JOAN帧在左箭头2505和右箭头2510处被示出。总结图25,解冻的边缘1805触发JOAN帧2505和2510以允许弧1000中的故障F1和F2附近的破损边缘占有分离光标,该分离光标向内定向弧1000中的所有链路。触发的JOAN帧2505和2510还解冻所有入口边缘。在图26的示例中,左分离光标2605和右分离光标2610被描绘为与故障F2和F1重合。此外,父弧光标2615被描绘为与入口边缘1805重合,该入口边缘1805形成从弧1000到父弧1810的出口。换句话说,网络流量现在可以退出弧1000而朝向逆转的出口边缘1805。
转向图16中的1630,如果未成功尝试转移父弧中的光标,则方法710和1600在弧拓扑200中多个弧之间被递归执行,直到找到这样的弧,该弧可以针对在破损弧和任意破损的父弧中被阻塞的网络流量用作导向离开破损弧的出口弧。
方法1600中的数据面中的第二JOAN帧的交换以及父弧中也在数据面中的第一JOAN帧和第二JOAN帧的递归交换使得在不与网络的网络控制器进行任何交互的情况下(即,不与网络控制器交换OEM管理帧),在网络的弧中进行修复/重新路由。
多个弧中并发单个故障
图27-图34描绘了处理第三示例弧故障情形的连续阶段,其中,弧拓扑200中的多个弧中的每个弧同时发生单个故障作为SLRG故障的结果。根据上述方法700和1600以及这些方法的递归来处理每个单个故障。
图27描绘了弧拓扑200中的多个并发单个故障2700。
图28描绘了第一JOAN帧已经在破损的弧中被交换之后的弧拓扑200。第一JOAN帧的交换在故障位置放置汇点,如果可能则将光标转移至故障位置(在图28中光标被描绘为L形半光标),以及冻结到破损分段的入口边缘,其中破损分段可以包括一个或多个弧。
图29描绘了冻结的边缘2905和2910,该冻结的边缘2905和2910产生附加的破损分段以及附加JOAN帧2915的交换。
多个故障位置变为不能传递网络流量但是发射JOAN帧的汇点,如上所述。
图30描绘了由交换逆转-入口JOAN帧产生的回转的入口边缘2905和3005。
图31描绘了JOAN帧(例如,在3100处)跨多个故障弧递归交换,直到光标转移在父弧中被成功获得(即,被授权)并且父弧的入口(但是逆转的)边缘被解冻(例如,在边缘3005处)的结果。
图32描绘了由于解冻隔离分段中的边缘所产生的JOAN帧在3200处的另一交换,该交换将弧拓扑200的隔离分段中的所有入口边缘转换为出口边缘。
图33描绘了作为响应于多个故障来交换JOAN帧的结果而被重新配置或被修复的弧拓扑200。
图34描绘了具有引导网络流量的分离光标的弧拓扑200。左手侧3400对应于弧拓扑200的隔离分段。隔离分段是没有用于导向网络流量去往目的地的出口的分段。
结合图27-图34从上述讨论中可以看出,冻结已经具有破损的父弧中的出口边缘(该出口边缘相对于该父弧的子弧是入口)可能在父ARC中产生新的隔离分段,在这种情况下,父ARC中的JOAN帧无法获得光标。这个过程在父ARC中递归,进行冻结,并且然后回转所有入口链路(即,边缘),包括刚刚从子弧中被回转的链路。这可能反过来使得子弧回转该特定边缘,并且在一些情况下,这可能产生循环。为了在找到出口之前防止这种情况的发生,链路被逆转以及再次被逆转之间的时间段可能以逆转可能发生的次数指数地增长。因此,上述时间段和/或次数被限制在或被限于最大值(即,最大时间段和/或最大次数)。换句话说,当链路被冻结和被逆转时,在一段时间之后该链路可能被再次逆转,并且可以被逆转很多次。该段时间和次数应当被限于相应的最大值。示例最大时间段在10-30秒的范围内,但最大时间段可以大于或小于10-30秒。同样,逆转和冻结可以被重复的最大次数在5-10次内。但可以使用更多或更少的次数。
换句话说,本文提供的技术可以包括限制给定父弧的给定入口边缘被冻结和被逆转的连续实例之间的最大时间,被冻结和被逆转的连续实例作为在父弧中递归地执行方法700和1600的结果。类似地,本文提供的技术还可以包括限制给定弧的给定入口边缘被允许重复冻结和逆转的最大次数,重复冻结和逆转作为递归地执行方法700和1600的结果。
总之,在一个形式中,提供了方法,包括:在网络的路由弧中,该网络包括用于将网络流量无环路由至目的地的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,网络流量通过所述一个边缘节点和它相应的边缘退出弧,每个节点包括网络设备:在弧中检测第一故障;以及响应于检测到第一故障,通过网络中的数据面在弧之内的节点之间交换第一管理帧,从而将光标从最初持有光标的节点转移至第一故障附近的第一节点,并且视情况逆转弧中的链路,以便弧中的网络流量被引导离开第一故障且朝向弧的第一边缘节点,网络流量能够通过第一边缘节点退出弧。
在另一形式中,提供了系统,包括:网络的路由弧中的节点,该网络包括用于将网络流量无环路由至目的地网络的多个路由弧,节点通过可逆链路按序连接,可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,网络流量通过所述一个边缘节点和它相应的边缘退出弧,其中每个节点包括:接口单元,接口单元被配置为实现相应的可逆链路;以及处理器,处理器被耦合至网络接口单元;并且其中节点被配置为:在弧中检测第一故障;以及响应于检测到第一故障,通过网络中的数据面在弧内的节点之间交换第一管理帧,从而将光标从最初持有光标的节点转移至第一故障附近的第一节点,并且视情况逆转弧中的链路,以便弧中的网络流量被引导离开第一故障且朝向弧的第一边缘节点,网络流量能够通过第一边缘节点退出弧。
在另一形式中,提供了装置,包括:网络的路由弧中的节点,该网络包括用于将网络流量路由至目的地网络的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,并且网络流量通过所述一个边缘节点和它相应的边缘离开弧,节点包括接口单元,接口单元被配置为实现与邻近节点进行通信的相应链路,包括一个或多个可逆链路,以及处理器,处理器被耦合至网络接口单元,其中处理器被配置为:在链路的一个链路中检测到故障,并且响应于此,通过网络的数据面向弧之内的端节点发送光标-请求管理帧以请求占有光标;接收包括表示光标的令牌的数据面光标-授权管理帧,并且响应于此,接受令牌作为光标;以及接收指示光标请求被拒绝的数据面光标-拒绝管理帧,当光标-拒绝管理帧经过弧时,光标-拒绝管理帧冻结对于该弧是入口的父弧的一个或多个入口边缘。
在另一形式中,提供了用于存储指令的有形处理器可读介质,当指令由处理器执行时,使得处理器:在网络的路由弧中的节点中,网络包括用于将网络流量路由至目的地的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,网络流量通过所述一个边缘节点和它相应的边缘退出弧:在链路的一个链路中检测到故障,并且响应于此,通过网络的数据面向弧之内的端节点发送光标-请求管理帧以请求占有光标;接收包括表示光标的令牌的数据面光标-授权管理帧,并且响应于此,接受令牌作为光标;以及接收指示光标请求被拒绝的数据面光标-拒绝管理帧,当光标-拒绝管理帧经过弧时,光标-拒绝管理帧冻结对于该弧是入口的父弧的一个或多个入口边缘。
在另一形式中,方法包括:在网络的路由弧中的节点中,网络包括用于将网络流量路由至目的地的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,网络流量通过所述一个边缘节点和它相应的边缘退出弧:在链路中的一个链路中检测到故障,并且响应于此,通过网络的数据面向弧之内的端节点发送光标-请求管理帧以请求占有光标;接收包括表示光标的令牌的数据面光标-授权管理帧,并且响应于此,接受令牌作为光标;以及接收指示光标请求被拒绝的数据面光标-拒绝管理帧,当光标-拒绝管理帧经过弧时,光标-拒绝管理帧冻结对于该弧是入口的父弧的一个或多个入口边缘。
方法还可以包括,响应于接收光标-请求管理帧:如果网络流量能够通过节点退出弧,则发送数据面光标-授权帧。
方法还可以包括,响应于接收光标-请求管理帧:如果网络流量不能通过节点退出弧,则发送数据面光标-拒绝帧。
方法还可以包括,响应于接收光标-拒绝管理帧:将数据面逆转-入口JOAN帧发送至弧之内的端节点,从而逆转进入弧的一个或多个入口边缘的方向,以便弧中的流量能够通过被逆转的入口边缘退出弧。
方法还可以包括:将故障检测为可逆链路中的破损的可逆链路。
方法还可以包括:将故障检测为链路中是入口边缘的冻结的链路。
虽然装置、系统、和方法在本文中被示出和描述为实施在一个或多个特定示例中,但是它不旨在被限于这些示出的细节,由于在不偏离装置、系统、和方法的范围以及在权利要求的等同物的范围和界限之内可以做出各种修改和结构变化。因此,所附权利要求被广泛地并且以与(如下面的权利要求所详细阐述的)装置、系统、和方法的范围相一致的方式被解释是适当的。
Claims (22)
1.一种方法包括:
在网络的路由弧中执行下述步骤,其中所述网络包括用于将网络流量无环路由至目的地的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,所述可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,所述网络流量通过所述一个边缘节点和它相应的边缘退出所述弧,每个节点包括网络设备:
在所述弧中检测第一故障;以及
响应于检测到所述第一故障,通过所述网络中的数据面在所述弧内的节点之间交换第一管理帧,从而将所述光标从所述最初持有光标的节点转移至所述第一故障附近的第一节点,并且视情况逆转所述弧中的链路,以便所述弧中的网络流量被引导离开所述第一故障且朝向所述弧的所述第一边缘节点,所述网络流量能够通过所述第一边缘节点退出所述弧。
2.如权利要求1所述的方法,其中,检测故障包括:
周期性地在所述第一边缘节点和第二边缘节点之间来回发送故障-检测管理帧;以及
当被从所述第一边缘节点和第二边缘节点中的一个边缘节点发送至所述第一边缘节点和第二边缘节点中的另一边缘节点的故障-检测管理帧中的一个故障-检测管理帧没有在所述第一边缘节点和第二边缘节点中的另一边缘节点处被接收时,检测到所述第一故障。
3.如权利要求1所述的方法,其中,交换第一管理帧包括:
在使得光标-请求管理帧经过所述最初持有光标的节点的方向上,从所述第一节点向所述第一边缘节点发送所述光标-请求管理帧;
响应于所述光标-请求管理帧,将光标-授权管理帧从所述第一边缘节点发送回所述第一节点;以及
响应于所述光标-授权管理帧经过所述最初持有光标的节点和其后包括所述第一节点的接下来的节点:
将所述光标从所述最初持有光标的节点转移至所述第一节点;以及
逆转所述接下来的节点中的每一个节点的链路,以便所述弧中的网络流量随后被引导离开所述第一节点且朝向所述第一边缘节点。
4.如权利要求3所述的方法,其中,转移光标包括:
当所述光标-授权管理帧经过所述最初持有光标的节点时,将表示所述光标的令牌转移至所述光标-授权管理帧;以及
当所述光标-授权管理帧在所述第一节点处被接收时,在所述第一节点处接受所述令牌作为所述光标;并且
所述逆转包括:响应于所述光标-授权管理帧中存在所述令牌,当所述光标-授权管理帧经过所述接下来的节点中的每一个节点时,逆转所述接下来的节点中的每一个节点处的链路。
5.如权利要求1所述的方法,其中,所述弧包括一个或多个入口节点,每个入口节点与相应父弧的相应入口边缘相连接,所述相应入口边缘将父弧中的网络流量引导朝向相应入口节点,所述方法还包括:
在所述弧中检测第二节点附近的第二故障,所述第二故障与所述第一节点附近的所述第一故障相间隔;以及
响应于检测到第二故障,在所述弧中的节点之间交换第二管理帧,以:
冻结每个入口节点,从而防止相应父弧中的网络流量进入所述弧;
逆转每个入口边缘,以便所述弧中发起的并且经过所述相应入口节点的网络流量将被引导朝向所述相应父弧;以及
视情况逆转所述弧中的链路,以便所述弧中发起的所有网络流量被引导至入口边缘。
6.如权利要求5所述的方法,其中,交换第二管理帧还包括:
从所述第二节点向所述第二边缘节点发送光标-请求管理帧;
响应于所述光标-请求管理帧,从所述第一节点向所述第二节点发送光标-拒绝管理帧,所述光标-拒绝管理帧指示所述光标不能被转移并且冻结由所述光标-拒绝管理帧经过的相应入口节点中的每一个入口边缘;以及
响应于所述光标-拒绝管理帧,从所述第二节点向所述第一节点发送逆转-入口管理帧,以:
逆转由所述逆转-入口管理帧经过的相应入口节点中的每个入口边缘;以及
从所述第二节点直到由所述逆转-入口管理帧经过的入口节点中的第一入口节点,逆转所述弧中由所述逆转-入口管理帧经过的每个节点的链路。
7.如权利要求5所述的方法,还包括在每个父弧中:
将被冻结的、逆转的入口边缘指定为在所述父弧中检测到的故障;
在所述父弧中交换第一管理帧的第二实例,从而尝试将所述光标转移至对应于所述被冻结的、逆转的入口边缘的所述父弧的边缘;
如果所述尝试成功,则解冻所述被冻结的、逆转的入口边缘;以及
否则,则在所述多个弧中递归地执行交换第一JOAN和交换第二管理帧,直到找到这样的弧,该弧能够针对所述弧和检测到故障的任意父弧中被阻塞的网络流量被用作导向离开破损弧的出口弧。
8.如权利要求7所述的方法,还包括:
限制给定父弧的给定入口边缘被冻结和被逆转的连续实例之间的最大时间,其中给定父弧的给定入口边缘被冻结和被逆转的连续实例作为所述递归执行的结果。
9.如权利要求7所述的方法,还包括:
限制给定弧的给定入口边缘被允许重复冻结和逆转的最大次数,其中,给定弧的给定入口边缘被允许重复冻结和逆转作为所述递归执行的结果的。
10.一种系统,包括:
节点,所述节点在网络的路由弧中,所述网络包括用于将网络流量无环路由至目的地网络的多个路由弧,所述节点通过可逆链路按序连接,所述可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,所述网络流量通过所述一个边缘节点和它相应的边缘退出所述弧,其中每个节点包括:
接口单元,所述接口单元被配置为实现相应的可逆链路;以及
处理器,所述处理器被耦合至所述网络接口单元;并且
其中,所述节点被配置为:
在所述弧中检测第一故障;以及
响应于检测到所述第一故障,通过所述网络中的数据面在所述弧内的节点之间交换第一管理帧,从而将所述光标从所述最初持有光标的节点转移至所述第一故障附近的第一节点,并且视情况逆转所述弧中的链路,以便所述弧中的网络流量被引导离开所述第一故障其朝向所述弧的所述第一边缘节点,所述网络流量能够通过所述第一边缘节点退出所述弧。
11.如权利要求10所述的系统,其中,所述节点被配置为通过以下步骤来检测所述故障:
周期性地在所述第一边缘节点和第二边缘节点之间来回发送故障-检测管理帧;以及
当被从所述第一边缘节点和第二边缘节点中的一个边缘节点发送至所述第一边缘节点和第二边缘节点中的另一边缘节点的故障-检测管理帧中的一个故障-检测管理帧没有在所述第一边缘节点和第二边缘节点中的另一边缘节点处被接收时,检测到所述第一故障。
12.如权利要求10所述的系统,其中,所述节点被配置为通过以下步骤来交换所述第一管理帧:
在使得光标-请求管理帧经过所述最初持有光标的节点的方向上,从所述第一节点向所述第一边缘节点发送所述光标-请求管理帧;
响应于所述光标-请求管理帧,将光标-授权管理帧从所述第一边缘节点发送回所述第一节点;以及
响应于所述光标-授权管理帧经过所述最初持有光标的节点和其后包括所述第一节点的接下来的节点:
将所述光标从所述最初持有光标的节点转移至所述第一节点;以及
逆转所述接下来的节点中的每一个节点的链路,以便所述弧中的网络流量随后被引导离开所述第一节点且朝向所述第一边缘节点。
13.如权利要求12所述的系统,其中:
所述节点被配置为通过以下步骤来执行所述光标的转移:
当所述光标-授权管理帧经过所述最初持有光标的节点时,将表示所述光标的令牌转移至所述光标-授权管理帧;以及
当所述光标-授权管理帧在所述第一节点处被接收时,在所述第一节点处接受所述令牌作为所述光标;并且
所述节点被配置为通过如下步骤来执行所述逆转:响应于所述光标-授权管理帧中存在所述令牌,当所述光标-授权管理帧经过所述接下来的节点中的每一个节点时,逆转所述接下来的节点中的每一个节点处的链路。
14.如权利要求10所述的系统,其中,所述节点包括所述弧的一个或多个入口节点,每个入口节点与相应父弧的相应入口边缘相连接,所述相应入口边缘将父弧中的网络流量引导朝向相应入口节点,其中所述节点还被配置为:
在所述弧中检测第二节点附近的第二故障,所述第二故障与所述第一节点附近的所述第一故障相间隔;以及
响应于检测到第二故障检测,在所述弧中的节点之间交换第二管理帧,以:
冻结每个入口节点,从而防止相应父弧中的网络流量进入所述弧;
逆转每个入口边缘,以便所述弧中发起的并且经过所述相应入口节点的网络流量将被引导朝向所述相应父弧;以及
视情况逆转所述弧中的链路,以便所述弧中发起的所有网络流量被引导至入口边缘。
15.如权利要求14所述的系统,其中,所述节点被配置为通过以下步骤来交换所述第二管理帧:
从所述第二节点向所述第二边缘节点发送光标-请求管理帧;
响应于所述光标-请求管理帧,从所述第一节点向所述第二节点发送光标-拒绝管理帧,所述光标-拒绝管理帧指示所述光标不能被转移并且冻结由所述光标-拒绝管理帧经过的相应入口节点中的每一个入口边缘;以及
响应于所述光标-拒绝管理帧,从所述第二节点向所述第一节点发送逆转-入口管理帧,以:
逆转由所述逆转-入口管理帧经过的相应入口节点中的每个入口边缘;以及
从所述第二节点直到由所述逆转-入口管理帧经过的入口节点中的第一入口节点,逆转所述弧中由所述逆转-入口管理帧经过的每个节点的链路。
16.如权利要求14所述的系统,还包括每个父弧中的节点,其中所述每个父弧中的节点被配置为:
将被冻结的、逆转的入口边缘指定为在所述父弧中检测到的故障;
在所述父弧中交换第一管理帧的第二实例,从而尝试将所述光标转移至对应于所述被冻结的、逆转的入口边缘的所述父弧的边缘;
如果所述尝试成功,则解冻所述被冻结的、逆转的入口边缘;以及
否则,则在所述多个弧中递归地执行对第一JOAN的交换和对第二管理帧的交换,直到找到这样的弧,该弧能够针对所述弧和检测到故障的任意父弧中被阻塞的网络流量被用作导向离开破损弧的出口弧。
17.一种装置包括:
节点,所述节点在网络的路由弧中,所述网络包括用于将网络流量路由至目的地的多个路由弧,每个路由弧包括通过可逆链路按序连接的节点,所述可逆链路被导向离开最初持有光标的节点且朝向弧的相对端处的第一边缘节点和第二边缘节点以及它们相应的边缘中的一个边缘节点和它相应的边缘,所述网络流量通过所述一个边缘节点和它相应的边缘退出所述弧,所述节点包括接口单元,所述接口单元被配置为实现与邻近节点进行通信的相应链路,所述链路包括一个或多个可逆链路,以及处理器,所述处理器被耦合至所述网络接口单元,其中所述处理器被配置为:
在所述链路的一个链路中检测到故障,并且响应于此,通过所述网络的数据面向所述弧内的端节点发送光标-请求管理帧以请求占有光标;
接收数据面光标-授权管理帧,该数据面光标-授权管理帧包括表示所述光标的令牌,并且响应于此,接受所述令牌作为所述光标;以及
接收指示所述光标请求被拒绝的数据面光标-拒绝管理帧,当所述光标-拒绝管理帧经过所述弧时,所述光标-拒绝管理帧冻结对于所述弧是入口的父弧的一个或多个入口边缘。
18.如权利要求17所述的装置,其中所述处理器还被配置为,响应于接收所述光标-请求管理帧:
如果网络流量能够通过所述节点退出所述弧,则发送数据面光标-授权帧。
19.如权利要求18所述的装置,其中所述处理器还被配置为,响应于接收所述光标-请求管理帧:
如果网络流量不能通过所述节点退出所述弧,则发送数据面光标-拒绝帧。
20.如权利要求17所述的装置,其中所述处理器还被配置为:
响应于接收所述光标-拒绝管理帧,将数据面逆转-入口JOAN帧发送至所述弧内的端节点,从而逆转进入所述弧的一个或多个入口边缘的方向,以便所述弧中的流量能够通过被逆转的入口边缘退出所述弧。
21.如权利要求17所述的装置,其中所述处理器还被配置为:
将所述故障检测为所述可逆链路中的破损的可逆链路。
22.如权利要求17所述的装置,其中所述处理器还被配置为:
将所述故障检测为所述链路中是入口边缘的的冻结的链路。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361913555P | 2013-12-09 | 2013-12-09 | |
US61/913,555 | 2013-12-09 | ||
US14/155,562 | 2014-01-15 | ||
US14/155,562 US9485136B2 (en) | 2013-12-09 | 2014-01-15 | Repair of failed network routing arcs using data plane protocol |
PCT/US2014/068316 WO2015088851A1 (en) | 2013-12-09 | 2014-12-03 | Repair of failed network routing arcs using data plane protocol |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105814847A true CN105814847A (zh) | 2016-07-27 |
CN105814847B CN105814847B (zh) | 2019-04-16 |
Family
ID=53272269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480067503.9A Expired - Fee Related CN105814847B (zh) | 2013-12-09 | 2014-12-03 | 使用数据面协议来修复故障网络路由弧 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9485136B2 (zh) |
EP (1) | EP3080956B1 (zh) |
CN (1) | CN105814847B (zh) |
WO (1) | WO2015088851A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9088502B2 (en) | 2011-05-23 | 2015-07-21 | Cisco Technology, Inc. | Generating a loop-free routing topology using routing arcs |
US9485136B2 (en) | 2013-12-09 | 2016-11-01 | Cisco Technology, Inc. | Repair of failed network routing arcs using data plane protocol |
CN105099904B (zh) * | 2014-04-30 | 2018-06-05 | 华为技术有限公司 | 一种确定中间路由节点的方法、装置及系统 |
US20180123871A1 (en) * | 2015-03-23 | 2018-05-03 | Nec Corporation | Information processing device, repeating device, information processing system and method, and program |
US9813340B2 (en) | 2015-06-30 | 2017-11-07 | Cisco Technology, Inc. | Class-aware load balancing using data-plane protocol in a loop-free multiple edge network topology |
JP6575393B2 (ja) * | 2016-02-22 | 2019-09-18 | 富士通株式会社 | 通信制御装置及び通信システム |
US9760477B1 (en) * | 2016-04-12 | 2017-09-12 | Linkedin Corporation | Self-healing job executor pool |
US10142185B2 (en) | 2016-06-08 | 2018-11-27 | At&T Intellectual Property I, L.P. | Content quality assessment and prediction via flows |
US20180121773A1 (en) * | 2016-11-03 | 2018-05-03 | Smarthin Technologies, Inc. | Rfid tag and methods of use and manufacture and rfid monitoring cabinet and smart phone case and methods of use |
CN108234205B (zh) * | 2017-12-29 | 2021-11-12 | 中国电子科技网络信息安全有限公司 | 一种网络拓扑结构及其信息呈现方法 |
CN113615132B (zh) * | 2019-03-15 | 2023-04-28 | 华为技术有限公司 | 快速泛洪拓扑保护 |
DE102019107248A1 (de) * | 2019-03-21 | 2020-09-24 | Eaton Intelligent Power Limited | Busanordnung und Verfahren zum Betreiben einer Busanordnung |
US11778470B2 (en) * | 2019-10-11 | 2023-10-03 | Qualcomm Incorporated | Protection of control signaling in a wireless backhaul network |
CN111355610A (zh) * | 2020-02-25 | 2020-06-30 | 网宿科技股份有限公司 | 一种基于边缘网络的异常处理方法及装置 |
CN117176546A (zh) * | 2022-05-26 | 2023-12-05 | 华为技术有限公司 | 故障处理方法、相关设备和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101390321A (zh) * | 2006-01-17 | 2009-03-18 | 思科技术公司 | 用于检测跨路由信息边界的无回路路径的技术 |
WO2012079630A1 (en) * | 2010-12-15 | 2012-06-21 | Telefonaktiebolaget L M Ericsson (Publ) | Segment recovery in connection-oriented network |
US20120300668A1 (en) * | 2011-05-23 | 2012-11-29 | Cisco Technology, Inc. | Generating a loop-free routing topology using routing arcs |
US20130301470A1 (en) * | 2012-05-09 | 2013-11-14 | Cisco Technology, Inc. | Generating a loop-free routing topology based on merging buttressing arcs into routing arcs |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7969862B1 (en) * | 2003-03-04 | 2011-06-28 | Ciena Corporation | Cycle-based restoration in mesh networks utilizing bandwidth and flow considerations |
WO2006002665A1 (en) * | 2004-06-30 | 2006-01-12 | Telecom Italia S.P.A. | Method and system for network topology updating using topology perturbation |
US8385345B2 (en) * | 2007-09-19 | 2013-02-26 | At&T Intellectual Property Ii, L.P. | Data forwarding in hybrid mesh networks |
US8578054B2 (en) * | 2008-03-07 | 2013-11-05 | Cisco Technology, Inc. | Computing disjoint paths for reactive routing mesh networks |
CN101741709B (zh) * | 2008-11-06 | 2012-08-22 | 华为技术有限公司 | 建立标签交换路径的方法、系统及网络节点 |
US8787303B2 (en) * | 2010-10-05 | 2014-07-22 | Cisco Technology, Inc. | Methods and apparatus for data traffic offloading at a router |
US8897135B2 (en) | 2012-02-10 | 2014-11-25 | Cisco Technology, Inc. | Recursive load balancing in a loop-free routing topology using routing arcs |
US9112788B2 (en) * | 2012-10-10 | 2015-08-18 | Cisco Technology, Inc. | Bicasting using non-congruent paths in a loop-free routing topology having routing arcs |
US9258210B2 (en) * | 2013-10-01 | 2016-02-09 | Juniper Networks, Inc. | Dynamic area filtering for link-state routing protocols |
US9350605B2 (en) * | 2013-10-11 | 2016-05-24 | Ciena Corporation | Method and apparatus for multi-instance control plane for dynamic MPLS-TP tunnel management via in-band communication channel (G-ACH) |
US9485136B2 (en) | 2013-12-09 | 2016-11-01 | Cisco Technology, Inc. | Repair of failed network routing arcs using data plane protocol |
-
2014
- 2014-01-15 US US14/155,562 patent/US9485136B2/en active Active
- 2014-12-03 CN CN201480067503.9A patent/CN105814847B/zh not_active Expired - Fee Related
- 2014-12-03 WO PCT/US2014/068316 patent/WO2015088851A1/en active Application Filing
- 2014-12-03 EP EP14819204.0A patent/EP3080956B1/en not_active Not-in-force
-
2016
- 2016-10-03 US US15/284,000 patent/US9699075B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101390321A (zh) * | 2006-01-17 | 2009-03-18 | 思科技术公司 | 用于检测跨路由信息边界的无回路路径的技术 |
WO2012079630A1 (en) * | 2010-12-15 | 2012-06-21 | Telefonaktiebolaget L M Ericsson (Publ) | Segment recovery in connection-oriented network |
US20120300668A1 (en) * | 2011-05-23 | 2012-11-29 | Cisco Technology, Inc. | Generating a loop-free routing topology using routing arcs |
US20130301470A1 (en) * | 2012-05-09 | 2013-11-14 | Cisco Technology, Inc. | Generating a loop-free routing topology based on merging buttressing arcs into routing arcs |
Also Published As
Publication number | Publication date |
---|---|
US20150163091A1 (en) | 2015-06-11 |
US9485136B2 (en) | 2016-11-01 |
EP3080956B1 (en) | 2019-05-08 |
US9699075B2 (en) | 2017-07-04 |
CN105814847B (zh) | 2019-04-16 |
EP3080956A1 (en) | 2016-10-19 |
US20170026279A1 (en) | 2017-01-26 |
WO2015088851A1 (en) | 2015-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105814847A (zh) | 使用数据面协议来修复故障网络路由弧 | |
US9794167B2 (en) | Bicasting using non-congruent paths in a loop-free routing topology having routing arcs | |
EP3350963B1 (en) | Control traffic in software defined networks | |
CN101124785B (zh) | 用于网络可达性检测的系统和方法 | |
CN105052093B (zh) | 具有循环抑制的最短路径桥接(spb)增强弹性的方法和系统 | |
US9998362B2 (en) | Centralized data path establishment augmented with distributed control messaging | |
US7042838B1 (en) | Method and apparatus for forwarding data in a data communications network | |
EP2880826B1 (en) | Label distribution and route installation in a loop-free routing topology using routing arcs | |
US20110305167A1 (en) | Communication system, and method of collecting port information | |
CN111698152B (zh) | 一种故障保护方法、节点及存储介质 | |
US20170111296A1 (en) | Handling dynamic port/lag changes without breaking communication in an extended bridge | |
CN102106121A (zh) | 用于高可用性网络的环耦合节点 | |
CN104980349A (zh) | 中继系统以及交换机装置 | |
CN101099086A (zh) | 用于在数据通信网络中构造绕过不可用组件的修复路径的方法和装置 | |
CN104954256A (zh) | 用于重新配置点到多点标签交换路径的装置、系统和方法 | |
WO2008056838A1 (en) | System and method for controlling network traffic | |
WO2014089138A1 (en) | Method and apparatus for connectivity control in a data center network | |
US20150036685A1 (en) | Multicast label distribution protocol over a remote loop-free alternative | |
CN105049349A (zh) | 中继系统以及交换机装置 | |
WO2014075594A1 (zh) | 基于多环结构网络相交环的业务的传输保护方法及装置 | |
JP5669955B2 (ja) | ネットワーク構成方法、リング型ネットワークシステム及びノード | |
US20210067438A1 (en) | Multicast transmissions management | |
WO2018040809A1 (zh) | P2mp组播隧道保护的方法、装置、系统及设备 | |
JP4239833B2 (ja) | 予備経路予約方法 | |
CN104067564A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190416 Termination date: 20201203 |
|
CF01 | Termination of patent right due to non-payment of annual fee |