在数据通信网络中转发数据的利记博彩app

文档序号:7940105阅读:342来源:国知局
专利名称:在数据通信网络中转发数据的利记博彩app
技术领域
本公开总地涉及数据通信网络。本发明更具体而言涉及用于在数据通信网络中转
发数据的方法。
背景技术
除非这里另有指明,否则这一部分中描述的方法并不是本申请中权利要求的现有 技术,并且不因为被包括在这一部分中而被承认是现有技术。 在诸如因特网之类的计算机网络中,数据的分组根据各种路由选择协议之一,经 由包括链路(诸如电话或光线路之类的通信路径)和节点(例如,沿着连接到它的多条链 路中的一条或多条引导分组的路由器)在内的元件的网络被从源发送到目的地。
—类路由选择协议是链路状态协议。链路状态协议依赖存在于每个节点处的路由 选择算法。网络上的每个节点在整个网络中通告去往邻居节点的链路,并且提取与每个链 路相关联的代价,该代价可以基于诸如链路带宽或延迟之类的任何适当度量并且通常被表 达为整数值。链路可具有非对称的代价,即,沿着链路的方向AB上的代价可能不同于方向 BA上的代价。基于以链路状态分组的形式通告的信息,每个节点构造作为整个网络拓扑的 地图的链路状态数据库(LSDB),并且一般根据该数据库基于诸如最短路径优先(SPF)算法 之类的适当算法来构造去往每个可用节点的单个最优路由。结果,构造出了"最短路径生 成树"(SPT),其以该节点为根,并且示出了去往每个可用的目的地节点的、包括中间节点的 最优路径。SPF的结果被存储在路由选择信息库(RIB)中,并且基于这些结果,转发信息库 (FIB)或转发表被更新,以适当地控制分组的转发。当发生网络变化时,表示该变化的链路 状态分组被与该变化相邻的每个节点通过网络流播(flood),接收到链路状态分组的每个 节点将其发送到每个相邻节点。 结果,当针对目的地节点的数据分组到达一节点时,接收节点识别去往该目的地 的最优路由,并将分组转发到沿着该路由的下一节点。下一节点重复此步骤,依此类推。
在正常的转发中,每个节点在不考虑它从哪个节点接收到分组的情况下决定应当 把该分组转发到的下一节点。在一些情况下,这可能引起"环路",其中一组节点的转发判 决导致在这些节点之间以环路方式无止境地转发分组,而无法到达目的地。尤其,当数据库 (以及相应的转发信息)在路由选择转变期间临时失同步时,环路可能发生。例如,因为网 络中的变化,新的LSP可能被传播,其导致在RIB或FIB中产生环路。作为一具体示例,如 果节点A经由构成根据其SPF的最优路由的节点B发送分组到节点Z,那么节点B根据其 SPF可能判定去往节点Z的最佳路由是经过节点A的,并且节点B随后可能把分组发回。只 要在RIB或FIB中仍表示着环路,发生环路的转发就可能一直继续,但通常分组将会具有最 大跳数,在此之后它被丢弃。这种环路可能是两个节点之间的直接环路或者在一系列节点 之间的间接环路。


