用于在穿过提供商网络的ce-ce路径上高效路由ip流量的技术的制作方法

文档序号:7675741阅读:181来源:国知局
专利名称:用于在穿过提供商网络的ce-ce路径上高效路由ip流量的技术的制作方法
技术领域
本发明涉及计算机网络,更具体而言涉及在计算机网络中穿过提供商 网络在客户边缘设备(CE)之间路由因特网协议(IP)流量。
背景技术
计算机网络是诸如局域网(LAN)之类的在网络节点之间传输数据的 互连子网的地理上分布的集合。这里使用的"网络节点"是适合于在计算 机网络中发送和/或接收数据的任何设备。因此,在此上下文中,"节点" 和"设备"可互换使用。网络拓扑是由诸如路由器和交换机之类的一般通 过一个或多个中间节点与彼此通信的网络节点的布置来限定的。除了网络 内通信之外,还可以在相邻(即邻近)的网络之间交换数据。为此,位于 计算机网络的逻辑外边界处的"边缘设备"可以适合于发送和接收网络间 通信。网络间通信和网络内通信一般都是通过根据预定义的协议交换离散 的数据分组来实现的。在此上下文中,协议由限定网络节点如何与彼此交 互的一组规则构成。每个数据分组一般包括"有效载荷"数据,该"有效载荷"数据前插 有根据网络通信协议格式化的至少一个网络头部(被该至少一个网络头部 所"封装")。网络头部包括使得网络节点能够通过计算机网络高效路由 分组的信息。通常,分组的网络头部包括由传输控制协议/因特网协议 (TCP/IP)参考模型定义的数据链路(第2层)头部、网间(第3层)头 部和传输(第4层)头部。TCP/IP参考模型一般更详细地记载于2003年 出版的由Andrew Tanenbaum所著的题为"Compter 7V^uwfo, ^^Ztrn"的参考书的第1.4.2节中,特此通过引用将该书并入,就好像在这 里完全阐述了一样。数据分组可以在源节点处发起,并随后沿着逻辑数据 路径从一个节点"跳"到另一节点,直到它到达其所寻址的目的地节点为止。限定数据流的逻辑数据路径的网络地址通常作为因特网协议(IP)地 址被存储在分组的网间头部中。计算机网络可以包含可作为分离的路由域(routing domain)来管理的 一个或多个子网的更小群组。这里使用的"路由域"被广泛地理解为被共 同管理的互连的网络节点的集合。通常,路由域是由诸如公司、学术机构 或政府部门之类的单个管理实体来管理的。这种集中管理的路由域有时被 称为"自治系统"或AS。 一般地,路由域可作为企业网络、服务提供商 或任何其他类型的网络或子网来工作。另外,路由域可包含一个或多个边 缘设备,这些边缘设备具有与邻近的路由域中的边缘设备的"对等"连 接。路由域内的网络节点一般被配置为利用来自诸如传统的链路状态协议 和距离向量协议之类的"内部网关"路由协议的预定路径来转发数据。这 些内部网关协议(IGP)定义了在路由域中交换和处理路由信息和网络拓 扑信息的方式。所交换的路由信息(例如利用IGP消息) 一般包括目的地 地址前缀,即目的地地址中被路由协议用来给出路由("下一跳")判决 的部分。这种目的地地址的示例包括IP版本4 (IPv4)和版本6 (IPv6) 地址。这样,每个中间节点接收域的拓扑的一致"视图"。诸如开放最短 路径优先(OSPF)协议和路由信息协议(RIP)之类的本领域已知的链路 状态和距离向量协议的示例记载于2000年1月出版的由Radia Perlman所 著的题为"她腳騰c"o叫Se簡d脑zW,的参考书的第12.1-12.3节 中,特此通过引用将该书并入,就好像在这里完全阐述了一样。在实践中,每个IGP节点一般生成和散布IGP消息("通告"),该 IGP消息的路由信息包括中间节点的相邻网络节点和与每个邻居相关联的 一个或多个"成本"值的列表。这里使用的"与相邻节点相关联的成本 值"是用于确定与该节点通信的相对容易度/负担的任意度量。例如,成本 值可以按到达相邻节点所需的跳数、分组到达相邻节点的平均时间、耦合 到相邻节点的通信链路上的可用带宽或网络流量的量等等来衡量。IGP消息通常被洪泛(flood),直到每个中间网络IGP节点从每个其 他互连的中间节点接收到了 IGP消息为止。然后,每个IGP节点(例如,在链路状态协议中)可以通过聚集接收到的相邻节点和成本值的列表来构 造网络拓扑的相同"视图"。为此,每个IGP节点可以将这个接收到的路 由信息输入到"最短路径优先"(SPF)计算中,该计算确定将中间节点与每个其他网络节点相耦合的最低成本网络路径。例如,Dijkstm算法是 用于执行这种SPF计算的传统技术,其更详细记载于以上引用的由Radia Perlman所著的题为"/"terco朋ec"o"A Seco/u/五c/Wow"的书的第12.2.4节 中。每个IGP节点基于其SPF计算的结果来更新存储在其本地路由表中的 路由信息。更具体而言,路由信息库(RIF)更新路由表,以将目的地节 点与下一跳接口关联起来,其中该下一跳接口与SPF所确定的到达这些节 点的最低成本路径相关联。边界网关协议(BGP)通常被用作用于在自治系统之间路由数据的"外部网关"路由协议。BGP是公知的,并且一般记载于1995年3月出 版的由Y. Rekhter等人所著的题为Ga/ewfl_y尸ratoco/ 4 ""的请求注释(RFC) 1771中,公众可通过因特网工程任务组(IETF) 获得该RFC,特此通过引用将其全部并入。外部BGP (或外BGP)(eBGP)通常用于穿过路由域边界交换路由信息。内部BGP (iBGP)是 eBGP协议的变体,并且通常用于在位于同一路由域内的具备BGP能力的 边缘设备之间分发网络间可达性信息(地址前缀)。BGP —般基于诸如 TCP之类的可靠传输协议工作,以建立TCP连接/BGP会话。BGP还可被 扩展,以兼容除标准因特网连通性之外的服务。例如,多协议BGP (MP-BGP)支持允许BGP消息传输多协议信息的各种地址族标识符(AFI)字 段,就像RFC 2547服务的情况一样,下文将对此进行论述。路由域内的网络节点可检测域的拓扑的变化。例如,节点可能由于节 点之间的链路失效或者相邻节点失效(例如"离线")等等而变得无法与 其相邻节点之一通信。如果检测到的节点或链路失效发生在路由域之内, 则进行检测的节点可以利用IGP消息将该域内拓扑变化通告给域中的其他 节点。类似地,如果边缘设备检测到阻止与相邻路由域通信的节点或链路 失效,则边缘设备可向其路由域内的其他边缘设备散布点该域间拓扑变化(例如,利用iBGP协议)。在任一种情况下,网络拓扑变化的传播都发生在路由域内,并且域中的节点因此收敛在新网络拓扑(即没有失效的节 点或链路)的一致视图上。虚拟专用网(VPN)是在共享的骨干网络上建立私有通信的网络节点的集合。以前,VPN是通过在共享网络中嵌入私有出租线路来实现的。出 租的线路(即通信链路)只为参与VPN的那些网络节点之间的网络流量 所预留。目前,上述VPN实现方式大多数己经被公共网络中部署的私有"虚拟电路"所替换。具体而言,每个虚拟电路限定参与VPN的一对网 络节点之间的逻辑端到端数据路径。当该对节点位于不同的路由域中时, 多个互连的路由域中的边缘设备可能必须协作以建立节点的虚拟电路。虚拟电路例如可利用传统的第2层帧中继(FR)或异步传输模式(ATM)网络来建立。或者,虚拟电路可利用诸如第2层隧传(tunneling)协议(L2TP)和通用路由封装(GRE)协议之类的已知的第 2层和/或第3层隧传协议在其逻辑端点之间"隧传"数据。在这种情况 下, 一个或多个隧道头部被前插到数据分组,以沿着虚拟电路适当地路由 分组。多协议标签交换(MPLS)协议可用作隧传机制,用于通过IP网络 建立第2层虚拟电路或者第3层的基于网络的VPN。一般地,标签交换技术可用于通过标签交换路由器(LSR)的 IP/MPLS网络来构建端到端隧道。这些隧道是一类标签交换路径(LSP),因此一般被称为MPLS LSP。从头端LSR到尾端LSR的LSP的 建立涉及对通过LSR的网络的路径的计算。在最优情况下,计算出的路径 是以某种度量(例如成本)来衡量的"最短"路径。值得注意的是, MPLS流量工程(TE)技术可用于确保LSP ( "TE-LSP")满足所有有关 的LSP流量工程约束,例如所需带宽、"亲和性"(避免或包括某些链路 的管理性约束)等等。另外,正如本领域的技术人员将会明白的,标签分 发协议(LDP)可用于共享在网络节点之间使用的特定标签。路径计算可以由头端LSR或者并非同样位于头端LSR上的作为路径 计算元件(PCE)工作的某个其他实体来执行。头端LSR (或PCE)利用 其关于网络拓扑和每个链路上可用的资源的知识来执行路径计算(例如, 根据LSP流量工程约束)。有各种路径计算方法可用,包括SPF,或者用于TE-LSP的CSPF (约束最短路径优先)。MPLS LSP可被配置于单个域 (例如区域、级别或AS)内,或者也可以跨多个域(例如区域、级别或 AS)。PCE是这样一个实体,其具有计算AS或区域中该PCE所知晓的任何 节点之间的路径的能力。PCE的尤其有用之处在于它们更加清楚其AS或 区域内的网络流量和路径选择,因此可用于更为优化的路径计算。头端 LSR还可作为路径计算客户端(PCC)工作,该PCC被配置为向PCE发 送路径计算请求,并且接收具有计算出的路径的响应,该响应可能考虑了 来自其他PCC的其他路径计算请求。值得注意的是,当一个PCE向另一 PCE发送请求时,它充当PCC。 PCE传统上在其周围区域、级别或AS之 外只具有有限的可见性或不具有可见性。PCC或者可能通过管理员进行的 预先配置而被告知以PCE,或者可以通过PCE发现(PCED)消息("通 告")而被告知以PCE,该消息被从其区域或级别内的PCE发送或者穿过 整个AS发送以通告其服务。基于IGP的PCED的示例记载于2006年3月 的由LeRoux等人所著的因特网草案"/G尸尸ratoco//or尸"A Com戸她'ow 五/emewZ (PCE」 Z)&cove" " <draft-ietf-pce-disco-proto-igp-01.txt〉中,特此通过引用其内容完全并入。禾U用MPLS技术的第3层的基于网络的VPN服务通常由网络服务提 供商为一个或多个客户站点部署。这些网络一般被说成是提供"MPLS/VPN"服务。这里使用的"客户站点"被广泛定义为包含至少一 个耦合到服务提供商的网络("提供商网络")中的提供商边缘设备(PE)的客户边缘设备(CE)的路由域。客户站点可以多重归宿(multi-home) 于提供商网络,即其中一个或多个客户的CE耦合到多个PE,从而 提供冗余连接。PE和CE—般是位于其各自的网络的边缘处的中间网络节 点,例如路由器或交换机。PE-CE链路可被建立在各种物理介质上,例如 传统的有线链路、光链路、无线链路等等,并且可以传输利用包括 ATM、帧中继、以太网、光纤分布数据接口 (FDDI)等等在内的各种网 络通信协议来格式化的数据。此外,PE和CE可被配置为根据各种内部和 外部网关协议(例如BGP、 OSPF、 IS-IS、 RIP等等)通过其各自的PE-CE链路交换路由信息。在传统的MPLS/VPN网络体系结构中,每个客户站点可参与一个或多 个不同的VPN。通常,每个客户站点与单个VPN相关联,并且在下文中 示例性实施例将假定客户站点和VPN之间的一一对应关系。例如,由共 同的管理实体(例如公司企业)所拥有或管理的客户站点可被静态地指派 给该企业的VPN。这样,位于该企业的各种客户站点中的网络节点参与同 一 VPN,并且因此被允许经由提供商网络与彼此安全通信。换言之,提供 商网络建立必要的LSP以互连参与企业的VPN的客户站点。同样地,提 供商网络还可以建立互连参与其他VPN的客户站点的LSP。这种广泛部 署的MPLS/VPN体系结构一般更详细地记载于2001年出版的由I. Pepelnjak等人所著的题为"M尸丄5" a"J FPA^rc/n'tec/w Fo/wwe/"的参考 书的第8-9章和2006年2月出版的由E. Rosen等人所著的题为 "5G尸/Af尸AS7尸F^"a/iV/vflte7Vemw^ (TiWy」"的IETF出版物RFC 4364 中,特此通过引用将它们每一个并入,就好像在这里完全阐述了一样。与MPLS/VPN网络相关联的一个问题在于它们当前无法穿过提供商网 络向其他PE分发关于PE-CE链路的TE信息。正如本领域的技术人员将 会明白的,流量工程(TE) —般指的是利用TE信息来操纵(计算、确 定、检测等等)流量,例如用于计算路径、创建TE-LSP (例如MPLS TE-LSP)、对IP流量进行负载平衡,等等。TE信息的示例包括但不限于动 态测量的IP带宽、可预留的MPLS带宽、未预留的带宽、管理组(颜 色)、TE度量或其他传统的可用于TE的度量,例如成本。值得注意的 是,正如本领域的技术人员将会明白的,TE信息不仅可以用于MPLS,而 且可用于IP。用于分发PE-CE链路(或者更一般地说,AS退出链路)的静态链路 带宽的一种解决方案已经记载于2005年3月由思科系统公司出版的题为 "SG尸h7^Sam/wWA"文档中,特此通过引用将该文档并入,就好像在 这里完全阐述了一样。这里,PE-CE链路的静态链路带宽(即,最大链路 容量)可被通告给BGP邻居(例如其他PE)。但是,该解决方案不提供 PE-CE链路的TE信息,例如PE-CE链路的动态测量的IP带宽、预留的MPLS带宽、颜色等等。分发PE-CE链路的TE信息的另一种解决方案是例如通过IGP消息将 该信息透露到提供商网络("核心")中。但是,这种解决方案存在许多 问题,例如VPN私有寻址约束,g卩,不同VPN的CE可共享同一地址, 这可能导致接收方设备处的路线混乱。另外,正如本领域的技术人员将会 明白的,考虑到PE-CE链路的可能数目(例如数十万)(这可能超过了 (例如IGP消息的)内部路线斜率限制),可能存在可縮放性的缺乏,从 而可能导致碎化的消息、错误消息,等等。这种可縮放性的缺乏还可能应 用到手工配置TE信息的尝试,由于TE信息的动态性质,这种尝试可能是 极大的负担。作为无法高效分发动态TE信息的一个结果,各种TE技术可能不能被 从未附接到PE-CE链路的其他PE应用到PE-CE链路。具体地,TE技术 可能不能被应用到从一个CE穿过提供商网络到另一CE的路径("CE-CE 路径")。例如,CE有时多重归宿于提供商网络,这例如是为了提供进 入提供商网络的多条路径,以获得例如冗余性、路线灵活性(最佳路径选 择选项)。具体地,对于IP路由,CE可能并不知晓在任何本地附接的PE 之外提供商网络所使用的度量。相应地,CE无法在其多重归宿链路上高 效地路由流量(IP流量)。例如,基于进入提供商网络(例如在第一 PE 处)的第一 CE-PE链路的己知度量来选择该PE-CE链路可能不是对在第 一 PE之外的度量的充分代表。换言之,在CE看来是基于CE-PE链路度 量的最佳选择的CE-PE链路可能实际上不是最佳的,例如从第一PE起的 提供商网络内和外的路径度量比从附接到CE的第二 PE起的提供商网络内 和外的路径度量更大。另外,任何对多重归宿CE-PE链路上的流量进行负 载平衡的尝试也将同样是低效的。目前,多重归宿CE-PE链路上的IP流 量负载平衡可以是对称的(即, 一半流量在第一链路上,另一半在第二链 路上,等等)或者基于CE-PE链路不对称的(例如,流量可以与CE-PE 链路的链路度量成比例地被分发)。但是,同样,负载平衡解决方案也不 提供基于CE-PE链路之外的度量的高效选择。如果没有提供商网络的路径 度量,更具体而言,没有端到端(CE-CE)路径度量,那么CE可能低效地路由IP流量。因此,仍存在对这样一种技术的需要,该技术将提供商/客户网络(例如MPLS/VPN网络)的TE拓扑扩展到包括PE-CE链路的TE信息,使得 各种TE技术可被应用到该网络。 一般地,还存在对这样一种技术的需 求,该技术用于在多重归宿CE-PE链路上(例如,并且基于完整的CE-CE 路径)高效地路由IP流量,并且用于向IP流量应用PCE技术。发明内容本发明针对一种用于在计算机网络中穿过提供商网络的、客户边缘设 备(CE)之间的路径("CE-CE路径")上高效地路由因特网协议(IP) 流量的技术。根据该新颖技术,路径计算元件(PCE),例如提供商边缘 设备(PE),可获知从提供商网络到一个或多个远程CE的远程链路(例 如"PE-CE链路"或"CE-PE链路")的动态链路属性信息。多重归宿的 请求方CE向PCE请求例如经由从请求方CE起的每个多重归宿的CE-PE 链路去往一个或多个远程目的地地址前缀的一组CE-CE路径度量(例如成 本)。值得注意的是,该请求可指示一个或多个所请求的路径的属性(所 需的相异性、最大成本,等等)。响应于该请求,PCE计算去往远程目的 地地址前缀的一组可用CE-CE路径和当前度量,并且将相应CE-CE路径 度量返回给请求方CE。请求方CE相应地修改其IP转发条目,以便穿过 其多重归宿CE-PE链路执行与CE-CE路径度量相对应的IP流量路由(例 如非对称负载平衡)。有利的是,该新颖技术在计算机网络中的CE-CE路径上高效地路由了 IP流量。通过利用具有关于CE-CE路径链路的动态链路属性信息的知识 的PCE,该新颖技术允许了多重归宿的CE相应地对穿过其多重归宿的 CE-PE链路的IP流量进行高效路由(例如负载平衡)。具体地,该新颖技 术有利地为IP流量使用了 PCE。另外,该新颖技术的动态性质减轻了对 繁重的手工配置的需求。