本发明在附图中以示例方式而非限制方式示出,附图中类似的标号指代相似的元 件,其中 图1是图示出构造修复路径的方法的网络的表示;
图2是图示出构造修复路径的方法的流程图;
图3是LSP中携带的信息的示意性表示; 图4是图示出在不可用节点的邻居节点处构造的转发表的示图;
图5是图示出用于在网络中转发数据的方法的网络的表示; 图6是更详细图示出在修复终点节点处实现的用于在网络中转发数据的方法的 流程图; 图7A是更详细图示出用于在网络中转发数据的方法的网络的表示;
图7B示出了被节点B传播的LDP消息; 图8是更详细图示出在修复路径节点处实现的用于在网络中转发数据的方法的 流程图; 图9是图示出在修复路径节点处根据这里描述的方法构造的转发表的示图;
图10是更详细图示出修复节点处的这里描述的方法的流程图;
图11是图示出在修复节点处构造的转发表的示图;并且 图12是图示出用于构造修复路径的方法可在其上实现的计算机系统的框图。
具体实施例方式
描述了用于在数据通信网络中转发数据的方法和装置。在以下描述中,出于说明
目的,阐述了许多具体细节以帮助透彻理解本发明。但是,对于本领域的技术人员来说很明
显的是,没有这些具体细节也能实现本发明。在其他实施例中,公知的结构和设备以框图形
式示出,以避免不必要地模糊本发明的主题。
这里根据以下大纲来描述实施例 1. 0综述 2. 0结构和功能概述 2. 1用于转发数据的第一方法的概述 2. 2用于转发数据的第二方法的概述 3. 0用于在数据通信网络中转发数据的第二方法的示例性实现方式
4. 0实现机构_硬件概述
5. 0扩展和替代
1. 0综述 前述"背景技术"中确定的需求以及从以下描述中将变得清楚的其他需求和目的 在本发明中得以实现,本发明在一个方面中包括一种用于在数据通信网络中转发数据的装 置,该数据通信网络具有节点和其间的链路作为组件,该装置包括网络接口 ,被配置为耦 合到具有节点和其间的链路作为组件的数据通信网络;第一逻辑,其在被执行时能够操作 来接收修复地址;第二逻辑,其在被执行时能够操作来计算从修复节点到该修复地址的修 复路径,该修复路径绕过了所述装置和修复节点之间的主转发路径上的故障组件;以及第三逻辑,其在被执行时能够操作来沿着包括该修复路径的标签交换路径(LSP)将该修复地 址传播到该修复节点。该装置提供了在计算网络中绕过故障组件的修复路径时的更高效 率,因为利用所公开的装置和方法不执行不必要的计算。 在一个特征中,该LSP包括多协议标签交换LSP。在另一特征中,该装置还包括在
被执行时能够操作来将标识该修复路径上的节点的路径向量与该修复地址一起传播的逻
辑。在另一特征中,该路径向量只标识传播节点和修复节点之间的节点。 在另一特征中,故障组件包括节点、链路和共享风险链路组(SRLG)中的至少一
种。在另一特征中,修复是根据链路状态协议来计算的。 在另一特征中,修复路径是通过执行以修复节点为根的递增式最短路径优先 (iSPF)过程来计算的。在另一特征中,该装置还包括在被执行时能够操作来计算在修复节 点处是否有无环路替代(LFA)修复路径可用并且仅在没有LFA可用的情况下计算从修复节 点起的修复路径并传播修复地址。 在另一特征中,该装置还包括在被执行时能够操作来每隔一段时间刷新修复路径 的逻辑。在另一特征中,该装置还包括在被执行时能够操作来撤消未被刷新的路径的逻辑。 在另一特征中,该装置还包括修复节点,该修复节点还包括在被执行时能够操作来在故障 组件故障后沿LSP转发数据的逻辑。 在其他方面中,本发明包括被配置为执行上述步骤的计算机装置和计算机可读介质。 2. 0结构和功能概述 2. 1用于转发的第一方法的概述 图1图示出用于在网络中转发数据的第一方法可应用到的示例性网络。该网络包 括主节点P (标号200)、源节点S以及节点A、B和C (标识202、204、206、208),源节点S以及 节点A、B和C中的每一个经由相应的链路210、212、214、216连接到节点P。另一节点D(标 号218)经由链路220连接到节点B。除了分配给每个节点的标准地址外,网络中的每个接口 还被分配一个额外的修复地址,该额外的修复地址被称为"不过地址"(notvia address)。 寻址到不过地址的分组必须被递送到具有该地址的路由器,并且不经过被分配该地址的接 口上的邻居路由器。 例如,从节点P通过相应的链路210、212、214、216到节点S、A、B、C的接口可具有 地址Pa、 PE、 P孑和P;。类似地,在相反方向上从节点A、 B、 C和S分别经由链路212、214、 216、210到节点P的接口具有地址AF、BF、CF和SF。 为了修复故障,修复节点,例如节点S,把分组封装到在该故障的远侧的节点接口 的不过地址。修复路径上的节点于是知道它们必须把该分组递送到哪个节点,以及它们必 须避开哪个网络组件。 参考图1,假定S有一针对某个目的地D的分组,它通常会经由P和B发送该分组, 并且假定S怀疑P发生了故障,于是S把该分组封装到B^。从S到的路径被确定为不经 过P从S到B的最短路径。如果网络包含从S到B的、不通过路由器P的路径,则该分组将 被成功地递送到B。例如,该分组可沿着路径222被转发到节点X224,然后沿着路径226被 转发到节点D。因为节点X已经计算出了针对的修复路径,所以它将正确地转发被封装 的分组。当寻址到的分组到达B时,B去除封装并把修复的分组转发到其最终目的地, 即节点D。
6
参考图2可进一步理解前述方法,图2是在较高级别图示出这里应用的方法的流 程图。 在块300,节点p利用诸如链路状态分组之类的通知来通告其邻居a、 b、 c、 s及其
相关联的不过地址p;pE、p&p;充当通知节点的所有其他节点也将发出类似的链路状态
分组。结果,不仅能够构造适当的转发表,而且每个节点在发生故障或因其他原因而变为不
可用节点的情况下还有不过地址可用,在此情况下不过地址可被用作修复地址。 相应地,在块302中,所有参与的节点不仅针对每个正常(无故障)地址而且针对
每个不过地址计算其下一跳。结果,每个节点构造出绕过网络中的每个其他节点的修复路
径,并且将其相对于相应的不过地址存储起来。 在节点p随后在块304中发生故障或者因其他原因变得不可用的情况下,于是在 块306中,邻居节点以任何适当的方式检测该故障或被通知该故障。如果一邻居节点随后 接收它本来会发送到作为其下一跳的故障组件的分组,则在块308中,充当修复节点的该 邻居节点识别一修复终点或目标,它必须将这样的分组隧传(tu皿el)到该修复终点或目 标以到达其随后的目的地。 在以上给出的示例中,修复节点是节点s,并且对于具有目的地d的分组,修复终 点是节点b,由相应的不过地址b;标识。结果,在块310中,节点s沿着修复路径将分组隧
传到bF。 在块312中,每个下一跳朝着不过地址b^转发被封装的分组;例如,图1中的节点 x正确地转发分组。因为所有参与的节点已经利用相同的修复拓扑计算出去往不过地址的 路径,所以分组被利用正常ip转发来转发,而不要求扩展转发代码。在块314中,分组到达 修复终点,修复终点对分组进行解封,并把原始分组朝着其目的地转发,其中同样利用了正 常ip转发,在所描述的示例中针对的是目的地d。 再次参考图l,为了允许网络上的每个被使能的节点构造针对故障网络组件(链 路或节点)的修复拓扑,每个节点必须通告其不过地址以及存储在其链路状态分组中的其 他有关信息。 图3是示意性地示出由节点p发出的链路状态分组中包含的信息的示图。除了对 每个邻居及其相关联的度量(例如,与各个链路相关联的代价)的通告外,还提供另外的信 息。例如,在邻居信息在列400中提供并且相关联的度量在列402中提供的情况下,除此之 外,针对每个邻居的不过地址在列404中提供。不过地址与各个邻居相关联,使得相对于节 点a的条目实际上指定p丄只要语义被接收链路状态分组的节点所认可,那么不过地址本 身可以采取因特网协议地址的形式,在图3中示为"a.a.a.a",表示p^,依此类推。由于网 络中的每个节点提供类似的信息,所以每个节点能够针对网络上的每一个不过地址得出修 复路径。 结果,每个节点更一般地计算在任何可能的节点故障的情况下它将会使用的路 径,如图1的示例中所示,其中节点s在节点p故障的情况下把以节点d为目的地的分组封 装到pl每个节点因此一次一个地假设网络中的每个其他路由器发生故障,并且计算其自 己的去往该节点的每个邻居的最佳路由。在图1的环境中,某个路由器x将会依次把每个 节点看作p,认为p故障,并随后计算其自己的去往由p的邻居通告的每个不过p地址的最 佳路由,即,x在每种情况下计算其去往sF、 AF、和的路由,而不经过p。
图4是图示出在节点S处得出的转发表的有关部分的示图。对于每个地址(列 500),得出下一跳(列502),指定不过地址(列504),并且还实现相应的修复地址(列506)。 例如,在目的地是节点B并且下一跳被计算为节点P的情况下,那么除此之外,分组将被隧 传到的修复地址B^与相应的修复下一跳一起被存储。在此情况下,在图1的示例中,这是 沿着从节点S到节点X的路径222上的第一跳;第一跳被表示为沿着从节点S起的链路230 的节点Z(标号228)。 在以节点D为目的地的分组的情况下,正常下一跳是节点P,并且修复地址是BF, 其结果是,对于被封装到BF的分组,修复下一跳再一次是节点Z。如果节点A是目的地地 址,则下一跳是节点P,并且修复地址是A^从而提供某个修复下一跳QJ未示出)。节点S 的转发表中的修复地址将始终是邻居的邻居,邻居的邻居是修复隧道终点。然而,在列500 中的正常地址是不过地址的情况下,例如CF,则虽然下一跳被提供为沿着从节点S起的链 路234的节点Y(标号232),但不提供修复地址和修复下一跳。结果,当其位于另一节点的 修复路径中时,节点S将利用正常转发把分组转发到不过地址,而不会在传入分组已经以 不过地址为目的地时发动被隧传到不过地址的修复。 在此方法中,利用递增式SPF(iSPF)可以减少SPF计算开销。 一般地,递增式SPF 是通过从SPT中去除一组件并且重新附接先前经由切离的组件可达的所有组件来实现的。 SPF算法可在所有组件都被重新附接时终止,而不是对所有组件重新计算整个SPF。然而, 此部分的方法要求大量的计算来为网络的全部或一大部分获得不过地址,即使只有在沿着 修复路径的节点处才会需要不过地址FIB条目。
2.2.用于转发数据的第二方法的概述 现在参考图5和图6来描述用于在数据通信网络中转发数据的第二方法。图5示 出了该方法可应用到的例示性网络,并且图6是在高级别示出这里描述的方法中涉及的步 骤的流程图。 如图5所示,简单网络配置包括节点A、B、X、Y、Z,即标号500、502、504、506和508。 节点A通过相应的链路510、512连接到节点B和X,并且节点Z通过链路514、516连接到相 应的节点B和Y。节点X通过链路518连接到节点Y。如果节点B包括用于转发数据的装 置,则节点B可具有例如修复地址Ba,以供在链路510故障的情况下使用,该修复地址对应 于其与去往节点Z的链路514的接口。 现在参考图6,在作为从修复节点A到修复终点节点B的主路径中的故障组件的链 路510的故障的情况下,在步骤600,节点B计算从节点A到节点B的修复地址Ba的修复路 径。例如,该修复路径可包括一路径向量,B卩,修复路径中的节点的列表-在此情况下为节 点A、 X、 Y、 Z。可以看出,相应地,不是所有节点都计算不过地址,而是只有与故障相邻的节 点(修复终点节点B)需要计算针对其自己的不过地址的路径。 在步骤602,修复终点节点随后将该修复信息仅分发到沿着该路径的节点。例如, 修复终点节点沿着根据包括修复路径Ba Z Y X A的路径向量的路径将该修复地址传播到 修复节点,以创建标签交换路径。该标签交换路径可以利用标签分发协议(LDP)来创建,该 协议能够将路径向量与地址标签映射一起传递,并且可用于优化不过地址信息的计算和分 发。U)P例如在L Andersson et al. , 〃 LDP Specification, 〃 Internet Engineering TaskForce (IETF) Request for Comments (RFC) 3036, January 2001中记载。
在步骤604,在经由LDP接收到修复地址后,节点A安装在链路510故障的情况下 用作修复地址的不过地址Ba与相关联的标签。在步骤606,在链路510故障时,节点A可以 修复针对否则可通过链路510到达的目的地的分组,其方式是将这些分组注入到修复路径 X、Y、Z、Ba中。在接收到分组后,节点B可以在该分组以节点B为目的地的情况下处理该分 组,或者将该分组适当地转发到其目的地。 作为这里描述的方法的结果,每个节点只针对其自己的邻居而不是针对网络中的
所有节点计算不过路径,从而将计算限制到各个修复路径。 3. 0用于在数据通信网络中转发数据的第二方法的示例性实现方式 图7A是更详细图示出在修复终点节点(例如节点B)处执行的步骤的流程图。图
7B示出了节点B所传播的LDP消息。 首先参考图7A,在步骤700,节点B计算从节点A不经过链路510到其不过地址Ba 的修复路径。例如,该修复路径可通过运行在链路510故障的情况下以节点A为根的SPF 计算来计算,或者通过运行在该链路故障的情况下以节点B为根的逆iSPF来计算。此外, 计算路径向量。 在步骤702,利用LDP来传播修复地址。例如,发送图7B所示形式的元组,其在字 段720中包括不过地址Ba、在字段722中包括B的针对该不过地址的标签LBa,并且在字段 724中包括路径向量。 在其他环境中,LDP和标签交换路径可用于实现MPLS (多协议标签交换)。MPLS例 如在E. Rosen et al. , " Multiprotocol Label SwitchingArchitecture, " IETF RFC 3031, January 2001中记载。根据MPLS,针对源-目的地对的完整路径被建立,并且在该路 径中的相邻路由器之间转发分组所需的值以及头部或"标签"被前插到该分组。标签用于 将分组引导到正确的接口和下一跳。标签在IP或其他头部之前,从而允许更小的外头部。
针对源-目的地对的标签交换路径可根据各种不同的方法来建立。 一个这种 方法是LDP,其中去往目的地的路径中的每个路由器将其针对去往该目的地的分组的 标签发送到沿着根据其IP路由选择表确定的、朝着源的方向上的路径返回的下一路由 器。然后,当一路由器需要转发针对该目的地的分组时,该路由器识别其去往该目的地 的下一跳路由器,并且附加从该下一跳路由器接收的标签。或者,可调用资源预留协议 (RSVP),在此情况下,例如,网络管理员可设计一提供严格源路由选择的路径。RSVP例如 在R. Braden et al. , 〃 Resource ReSerVation Protocol (RSVP) Version lF皿ctional Specification, " IETF RFC 2205, S印tember 1997中记载。 在一个实施例中,LDP消息沿着根据路径向量中的排序的路径被传播。正常地址标 签映射以正常方式被分发。相应地,修复路径被储备起来,其中只需要在修复终点节点(例 如本示例中的节点B)处计算针对不过地址Ba的路径。 另外,作为步骤704的一部分,在一种优化中,可以部署诸如无环路替代(LFA)之 类的一个或多个替代修复机制。LFA包括去往修复节点的邻居节点,这些邻居节点具有的 到目的地节点的代价小于该邻居节点到修复节点的代价加上从邻居节点到目的地节点的 代价。在目的地被提供以这种替代修复的情况下,LFA可被实现来替换不过修复。从而,节 点B可基于它具有的关于节点A的链路状态信息来计算节点A是否具有LFA,在节点A具有 LFA的情况下,节点B不必传播带有不过修复信息的LDP消息,因为节点A已经有修复路径了。 在步骤706,在适当的情况下可执行未使用的不过路径的撤销。例如,当修复路径 不再被需要时_比如在网络收敛后_节点B可沿着修复路径发送标签撤消消息,以撤消该 路径。或者,可以实现软状态机制,以按固定间隔(例如30分钟)刷新不过路径,并允许未 被刷新的路径死亡。 图8是图示出在沿着修复路径的中间或修复路径节点(例如节点Z)处执行的步 骤的流程图。 在步骤800,接收到LDP消息,并且在步骤802,节点Z安装一 FIB条目,以将其自 己针对Ba的标签即L' Ba映射到B的标签L吣其中输出接口到B。 在步骤802处更新节点Z的转发表后,在步骤804,节点Z将LDP消息与其自己针 对Ba的标签亦即!^一起传播到路径向量中的下一节点亦即节点Y。可选地,节点Z不传 播如图7B所示的整个元组,而是只传播路径向量的剩余元素,从而节点Z向节点Y发送路 径向量A X。 图9是图示出在修复路径节点处根据这里描述的方法构造的转发表的示图。参考 图9可理解节点Y处的FIB更新。在列900, Y针对Ba的标签L"Ba包括传入标签,该传入 标签与从节点Z接收的、列902处的传出标签亦即L' Ba交换,并被发送到列904中指定的 下一跳,即节点Z。 图10是更详细图示出在修复节点处的这里描述的方法的流程图;图11是图示出 在修复节点处构造的转发表的示图。首先参考图IO,在步骤IOOO,节点A接收LDP消息,并 且在步骤1002,节点A针对修复路径安装FIB条目。 在图11中,在目的地字段1100中,在检测到组件故障后,针对目的地的、否则会经 过故障组件的分组被转发到不过地址Ba。对于目的地D,例如,通常节点A将附加B针对D 的标签,即BD。在故障的情况下,从节点X接收的标签L"' ^被存储在外出标签字段1102 中,并且修复路径LSP的下一跳亦即节点X被存储在字段1104处。 在图10的步骤1004,在检测到故障组件510的故障时,并且在步骤1006,节点X 的标签L"' ^被前插到分组,并且分组在标签栈[L"' Ba, BD]中被插入到修复路径中去往节 点X,从节点X处分组被沿着标签交换路径传递。在节点B处接收到分组后,标签LBa被去 除,或者它可以利用"倒数第二跳_跳跃"在节点Z处被去除,并且分组或者在节点B处被 处理,或者被继续转发到其最终目的地,其中用BD来适当地交换相应的出口标签。
虽然以上论述涉及链路510的故障,但以同样的方式也可适应节点故障。在此情 况下,例如,修复终点节点将计算从修复节点起的修复路径,绕过包括其间的主路径上的节 点的故障组件,并且将修复地址和路径向量沿着修复路径发送到修复节点,在此之后操作 将以与上述相同的方式进行。以类似的方式,包括共享风险链路组(SRLG)的故障可以同样 地通过计算在该SRLG的所有成员故障的情况下的修复路径来适应。 当在一节点处接收到新路径时,该新路径将替换针对不过地址的任何旧路径,并 立即生效。 作为这里描述的方法的结果,不仅使修复路径计算的量达到最低限度,并且还利 用了 LDP的现有能力,从而不必仅为了传递有关修复路径信息而创建、部署或投资新协议。
这里描述的方法可以通过任何特定的方式来实现,例如适当地利用传统的LDP或经修改的LDP,以携带路径向量,并且在沿着修复路径的中间节点处,从路径向量中去除不 必要的组件。FIB的安装和修复能力的管理可以通过任何适当的方式在节点A处实现,并且 这里描述的步骤可以适当地通过硬件、软件或固件来实现。 根据替代方法,LDP消息可被传播到所有节点,但标签仅在从路径向量中识别出其
自己处于该路径上的节点处被安装。相应地,在另一替代方法中,如果修复终点节点通告其
将不过计算仅限于邻居故障的能力(例如在IGP中),那么网络中的其他节点只需要针对它
们未从中接收到这种通告的节点计算它们的不过路径,否则就依赖于从有能力的修复终点
节点接收修复地址和路径向量。 4. 0实现机构_硬件概述 图12是图示出该方法可在其上实现的计算机系统40的框图。该方法是利用运行 在诸如路由器设备这样的网络元件上的一个或多个计算机程序实现的。从而,在此实施例 中,计算机系统140是路由器。 计算机系统140包括用于传输信息的总线142或其他通信机构和与总线142相耦 合用于处理信息的处理器144。计算机系统140还包括诸如随机存取存储器(RAM)、闪存或 其他动态存储设备之类的主存储器146,其耦合到总线142,用于存储信息和处理器144要 执行的指令。主存储器146还可用于存储在处理器144执行指令期间的临时变量或其他中 间信息。计算机系统140还包括只读存储器(R0M)148或其他静态存储设备,其耦合到总线 142,用于存储静态信息和处理器144的指令。提供了诸如磁盘、闪存或光盘之类的存储设 备150,其耦合到总线142,用于存储信息和指令。 通信接口 158可以耦合到总线142,以用于将信息和命令选择传输到处理器144。 接口 158是传统串行接口 ,例如RS-232或RS-422接口 。外部终端152或其他计算机系统 连接到计算机系统140,并利用接口 158向其提供命令。运行在计算机系统140中的固件或 软件提供终端接口或基于字符的命令接口 ,以便外部命令可被提供给计算机系统。
交换系统156耦合到总线142,并具有到外部网络元件的输入接口和相应输出接 口 (总地标注为159)。外部网络元件可包括多个另外的路由器160或者耦合到一个或多个 主机或路由器的本地网络,或者诸如因特网这样的具有一个或多个服务器的全局网络。交 换系统156根据公知的预定协议和惯例将到达输入接口的信息流量交换到输出接口 159。 例如,交换系统156与处理器144合作,可确定到达输入接口的数据分组的目的地,并利用 输出接口将其发送到正确的目的地。目的地可包括主机、服务器、其他末端站、或者本地网 络或因特网中的其他路由选择和交换设备。 计算机系统1400实现为充当上述转发数据的方法中的修复终点节点、修复节点 或中间节点的路由器。该实现是由计算机系统140响应于处理器144执行包含在主存储器 146中的一条或多条指令的一个或多个序列而提供的。这种指令可以被从另一计算机可读 介质(如存储设备150)读取到主存储器146中。包含在主存储器146中的指令序列的执 行使得处理器144执行这里描述的过程步骤。多处理配置中的一个或多个处理器也可被用 来执行包含在主存储器146中的指令序列。在替代实施例中,可以使用硬线电路来代替软 件指令或与软件指令相组合以实现该方法。从而,实施例不限于硬件电路和软件的任何特 定组合。 这里所用的术语"计算机可读介质"指参与向处理器144提供指令以供执行的任何介质。这种介质可以采取许多形式,包括但不限于非易失性介质、易失性介质和传输介 质。非易失性介质例如包括光盘或磁盘,如存储设备150。易失性介质包括动态存储器,如 主存储器146。传输介质包括同轴电缆、铜线和光纤,包括含总线142的线路。传输介质也 可以采取诸如声波或电磁波之类的无线链路的形式,例如在无线电波和红外数据通信期间 生成的那些。 计算机可读介质的常见形式例如包括软盘、柔性盘、硬盘、磁带或任何其他磁介 质,CD-ROM、任何其他光介质,穿孔卡、纸带、任何其他具有孔图案的物理介质,RAM、PROM和 EPR0M、 FLASH-EPROM、任何其他存储器芯片或卡盘,下文中描述的载波,或者计算机可以读 取的任何其他介质。 计算机可读介质的各种形式可用于将一条或多条指令的一个或多个序列传送到 处理器144以供执行。例如,指令可以首先承载在远程计算机的磁盘上。远程计算机可以 将指令加载到其动态存储器中,并利用调制解调器通过电话线发送指令。计算机系统140 本地的调制解调器可以接收电话线上的数据,并使用红外发射器来将数据转换为红外信 号。耦合到总线142的红外检测器可以接收在红外信号中携带的数据,并且将数据置于总 线142上。总线142将数据传送到主存储器146,处理器144从主存储器146取得指令并执 行指令。主存储器146接收的指令可以可选地在处理器144执行之前或之后存储到存储设 备150上。 接口 159还提供到连接到本地网络的网络链路的双向数据通信耦合。例如,接口 159可以是综合业务数字网络(ISDN)卡或调制解调器,以提供到相应类型电话线的数字通 信连接。又例如,接口 159可以是局域网(LAN)卡,以提供到兼容LAN的数据通信连接。也 可以实现无线链路。在任何这种实现方式中,接口 159发送和接收电的、电磁的或光信号, 这些信号携带了表示各类信息的数字数据流。 网络链路一般通过一个或多个网络提供到其他数据设备的数据通信。例如,网络 链路可以通过本地网络提供到主机计算机或由因特网服务供应商(ISP)操作的数据设备 的连接。ISP又通过全球分组数据通信网络(现在通常称为"因特网")提供数据通信服务。 本地网络和因特网都使用携带数字数据流的电的、电磁的或光信号。通过各种网络的信号 和在网络链路上并通过接口 159的信号(这些信号携带去往和来自计算机系统140的数字 数据)是传输信息的载波的示例性形式。 计算机系统140可以通过( 一个或多个)网络、网络链路和接口 159发送消息和
接收数据,包括程序代码。在因特网示例中,服务器可以通过因特网、ISP、本地网络和通信
接口 158发送应用程序的请求代码。 一个这种下载的应用程序提供了如这里所述的方法。 接收到的代码可以在接收时被处理器144执行,和/或被存储在存储设备150或
其他非易失性存储装置中以供以后执行。以这种方式,计算机系统140可以获得载波形式
的应用代码。 5. 0扩展和替代 在前述说明书中,已参考本发明的特定实施例描述了本发明。但是,应当清楚,在 不脱离本发明更宽广的精神和范围的前提下,可以进行各种修改和改变。因此,说明书和附 图都应当认为是示例性的,而非限制性的。 任何适当的路由选择协议和机制以及转发范例都可被采用来实现本发明。所阐述的方法步骤可以按任何适当的顺序来执行,并且来自所示例和实施例的各方面可被适当地 并列或交换。
权利要求
一种装置,包括网络接口,被配置为耦合到具有节点和其间的链路作为组件的数据通信网络;第一逻辑,其在被执行时能够操作来接收修复地址;第二逻辑,其在被执行时能够操作来计算从修复节点到所述修复地址的修复路径,该修复路径绕过了所述装置和修复节点之间的主转发路径上的故障组件;以及第三逻辑,其在被执行时能够操作来沿着包括所述修复路径的标签交换路径(LSP)将所述修复地址传播到所述修复节点。
2. 如权利要求1所述的装置,其中所述LSP包括多协议标签交换LSP。
3. 如权利要求1所述的装置,还包括在被执行时能够操作来将标识所述修复路径上的 节点的路径向量与所述修复地址一起传播的逻辑。
4. 如权利要求3所述的装置,其中所述路径向量只标识传播节点和修复节点之间的节点。
5. 如权利要求l所述的装置,其中所述故障组件包括以下至少一种节点、链路和共享风险链路组(SRLG)。
6. 如权利要求1所述的装置,其中所述修复是根据链路状态协议来计算的。
7. 如权利要求6所述的装置,其中所述修复路径是通过执行以所述修复节点为根的递 增式最短路径优先(iSPF)过程来计算的。
8. 如权利要求1所述的装置,还包括在被执行时能够操作来计算在所述修复节点处是 否有无环路替代(LFA)修复路径可用,并且仅在没有LFA可用的情况下计算从所述修复节 点起的修复路径并传播所述修复地址。
9. 如权利要求1所述的装置,还包括在被执行时能够操作来每隔一段时间刷新所述修 复路径的逻辑。
10. 如权利要求9所述的装置,还包括在被执行时能够操作来撤消未被刷新的路径的 逻辑。
11. 如权利要求1所述的装置,还包括修复节点,该修复节点还包括在被执行时能够操 作来在所述故障组件故障后沿着所述LSP转发数据的逻辑。
12. —种方法,包括在修复终点节点处建立与具有节点和其间的链路作为组件的数据通信网络的通信; 计算从修复节点到所述修复终点节点的修复地址的修复路径,该修复路径绕过了所述 修复终点节点和修复节点之间的主转发路径上的故障组件;以及沿着包括所述修复路径的标签交换路径(LSP)将所述修复地址传播到所述修复节点。
13. 如权利要求12所述的方法,还包括将标识所述修复路径上的节点的路径向量与所 述修复地址一起传播。
14. 如权利要求13所述的方法,其中所述路径向量只标识传播节点和修复节点之间的 节点。
15. 如权利要求12所述的方法,还包括根据链路状态协议来计算所述修复路径。
16. 如权利要求15所述的方法,其中所述修复路径是通过执行以所述修复节点为根的 递增式最短路径优先(iSPF)过程来计算的。
17. 如权利要求12所述的方法,还包括每隔一段时间刷新所述修复路径。
18. 如权利要求12所述的方法,还包括计算在所述修复节点处是否有无环路替代 (LFA)修复路径可用,并且仅在没有LFA可用的情况下计算从所述修复节点起的修复路径 并传播所述修复地址。
19. 一种装置,包括网络接口 ,被配置为耦合到具有节点和其间的链路作为组件的数据通信网络; 用于在修复终点节点处建立与具有节点和其间的链路作为组件的数据通信网络的通 信的装置;用于计算从修复节点到所述修复终点节点的修复地址的修复路径的装置,该修复路径 绕过了所述修复终点节点和修复节点之间的主转发路径上的故障组件;以及用于沿着包括所述修复路径的标签交换路径(LSP)将所述修复地址传播到所述修复 节点的装置。
20. —种计算机可读介质,包括一个或多个指令序列,这些指令序列在被一个或多个处 理执行时使得这一个或多个处理器执行在修复终点节点处建立与具有节点和其间的链路作为组件的数据通信网络的通信; 计算从修复节点到所述修复终点节点的修复地址的修复路径,该修复路径绕过了所述 修复终点节点和修复节点之间的主转发路径上的故障组件;以及沿着包括所述修复路径的标签交换路径(LSP)将所述修复地址传播到所述修复节点。
全文摘要
在一个实施例中,一种用于在数据通信网络中转发数据的装置,该数据通信网络具有节点和其间的链路作为组件,该装置包括网络接口,被配置为耦合到具有节点和其间的链路作为组件的数据通信网络;第一逻辑,其在被执行时能够操作来接收修复地址;第二逻辑,其在被执行时能够操作来计算从修复节点到该修复地址的修复路径,该修复路径绕过了所述装置和修复节点之间的主转发路径上的故障组件;以及第三逻辑,其在被执行时能够操作来沿着包括该修复路径的标签交换路径(LSP)将该修复地址传播到该修复节点。该装置提供了在计算网络中绕过故障组件的修复路径时的更高效率,因为利用所公开的装置和方法不执行不必要的计算。
文档编号H04L12/56GK101796782SQ200880105670
公开日2010年8月4日 申请日期2008年8月28日 优先权日2007年9月6日
发明者伊恩·迈克尔·查尔斯·尚德, 斯图尔特·弗雷德里克·布赖恩特 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1