通过结合附图参考以下描述可更好地理解本发明的以上和其他优点, 附图中类似的标号指示相同的或功能上相似的元件,其中图1是根据本发明可使用的示例性计算机网络的示意性框图; 图2是可有利地结合本发明使用的示例性路由器的示意性框图; 图3是可有利地结合本发明使用的示例性路径计算请求/回复消息的示 意性框图;图4是具有根据本发明计算出的CE-CE路径的图1的示例性计算机网 络的示意性框图;图5是根据本发明可使用的示例性存储请求表的示意性框图;图6是具有根据本发明高效路由的IP流量的图1的示例性计算机网络 的示意性框图;以及图7是示出根据本发明用于在CE-CE路径上高效地路由IP流量的过 程的流程图。
具体实施方式
图1是示例性计算机网络100的示意性框图,该计算机网络100包括 互连到一个或多个客户网络(客户网络1-4)的提供商网络(例如服务提 供商网络)。虽然提供商和客户网络在这里被示例性地描述为自治系统, 但本领域的技术人员将会明白,它们可以被配置为一个或多个路由域或者 其他网络或子网。提供商网络包括一个或多个网络节点,其中包括一组进 行通信的边界节点或路由器(例如是提供商边缘设备或者说"PE" ) PE1-PE5,通过这些边界节点或路由器,诸如数据分组流量之类的客户端通信 可传递入或传递出提供商网络。该网络包括被配置为在提供商网络内内部 地传输流量和信息的提供商设备(P)(未示出)。客户网络1-4也分别包括一个或多个网络节点,其中包括一组进行通 信的边界节点或路由器(例如是客户边缘设备或者说"CE" ) CE1-CE4, 通过这些边界节点或路由器,客户端通信可传递入和传递出客户网络。正 如本领域的技术人员将会明白的,例如,PE和CE可被配置为去往/来自一 个或多个虚拟专用网(VPN)的连接,例如用于多协议标签交换(MPLS) /VPN网络。例如,在网络IOO内配置了两个VPN,它们被标记 为"蓝"VPN和"绿"VPN。例如,客户网络1、 2和3属于蓝VPN,而 客户网络2和4属于绿VPN。注意,正如本领域的技术人员将会明白的, 单个客户网络(例如2)可属于不止一个VPN。另外,客户网络不需要属 于任何VPN,例如客户网络5不属于任何VPN (未示出)。如图所示,每个CE可经由"PE-CE链路"与附接的PE通信,例如, CE1通过链路PE1-CE1与PE1通信。值得注意的是,链路也可被表示为 CE-PE链路(例如链路CE1-PE1),并且链路末端节点的顺序在这里是可 以平等互换的。这些示例只是代表性的。本领域的技术人员将会明白,任 何数目的路由器、节点、链路、VPN以及提供商/客户网络可被用于计算 机网络100中并且通过各种方式来连接,这里所示出的视图是为了简单起 见。具体地,虽然每个客户网络l-4被示为具有一个CE,但本领域的技术 人员将会明白,每个客户网络有不止一个CE的其他配置也是可能的。可利用诸如传输控制协议/因特网协议(TCP/IP)、用户数据报协议 (UDP)、异步传输模式(ATM)协议、帧中继协议、因特网分组交换 (IPX)协议等等之类的预定义的网络通信协议通过提供商和客户网络传 输数据分组。提供商或客户网络内的路由判决可依赖于预定的"内部"网 关协议(IGP),例如传统的链路状态或距离向量协议。此外,可利用诸 如边界网关协议(BGP)(例如多协议(MP) -BGP)之类的"外部"网 关协议在提供商和客户网络之间交换包含网络拓扑信息的数据分组。本领 域的技术人员将会明白,其他通信协议可用于网络内和网络间,并且以上 提到的只是代表性的。图2是可有利地结合本发明使用的示例性节点/路由器200 (例如边缘 设备)的示意性框图。该节点包括通过系统总线250互连的多个网络接口 210 (例如线路卡)、处理器220和存储器240。网络接口210包含用于通 过耦合到网络100的物理链路传输数据的机械、电气和信令电路。网络接 口还可被配置为利用各种不同的网络协议来发送和/或接收数据,所述协议 包括但不限于TCP/IP、 UDP、 ATM、同步光网络(SONET)、无线协 议、帧中继、以太网、光纤分布数据接口 (FDDI)等等。值得注意的是,物理网络接口 210也可用于实现一个或多个虚拟网络接口,例如用于VPN接入,这是本领域的技术人员已知的。存储器240包括多个存储单元,这些存储器可被处理器220和网络接 口 210寻址,用于存储与本发明相关联的软件程序和数据结构。处理器 220可包括适合于执行软件程序和操纵数据结构的必要元件或逻辑,所述 数据结构例如是TE数据库(TED) 244、路由和转发表246和存储请求表 500。其某些部分一般驻留在存储器240中并被处理器执行的路由器操作 系统242 (例如思科系统公司的网间操作系统或者说IOSTM)通过调用支 持在路由器上执行的软件进程和/或服务的网络操作等等来在功能上组织路 由器。这些软件进程和/或服务可包括路径计算元件/客户端(PCC/PCE) 服务248、路由服务247和流量工程(TE)服务243。本领域的技术人员 将会明白,其他处理器和存储器装置,包括各种计算机可读介质,可用于 存储和执行与这里描述的创造性技术有关的程序指令。路由服务247包含计算机可执行指令,这些指令被处理器220运行, 以执行由一个或多个路由协议(例如OSPF、 IS-IS、 IP、 BGP等等)提供 的功能。这些功能可被配置为管理例如路由/转发表246中的路由信息数据 库(RIB)和/或转发信息数据库(FIB),其中包含用于作出路由和转发 判决的数据。正如本领域的技术人员将会明白的,路由服务247还可执行 与虚拟路由协议有关的功能,例如维护VRF实例(未示出)。TE服务243包含用于根据本发明操作TE功能的计算机可执行指令。 TED 244例如驻留在存储器240中,并且用于存储由路由协议(例如 IGP、 RSVP禾口/或BGP (例如带有TE扩展))提供的TE信息,包括但不 限于这里描述的TE拓扑。TED 244例如由TE服务243维护和管理。在一个实施例中,这里描述的路由器(例如PE)可以是实现多协议 标签交换(MPLS)并且作为标签交换路由器(LSR)工作的IP路由器。 在一个简单的MPLS场景中,在网络入口处,在将每个传入的分组转发到 下一跳路由器之前,基于其转发等价类来向该分组指派标签。在每个路由 器处,通过用在传入分组中找到的标签作为对包含此信息的标签转发表的 引用,来确定转发选择和新的替代标签。在网络出口处(或者之前的一跳处),基于传入的标签来作出转发判决,但是可选地,在将分组发送到下 一跳时不包括标签。在这种方式穿越网络的分组所采取的路径被称为标签 交换路径(LSP)。可用于在整个网络上分发标签的协议,例如标签分发协议(LDP),记载于2001年1月的题为"LD尸S/^c^c^'ow"的RFC 3036中,特此通过引用其内容全部并入。值得注意的是,正如本领域的技 术人员将会明白的,在使用MPLS流量工程(TE)的情况下,可以创建在 某些条件下具有有保证带宽的TE-LSP。虽然这里描述的示例性实施例针对MPLS,但是也应当注意,本发明 可有利地应用到通用MPLS (GMPLS),它不仅适合于分组和基于信元的 网络,而且适合于时分复用(TDM)和光网络。GMPLS是公知的,并且 记载于2004年10月的题为^^/"-/Votoco/5W/fc/n'wg fGM尸LS」Jra^te"we"的RFC 3945和2004年10月的题为7Ve/^vo^: (^OV五"6y"c/ ra"ow "/gzta/ i^erarc/^ 0Di9 Cow/ra/"的RFC 3946中,特此通过引用将两者的内容全部并入。本发明针对一种用于在计算机网络中的穿过提供商网络的、CE之间 的路径("CE-CE路径")上高效地路由IP流量的技术。根据该新颖技 术,PCE,例如PE,可以获知从提供商网络到一个或多个远程CE的远程 链路(例如"PE-CE链路"或"CE-PE链路")的动态链路属性信息。多 重归宿的请求方CE向PCE请求例如经由从请求方CE起的每个多重归宿 CE-PE链路去往一个或多个远程目的地地址前缀的一组CE-CE路径度量(例如成本)。值得注意的是,该请求可指示一个或多个所请求的路径的 属性(所需的相异性、最大成本,等等)。响应于该请求,PCE计算去往 远程目的地地址前缀的该组可用CE-CE路径和当前度量,并将相应的CE-CE 路径度量返回到请求方CE。请求方CE相应地修改其IP转发条目,以 穿过其多重归宿CE-PE链路执行与CE-CE路径度量相对应的IP流量路由(例如非对称负载平衡)。根据本发明,正如本领域的技术人员将会明白的,PCE,例如PE1*(例如,其中"*"表示PE被配置为PCE),可以通过传统方法(例如过IGP、 iBGP等等)获知提供商网络内(例如,在PE和一个或多个提供商路由器"P"之间)的链路的动态链路属性信息。此外,PCE还获知远 程PE-CE链路(例如链路PE3-CE3、链路PE4-CE3,等等)的动态链路属 性信息。以上并入的题为"TECHNIQUE FOR ENABLING TRAFFIC ENGINEERING ON CE-CE PATHS ACROSS A PROVIDER NETWORK" 美国申请No. 11/302,595描述了一种优选实施例和方法,其可根据本发明 用来供PCE获知动态远程PE-CE链路信息。如与本申请属于同一申请人的同样未决的美国申请No. 11/302,595中 所记载的,远程PE (例如PE3、 PE4等等)例如利用对多协议BGP (MP-BGP)消息的TE扩展,通过TE通告向提供商网络中的其他PE传达附接 的PE-CE链路的动态链路属性信息(也称为"TE信息")。MP-BGP扩 展内包含的TE信息可包括任何可用的链路属性信息,例如但不限于远程 CE的地址(例如,在VPN上下文中例如是VPNv4地址)、传递方PE的 地址、路线目标(RT)(例如相关联的颜色,蓝色)以及一个或多个基于 TE的PE-CE链路属性信息字段。基于TE的PE-CE链路属性信息的示例 例如包括动态测量的IP带宽、可预留的MPLS带宽、未预留的带宽、管 理组(颜色)、TE度量或者可用于TE的其他传统的度量,例如成本。在 接收到TE信息后,每个接收方PE例如通过针对接收方PE所维护的每个 VPN更新一个或多个相应的VPNTED (VTED),来对用于关于提供商网 络的信息的TED (例如TED 244)(即"核心TED")进行扩展,以包括 TE配置的PE-CE链路。结果一般是提供商网络的每个PE可维护整个提供 商网络和去往客户网络的任何有关的PE-CE链路的TE拓扑信息。值得注意的是,虽然以上并入的美国申请No. 11/302,595记载了获得 动态远程PE-CE链路属性信息(TE信息),但是本发明也可以有利地结 合仅关于提供商网络(PE-PE路径)的信息使用。但是,本领域的技术人 员将会明白,为了获得最优的性能,动态链路属性信息的更大TE拓扑 (例如,包括远程PE-CE链路信息)是有利的。根据本发明的一个方面,多重归宿的请求方CE (例如CE1)向PCE (PE1*)请求去往一个或多个远程目的地地址前缀(例如前缀1,未示出)的一组CE-CE路径度量(例如成本)。正如本领域的技术人员将会明 白的,远程目的地地址前缀可利用传统的路由协议通过CE-PE链路(CE1-PE1、 CE1-PE2)来获知,例如通过eBGP消息、路由信息协议(RIP)消 息等等来获知。例如,请求方CE可能希望对以远程客户网络(例如客户 网络3)内的语音IP (VoIP)网关、远程电信局等等为目的地的IP流量进 行高效路由,或者可能希望将IP流量高效地路由到客户网络(例如除了 CE3以外可达的所有前缀)。值得注意的是,请求方CE可通过PCE发现(PCED)消息或者通过手工配置来获知PCE。例如,CE (路径计算客户端"PCC")和PCE之间的路径计算请求(和响应)可根据下述文档中规定的协议来交换2006年2月Vasseur等 人白勺因f寺网草案"尸a^ Compwto"o" £7ewe", (PC五,Comww"/carto" iVotoco/ fPCE" - 7 - <Jr^/ -z'"/; ce-;3ce; -W.加〉",特此通过引用将该文档的内容全部并入。图3是可有利地结合本发明使用的示例性路径计算请求/ 回复消息300的示意性框图。消息300包含但不限于公共头部310和一个 或多个请求或回复对象320。公共头部可用于指示请求的源和目的地地 址,以及请求的类型,例如请求(PCReq,或者对于与IP有关的请求是"PCReqJP"),回复(PCRep—IP)、差错、通知,等等。在(PCReq 和PCRep两者的)请求/回复对象320内是至少一组请求参数(RP) 330, 该组请求参数可包括各种标志332和请求标识(请求ID)对象334。应当 明白,PCEP的使用只是作为一个示例,根据本发明也可使用其他通信协 议。在路径计算请求的情况下,所请求路径端点字段340可被请求方CE 用于向PCE指示出CE请求去往的路径的那组远程目的地地址前缀。例 如,每个远程地址前缀(例如前缀1)可填充例如作为访问控制列表 (ACL)的对象340内的目的地端点。另外,请求方CE可通过具体地请 求每个本地附接的PE (例如PE1和PE2)的源端点或者将自身(例如 CE1)指示为源端点,来经由其每个多重归宿的CE-PE链路请求CE-CE路 径。在后一种情况下,PCE可被配置为确定请求方CE的该组本地附接的 PE。例如,再次参考图1, CE1经由两条链路CE1-PE1和CE1-PE2多重归宿于提供商网络。但是,本领域的技术人员将会明白,根据本发明可使用 任何数目的多重归宿链路。值得注意的是,请求方CE可请求PCE只返回最佳CE-CE路径。路径计算请求300还可以例如在请求参数字段330中指示出一个或多 个所请求路径的属性。例如,请求方CE可能希望只接收最大数目的路径 (例如一个、两个等等),或者只接收彼此相异的一组路径(例如为了失 效保护等等,这是本领域的技术人员将会明白的)。也可表示其他各种约 束,例如路径界限(最大成本、最大延迟、最大链路利用率、最小可用IP 带宽等等)。本领域的技术人员可以明白其他属性/约束,这里提到的那些 是代表性示例。PCE接收路径计算请求,并且根据本发明的另一方面,根据本领域的 技术人员将会明白的传统PCE计算技术来计算从任何附接的PE (PE1或 PE2)去往远程目的地地址前缀的该组CE-CE路径和当前度量。由于其具 有更完整TE拓扑的能力(例如,不是仅仅从其自己角度),PCE尤其可 被有利地使用。PCE因此可确定从任何附接的入口 PE (例如PE2)到目的 地地址前缀的最佳CE-CE路径。正如本领域的技术人员将会明白的,向充 当PCE的本地附接PE发送请求因此将传统的PCE技术扩展到了 IP路 由。例如,在接收到请求后,PCE选择一组PE,该组PE通告去往所请求 的远程目的地地址前缀(例如PE3和PE4,它们到达CE3)的路线。对于 该组的每个PE, PCE计算从请求方CE到PE的最佳路径。具体而言, PCE计算从自身(PE1*)去往目的地的最短路径(例如,利用SPF计 算),并且还计算从对于请求方CE来说可用的每个入口 PE (例如PE2) 去往目的地的最短路径。最短/最佳路径可以基于提供商网络和远程PE-CE 链路所使用的任何选择的度量(例如成本、链路利用率等等)。例如,传 统的IGP成本可用于IGP路由的提供商网络,或者用于LDP标签交换网 络,而其他基于隧道的成本(例如TE-LSP成本)可用于在PE之间采用 TE-LSP的网络(例如转发邻近状态获知)。PCE随后可以将计算出的从 入口 PE起的最短路径与从请求方CE起的CE-PE链路(例如CE1-PE1、CE1-PE2)的度量相组合,以计算完整的CE-CE路径和相应的当前度量。 或者,PCE可以简单地计算从入口 PE起的路径,并且请求方CE可以用其 关于CE-PE链路的知识来补充该结果;但是这种方法不是最优的。值得注意的是,多PCE方法也可用于根据本发明计算最佳CE-CE路 径。例如,提供商网络到目的地客户网络的出口 PE (例如PE3)也可被配 置为PCE (未示出)。在附接的入口PCE (例如PE1"尚未获知远程PE-CE链路属性信息并且也未以其他方式知晓该信息的情况下,入口 PCE (PE1)可以向出口 PCE (PE3)发送另一路径计算请求300,以获得远程 PE-CE链路的度量。正如本领域的技术人员将会明白的,入口PCE随后可 利用从出口 PCE返回的信息来相应地计算CE-CE路径和相关联的度量。图4是具有根据本发明计算出的CE-CE路径的图1的示例性计算机网 络的示意性框图。例如,路径1可能已被计算为从PE1到CE3 (经由 PE3)的最佳路径,并且具有度量"X",而路径2可能己被计算为从PE2 到CE3 (经由PE4)的最佳路径,并且具有度量"Y"。如上所述,可以 基于提供商网络内的链路以及远程PE-CE链路的当前度量(例如动态链路 属性信息)来计算路径。本领域的技术人员将会明白,CE-CE路径不需要 是相异的,例如,两个路径可以都穿越PE3,所示出的路径只是示例。例如,PCE利用如以上图3所示的路径计算回复(PCRep)消息300 向请求方CE返回相应的CE-CE路径度量。具体而言,路径对象350可用 于回复消息300内,用来传达该组路径和一个或多个相应的度量355。如 上所述,响应于来自CE的所请求属性,PCE可被配置为只返回符合约束(例如成本小于300、仅限最佳的两条路径,等等)的那些路径。或者, PCE可被配置为向CE返回所有计算出的路径,但是带有关于哪些路径符 合/不符合所请求的约束的指示(例如在度量字段355和/或标志字段332 中)。另外,在CE只请求了最佳路径的情况下,PCE可以只返回例如带 有或不带有相关联的度量的最佳CE-CE路径。为了保护提供商网络及其之外的隐私,本发明的PCE可被配置为返回 简单地对应于入口 PE的路径(例如经由PE1的路径1和经由PE2的路径 2)。这样,在提供商网络内穿越的实际的跳/节点对于CE仍是隐藏的。另外,PCE可以通过向CE提供与实际度量相对应的加权值来"隐藏"提 供商网络的实际度量。例如,假定路径1的成本X是"100",而路径2 的成本Y可以是"200" 。 PCE可以确定成本可以由权重(例如比率)来 表示,该权重对于X是"1"并且对于Y是"2"(例如1:2)。可选地,PCE可被配置为有状态PCE,即存储响应于接收到的请求计 算出的结果。例如,CE可发送针对特定远程目的地地址前缀的许多路径 计算请求,例如针对VoIP网关目的地的每秒一个请求,等等。因为每个 请求是针对相同的源和目的地的,所以PCE存储(或缓存)其计算结果并 为每个请求返回存储的结果,可能会是有利的。图5是根据本发明可使用 的示例性存储请求表500的示意性框图。存储请求表500例如存储在存储 器240中,并且包括一个或多个条目530,每个条目包括多个字段,用于 存储请求方节点ID 505、请求ID 510、 一组CE-CE路径515和一组相应 度量520。存储请求表500例如由PCE服务248来维护和管理。相应地, PCE服务248利用根据本发明基于接收到的路径计算请求消息300计算出 的CE-CE路径信息来填充存储请求表500。虽然对于多个CE示出了单个 存储请求表500,但是PCE也可为附接到该PCE和/或由该PCE管理的每 个CE维护一个存储请求表500。对存储请求表500的使用允许了 PCE通过消除为每个接收到的重复请 求重新计算CE-CE路径的需要而节省资源(例如处理)。值得注意的是, PCE可通过检査请求ID 510 (如果CE未改变的话)或者通过请求方节点 505与所得到的路径515的组合(即具有相同的源和目的地端点)来确定 请求是重复的。正如本领域的技术人员将会明白的,在PCE检测到CE-CE 路径的可配置变化 (例如通过来自IGP、 iBGP、 eBGP、 MP-BGP等等 的一个或多个通告)的情况下,PCE可以例如响应于随后接收到的请求, 或者基于表500内存储的值以抢先的方式,来相应地重新计算CE-CE路径 和度量。另外,请求方CE可能知晓PCE的有状态配置。相应地,请求方 CE可被配置为向PCE发送针对CE-CE路径度量的路径计算请求,以进一 步请求PCE响应于更新后的路径/度量返回未来的回复。这样,请求方CE 不需要不断向PCE发送请求以保持最新,因为PCE将会在任何更新发生时将其通知给CE (例如基本上立即通知或经过缓冲后通知,这是本领域 的技术人员将会明白的)。值得注意的是,PCE可配置有一个或多个策略(规则),以控制对接 收到的请求的响应。例如,在CE发送许多请求以期保持最新等等的情况 下,PCE可能希望抑制所处理的请求的量。例如,PCE可确定接收时间之 间的间隔小于可配置的时间的请求不被处理。相应地,PCE可通过明确地 将拒绝通知给CE或者通过忽略请求等等来拒绝这些请求。另外,正如本 领域的技术人员将会明白的,PCE可限制哪些CE被允许根据本发明请求 CE-CE路径度量,或者基于目的地地址前缀来限制请求,例如基于客户和 提供商网络之间的协定来进行限制。根据本发明的另一个方面,请求方CE接收返回的结果(例如在 PCRep消息300中),并且相应地修改其IP转发条目(例如在路由/转发 表246中),以便穿过其多重归宿的CE-PE链路执行与CE-CE路径度量 相对应的IP流量路由。例如,请求方CE可以不对称地基于所接收到的相 应CE-CE路径度量来对以远程地址前缀为目的地的IP流量进行负载平 衡。例如,CE1可确定在路径1 (成本100)上路由的IP流量的量是在路 径2 (成本200)上路由的IP流量的量的两倍。正如本领域的技术人员将 会明白的,负载平衡可在基于每分组分发,或者基于每目的地地址前缀。 图6是具有根据本发明高效路由的IP流量的图1的示例性计算机网络的示 意性框图。例如,CE1可根据相应路径(例如分别是路径1和路径2)的 路径度量通过链路CE1-PE1和CE1-PE2向CE3 (例如到经由CE3可达的 远程目的地地址前缀)路由IP流量。假定非对称负载平衡,那么可相应地 在各个链路CE1-PE1和CE1-PE2上发送比率为X,的IP流量(与路径1的 成本X有关)和比率为Y'的IP流量(与路径2的成本Y有关)。虽然非对称负载平衡是相应IP路由的一个示例,但是CE也可以改为 确定0只在最佳CE-CE路径上发送IP流量,ii)从IP路由中去除最差 CE-CE路径,并且在剩余的CE-CE路径上进行负载平衡,iii)去除比最佳 CE-CE路径差可配置的量的任何CE-CE路径(例如成本大于最佳路径的 两倍的任何路径,等等),iv)等等。本领域的技术人员将会明白其他基于CE-CE路径度量的相应IP路由,并且这里提到的那些是代表性示例。具体地,如上所述,在CE只请求了最佳CE-CE路径的情况下,CE可在 最佳的相应CE-PE链路上路由所有IP流量。另外,本发明可被扩展到多 播IP路由,例如请求方CE通过多个CE-PE链路将IP流量分发到多个目 的地地址前缀,并且基于去往每个目的地地址前缀的CE-CE路径度量来相 应地选择利用/排除哪些CE-PE链路。图7是示出根据本发明用于在CE-CE路径上高效地路由IP流量的过 程的流程图。过程700开始于步骤705,并且继续到步骤710,在该步骤 中PCE (例如PE1*)可获知提供商网络内的提供商链路和远程PE-CE链 路的动态链路属性信息,如上所述。在步骤715, CE (例如CE1)向本地 附接的PCE请求去往一个或多个远程目的地地址前缀的一组CE-CE路径 度量(例如成本)(即,经由每个多重归宿的CE-PE链路(例如链路 CE1-PE1和链路CE1-PE2))。值得注意的是,如上所述,该请求可包含 一个或多个所请求的路径的属性(最大延迟、最大成本,等等),并且还 可请求去往目的地的单个最佳路径。PCE在步骤720中接收该请求,并且在步骤725中可判定该请求是否 违反了任何请求策略,例如太频繁的请求、不适当的CE,等等,如上所 述。如果是,则PCE在步骤730中例如通过将拒绝通知给CE或通过简单 地忽略该请求来拒绝该请求。如果策略在步骤725中规定对请求的处理是 可接受的("OK"),则PCE可在步骤735中判定先前存储的请求的结 果是否匹配当前请求。如果不(例如第一请求或者无状态PCE),则PCE 在步骤740中例如通过在其路由表中执行查找操作来选择通告了到达目的 地地址前缀的CE的一组PE,如上所述。在步骤745中,PCE计算到达目 的地地址前缀的远程CE的最佳度量,例如IGP最短路径成本、隧道成本 等等,如上所述。PCE在步骤750中向请求方CE返回结果(例如成本、 权重、最佳选择,等等)。值得注意的是,如上所述,PCE可使用多PCE 方法来获得远程PE-CE链路信息,如果它尚未以其他方式获知该信息的 话。但是,如果在步骤735中PCE先前已经为该请求存储了结果(例如来自有状态PCE中的在先请求),那么PCE在步骤760中判定在存储之后 该结果是否已经变化了 (例如度量或成本)。例如,沿着存储的路径的链 路可能已经被去除,或者它们的状态已经变化了 (例如可配置地变化 了),从而导致PCE在步骤740中重新选择到达目的地的该组PE,并且 在步骤745中重新计算最佳度量。如果在步骤760中存储的度量尚未变 化,则PCE在步骤765中例如通过再次返回实际度量或者通过告知CE没 有发生变化来将存储的结果返回给请求方CE,如上所述。值得注意的 是,在CE只向PCE发出单个请求以便在变化发生时被通知的上述示例 中,PCE在步骤760中不断监视度量的变化,并且作为检测到变化的结果 相应地继续到步骤740。在步骤770中,CE接收结果并根据结果修改其转发条目(例如在转 发表246中)。例如,CE可对IP流量进行负载平衡(例如非对称的负载 平衡),或者可以选择最佳路径,等等,如上所述。CE随后可根据转发 条目将IP流量发送到目的地地址前缀。过程700结束于步骤780。有利的是,该新颖技术在计算机网络中的CE-CE路径上高效地路由了 IP流量。通过利用具有关于CE-CE路径链路的动态链路属性信息的知识 的PCE,该新颖技术允许了多重归宿的CE相应地对穿过其多重归宿的 CE-PE链路的IP流量进行高效路由(例如负载平衡)。具体地,该新颖技 术有利地为IP流量使用了 PCE。另外,该新颖技术的动态性质减轻了对 繁重的手工配置的需求。虽然已经示出和描述了在计算机网络中的CE-CE路径上高效地路由 IP流量的示例性实施例,但是应当明白,在本发明的精神和范围内可进行 各种其他适应和修改。例如,在这里结合MPLS VPN网络(客户/提供商 网络)示出和描述了本发明。但是,本发明在其广泛意义上并不限于此, 而是实际上可以结合例如区域、级别、自治系统等等之间的其他类型的多 重归宿网络来使用,这是本领域的技术人员将会明白的。另外,虽然本发 明描述了 CE向能够计算从每个可用入口 PE起的路径的单个PCE请求信 息,但是CE也可改为向每个独立的入口 PE请求路径计算,并且可以相应 地自己组合结果。另外,虽然本发明被例示为在CE和PE之间执行,但是本领域的技术人员将会明白,在多个提供商网络被互连的情况下,本发明 同样可应用到提供商网络之间的多重归宿PE-PE链路(换言之,CE是另一网络的PE)。另外,本发明也可通过多个网络递归地使用,例如从第 一客户网络的CE到第一提供商网络的第一 PE到第二提供商网络的第二 PE,等等。如上所述,该递归技术可利用最佳CE-CE路径的多PCE计 算。以上描述针对了本发明的特定实施例。但是,将会明白,可以对所描 述的实施例进行其他变化和修改,获得其优点中的一些或全部。例如,明 确地设想了本发明的教导可以实现为软件(包括具有在计算机上执行的程 序指令的计算机可读介质)、硬件、固件或其组合。另外,可以生成电磁 信号来通过例如无线数据链路或数据网络(例如因特网)携带实现本发明 的一些方面的计算机可执行指令。因此,本说明书应当仅以示例方式来理 解,而不应当以其他方式限制本发明的范围。因此,所附权利要求的一个目的是覆盖落在本发明的真实精神和范围这的所有变化和修改。
权利要求
1.一种用于在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径(“CE-CE路径”)上高效地路由因特网协议(IP)流量的方法,该方法包括在多重归宿CE处向路径计算元件(PCE)请求去往一个或多个远程目的地地址前缀的一组CE-CE路径度量;作为响应,在所述PCE处计算去往所述远程目的地地址前缀的一组可用CE-CE路径和当前度量;以及将相应CE-CE路径度量返回给请求方CE。
2. 如权利要求1所述的方法,还包括在所述PCE处获知从所述提供商网络到一个或多个远程CE的远程链 路的动态链路属性信息。
3. 如权利要求1所述的方法,还包括在所述PCE处获得所述提供商网络的链路的动态链路属性信息。
4. 如权利要求1所述的方法,还包括相应地修改所述请求方CE的IP转发条目,以便执行与所述CE-CE 路径度量相对应的IP流量路由。
5. 如权利要求4所述的方法,还包括执行从包括以下各项的群组中选择出来的IP流量路由负载平衡;根据相应CE-CE路径度量的非对称负载平衡;选择最佳路径;去除最坏路径 并在剩余路径上对流量进行负载平衡;以及去除任何具有可配置地坏于最 佳路径的CE-CE路径度量的路径并在剩余路径上对流量进行负载平衡。
6. 如权利要求1所述的方法,还包括在请求消息的访问控制列表(ACL)中指定所述远程目的地地址前妙 5义。
7. 如权利要求1所述的方法,其中所述请求步骤还包括通过路径计算请求协议(PCEP)请求消息来请求所述的一组CE-CE 路径度量。
8. 如权利要求1所述的方法,还包括向所述请求方CE返回从包括以下各项的群组中选择出来的相应CE-CE 路径度量 路径成本;所利用的带宽;链路利用率;以及与路径度量 相对应的加权值。
9. 如权利要求1所述的方法,其中所述请求步骤还包括 在所述多重归宿CE处向所述PCE请求沿着符合一组所请求路径属性的CE-CE路径去往一个或多个远程目的地地址前缀的一组CE-CE路径度
10. 如权利要求9所述的方法,其中所述所请求路径属性是从包括以 下各项的群组中选择出来的路径的最大数目;相异性、最大成本;以及 最大延迟。
11. 如权利要求9所述的方法,其中返回给所述请求方CE的所述相应 CE-CE路径度量是从包括以下各项的群组中选择出来的与符合所述一组 所请求路径属性的CE-CE路径相对应的CE-CE路径度量;与所有CE-CE 路径相对应的CE-CE路径度量,以及关于不符合所述一组所请求路径属性 的CE-CE路径的指示;以及与所有CE-CE路径相对应的CE-CE路径度 量,以及关于每个所述CE-CE路径的相应所请求路径属性的指示。
12. 如权利要求1所述的方法,还包括响应于从所述CE接收到请求,在所述PCE处,在计算所述一组可用 CE-CE路径和当前度量之前,基于一个或多个策略判定是否对所述请求进 行处理。
13. 如权利要求12所述的方法,其中所述一个或多个策略定义了从包 括以下各项的群组中选择出来的规则抑制所述请求;允许来自所选CE 的请求;允许去往所选目的地地址前缀的请求;拒绝来自所选CE的请 求;以及拒绝去往所选目的地地址前缀的请求。
14. 如权利要求12所述的方法,还包括响应于在所述PCE处基于一个或多个策略判定不对所述请求进行处 理,执行从包括以下各项的群组中选择出来的动作拒绝所述请求;将一 个或多个策略违反通知给所述请求方CE;以及忽略所述请求。
15. 如权利要求1所述的方法,还包括在所述PCE处通过以下步骤来计算去往所述远程目的地地址前缀的所述一组可用CE-CE路径和当前度量i)选择已经通告了去往所述远程目的地地址前缀的路线的一组提供商边缘设备(PE),以及ii)计算去往所述组中的每个PE的一组最佳CE-CE路径和各自的度量。
16. 如权利要求1所述的方法,还包括在所述PCE处将接收到的请求与相应的计算出的CE-CE路径和当前度量一起存储;在所述CE-CE路径和度量没有变化的情况下向所述请求方CE返回存储的CE-CE路径度量;以及在所述CE-CE路径和度量有变化的情况下向所述请求方CE返回重新计算的CE-CE路径度量。
17. 如权利要求1所述的方法,还包括在所述请求方CE处请求所述PCE将CE-CE路径度量的变化更新给所述请求方CE;以及在所述CE-CE路径和度量有变化的情况下向所述请求方CE返回重新计算的CE-CE路径度量。
18. 如权利要求1所述的方法,其中所述请求步骤还包括在所述请求方CE处向所述PCE请求去往一个或多个远程目的地地址前缀的一组CE-CE路径度量,所请求的组包括单个最佳CE-CE路径的CE-CE路径度量。
19. 如权利要求1所述的方法,其中所述PCE是在本地附接到所述请求方CE的提供商边缘设备(PE)。
20. 如权利要求1所述的方法,其中所述PCE是入口 PCE,所述方法还包括在所述入口 PCE处向出口 PCE请求去往所述远程目的地地址前缀的一组远程PE-CE路径度量;作为响应,在所述出口 PCE处计算去往所述远程目的地地址前缀的一组可用远程PE-CE路径和当前度量;以及向所述入口 PCE返回相应的远程PE-CE路径度量;其中所述入口 PCE基于返回的远程PE-CE路径和当前度量来计算去往所述远程目的地地址前缀的所述一组可用CE-CE路径和当前度量。
21. —种用于在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径("CE-CE路径")上高效地路由因特网协议(IP)流量的系统,该系统包括用于在多重归宿CE处向路径计算元件(PCE)请求去往一个或多个远程目的地地址前缀的一组CE-CE路径度量的装置;用于作为响应在所述PCE处计算去往所述远程目的地地址前缀的一组可用CE-CE路径和当前度量的装置;以及用于将相应CE-CE路径度量返回给请求方CE的装置。
22. 如权利要求21所述的系统,还包括用于在所述PCE处获知从所述提供商网络到一个或多个远程CE的远程链路的动态链路属性信息的装置。
23. 如权利要求21所述的系统,还包括用于相应地修改所述请求方CE的IP转发条目以便执行与所述CE-CE路径度量相对应的IP流量路由的装置。
24. —种计算机可读介质,包含用于在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径("CE-CE路径")上高效地路由因特网协议(IP)流量的可执行程序指令,所述可执行程序指令包括用于执行以下步骤的程序指令在多重归宿CE处向路径计算元件(PCE)请求去往一个或多个远程目的地地址前缀的一组CE-CE路径度量;作为响应,在所述PCE处计算去往所述远程目的地地址前缀的一组可用CE-CE路径和当前度量;以及将相应CE-CE路径度量返回给请求方CE。
25. 如权利要求24所述的计算机可读介质,所述可执行程序指令还包括用于执行以下步骤的程序指令在所述PCE处获知从所述提供商网络到一个或多个远程CE的远程链路的动态链路属性信息。
26. 如权利要求24所述的计算机可读介质,所述可执行程序指令还包括用于执行以下歩骤的程序指令相应地修改所述请求方CE的IP转发条目,以便执行与所述CE-CE路径度量相对应的IP流量路由。
27. —种适合于在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径("CE-CE路径")上高效地路由因特网协议(IP)流量的节点,该节点包括一个或多个网络接口;耦合到所述一个或多个网络接口并且适合于执行软件进程的处理器;以及适合于存储可由所述处理器执行的路径计算元件(PCE)进程的存储器,所述PCE进程被配置为i)从多重归宿CE接收对去往一个或多个远程目的地地址前缀的一组CE-CE路径度量的请求,ii)作为响应,计算去往所述远程目的地地址前缀的一组可用CE-CE路径和当前度量,以及iii)将相应CE-CE路径度量返回给请求方CE。
28. 如权利要求27所述的节点,所述PCE进程还被配置为获知从所述提供商网络到一个或多个远程CE的远程链路的动态链路属性信息。
29. —种被配置为在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径("CE-CE路径")上高效地路由因特网协议(IP)流量的节点,该节点包括两个或更多个网络接口,所述网络接口多重归宿于所述提供商网络;耦合到所述网络接口并且适合于执行软件进程的处理器;以及适合于存储与所述网络接口相对应的一个或多个IP转发条目的存储器,该存储器还适合于存储可由所述处理器执行的客户边缘设备(CE)进程的存储器,所述CE进程被配置为0向路径计算元件(PCE)请求去往一个或多个远程目的地地址前缀的一组CE-CE路径度量,ii)从所述PCE接收返回的相应CE-CE路径度量,以及iii)相应地修改IP转发条目,以执行与所述CE-CE路径度量相对应的IP流量路由。
全文摘要
一种技术在计算机网络中穿过提供商网络的、客户边缘设备(CE)之间的路径(“CE-CE路径”)上高效地路由因特网协议(IP)流量。根据该新颖技术,路径计算元件(PCE),例如提供商边缘设备(PE),可获知从提供商网络到一个或多个远程CE的远程链路(例如“PE-CE链路”或“CE-PE链路”)的动态链路属性信息。多重归宿的请求方CE向PCE请求例如经由从请求方CE起的每个多重归宿的CE-PE链路去往一个或多个远程目的地地址前缀的一组CE-CE路径度量(例如成本)。响应于该请求,PCE计算去往远程目的地地址前缀的一组可用CE-CE路径和当前度量,并且将相应CE-CE路径度量返回给请求方CE。请求方CE相应地修改其IP转发条目,以便穿过其多重归宿CE-PE链路执行与CE-CE路径度量相对应的IP流量路由(例如非对称负载平衡)。
文档编号H04L1/00GK101606341SQ200780009198
公开日2009年12月16日 申请日期2007年3月13日 优先权日2006年3月14日
发明者让-菲利普·瓦瑟尔 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1