CN105743795B - 用于广域网优化的点到多点路径计算 - Google Patents
用于广域网优化的点到多点路径计算 Download PDFInfo
- Publication number
- CN105743795B CN105743795B CN201511001308.9A CN201511001308A CN105743795B CN 105743795 B CN105743795 B CN 105743795B CN 201511001308 A CN201511001308 A CN 201511001308A CN 105743795 B CN105743795 B CN 105743795B
- Authority
- CN
- China
- Prior art keywords
- network
- solution
- path
- controller
- link
- 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.)
- Active
Links
- 238000005457 optimization Methods 0.000 title description 16
- 238000004364 calculation method Methods 0.000 claims abstract description 92
- 238000005553 drilling Methods 0.000 claims abstract description 86
- 238000000034 method Methods 0.000 claims description 48
- 230000005540 biological transmission Effects 0.000 claims description 45
- 230000006870 function Effects 0.000 claims description 21
- 238000002922 simulated annealing Methods 0.000 claims description 16
- 230000002265 prevention Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 11
- 230000004048 modification Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 6
- 235000013399 edible fruits Nutrition 0.000 claims 2
- 239000000243 solution Substances 0.000 description 161
- 238000005516 engineering process Methods 0.000 description 35
- 238000003860 storage Methods 0.000 description 18
- 230000003287 optical effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000009826 distribution Methods 0.000 description 7
- 239000013307 optical fiber Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000011084 recovery Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 238000009795 derivation Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000037361 pathway Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000009966 trimming Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000005086 pumping Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000002910 structure generation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
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/02—Topology update or discovery
-
- 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/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- 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/12—Discovery or management of network topologies
-
- 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/08—Configuration management of networks or network elements
-
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0826—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network costs
-
- 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/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- 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/02—Topology update or discovery
- H04L45/03—Topology update or discovery by updating link state protocols
-
- 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/12—Shortest path evaluation
- H04L45/122—Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
-
- 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/16—Multipoint routing
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0005—Switch and router aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/44—Distributed routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
Abstract
在某些示例中,用于网络的控制器包括:路径计算模块,被配置成由一个或多个处理器执行以获得用于至少一个点到多点标签交换路径(PM2P LSP)的配置信息;经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息;基于网络拓扑结构来确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解。控制器还包括:路径提供模块,被配置成由该一个或多个处理器执行以利用第一解和第二解中的具有最低总成本的解来配置网络。
Description
技术领域
本发明涉及计算机网络,并且更具体而言,涉及计算机网络路径的路径计算。
背景技术
通常被称作路由器的网络内的路由设备维持描述通过网络的可用路由的路由信息表。网络路由器维持描述通过网络的可用路由的路由信息。在接收分组之后,路由器检查分组内的信息并且按照路由信息来转发分组。为了维持网络的精确表示,路由器按照诸如为内部网关协议(IGP)或边界网关协议(BGP)的一个或多个路由协议来交换路由信息。
术语“链路”通常用于指代网络上的两个设备之间的连接。链路可以为诸如为铜线、同轴电缆、不同的光纤线路的宿主中的任意者或者无线连接的物理连接。除此之外,网络设备可以限定“虚拟”或“逻辑”链路,并且将虚拟链路映射到物理链路。换而言之,虚拟链路的使用提供了一定程度的抽象。由于网络大小和复杂性增长,任意给定链路上的流量可能接近链路的最大带宽容量,由此导致拥塞和损失。
多协议标签交换(MPLS)为用于设计因特网协议(IP)网络内的流量模式的机制。使用MPLS,源设备能够请求通过网络的路径,即,标签交换路径(LSP)。LSP限定通过网络的清晰路径以携带来自源设备的分组到目标设备。与特定LSP相关联的短标签附于经由LSP通过网络行进的分组。沿着路径的路由器协作执行MPLS操作以沿着所建立的路径来转发MPLS分组。LSP可以用于包括带宽管理和服务质量(QoS)的广泛的流量工程目的。
流量工程可以应用于网络内以用于广泛的目的,诸如将围绕网络故障或拥塞链路的流量路由或者沿着满足一组显式要求的通过网络的特定路径来引导一定的流量。历史上,MPLS标记分发由诸如为标签分发协议(LDP)、具有流量工程扩展的资源预留协议(RSVP-TE)和标签的边界网关协议(LBGP)的协议来驱动。标签交换路由器(LSR)借以分发标签以支持沿着正常路由路径的MPLS转发的LDP过程在以下描述:L.Anderson,“LDPSpecification”,RFC 3036,Internet Engineering Task Force(IETF),2001年1月,这里通过引用将其全部内容并入。RSVP-TE使用诸如为带宽可用性的约束信息来在资源受限网络内计算和建立LSP。RSVP-TE可以使用诸如为中间系统-中间系统(IS-IS)协议或者开放最短路径优先(OSPF)协议的扩展以携带流量工程信息的链路状态内部路由协议累积的带宽可用性信息。
LSP的头端路由器通常作为入口路由器而知晓,而LSP的尾端的路由器通常作为出口路由器而知晓。入口路由器和出口路由器以及沿着支持MPLS的LSP的中间路由器一般被称为标签交换路由器(LSR)。将沿着LSP转发的一组分组称作转发等价类(forwardingequivalence class,FEC)。对于每个LSP可能存在多个FEC,但是对于任意给定FEC,可能仅仅有一个活动LSP。FEC定义典型地包括遍历LSP的目标的IP地址,例如,分组去往的IP地址。入口标签边缘路由器(LER)使用沿着LSP从出口LER朝上传播的路由信息来确定LSP以及附加标记到FEC的每个分组。LSR使用MPLS协议来从下游LSR接收MPLS标签映射以及公告(advertise)MPLS标签映射到上游LSR。当LSR从上游路由器接收MPLS分组时,其根据其转发表中的信息来交换MPLS标签并且转发分组到适当的下游LSR或LER。出口LER从分组中去除标签并且按照基于非标签分组转发技术来转发分组到其目标。
一般,沿着LSP的每个路由器维持关联FEC与输入标签和输出标签的标签映射。以这一方式,当LSR接收经标签的分组时,LSR可以通过在上下文中执行查找来以输出标签来置换分组上的标签(即,输入标签)。LSR接着可以转发分组到沿着LSP的下一LSR或LER。来自给定路由器的沿着LSP的下一路由器通常被称作下游路由器或下一跳。
换而言之,一旦分组由LER映射到LSP上,沿着LSP的LSR基于附于分组的标签来转发分组,而非基于分组目标和LSR的路由信息做出单独转发的决定。流量工程MPLS LSP(TELSP)可以以此方式用于限定和实现满足网络传送的一定的流量的要求的从源设备到目标设备的路径。
实现多播的网络、或“多播网络”不同于常规点到点流或LSP地使用诸如为路由器和链路的网络资源。这样的网络可以建立点到多点(P2MP)LSP以从单个源多播分组到多个目标。使用P2MP LSP,为P2MP LSP的节点的网络的路由器可以在P2MP LSP的给定分支上发送映射到P2MP LSP下游的分组的单个副本。P2MP LSP的下游路由器根据需要来复制分组,从而到达下游目标。以此方式,如果网络被配置成从源到多个目标来多播(可选地,“广播”)相同的数据,在树的每个分支上,流量需要被计算仅仅一次,而不论依赖于用于传送流量的分支的链路之上的源到目标路径的数量。如果用于相同P2MP多播树的到相异目标的路径使用尽可能多的路径上的公共元素,网络资源被更有效(即,优化)地使用。
发明内容
一般,描述技术以用于确定网络中的点到多点(P2MP)标签交换路径(LSP)。例如,用于网络的控制器获得描述网络拓扑结构的拓扑结构信息并且基于拓扑结构信息使用网络拓扑结构模型来确定针对一组多个P2MP LSP的通过网络的从至少一个源到一组目标的路径的解。控制器接着在通过要么(1)通过例如应用高链路惩罚到模型中的链路度量来阻止网络拓扑结构中的链路、要么(2)除去阻止之前已经阻止的网络拓扑结构中的链路来修改网络拓扑结构模型之前为解确定网络的总资源成本。“总资源成本”表示基于使用的网络资源的整体成本以及在某些情况下由P2MP LSP使用的这些资源的比例来针对P2MP LSP确定的路径所计算的整体“成本”值。
控制器迭代以上操作同时存储限定针对所有之前的迭代所确定的最佳(例如,最低成本)解的数据。在某些示例中,控制器应用链路惩罚到链路度量并且根据惩罚准则应用到解以促进路径相异性,例如,避免路由回路、和/或满足LSP约束。这些惩罚成本被添加到设置成得到解的总成本的P2MP LSP的“总资源成本”值。阻止网络拓扑结构中的链路可以包括应用高惩罚到最短路径(或最短-相异-路径)算法使用的链路度量(在一个或两个方向中)以确定单独的P2MP LSP的路径。控制器基于链路度量(加上通过在一个或两个方向中阻止链路添加的任意度量惩罚)来确定P2MP LSP路径并且基于使用的网络资源来确定P2MPLSP集的“总资源成本”。控制器接着可以将所应用的惩罚并入到解的总成本中,作为确定解的迭代的一部分,总成本包括用于解的网络的总资源成本以及任意应用的惩罚。这一链路阻止和除去阻止模式有效地确定了P2MP LSP集的路径并且由此确定解的总资源成本和总惩罚成本。
作为迭代的一部分,控制器可以确定针对迭代所确定的解是否具有比之前的解更低的总成本。控制器可以通过应用仿真退火以确定是否接受解(包括经修改的网络拓扑结构)作为用于后续对网络拓扑结构的修改的基础或者替代地还原到作为基础的用于之前迭代的解来尝试避免解总成本的梯度的局部最小。在某些示例中,如果解的总成本少于之前的解的总成本,则控制器接受解。然而,如果解的总成本大于之前的解的总成本,则控制器仍然可以取决于与总成本差异的幅度和/或迭代进程相称的动态概率来接受解。例如,控制器可以更不可能地接受剩余更少的将执行的迭代次数的更差的(即,更大的总成本)解。
控制器可以根据以上来迭代固定迭代次数或者直到达到一组可接受的准则,同时存储限定为所有之前的迭代确定的最佳解的数据。在完成固定迭代次数处,控制器可以利用针对P2MP LSP的路径来配置网络。在某些示例中,控制器可以尝试识别用于P2MP LSP集(或者来自不同源的两个P2MP LSP集)的多个相异的路径,以促进P2MP LSP集的冗余。
技术可以提供一个或多个优点。例如,应用上述技术的控制器可以以每个迭代来促进沿着与解决路由回路、正确计算满足物理相异性的路径的概率、故障恢复、和/或LSP约束的满足的总成本有关的用于P2MP LSP路径的解总成本梯度来朝着全局优化移动。虽然全局优化解可能不能在所有情况中均达到,技术可以避免至少解的总成本梯度上的某一局部最小化,这可以带来稳健且更低的资源成本的解。
在一个示例中,一种方法包括:由网络的控制器获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息。该方法还包括:由控制器经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息。该方法进一步包括由控制器基于网络拓扑结构来确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解。该方法还包括由控制器在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解。该方法进一步包括由控制器利用第一解和第二解中的具有最低总成本的解来配置网络,解的最低总成本包括用于解的网络的总资源成本。
在另一示例中,用于网络的控制器包括耦合到存储器和路径计算模块的一个或多个处理器,该路径计算模块被配置成由该一个或多个处理器执行以:获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息;基于网络拓扑结构来确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解。控制器还包括路径提供模块,该路径提供模块被配置成由该一个或多个处理器执行以利用第一解和第二解中的具有最低总成本的解来配置网络,解的最低总成本包括用于解的网络的总资源成本。
在另一示例中,非瞬态计算机可读介质包含指令,该指令用于使得网络的控制器的一个或多个可编程处理器:获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息;基于网络拓扑结构来确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MPLSP的包括通过网络的第二相应的路径的第二解;以及利用第一解和第二解中的具有最低总成本的解来配置网络,解的最低总成本包括用于解的网络的总资源成本。
本发明的一个或多个实施例的细节在所附附图和以下描述中给出。本发明的其他特征、目的、以及优点将从描述和附图、以及从权利要求中显而易见。
附图说明
图1为图示按照本公开内容的技术的其中路径计算设备被配置成计算用于点到多点标签交换路径(LSP)的路径的网络系统的框图。
图2A-2B为描绘根据这里所描述的技术的由控制器确定并且在网络中提供的用于点到多点标签交换路径的相异P2MP路径的框图。
图3为图示按照本公开内容中描述的技术的其中控制器获得多层网络的抽象链路数据并且使用抽象链路数据来确定点到多点标签交换路径的路径的示例网络系统的框图。
图4为图示按照本公开内容的技术的被配置成计算点到多点标签交换路径的路径的示例控制器的框图。
图5为图示根据本公开内容中描述的技术的确定和优化用于P2MP LSP的相异的路径的用于一个或多个控制器的示例操作模式的流程图。
图6-8为图示根据本公开内容中描述的技术的在示例运行以确定和优化用于网络中的P2MP LSP的相异的路径期间的中间和最终参数和结果的曲线图。
通篇图和文字中,相同的附图标记指代相同的元素。
具体实施方式
图1为图示按照本公开内容中的技术的其中路径计算设备被配置成计算用于点到多点标签交换路径(LSP)的路径的网络系统的框图。在这一示例中,网络系统2包括控制器10和具有由网络链路(未示出)在图示的拓扑结构(topology)中互连的多个路由器4A-4F(“路由器4”)的多协议标签交换(MPLS)网络6(“网络6”)。网络6可以表示广域网(WAN)。每对连接的路由器4可以由一个或多个网络链路9连接,其中每个图示的网络链路9A-9I表示具有相关联的总带宽的逻辑或物理链路。网络6的其他示例可以包括根据一组网络链路9来设置在变化拓扑结构中的路由器4。网络6的物理链路可以包括例如以太网PHY、同步光网络(SONET)/同步数字体系(SDH)、Lambda、或包括分组传送能力的其他层2数据链路。网络6的逻辑链路可以包括例如以太网虚拟局域网(VLAN)、多协议标签交换(MPLS)标签交换路径(LSP)、或MPLS流量工程(TE)LSP。网络6的各种示例可以包括几百或者甚至几千的路由器。进而,尽管这里主要描述为路由器,路由器4可以表示网络6内转发包括光数据的网络流量的其他类型的转发设备,诸如L2交换机、L3交换机、以及L2/L3交换机、中继器、光交叉连接(OXC)、光分插复用器(OADM)、复用设备、或其他类型的设备。例如,路由器4可以为由中间OXC光连接的层三(L3)路由器,诸如路由器4具有访问OXC的链路的OXC。因此,本公开内容中描述的技术不仅可以应用于分组/标签交换流,而且还可以应用于具有不同类型的接口交换的其他流类型,诸如基于Lambda的、波分复用(WDM)/密集WDM(DWDM)、以及基于时分复用(TDM)的。
路由器4为由控制器10服务的路径计算域的成员。路径计算域可以包括例如内部网关协议(例如,开放最短路径优先(OSPF)或中间系统到中间系统(IS-IS))区域、自治系统(AS)、服务提供商网络内的多个AS、横跨多个服务提供商网络的多个AS。在各种示例中,路由器4的不同的组合可以包括多个AS的成员路由器。连接路由器4的网络链路因而可以为内部链路、AS间传送链路、另一类型的网络链路、或其某一组合。虽然关于路由器图示和描述,技术可以可应用于例如实现多协议标签交换(MPLS)或通用MPLS(GMPLS)的任意网络设备。
控制器10为使用从网络6的路由器4学习的流量工程信息21来确定路径并且为网络中的P2MP LSP 18配置多点到多点(P2MP)标签交换路径(LSP)的路径计算设备。换而言之,在相同的网络6上可以有多组潜在的相异的(diverse)P2MP树,每组P2MP树携带不同的广播信道并且在不同组的源和目标之间。如这里进一步具体描述的,控制器10可以在P2MPLSP 18被限定并且添加到网络或修改时配置网络中的P2MP LSP 18的路径(例如,在改变用于P2MP LSP 18中任意者的流量带宽或目标列表之后)。控制器10还可以或者可选地在网络6的拓扑结构改变时动态地重新计算用于P2MP LSP 18的经更新的路径并且配置网络中的经更新的路径,包括通过添加或去除链路或节点的网络6的网络拓扑结构的变化、链路9的物理路径的变化、和/或链路9和路由器4中的一个或多个的故障。
如这里所使用的,一组P2MP LSP可以可选地限定为:(1)广播相同的流量到一组目标的单独的分离的多组LSP;(2)在两个相异的路径上广播来自相同的源的相同的流量到一组目标的单独的分离的多组LSP,其中从源到每个目标的该两个相异的路径是相异的(或者给定网络拓扑结构,尽可能相异);或(3)在两个相异的路径上从两个不同的源广播相同的流量到一组目标的单独的分离的多组LSP,其中从不同的源到相同的目标的该两个路径必须相异或者在给定网络拓扑结构的情况下尽可能相异。
这里使用的与P2MP LSP相关的术语“路径”和“P2MP路径”指代从源前进到多个目标的点到多点(P2MP)路径。用于P2MP LSP的多播分发树可以设置在为P2MP LSP计算的路径上。在某些示例中,并且对于P2MP LSP,控制器10尝试确定从源到多个目标的相异的P2MP路径。如果两个路径不共享任何公共的物理或用户定义类型的资源,则这两个路径“相异”(除了给定网络拓扑结构,需要之外)。例如,用户可以规定这两个路径不可以共享下面的元素中的任意者或全部:相同的节点;相同的链路或者具有来自(链路和/或节点的)相同的共享风险组的具有公共记录的链路。路径相异性(diversity)可以包括节点相异性、链路相异性、以及共享风险相异性,其中节点相异性指代不共享任何节点的路径,链路相异性指代不共享任何链路的路径,以及共享风险相异性指代没有任何共享风险的路径。对于源S到一组目标{D1,D2,Dn},如果对于所有的D而言路径对中的每个路径对相异,则两个P2MP路径相异。或者更正式地,对于第一P2MP路径,给定源S到一组目标{D1x,…,Dix|i>0}以及对于第二P2MP路径,给定源S到一组目标{D1y,…,Diy|i>1},路径对{S→Dzx,S→Dzy}必须对于所有的z相异。该组目标{D1x,…,Dix|i>0}和{D1y,…,Diy|i>1}可以是相同的。在某些示例中,作为例子,控制器10可以放宽严格的相异性要求,使得可以将一组P2MP路径当作相异,只要P2MP路径不共享可配置的多个链路、节点、和/或共享风险。
控制器10可以表示用于配置和管理网络6的高级控制器。控制器10可以表示一个或多个通用服务器;装置、控制器、或用于计算路径的其他专用设备;由计算设备执行的应用;为路由器管理的LSP计算路径的路由器4的分布式控制面;等等。在某些情况中,控制器10的各个方面可以分布在一个或多个真实或虚拟计算设备中。以上列出的任何这样的设备可以是关于网络6地在网络中或在网络之外。用于软件定义的网络的软件定义的网络(SDN)控制器的示例细节可以执行这里所描述的操作以计算路径和路由LSP,其在2013年6月5日提交的并且发明名称为“PHYSICAL PATH DETERMINATION FOR VIRTUAL NETWORK PACKETFLOWS”的PCT国际专利申请PCT/US2013/044378中描述,这里通过引用将其整体并入。用于软件定义的网络的SDN控制器以获得拓扑结构信息以及提供网络的附加的示例细节在2013年9月30日提交的发明名称为“SOFTWARE DEFINED NETWORK CONTROLLER”的美国专利申请号14/042,614以及2014年9月29日提交的发明名称为“BATCHED PATH COMPUTATION INRESOURCE-CONSTRAINED NETWORKS”的美国专利申请号14/500,736中描述,这里通过引用将他们整体并入。
点到多点标签交换路径18(“P2MP LSP 18”或者更简单地,“LSP 18”)表示存储将安装到网络6的用于P2MP LSP的定义的数据结构,诸如LSP数据库。LSP 18中的每个LSP定义根据路由器4的源路由器和目标路由器、以及限定LSP上的一个约束的用于LSP的要求带宽来限定P2MP LSP。在某些示例中,LSP定义可以包括至少部分的用于对应的LSP的定义的路由或路径、要求的或排除的链路属性、或者用于可以影响对应的LSP的路径的计算的对应的LSP的其他约束。LSP 18包括在这一示例中规定作为源的耦合到源设备8的路由器4A、作为目标的路由器4D、4E、以及4F的P2MP LSP定义;并且可以规定用于P2MP LSP的要求的带宽B。管理员可以通过配置来设置用于LSP定义的静态带宽,或者根据路由器4的自动带宽特征,带宽可以是动态的。路由器4A、4D、4E、以及4F可以是提供商边缘(PE)路由器,其中PE路由器操作于网络6的边缘以向具有操作网络6的服务提供商的客户端的客户端网络提供服务,而路由器4B、4C可以是提供商(P)或“核心”路由器。
控制器10给出可以由分层设置的控制器的其他控制器调用或者由协调器、管理员、应用、或其他实体来调用的北向接口20,以请求决定存储到LSP 18并且部分配置在网络6中的服务路径。接口20可以有用于与诸如为OpenStack的协调系统集成;接口20还可以或者可选地由其他应用或者运营商的操作支持系统(OSS)/商业支持系统(BSS)可选地可用。接口20可以在某些情况中给出RESTful应用接口(API)。
为了获得流量工程信息21,控制器10可以执行扩展以携带流量工程信息的一个或多个网络路由协议,以监听携带这样的流量工程信息的路由协议公告。流量工程信息可以包括用于路由器4的节点和接口标识符;用于链路的按照每优先级的管理权重和可用带宽;用于虚拟链路的LSP标识符和状态信息,以及用于计算流量工程的LSP的路径的其他信息。控制器10可以存储流量工程信息到流量工程数据库(TED)。
示例应用可以包括可以使用网络6中的P2MP LSP以传送包括电影、电势、无线电、和/或其他内容的分组的数字视频或其他媒体分发。由接入链路13耦合到路由器4A的源设备7可以表示内容发起者、源、和/或发送分组化内容到由目标设备8A-8C表示并且通过接入链路11耦合到相应的路由器4D、4E、4F的例如远程工作室、头端、和/或传输塔的分发器。使用由网络6提供的P2MP LSP的其他应用可以包括IP语音会议电话、视频点播(VoD)、以及其他多播应用。
按照这里所描述的技术,示例控制器10包括:路径计算模块24,被配置成使用所学习的流量工程信息21来计算从由路由器4A表示的源到由路由器4D、4E、4F表示的目标的LSP18的P2MP LSP的路径。得到的P2MP路径可以被限制到单个域或者可以穿过若干域。
为了计算P2MP LSP的路径,控制器10的路径计算模块24迭代地确定用于路径的解以全局地优化解决路由回路(loop)、相异性的概率、故障恢复、和/或满足P2MP LSP上的LSP约束的总成本。对于每个迭代,路径计算模块24确定针对P2MP SLP的从至少一个源通过网络到一组目标的多路径的解。路径计算模块24可以将合适的点到多点或最小跨越树算法应用到作为网络6的元素的表示的网络拓扑结构,从而确定用于P2MP LSP的多路径以用于给定解。例如,路径计算模块24可以将Kruskal算法、Prim算法、或者其修改版本应用到经修改的网络拓扑结构模型以针对每次迭代确定用于P2MP LSP的路径。
作为迭代的一部分,路径计算模块24确定用于解的网络的总成本并且确定所确定的路径是否满足P2MP LSP上的约束。路径计算模块24接着通过要么(1)阻止(block)网络拓扑结构中的链路,诸如通过在一个或两个方向中添加高惩罚到链路度量以影响最短路径(或最短-相异-路径)算法、要么(2)除去阻止(unblock)之前已经阻止的网络拓扑结构中的链路,诸如通过去除之前在一个或两个方向中应用的高惩罚到链路度量来修改网络拓扑结构模型。P2MP或最小跨越树算法可以基于网络拓扑结构模型中的链路的链路度量(metric)来确定用于一个或多个LSP的路径。以此方式扭曲网络拓扑结构带来路径计算模块24可以(或者可以不)用作后续迭代的基础的经修改的网络拓扑结构模型。路径计算模块24迭代以上操作,同时存储限定为所有之前的迭代确定的最佳(例如,最低成本)解的数据。这里,网络中的“链路”能够包括仅仅实际存在于当前网络拓扑结构中的那些链路,或者在某些情况中,如果路由P2MP LSP需要或者如果使用、这样的候选链路将带来更低的网络成本,能够包括控制器10可使用的附加的“候选”链路。
一般并且如上所记载的,可由控制器10在公式化解时使用的网络拓扑结构模型中的链路能够任一地被限制到已经存在于网络拓扑结构中的链路(其可以或者可以不由P2MPLSP使用)。然而,在某些例子中,控制器10能够添加其他链路到网络拓扑结构模型中,该其他链路能够由设计使用并且这里被称作“候选链路”。作为路径优化的一部分,控制器10可以确定使用这些候选链路中的至少某些链路来携带P2MP LSP 18。作为其设计输出的一部分,控制器10可以将配置和激活这些所确定的候选链路所要求的信息用信号发送到网络(或者网络运营商)。
在某些示例中,控制器10从网络传送层获得有关将用于携带物理拓扑结构上的网络链路的路由的数据。可选地,控制器10可以获得描述他们的物理路径上的这些链路遇到的仅仅共享风险的抽象链路数据,以及与诸如链路的物理长度或延迟上的路径优化相关的信息。这一信息可以由控制器10用于确定P2MP LSP的相异的路径,从而路径不共享任何共享风险的分量(例如,物理链路段)。有关限定仅仅传送网络路由或共享风险信息的抽象链路数据的信息能够应用到当前网络拓扑结构中的已有链路9和可用于(但是当前没有在网络中配置)传送流量的附加的候选链路两者。控制器10可以从用于网络拓扑结构下面的传送层的第三方网络管理系统或者通过基于可用数据来编译抽象链路数据来获得这一抽象链路数据或传送网络路由。在任一情况中,抽象链路数据对下面的传送层进行“抽象”以使得控制器10能够使用抽象链路数据来计算通过传送层的路由。
作为迭代的一部分,路径计算模块24可以确定针对迭代所确定的解是否具有比之前的解更低的总成本。路径计算模块24可以通过应用仿真退火以确定是否接受解(包括经修改的网络拓扑结构)作为用于后续对网络拓扑结构的修改的基础或者替代地还原到作为基础的用于之前迭代的解来尝试避免解总成本的梯度的局部最小。在某些示例中,如果用于解的总成本小于用于之前的解的总成本,则控制器接受解。然而,如果用于解的总成本大于用于之前的解的总成本,则控制器仍然可以取决于与总成本差分的幅度和/或迭代进程相当动态概率来接受解。例如,路径计算模块24可以不太可能接受剩余更少的将执行的迭代次数的更差的(即,更大的总成本)解。
路径计算模块24可以根据以上迭代例如固定迭代次数、固定逝去时间、直到P2MPLSP路径相异、直到总资源成本小于某一可接受值、直到没有路由回路、以上的某一组合、或者根据某一其他可接受准则。路径计算模块24迭代、同时存储限定为所有的之前的迭代确定的最佳解的数据。在确定可接受的解之后,控制器10的路径提供模块26配置网络6以为P2MP LSP实现构成由路径计算模块24确定的最低总成本解的路径。在某些示例中,路径提供模块26通过向网络6发送路径描述符19来安装经路由的P2MP LSP,网络6根据路径描述符19配置P2MP LSP。路径描述符可以包括用于P2MP LSP的显式路由对象(ERO)或其他配置信息并且可以包括描述对应的路径的信息,包括路径类型(主或迂回);用于每一服务类型(CoS)值的带宽;和/或,对于从入口路由器4A到出口路由器4D、4E、以及4F的顺序的P2MP路径中的每个节点,节点标识符、入口标签、以及出口标签。
本公开内容的技术可以提供一个或多个优点。例如,控制器10可以以每次迭代来促进沿着与解决路由回路、相异性的概率、故障恢复、和/或LSP约束的满足的总成本相关的用于P2MP LSP路径的解总成本的梯度朝全局优化移动。虽然控制器10可能不能在所有情况中识别全局优化的解,控制器10还可以避免解总成本梯度上的至少某一局部最小,这可以带来稳健且更低资源成本解。
图2A-2B为描绘根据这里所描述的技术的控制器确定并且在网络中提供的用于点到多点标签交换路径的相异的P2MP路径的框图。在这一示例中,控制器10的路径计算模块24通过渐进地修剪网络6的链路9以生成经修改的拓扑结构来迭代地确定LSP 18的P2MPLSP的最短的相异的路径,对于每次迭代,该经修改的拓扑结构带来具有不同的总成本的不同的确定的最短相异的路径。图2A-2B描绘了修剪链路9的网络6仅仅以图示路径计算模块24用来确定解的经修改的网络拓扑结构。
给定链路9可以构成链路上的两个方向中的相同的多播流量源的不同的P2MP路径中的一部分。例如,网络6或者所确定的P2MP路径的某些示例可以具有环形拓扑结构,其中一个路径在一个方向中绕环形拓扑结构前进以及另一路径在另一方向中前进。因此,在确定用于P2MP LSP的相异路径的解中,路径计算模块24可以独立于携带P2MP LSP的要么主要么可选路径地阻止或者除去阻止链路9中的每个链路的每个方向。
如图2A-2B中所图示的,路径计算模块24应用这里所描述的相异的P2MP路径确定技术以迭代地修剪链路9D、9E、9F、9H、以及9I的两个方向中的网络6的网络拓扑结构。在确定P2MP LSP 32A和32B中,路径计算模块24附加地修剪(即,通过添加高惩罚到最短路径度量来阻止)从路由器4A到路由器4D的链路9A以及从路由器4A到路由器4F的链路9G。链路9B和9C可以(或者可以不)在任一方向中被阻止,从而得到由P2MP LSP 32A-32B在图2A-2B中描绘的解。在某些示例中,路径计算模块24可以针对链路9中的每个链路来使用用于一对相异的P2MP路径中的每个路径的阻止标志。换而言之,链路9中的每个链路可以被配置成允许相异的P2MP路径中的一个P2MP路径但是不允许最短路径算法使用用于P2MP树的相异的部分的链路。
图3为图示按照在本公开内容中描述的技术的其中控制器获得用于多层网络的抽象链路数据并且使用抽象链路数据来确定用于点到多点标签交换路径的路径的示例网络系统的框图。控制器52和路径计算模块58可以相应地表示图1、图2A-2B控制器10和的路径计算模块24的示例例子。
在这一示例中,多层网络60包括网络6和传送网络54。传送网络54表示光传送网络(OTN)或者网络6下面的其他传送网络,网络6包括路由器4以控制分组流的交换和路由。如以上关于图1记载的,路由器4的示例包括层3(L3)路由器和层2(L2)交换或L2/L3交换,其全体地提供网络6。也就是,网络6典型地提供L2/L3流量转发服务,诸如经由包括P2MP LSP的多协议标签交换流量工程(MPLS-TE)标签交换路径(LSP)、虚拟局域网(VLAN)等等的流量工程。
下面的传送网络54通过高速光纤链路来传送、复用、以及交换基于分组的通信。传送网络54可以包括经由光链路互连并且控制沿着光链路的携带分组数据的光信号的传输的多个光通信设备(例如,分组-光传送设备)。以此方式,光传送系统提供物理上互连网络6的路由器4的物理层。
尽管为了简化起见未在图3中示出,分组-光传送设备可以为例如ROADM、PCX、DWDM、或发送、交换和/或复用光信号的其他设备。传送网络54典型地包括多个其他组件,诸如放大器、发射应答器、OTT、中继器以及用于控制沿着光链路(同样未示出)的光分组数据的传输的其他设备。大的光传送系统可以具有影响光传输的显著数量的这样的设备。尽管关于仅仅光链路来描述,传送系统54还可以包括其他类型的物理链路,诸如以太网PHY、同步光网络(SONET)/同步数字体系(SDH)、Lambda、或包括分组传送能力的其他层2数据链路。
在某些示例实现中,控制器52提供与通过光链路和其他设备的分组数据的传送相关的路由器4和传送网54下面的分组-光传送设备两者上的集体控制。例如,控制器52可以不仅控制网络6的路径选择和流量工程操作,还可以提供网络6的元件的下面的传送网54内的每个分组-光传送设备利用的光谱和波长的分配或利用上的集体控制,或者如果需要,控制器52可以使用来自传送层的路径或抽象链路信息来确定用于P2MP LSP的相异的路径。
路径计算模块58获得描述网络6的链路9的抽象链路数据56。更具体而言,抽象链路数据56表示以某一方式从传送网54“泄漏”到控制器52的数据以使得路径计算模块58能够应用进一步的约束以确定用于P2MP LSP的路径或相异的路径。这样的约束可以对应于抽象链路数据56的类型,其可以包括除了链路9之外的可用(“候选”)链路、链路长度、链路度量(其可以基于链路长度)、链路成本(其同样可以基于链路长度)、以及用于链路的共享风险链路组(SRLG)的列表。
路径计算模块58可以在某些情况中通过基于数据文件中设置并且在控制器52中配置以用于控制传送网络54的用户限定的或者应用限定的规则来为控制器52构建附加的候选链路以使用(如果需要以及如果使用这样的链路将带来更低成本的整体解)来获得抽象链路数据56。换而言之,控制器52可以从控制器52获得的候选链路定义中构建候选链路。例如,用户或应用可以将多组分组-光传送设备定义为传送网54内的多个类型的节点,例如,访问节点、核心节点、以及超核心节点并且可以指示其中分组-光传送设备允许组内或组间的连接的环境。作为例子,规则可以规定:
·接入节点能够连接到三个最近的核心节点。
·核心节点能够连接到两个最近的其他核心节点。
·核心节点能够连接到两个最近的超核心节点。
·任意超核心节点能够连接到任意其他的。
以上规则仅仅是示例。如果将候选链路用于传送流量,所限定的规则还可以限定由软件可使用的管理权重解以传送流量。关于以上,所限定的规则确定仅仅候选链路并且不规定这样的链路必须用于传送流量。在应用这里所描述的技术以确定用于P2MP LSP的路径之后,控制器52可以配置仅仅在候选链路中指示的可用链路的子集以在传送流量中使用。除此之外,如果链路不在候选链路集中生成的集合中,控制器52可能不能添加这样的链路到给定解。通过比较,路径计算模块58可以使用已经为网络6限定的链路,即使这样的链路不在候选链路集中。换而言之,路径计算模块58可能不能在确定解中使用链路,除非链路要么在候选链路集要么为网络6限定。
控制器52可以路由传送网络54中已有或可用“候选链路”以确定他们的实际物理长度和共享风险(SRLG),作为例子,在传送网络54中的链路路径中。用于这样的链路的路径可以在选择候选链路之前预先计算。因为用于传送路由的最短路径可以为故障恢复目的而过分限制,例如,以保护应对来自传送链路的SRLG的故障,控制器58可以确定用于路径计算模块58可以从中选择的给定候选链路的多个路径。在某些示例中,用于给定链路的多个路径可以包括最短路径,两个相异的路径中的更短者,以及两个相异的路径中的更长者。虽然两个相异的路径中的最短的路径和更短者可以是相同的,而不需要一定是这情况。控制器58可以使用适于找到最短相异周期路径的强相异路径算法并且考虑SRLG(如果可用)来确定相异的路径。在某些情况中,诸如为链路9中的任意链路的逻辑链路可以已经在网络6中配置(即,“存在”),并且用于传送层54中的逻辑链路的路径可以由控制器58获得。在这样的情况中,已知的路径能够被固定并且以上描述的相异的路径可以不由路径计算模块58确定或利用。
因为在某些情况中在迭代地确定用于P2MP LSP的解之前从候选集中选择或者预先计算的用于链路的路径,因此路径计算模块58可以避免以计入传送网络54元件中的可用波长的方式来尝试设计用于链路的路径。这实际上允许路径计算模块58假设光(例如,WDM)容量不限制用于P2MP LSP的解的确定。
在选择用于逻辑链路的路径之后,控制器52可以针对传送链路段或节点携带的网络6的所有链路而映射路径到SRLG信息。控制器52可以在某些情况中基于传送网络中的“旁路”链路中的路由器4的数量来修剪候选链路集,这可以允许候选链路集基于传送链路拓扑结构和设备而减少,而不是仅仅基于长度。这可以进一步使得能够逼真地模型化具有仅仅直接lambda光连接或限于旁路仅仅小数量的节点的受限连接集的高速路由器组成的核心IP网。因而,其路线旁路了这些高速路由器的所有IP层链路可以从候选链路集中修剪。
可选地,对于控制器52生成抽象链路数据56并且如上所记载的,路径计算模块58可以从抽象链路文件中获得抽象链路数据56或者从例如用于传送网络54的第三方网络管理系统中获得或者由用户构建其他数据结构。路径计算模块58可以以此方式获得这里由传送网络54表示的传送层的抽象图像而且仍然不知晓传送网络54拓扑结构的细节。获得抽象链路数据56的这一可选物可以是有利的,对于限定候选链路取决于传送网络54中采用的各种分组-光传送设备的特性而是否可用的规则。直接从抽象链路文件中获得候选链路作为一组“抽象链路”可以实现比使用如上所述的用于候选链路生成的相对简单的推导而言可能的约束更复杂的连接约束。
一旦获得候选链路,根据这里描述的使用要么仅仅已有链路或者添加选择的候选链路的技术来迭代地确定用于P2MP LSP的解类似,而不论控制器52是否从抽象链路文件中获得抽象链路或者生成它们。差异在于控制器52从外部抽象链路文件中获得候选链路仅仅涉及多层网络60的网络层(层6)。
如上所记载的,抽象链路数据56可以包括用于可用链路(附加的候选链路以及在网络6中建立的链路9)的链路信息,诸如链路长度、链路度量、链路成本、以及用于链路的共享风险链路组(SRLG)的列表。为了执行考虑断纤的传送网络中的潜在的故障模式、或WDM/光组件故障、以及IP层中的设备和接口故障的设计,路径计算模块58可以通过根据SRLG应用惩罚到链路来解决由IP链路使用的传送层设备。控制器52可以作为例子获得对应于链路9和/或在抽象链路数据56中识别的候选链路的传送层元件的SRLG信息。这样的SRLG信息能够是用于光纤段、携带光纤的管道(输送管)、传送层交换元件、等等。控制器52可以为已有的链路9获得这样的SRLG信息以理解已有网络6的故障模式。控制器52可以为已有链路获得这样的SRLG信息以理解经修改以包括在抽象链路数据56中描述的并且由路径计算模块58在用于根据这里描述的技术确定用于P2MPLSP的解的迭代期间选择的候选链路的网络6的故障模式。
关于以上,恢复机制需要依赖于预测什么资源具有同时失败的高可能性,从而正确地分派冗余路由。在简单的网络中,节点或节点之间的链路可能由于局部故障而失败。然而在分组/光网络中,DWDM链路的单个断纤将影响所有传送的波长。此外,每个单独的波长可以连接不同的路由器对,使得光网络中的单个断纤呈现网络拓扑结构中的三重或四重故障。
为了应对这样的情形,将SRLG或一组SRLG分派为链路属性。SRLG可以作为例子由IGP(OSPFv2以及IS-IS)域内的32比特数字唯一表示,诸如包括多个域的网络6或网络6内的IGP。可以向链路9分派多个SRLG。标签交换路径(LSP)中的路径的SRLG为用于路径中所有链路的一组SRLG。当确定用于P2MP LSP的路径时,路径计算模块58可以使用在抽象链路数据56中提供的SRLG信息。一般,当计算用于LSP的从路径时,优选找到路径,使得例如为图2A-2B的P2MP LSP 32A、32B的主和从路径在用于主和从路径的SRLG不相接的情况中没有任何公共的链路。这确保特定链路上的故障的单个点不会使LSP中的主和从路径两者故障。通过比较链路的SRLG属性,路径计算模块58能够在迭代期间应用惩罚以促进用于主路径和辅路径的一组链路之间的不相接的SRLG属性并且以此方式达到相异的故障路线。
作为先决条件,由传送网络54表示的光域的SRLG必须泄漏到网络6表示的分组域,从而避免在相交的风险标签交换路径(LSP)上提供分组服务。SRLG可以因而实现在多层网络60的层之间同步路由决定。此外,SRLG信息的性质是层独立并且因此能够用作在任意层处路由的公共参考信息。
图4为图示按照本公开内容的技术的被配置成计算用于点到多点标签交换路径(LSP)的路径的示例控制器的框图。控制器100接收路径请求,计算和调度满足路径请求的路径,以及根据这里所描述的技术在路径计算域中建立所请求的路径。控制器100可以例如包括服务器或网络控制器,并且可以表示图1-2的控制器10以及图3的控制器52的示例例子。
控制器100包括耦合到网络接口110的控制单元102以由一个或多个入站链路122和一个或多个出站链路124与其他网络设备交换分组。控制单元102的主存储器108表示一个或多个计算机可读存储介质,其可以包括随机访问存储器(RAM),诸如各种形式的例如为DDR2SDRAM的动态RAM(DRAM)、或静态RAM(SRAM)、闪存、或任意其他形式的固定或可移动存储介质,其能够用于携带或存储期望的程序代码和对指令形式的数据或数据结构进行编程并且能够由计算机访问。主存储器108提供由模块112、104可访问的可寻址的存储位置组成的物理地址空间。
主存储器108耦合到盘127,其可以包括计算机可读存储介质,该介质包括在用于存储诸如为处理器可读指令、数据结构、程序模块、或其他数据的信息的任意方法或技术中实现的易失和/或非易失、可移动和/或不可移动介质。计算机可读存储介质包括但不限于随机访问存储器(RAM)、只读存储器(ROM)、EEPROM、闪存、CD-ROM、数字致密盘(DVD)或其他光存储器、磁盘、磁带、磁碟存贮器或其他磁存储设备、或能够用于存储数据和指令的任意其他介质。
这一示例中的控制单元102包括用于执行模块104、112的多核计算平台111。多核计算平台包括多处理核,其中每个处理核包括单独的执行单元以执行遵循用于核的指令集架构的指令。多核计算平台111的核中的每个核可以实现为单独的集成电路(IC)或者可以在一个或多个多核处理器(或者“众多核”处理器)内组合,其中每个多核处理器使用单个IC(即,芯片多处理器)来实现。
多核计算平台111执行存储到主存储器108的软件指令,诸如用于限定软件或计算机程序的那些。可选地或附加地,控制单元102可以包括专用硬件,诸如一个或多个集成电路、一个或多个专用集成电路(ASIC)、一个或多个特定于应用的特殊处理器(ASSP)、一个或多个场可编程门阵列(FPGA)、或之前的专用硬件示例中的一个或多个示例的任意组合,以执行这里所描述的技术。
控制单元102提供用于网络服务应用104和路径计算元件112的操作环境。在某些示例中,这些模块可以实现为在一个或多个服务器的一个或多个虚拟机上执行的一个或多个处理。也就是,虽然一般地阐述和描述为在单个处理器100上执行,模块104、112的各个方面可以在其他计算设备上或者在一个或多个计算设备的不同的虚拟机上执行。
网络服务应用104表示提供服务到包括网络6和控制器100的服务提供商网络的客户端以管理路径计算域中的连通性的一个或多个处理。网络服务应用104可以提供作为例子包括电影、电视、或其他媒体内容分发、IP语音(VoIP)、视频点播(VOD)、大块传送、围墙/开放花园、IP移动性子系统(IMS)和其他移动性服务、以及因特网服务到由控制器100至少部分控制的服务提供商网络的客户端。网络服务应用104要求由路径计算元件112提供的服务,诸如节点管理、会话管理、以及策略实施。网络服务应用104中的一个或多个网络服务应用可以包括或者否则利用客户端接口106,一个或多个客户端应用通过该客户端接口106来请求服务。客户端接口106可以表示作为例子的命令线接口(CLI)或图形用户界面(GUI)。客户端106还可以或者可选地提供诸如为网页服务的应用编程接口(API)给客户端应用。
网络服务应用104可以发出路径请求到路径计算元件112以请求由控制器100控制的路径计算域中的路径。例如,路径请求可以包括要求的带宽或其他约束以及表示在由控制器100管理的路径计算域上通信的源和目标的两个端点。作为另一示例,路径请求可以为用于P2MP路径的请求,在此情况中,路径请求可以包括要求的带宽或者其他约束以及表示接收在由控制器100管理的路径计算域上由源发送的内容的源和多个目标的端点。控制单元102将P2MP路径请求存储为P2MP LSP 18数据结构中相应的P2MP LSP定义。在某些情况中,服务提供商或网络6的其他管理员可以经由管理接口来配置P2MP LSP中的一个或多个P2MP LSP定义。
路径计算元件112接受来自网络服务应用104的路径请求以在路径计算域上建立端点之间的路径(如这里所使用的并且以上所记载的,术语“路径”可以指代P2MP路径)。可以在不同次和日期地请求路径并且路径可以具有全异的带宽要求。路径计算元件112调节来自网络服务应用104的路径请求以基于所请求的路径参数和网络资源可用性来复用所请求的路径到网络6路径计算域上。
为了智能地计算和建立通过路径计算域的路径,路径计算元件112包括拓扑结构模块116以接收诸如为图1的流量工程信息21的描述网络6的可用资源的流量工程信息,包括路由器4和其接口并且互连网络链路。拓扑结构模块116可以执行一个或多个南向协议,诸如具有流量工程扩展的开放最短路径优先(OSPF-TE)、具有流量工程扩展的中间系统到中间系统(ISIS-TE)、BGP链路状态(BGP-LS),以学习网络6的流量工程信息。
流量工程数据库(TED)126为组成用于控制器100的路径计算域的网络6存储由拓扑结构模块116接收的流量工程信息。TED 126可以包括一个或多个链路状态数据库(LSDB),其中链路和节点数据在路由协议公告中接收,从拓扑结构服务器中接收,和/或由诸如为重叠控制器的链路层实体发现,并且接着被提供到拓扑结构模块116。在某些例子中,服务提供商或者其他管理实体可以经由管理接口来配置TED 126内流量工程或者其他拓扑结构信息。
按照本公开内容中描述的技术并且为了满足来自网络服务应用和/或管理配置的路径的路径请求,路径计算元件112的路径计算模块114执行P2MP路径模块120以确定和优化用于P2MP LSP 18的路径。P2MP路径模块120应用在本公开内容中描述的技术以迭代地确定用于P2MP路径的解以全局地优化解决路由回路、相异性的概率、故障恢复、和/或满足针对P2MP LSP 18中的P2MP LSP的LSP约束的总成本。
路径计算模块114确定用于P2MP LSP 18的P2MP LSP的路径或相异的路径,路径提供模块118尝试根据由TED 126限定并且遵循由控制器100控制的网络6的最新的拓扑结构的网络模型来将路径设置到P2MP LSP 18上(可选地,称作“流”)。控制器100的路径提供模块118将P2MP LSP 18的用于被路由的LSP的路由编程到网络6中,以使得网络6的状态与如由路径计算模块114确定的网络6的状态匹配。路径提供模块118可以表示图1-3的路径提供模块26的示例。提供路径可以在交付(commit)路径提供分组传送之前要求路径验证。路径提供模块118执行用于路径提供的一个或多个南向协议以将状态注入网络6的元件,诸如路由器4中的任一个或多个路由器。南向协议指代控制器100的组件可以与诸如为路由器4的网络6元件通信以获得或注入拓扑结构信息、转发确定网络4的操作的其他网络信息的协议。例如,南向协议可以包括路径计算元件(PCE)通信协议(PCEP)、具有流量工程扩展的开放最短路径优先(OSPF-TE)、具有流量工程扩展的中间系统到中间系统(ISIS-TE)、BGP链路状态(BGP-LS)、NETCONF/Yang、接口到路由系统(I2RS)协议、用于网络元件的CLI、简单网络管理协议(SNMP)、以及OpenFlow(或其他SDN配置协议)。作为一个示例,路径提供模块118可以提供一个或多个用于被路由的P2MP LSP 18的ERO到用于被路由的LSP的源路由器,该源路由器可以接着使用RSVP-TE来用信号通知LSP。
拓扑结构模块116可以从网络6接收经更新的流量工程信息,其可以触发用于P2MPLSP 18的路径的路径计算模块114的动态重新计算。例如,TED 126在接收新的或经更新的TE链路或接收TE链路已经故障的信息之后可以触发路径计算模块114重新计算用于P2MPLSP 18的路径,其可以包括相应的相异的路径,从而解决TED 126变化。
路径计算模块114可以附加地/可选地在接收新的或经更新的抽象链路数据56之后动态重新计算用于P2MP LSP 18的路径。例如,经更新的抽象链路数据56可以指示用于链路的新的SRLG,其可以指示用于P2MP LSP的之前的相异的路径现在具有公共的SRLG并且因而不再关于SRLG而相异。路径计算模块114的P2MP路径模块120可以因此重新计算用于P2MPLSP的相异的路径,从而再次获得用于P2MP LSP的相异性。
图5为图示根据本公开内容中描述的技术的一个或多个控制器的示例操作模式以确定和优化用于P2MP LSP的相异的路径的流程图。例如,操作200关于图1-2的控制器10描述但是可以由图3的控制器52(以及其对应的组件)或图4的控制器100(以及其对应的组件)、或由多个控制器组成的非集中式控制面或路由器控制面来应用。
控制器10获得用于包括在这一示例中协作实现IP路由面的路由器4的网络6的实时拓扑结构信息(202)。路径计算模块24响应地确定包括在某些情况中在控制器10中配置的用于一个或多个P2MP LSP 18中的每个P2MP LSP的一组相异的路径的解(204)。路径计算模块24可以使用如上关于图3-4描述的抽象链路数据56和路径计算模块58、114来确定解。如果存在两个路径要优化(例如,对于相异的多播树),路径计算模块24可以为每个路径设置的阻止标志位。换而言之,边缘可以被配置成允许相异的路径中的路径的一侧但是阻止来自另一侧的路径。在某些情况中,路径计算模块24响应于接收用于P2MP LSP 18的新的或经更新的配置而确定解。路径计算模块24确定用于解的网络4的资源成本(206)。为了确定用于优化目的的资源成本,路径计算模块24计算用于相异的路径的网络4的链路9的带宽容量的总成本。路径计算模块24可以将资源成本计算为由如由推导带宽x长度确定的解使用的总带宽。可选地,路径计算模块24可以将资源成本计算为带宽x(树中的链路上的每带宽单元的总成本)。路径计算模块24可以可选地使用反映由多播树使用的网络资源的成本的其他资源成本函数。因为当路由多个P2MP路径到树的主干上的相同的链路上时,对带宽容量计算仅仅一次,操作200可以通过迭代地到达更有效地重用带宽容量的更长的路径来促进有效的分组传递。
路径计算模块24附加地确定应用于解的惩罚(208)。惩罚阻碍路径的不期望的特征,诸如缺少相异性、路由回路、解失败于满足为P2MP LSP 18配置的约束。为P2MP LSP配置的示例约束可以包括下一跳的最大数、为满足相异性的路径中的重叠的最大数、等等。所应用的惩罚的幅度可以与失败的幅度成比例,例如,在最大上要求的更多的下一跳得到与应用于最大上要求的更少的下一跳的惩罚相比更大的惩罚。作为另一示例,路径计算模块24可以为解给出更多的路由回路而应用更大的惩罚。路径计算模块24累积应用于解的惩罚并且添加所累积的总惩罚成本到资源成本以确定用于解的总成本(210)。
对于优化算法的初始运行(迭代)(212的是分支),路径计算模块24不执行与之前的解的比较而是替代地修改网络拓扑结构(214)。为了修改网络6的网络拓扑结构,路径计算模块24可以要么(1)通过添加高(但是不是无限的)惩罚到链路9上的路由度量来选择阻止链路9中的一个链路、要么(2)通过去除之前应用于所选择的链路9的路由度量上的惩罚来选择之前阻止的链路9中的一个链路为“除去阻止”。路径计算模块24可以在阻止或除去阻止之间选择并且根据随机函数来选择链路。然而,路径计算模块24在某些情况中可以应用简单的试探,诸如朝阻止偏置更昂贵的链路以及朝除去阻止偏置更不昂贵的链路,或者通过朝他们上具有非常低的流量的阻止链路偏置更多【例如,非常低的比例(携带的流量)/(链路成本)】以及朝忙碌节点上的除去阻止的更短的链路。
已经为算法目的修改网络拓扑结构,路径计算模块24应用步骤204、206、208、以及210来确定具有新路径的新解以及确定用于新解的总成本。这是后续迭代(212中的否分支)。路径计算模块24比较用于新解的总成本与用于之前的解的总成本(220),并且如果使用新解总成本已经减少(220中的是分支),路径计算模块24接受经修改的网络拓扑结构并且进行到步骤214。然而,如果使用新解总成本还没有减少(220中的否分支),虽然经修改的网络拓扑结构导致更大的总成本,但是,路径计算模块24应用仿真退火函数来确定是否接受经修改的网络拓扑结构(222)。以此方式,路径计算模块24可以促进避免总成本梯度的局部最小以使解进行到更加全局优化的解。仿真退火函数为取决于成本增加的幅度以及操作200的迭代进程(例如,迭代的次数)而根据概率返回肯定结果的函数。作为一个示例,用于函数的概率可以定义为:
其中△C为相比于之前解的成本增加的幅度并且T为路径计算模块24随着迭代次数增加而一般但是并非唯一减少的“温度”参数。如果仿真退火函数返回肯定结果(222的是分支),路径计算模块24进行到步骤214。如果为典型地更可能地、仿真退火函数返回真(222的否分支),路径计算模块24拒绝经修改的网络拓扑结构并且恢复为之前的迭代所确定的网络拓扑结构(224)。以此方式,路径计算模块24可以有效地跳出局部最小。
在步骤214处,路径计算模块24通过如上所述地阻止或除去阻止一个或多个链路来修改网络拓扑结构(214)。如果将执行的迭代的次数还没有达到(216的否分支),路径计算模块24修改在步骤222中应用的仿真退火函数的温度参数(218)。基于用于迭代次数的可配置的阈值、或者某一其他解,这一减少可以与迭代的次数成比例。参数T可以是用户可配置的或者取决于计算的某一方面,诸如P2MPLSP的数量、多个链路、或者其他方面。为了促进全局优化算法,路径计算模块24应该在温度区域花费尽可能多的时间,其中变化的合理的百分比将增加成本并且接着逐渐减少这一百分比。作为用于确定T的一个示例,在操作200的起始处,路径计算模块24设置目标百分比到10%,使得网络拓扑结构变化的10%带来成本增加。最终将目标百分比设置成0%。在迭代期间,目标百分比随着迭代进行而线性减少。作为例子,每N次迭代,路径计算模块24将检查增加成本的变化的实际百分比并且针对目标值检查该百分比。如果实际百分比太高,则路径计算模块24将减少参数T。如果这一实际百分比太低,则路径计算模块24将增加参数T。这一处理的示例中间和最终结果在以下在图6-8中描绘。
一旦迭代循环限制已经达到并且将执行的迭代次数被执行(216的是),路径计算模块24退出操作。在某些情况中,步骤216中的迭代完成检查基于其他可接受的准则,诸如迭代:固定逝去时间,直到P2MP LSP路径相异,直到总资源成本小于某一可接受的值,直到没有路由回路,以上的某一组合,或者直到满足某一其他可接受的准则。在操作200的运行期间,路径计算模块24存储用于在迭代中的任意迭代期间识别的最低成本解的解。虽然在操作200期间识别的最低成本解可能不是全局优化的,但是,解可以无论如何相比于初始确定被优化。路径提供模块26将包括P2MP LSP 18的相异的路径的最低成本解配置到网络6中(226)。
图6-8为图示根据本公开内容中描述的技术的在示例运行以确定和优化网络中的P2MP LSP的相异的路径期间的中间和最后参数的曲线图。曲线图仅仅为说明性的。图6描绘了示出由路径计算模块24设置的目标比例302的曲线图300,具有给定迭代的值目标比例302将带来成本增加的目标概率。在这一示例中,用于迭代1的初始目标比例设置成10%,并且最终目标比例设置成0%。在迭代期间,随着迭代进行,目标百分比线性减少。例如,每N个迭代,路径计算模块24将检查增加成本的变化的实际百分比(在曲线图300中描绘为实际比例304)并且相对于目标值检查该百分比。如果实际百分比太高,则路径计算模块24将减少用于仿真退火函数的温度参数T。如果这一实际百分比太低,则路径计算模块24将增加参数T。
图7描绘了根据本公开内容中描述的技术的用于示例运行以确定和优化网络中的P2MP LSP的相异的路径的仿真退火函数的温度参数T的曲线图310。曲线图310图示了随着路径计算模块24调整T值以尝试满足图6的曲线图300中描绘的目标比例302的不稳定且朝下的趋势。
图8描绘了根据本公开内容中描述的技术的图示在示例运行以确定和优化网络中的P2MP LSP的相异路径期间确定的中间和最终总成本的曲线图320。当前的总成本线322图示了由用于算法迭代的路径计算模块24确定的总成本。最佳总成本线324图示了由路径计算模块24到此点为止获得的用于最低成本解的总成本。显著地,在此示例中,初始迭代得到最佳总成本,其没有被再次达到直到沿着运行很远(在~55,000迭代之后)。解实际上首先偏移到显著更高的成本。当前的总成本与最佳总成本之间的大的差异说明了在运行过程期间存储已识别的最佳解的重要性。
这里所描述的技术可以在硬件、软件、固件、或其任意组合中实现。描述为模块、单元或组件的各种特征可以一起实现在集成逻辑设备中或者单独实现为分立但可协作的逻辑设备或其他硬件设备。在某些情况中,电子电路的各种特征可以实现为诸如为集成电路芯片或芯片组的一个或多个集成电路设备。
如果在硬件中实现,本公开内容可以得到包括处理器或集成电路设备的装置,诸如集成电路芯片或芯片组。可选地或附加地,如果在软件或固件中实现,技术可以至少部分地由包括指令的计算机可读数据存储介质来实现,当执行时,该指令使得处理器执行以上描述的方法中的一个或多个方法。例如,计算机可读数据存储介质可以存储这样的指令以由处理器执行。
计算机可读介质可以形成计算机程序产品的一部分,其可以包括封装材料。计算机可读介质可以包括计算机数据存储介质,诸如随机访问存储器(RAM)、只读存储器(ROM)、非易失随机访问存储器(NVRAM)、电可擦可编程只读存储器(EEPROM)、闪存、磁或光数据存储介质、以及类似物。在某些示例中,制造品可以包括一个或多个计算机可读存储介质。
在某些示例中,计算机可读存储介质可以包括非瞬态介质。术语“非瞬态”可以指示存储介质没有体现为载波或传播的信号。在一定的示例中,非瞬态存储介质可以存储能够在时间上变化的数据(例如,在RAM或缓存中)。
代码或指令可以为由包括一个或多个处理器的处理电路执行的软件和/或固件,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、场可编程门阵列(FPGA)、或其他等价的集成或分立逻辑电路。相应地,如这里所使用的术语“处理器”可以指代之前的结构中的任意者或者适于实现这里所描述的技术的任意其他结构。除此之外,在某些方面中,在本公开内容中描述的功能性可以提供在软件模块或硬件模块内。
除了以上或者作为以上的可选物,描述下面的示例。在下面示例中的任意示例中描述的特征可以与这里描述的其他示例中的任意示例一起利用。
示例1。一种方法,包括:由网络的控制器获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;由控制器经由至少一个协议从网络获得限定网络的网络拓扑结构的网络拓扑结构信息;由控制器基于网络拓扑结构确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;由控制器在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解;以及由控制器利用第一解和第二解中的具有最低总成本的解来配置网络,解的最低总成本包括用于解的网络的总资源成本。
示例2。示例1的方法,进一步包括:由控制器获得指示多个候选链路中的每个候选链路的至少一个共享风险链路组的抽象链路数据,其中确定包括第一相应的路径的第一解包括由控制器基于网络拓扑结构和抽象链路数据来确定包括第一相应的路径的第一解。
示例3。示例2的方法,其中抽象链路数据指示该多个候选链路中的用于第一候选链路和第二候选链路的公共共享风险链路组,其中确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解包括由控制器基于网络拓扑结构和公共共享风险链路组来确定针对该至少一个P2MP LSP的第一P2MP LSP的相异的第一路径和第二路径,相异的第一路径和第二路径被确定成具有路径相异性以使得第一路径包括第一候选链路和第二候选链路两者并且第二路径既不包括第一候选链路也不包括第二候选链路。
示例4。示例1的方法,其中获得抽象链路数据包括由控制器接收用于在多层网络中的在网络下面的传送网络的抽象链路数据结构,抽象链路数据结构包括抽象链路数据。
示例5。示例1的方法,进一步包括:由控制器经由该至少一个协议从网络获得限定用于网络的经更新的网络拓扑结构的经更新的网络拓扑结构信息;由控制器基于经更新的网络拓扑结构并且响应于获得经更新的网络拓扑结构信息来确定针对该至少一个P2MPLSP的包括通过网络的新的第一相应的路径的新的第一解;由控制器在基于经更新的网络拓扑结构生成经更新的修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的新的第二相应的路径的新的第二解;以及由控制器利用新的第一解和新的第二解中的具有最低总成本的解来配置网络。
示例6。示例1的方法,其中生成经修改的网络拓扑结构包括以下之一:由控制器通过将链路惩罚应用到用于链路的度量来阻止网络拓扑结构中的多个链路中的链路,以及由控制器通过去除对链路的度量的链路惩罚来除去阻止链路,并且其中确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解包括至少部分地基于阻止或除去阻止链路来确定第二解。
示例7。示例1的方法,进一步包括:由控制器响应于确定针对该至少一个P2MP LSP的通过网络的第一相应的路径不包括针对该至少一个P2MP LSP的第一P2MP LSP的相异的路径而确定用于第一解的惩罚,其中用于第一解的总成本包括用于第一解的惩罚。
示例8。示例1的方法,其中经修改的网络拓扑结构包括第一经修改的网络拓扑结构,该方法进一步包括:由控制器基于第一经修改的网络拓扑结构并且响应于确定第二解具有比第一解更低的总成本来确定针对该至少一个P2MP LSP的包括通过网络的第三相应的路径的第三解;以及由控制器在响应于确定第二解具有比第一解更高的总成本而基于网络拓扑结构生成第二经修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的第四相应的路径的第四解。
示例9。示例1的方法,进一步包括:由控制器确定第二解的总成本从第一解增加的幅度,并且由控制器基于总成本增加的幅度和温度参数来确定仿真退火函数的结果。
示例10。示例1的方法,进一步包括:由控制器根据促进仿真退火函数的目标概率来设置温度参数,目标概率为用于第二解的总成本从第一解增加的概率。
示例11。示例1的方法,其中经修改的网络拓扑结构包括第一经修改的网络拓扑结构,该方法进一步包括:由控制器确定第二解从第一解中的总成本增加的幅度;由控制器基于总成本增加的幅度和温度参数来确定仿真退火函数的结果;由控制器在基于经修改的网络拓扑结构生成第二经修改的网络拓扑结构之后并且仅在仿真退火函数的结果为肯定的情况下确定针对该至少一个P2MP LSP的包括通过网络的第三相应的路径的第三解;以及由控制器在基于第一经修改的网络拓扑结构来生成第三经修改的网络拓扑结构之后并且仅在仿真退火函数的结果为否定的情况下确定针对该至少一个P2MP LSP的包括通过网络的第四相应的路径的第四解。
示例12。示例1的方法,由控制器用多次迭代来迭代地确定针对该至少一个P2MPLSP的包括通过网络的路径的附加的解,其中由控制器利用第一解和第二解中的具有最低总成本的解来配置网络包括利用第一解、第二解、以及附加的解中的具有最低总成本的解来配置网络。
示例13。示例1的方法,其中确定中的该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解包括由控制器确定针对该至少一个P2MP LSP中的第一P2MP LSP的相异的路径。
示例14。一种用于网络的控制器,控制器包括:耦合到存储器的一个或多个处理器;路径计算模块,被配置成由该一个或多个处理器执行以:获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息;基于网络拓扑结构确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;在基于网络拓扑结构生成经修改的网络拓扑结构之后,确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解;以及路径提供模块,被配置成由该一个或多个处理器执行以:利用第一解和第二解中的具有最低总成本的解来配置网络。
示例15。示例14的控制器,其中路径计算模块进一步被配置成由该一个或多个处理器执行以获得指示多个候选链路中的每个候选链路的至少一个共享风险链路组的抽象链路数据,其中为了确定包括第一相应的路径的第一解,路径计算模块被配置成基于网络拓扑结构和抽象链路数据来确定包括第一相应的路径的第一解。
示例16。示例15的控制器,其中抽象链路数据指示用于该多个候选链路中的第一候选链路和第二候选链路的公共共享风险链路组,其中为了确定中的该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解,路径计算模块被配置成基于网络拓扑结构和公共共享风险链路组来确定针对该至少一个P2MP LSP的第一P2MP LSP的相异的第一路径和第二路径,相异的第一路径和第二路径被确定成具有路径相异性以使得第一路径包括第一候选链路和第二候选链路两者并且第二路径既不包括第一候选链路也不包括第二候选链路。
示例17。示例14的控制器,其中为了获得抽象链路数据,路径计算模块被配置成接收用于在多层网络中的网络下面的传送网络的抽象链路数据结构,抽象链路数据结构包括抽象链路数据。
示例18。示例14的控制器,其中路径计算模块进一步被配置成由该一个或多个处理器执行以:经由该至少一个协议从网路获得限定用于网络的经更新的网络拓扑结构的经更新的网络拓扑结构信息;基于经更新的网络拓扑结构并且响应于获得经更新的网络拓扑结构信息来确定针对该至少一个P2MP LSP的包括通过网络的新的第一相应的路径的新的第一解;在基于经更新的网络拓扑结构生成经更新的修改的网络拓扑结构之后确定针对该至少一个P2MP LSP的包括通过网络的新的第二相应的路径的新的第二解,并且其中路径提供模块进一步配置成由该一个或多个处理器执行以:由控制器利用新的第一解和新的第二解中的具有最低总成本的解来配置网络。
示例19。示例14的控制器,其中为了生成经修改的网络拓扑结构,路径计算模块进一步被配置由该一个或多个处理器执行以下之一:由控制器通过将链路惩罚应用到用于链路的度量来阻止网络拓扑结构中的多个链路中的链路,以及由控制器通过对用于链路的度量去除链路惩罚来除去阻止链路,并且其中为了确定针对该至少一个P2MP LSP的包括通过网络的第二相应的路径的第二解,路径计算模块至少部分地基于阻止和除去阻止链路来确定第二解。
示例20。一种包括指令的非瞬态计算机可读介质,该指令用于使得网络的控制器的一个或多个可编程处理器:获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;经由至少一个协议从网络获得限定用于网络的网络拓扑结构的网络拓扑结构信息;基于网络拓扑结构来确定针对该至少一个P2MP LSP的包括通过网络的第一相应的路径的第一解;在基于网络拓扑结构生成经修改的网络拓扑结构之后确定针对该至少一个P2MPLSP的包括通过网络的第二相应的路径的第二解;以及利用第一解和第二解中的具有最低总成本的解来配置网络。
此外,在以上描述的任意示例中给出的具体特征中的任意具体特征可以组合到所描述的技术的有益的示例中。也就是说,具体特征中的任意具体特征一般可应用到本发明的所有示例。已经描述了本发明的各种示例。
Claims (13)
1.一种方法,包括:
由网络的控制器获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;
由所述控制器经由至少一个协议从所述网络获得限定用于所述网络的网络拓扑结构的网络拓扑结构信息;
由所述控制器基于所述网络拓扑结构确定针对所述至少一个P2MP LSP的包括通过所述网络的第一相应的路径的第一解;
由所述控制器响应于确定针对所述至少一个P2MP LSP的通过所述网络的所述第一相应的路径不包括针对所述至少一个P2MP LSP的第一P2MP LSP的相异的路径,来确定用于所述第一解的惩罚,其中用于所述第一解的总成本包括用于所述第一解的所述惩罚;
由所述控制器在基于所述网络拓扑结构生成经修改的网络拓扑结构之后确定针对所述至少一个P2MP LSP的包括通过所述网络的第二相应的路径的第二解;以及
由所述控制器利用所述第一解和所述第二解中的具有最低总成本的解来配置所述网络,所述解的所述最低总成本包括用于所述解的所述网络的总资源成本。
2.根据权利要求1所述的方法,进一步包括:
由所述控制器获得指示多个候选链路中的每个候选链路的至少一个共享风险链路组的抽象链路数据,
其中确定包括第一相应的路径的所述第一解包括由所述控制器基于所述网络拓扑结构和所述抽象链路数据来确定包括所述第一相应的路径的所述第一解。
3.根据权利要求2所述的方法,
其中所述抽象链路数据指示所述多个候选链路中的用于第一候选链路和第二候选链路的公共共享风险链路组,
其中确定针对所述至少一个P2MP LSP的包括通过所述网络的第一相应的路径的所述第一解包括由所述控制器基于所述网络拓扑结构和所述公共共享风险链路组来确定针对所述至少一个P2MP LSP的第一P2MP LSP的相异的第一路径和第二路径,所述相异的第一路径和第二路径被确定成具有路径相异性以使得所述第一路径包括所述第一候选链路和所述第二候选链路两者并且所述第二路径既不包括所述第一候选链路也不包括所述第二候选链路。
4.根据权利要求2-3中任一项所述的方法,其中获得抽象链路数据包括由所述控制器接收用于在多层网络中的在所述网络下面的传送网络的抽象链路数据结构,所述抽象链路数据结构包括所述抽象链路数据。
5.根据权利要求1所述的方法,进一步包括:
由所述控制器经由所述至少一个协议从所述网络获得限定用于所述网络的经更新的网络拓扑结构的经更新的网络拓扑结构信息;
由所述控制器基于所述经更新的网络拓扑结构并且响应于获得所述经更新的网络拓扑结构信息来确定针对所述至少一个P2MP LSP的包括通过所述网络的新的第一相应的路径的新的第一解;
由所述控制器在基于经更新的网络拓扑结构生成经更新的修改的网络拓扑结构之后确定针对所述至少一个P2MP LSP的包括通过所述网络的新的第二相应的路径的新的第二解;以及
由所述控制器利用所述新的第一解和所述新的第二解中的具有最低总成本的解来配置所述网络。
6.根据权利要求1所述的方法,
其中生成经修改的网络拓扑结构包括以下之一:由所述控制器通过将链路惩罚应用到用于所述链路的度量来阻止所述网络拓扑结构中的多个链路中的链路,以及由所述控制器通过去除对所述链路的所述度量的所述链路惩罚来除去阻止所述链路,并且
其中确定针对所述至少一个P2MP LSP的包括通过所述网络的第二相应的路径的所述第二解包括至少部分地基于阻止或除去阻止所述链路来确定所述第二解。
7.根据权利要求1所述的方法,其中所述经修改的网络拓扑结构包括第一经修改的网络拓扑结构,所述方法进一步包括:
由所述控制器基于所述第一经修改的网络拓扑结构并且响应于确定所述第二解具有比所述第一解更低的总成本来确定针对所述至少一个P2MP LSP的包括通过所述网络的第三相应的路径的第三解;以及
由所述控制器在响应于确定所述第二解具有比所述第一解更高的总成本而基于所述网络拓扑结构生成第二经修改的网络拓扑结构之后确定针对所述至少一个P2MP LSP的包括通过所述网络的第四相应的路径的第四解。
8.根据权利要求1所述的方法,进一步包括:
由所述控制器确定所述第二解从所述第一解的总成本增加的幅度;以及
由所述控制器基于所述总成本增加的所述幅度和温度参数来确定仿真退火函数的结果。
9.根据权利要求8所述的方法,进一步包括:
由所述控制器根据促进所述仿真退火函数的目标概率来设置所述温度参数,所述目标概率为用于所述第二解的总成本从所述第一解增加的概率。
10.根据权利要求1所述的方法,其中所述经修改的网络拓扑结构包括第一经修改的网络拓扑结构,所述方法进一步包括:
由所述控制器确定所述第二解从所述第一解的总成本增加的幅度;
由所述控制器基于所述总成本增加的所述幅度和温度参数来确定仿真退火函数的结果;
由所述控制器在基于所述经修改的网络拓扑结构生成第二经修改的网络拓扑结构之后并且仅在所述仿真退火函数的所述结果为肯定的情况下确定针对所述至少一个P2MPLSP的包括通过所述网络的第三相应的路径的第三解;以及
由所述控制器在基于所述第一经修改的网络拓扑结构来生成第三经修改的网络拓扑结构之后并且仅在所述仿真退火函数的所述结果为否定的情况下确定针对所述至少一个P2MP LSP的包括通过所述网络的第四相应的路径的第四解。
11.根据权利要求1所述的方法,
由所述控制器用多次迭代来迭代地确定包括针对所述至少一个P2MP LSP的包括通过所述网络的路径的附加的解,
其中由所述控制器利用所述第一解和所述第二解中的具有最低总成本的解来配置所述网络包括利用所述第一解、所述第二解、以及所述附加的解中的具有最低总成本的解来配置所述网络。
12.一种用于网络的控制器,所述控制器包括:
耦合到存储器的一个或多个处理器;
路径计算模块,被配置成由所述一个或多个处理器执行以:
获得用于至少一个点到多点标签交换路径(P2MP LSP)的配置信息;
经由至少一个协议从所述网络获得限定用于所述网络的网络拓扑结构的网络拓扑结构信息;
基于所述网络拓扑结构确定针对所述至少一个P2MP LSP的包括通过所述网络的第一相应的路径的第一解;
响应于确定针对所述至少一个P2MP LSP的通过所述网络的所述第一相应的路径不包括针对所述至少一个P2MP LSP的第一P2MP LSP的相异的路径,来确定用于所述第一解的惩罚,其中用于所述第一解的总成本包括用于所述第一解的所述惩罚;
在基于所述网络拓扑结构生成经修改的网络拓扑结构之后,确定针对所述至少一个P2MP LSP的包括通过所述网络的第二相应的路径的第二解;以及
路径提供模块,被配置成由所述一个或多个处理器执行以:
利用所述第一解和所述第二解中的具有最低总成本的解来配置所述网络。
13.根据权利要求12所述的控制器,进一步包括用于执行由权利要求1-11中任一项所记载的方法的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910143465.5A CN109905277B (zh) | 2014-12-29 | 2015-12-28 | 用于广域网优化的点到多点路径计算 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/585,170 US9712447B2 (en) | 2014-12-29 | 2014-12-29 | Point-to-multipoint path computation for wide area network optimization |
US14/585,170 | 2014-12-29 | ||
US14/586,464 | 2014-12-30 | ||
US14/586,464 US9602387B2 (en) | 2014-12-29 | 2014-12-30 | Network topology optimization |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910143465.5A Division CN109905277B (zh) | 2014-12-29 | 2015-12-28 | 用于广域网优化的点到多点路径计算 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105743795A CN105743795A (zh) | 2016-07-06 |
CN105743795B true CN105743795B (zh) | 2019-03-22 |
Family
ID=54850514
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910143465.5A Active CN109905277B (zh) | 2014-12-29 | 2015-12-28 | 用于广域网优化的点到多点路径计算 |
CN201511001308.9A Active CN105743795B (zh) | 2014-12-29 | 2015-12-28 | 用于广域网优化的点到多点路径计算 |
CN201511001452.2A Withdrawn CN105743691A (zh) | 2014-12-29 | 2015-12-28 | 网络拓扑优化 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910143465.5A Active CN109905277B (zh) | 2014-12-29 | 2015-12-28 | 用于广域网优化的点到多点路径计算 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511001452.2A Withdrawn CN105743691A (zh) | 2014-12-29 | 2015-12-28 | 网络拓扑优化 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9602387B2 (zh) |
EP (2) | EP3041168A1 (zh) |
CN (3) | CN109905277B (zh) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9369338B1 (en) * | 2013-12-30 | 2016-06-14 | Google Inc. | Network link capacity determination |
GB2537338A (en) | 2014-11-28 | 2016-10-19 | Aria Networks Ltd | Modeling a border gateway protocol network |
US10015048B2 (en) | 2014-12-27 | 2018-07-03 | Intel Corporation | Programmable protocol parser for NIC classification and queue assignments |
US9780909B2 (en) | 2014-12-29 | 2017-10-03 | Juniper Networks, Inc. | Network topology optimization with feasible optical paths |
US9755946B2 (en) * | 2015-01-06 | 2017-09-05 | Verizon Patent And Licensing Inc. | Confidentially determining route diversity for network routes |
WO2016112956A1 (en) * | 2015-01-13 | 2016-07-21 | Huawei Technologies Co., Ltd. | System and method for dynamic orchestration |
FR3037463B1 (fr) * | 2015-06-15 | 2017-06-23 | Bull Sas | Transformation d'infrastructures reseaux non structurees en topologies virtuelles structurees adaptees a des algorithmes de routage specifiques |
EP3329639B1 (en) * | 2015-07-28 | 2020-10-07 | British Telecommunications public limited company | Network function virtualization |
US9825862B2 (en) | 2015-08-26 | 2017-11-21 | Barefoot Networks, Inc. | Packet header field extraction |
US10212070B2 (en) * | 2015-09-28 | 2019-02-19 | Tata Communications (America) Inc. | System and method for discovering the locations of potential layer-2 nodes in a telecommunications network |
US9912774B2 (en) | 2015-12-22 | 2018-03-06 | Intel Corporation | Accelerated network packet processing |
US10536349B1 (en) * | 2015-12-31 | 2020-01-14 | VCE IP Holding Company LLC | Configuration system and method for an integrated computing system |
US10033623B2 (en) * | 2016-03-09 | 2018-07-24 | Ciena Corporation | Multithreaded system and method for establishing network connections |
WO2017211385A1 (en) * | 2016-06-06 | 2017-12-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Determining a path in a communication network |
CN108075980A (zh) * | 2016-11-17 | 2018-05-25 | 中兴通讯股份有限公司 | 一种转发路径的控制方法、装置及控制设备 |
US10511544B2 (en) | 2016-11-22 | 2019-12-17 | At&T Intellectual Property I, L.P. | Path computation element protocol response and simple network management protocol confirmation for tunnel configuration |
CN108156004A (zh) * | 2016-12-02 | 2018-06-12 | 中国移动通信有限公司研究院 | Sdn控制器及交换机管理方法 |
KR102024515B1 (ko) * | 2017-01-04 | 2019-09-24 | 미쓰비시덴키 가부시키가이샤 | 전송 장치 및 경로 추가 방법 |
US11245572B1 (en) | 2017-01-31 | 2022-02-08 | Barefoot Networks, Inc. | Messaging between remote controller and forwarding element |
US10230661B2 (en) * | 2017-02-03 | 2019-03-12 | Fujitsu Limited | Distributed virtual network embedding |
US10547563B2 (en) | 2017-02-03 | 2020-01-28 | Fujitsu Limited | Efficient message forwarding for distributed resource orchestration |
US10686735B1 (en) | 2017-04-23 | 2020-06-16 | Barefoot Networks, Inc. | Packet reconstruction at deparser |
US10951317B2 (en) * | 2017-07-20 | 2021-03-16 | Huawei Technologies Canada Co., Ltd. | Multi-layer virtual network embedding |
US10505861B1 (en) | 2017-07-23 | 2019-12-10 | Barefoot Networks, Inc. | Bus for providing traffic management statistics to processing pipeline |
CN107395483B (zh) * | 2017-08-28 | 2020-06-02 | 迈普通信技术股份有限公司 | 一种路径建立方法及装置 |
US10594630B1 (en) | 2017-09-28 | 2020-03-17 | Barefoot Networks, Inc. | Expansion of packet data within processing pipeline |
CN109788018B (zh) * | 2017-11-15 | 2021-08-06 | 中国移动通信有限公司研究院 | 跨域的业务互通方法、网络设备及存储介质 |
US10587517B2 (en) * | 2017-11-30 | 2020-03-10 | Juniper Networks, Inc. | Optimizing fabric path forwarding for virtual nodes within an electronic device |
CN108282217A (zh) * | 2017-12-05 | 2018-07-13 | 中国电子科技集团公司电子科学研究院 | 基于网络拓扑结构分析的卫星组网方法与存储介质 |
CN107911251B (zh) * | 2017-12-08 | 2021-04-20 | 锐捷网络股份有限公司 | 一种网络设备配置方法、装置和介质 |
US10411990B2 (en) * | 2017-12-18 | 2019-09-10 | At&T Intellectual Property I, L.P. | Routing stability in hybrid software-defined networking networks |
CN107872354A (zh) * | 2017-12-28 | 2018-04-03 | 北京工业大学 | 一种针对分层流量复杂网络的路径优化方法 |
US10827358B2 (en) | 2018-06-28 | 2020-11-03 | At&T Intellectual Property I, L.P. | Software-defined extended access network for internet-of-things for a 5G or other next generation network |
WO2020088779A1 (en) * | 2018-11-02 | 2020-05-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for data traffic control in networks |
CL2018003852A1 (es) * | 2018-12-28 | 2020-07-24 | Univ Técnica Federico Santa Maria | Un método de tolerancia a la falla en cualquier conjunto de fallas de enlace simultáneo en redes ópticas wdm dinámicas con resistencias de continuidad de longitud de onda |
US11252034B1 (en) | 2019-03-15 | 2022-02-15 | Juniper Networks, Inc. | Generating candidate links and candidate paths before selecting links for an optimized optical network plan |
US11290338B1 (en) | 2019-06-07 | 2022-03-29 | Bae Systems Information And Electronic Systems Integration Inc. | System and method for inferring a network topology from the edge |
CN112073842B (zh) * | 2019-06-10 | 2022-09-13 | 中兴通讯股份有限公司 | 光电转换装置部署规划方法、系统、网络设备及存储介质 |
CN110290069B (zh) * | 2019-06-18 | 2020-08-18 | 西安交通大学 | 一种sdn场景下的可靠组播路由方法 |
CN110505149B (zh) * | 2019-08-06 | 2021-11-02 | 新华三技术有限公司合肥分公司 | 网络拓扑收集方法及装置 |
CN113054651B (zh) * | 2019-12-26 | 2023-03-31 | 华为技术服务有限公司 | 一种网络拓扑优化方法、装置以及系统 |
US11121933B2 (en) * | 2019-12-27 | 2021-09-14 | Arteris, Inc. | Physically aware topology synthesis of a network |
US11716276B2 (en) * | 2020-03-06 | 2023-08-01 | Juniper Networks, Inc. | Detecting miswirings in a spine and leaf topology of network devices |
WO2021181541A1 (ja) | 2020-03-10 | 2021-09-16 | 三菱電機株式会社 | コントローラ、ネットワークシステムおよびフロー管理方法 |
US11212212B2 (en) * | 2020-04-15 | 2021-12-28 | Hewlett Packard Enterprise Development Lp | Non-isolated topologies in computing network environments |
WO2021244743A1 (en) * | 2020-06-04 | 2021-12-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, apparatus and machine-readable media related to routing in a communication network |
US11695685B2 (en) * | 2020-06-16 | 2023-07-04 | Nokia Solutions And Networks Oy | Supporting candidate path selection |
CN112104438B (zh) * | 2020-08-20 | 2023-05-05 | 武汉光迅科技股份有限公司 | 一种roadm设备的配置方法、装置、电子设备及存储介质 |
US11483210B2 (en) * | 2020-10-28 | 2022-10-25 | Nokia Solutions And Networks Oy | Interdomain path calculation based on an abstract topology |
US20220174000A1 (en) * | 2020-12-01 | 2022-06-02 | Mellanox Technologies Tlv Ltd. | Routing with a fixed matchings switch |
US11924087B2 (en) * | 2020-12-18 | 2024-03-05 | Ciena Corporation | Adjustable multi-criteria network path computation and visualizations thereof |
US11425034B1 (en) * | 2021-03-30 | 2022-08-23 | Juniper Networks, Inc. | Determining shielded backup paths |
CN113328889B (zh) * | 2021-05-31 | 2022-06-28 | 河南财政金融学院 | 一种软件定义网络中控制层架构分布式优化方法 |
US11575580B2 (en) | 2021-06-01 | 2023-02-07 | Cisco Technology, Inc. | Multi-domain and multi-tenant network topology model generation and deployment |
US11627052B2 (en) | 2021-07-07 | 2023-04-11 | L3Harris Technologies, Inc. | Communications system reconfigurable to different topologies and associated methods |
US11677659B2 (en) * | 2021-08-30 | 2023-06-13 | Juniper Networks, Inc. | Optimization of segment routing-enabled multipath network |
US11716278B1 (en) | 2022-01-25 | 2023-08-01 | Bank Of America Corporation | System and method for determining the shortest data transfer path in data communication |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778531B1 (en) * | 1999-11-04 | 2004-08-17 | Lucent Technologies Inc. | Multicast routing with service-level guarantees between ingress egress-points in a packet network |
CN101099351A (zh) * | 2005-02-09 | 2008-01-02 | 思科技术公司 | 用于触发对路径计算请求进行打包 |
CN103370908A (zh) * | 2011-02-21 | 2013-10-23 | 华为技术有限公司 | 用于找到跨多个域的点到多点标签交换路径的系统以及方法 |
CN103873366A (zh) * | 2012-12-18 | 2014-06-18 | 瞻博网络公司 | 具有集中控制的聚合网络 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7161930B1 (en) | 1999-06-30 | 2007-01-09 | Cisco Technology, Inc. | Common backplane for physical layer system and networking layer system |
US20040083277A1 (en) | 2002-07-09 | 2004-04-29 | Himachal Futuristic Communications Limited (Hfcl) | Method for fast cost-effective internet network topology design |
CN1254052C (zh) * | 2002-11-02 | 2006-04-26 | 华为技术有限公司 | 传输网络约束路径计算方法 |
US7889641B2 (en) * | 2006-07-18 | 2011-02-15 | Opnet Technologies, Inc. | Path flow formulation for fast reroute bypass tunnels in MPLS networks |
US7990877B2 (en) * | 2008-05-15 | 2011-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for dynamically runtime adjustable path computation |
CN102158417A (zh) * | 2011-05-19 | 2011-08-17 | 北京邮电大学 | 实现多约束QoS路由选择的优化方法及装置 |
WO2013091688A1 (en) | 2011-12-21 | 2013-06-27 | Telefonaktiebolaget L M Ericsson (Publ) | Multilayer topology representation for network |
US9215717B2 (en) * | 2012-03-20 | 2015-12-15 | Juniper Networks, Inc. | Methods and apparatus for channel selection within a wireless network |
US9064216B2 (en) | 2012-06-06 | 2015-06-23 | Juniper Networks, Inc. | Identifying likely faulty components in a distributed system |
US9350481B2 (en) | 2012-10-08 | 2016-05-24 | Futurewei Technologies, Inc. | Transport functions virtualization for wavelength division multiplexing (WDM)-based optical networks |
US9172633B2 (en) * | 2012-10-26 | 2015-10-27 | Google Inc. | Traffic engineering system for preventing demand deadlock and achieving uniform link utilization |
US20140204794A1 (en) | 2013-01-18 | 2014-07-24 | Jad El-Najjar | System and method for minimizing network load imbalance and latency |
US20140226525A1 (en) * | 2013-02-13 | 2014-08-14 | Futurewei Technologies, Inc. | Safe Multicast Distribution with Predictable Topology Changes |
US9178796B2 (en) | 2013-06-28 | 2015-11-03 | Cisco Technology, Inc. | Multi-layer stateful path computation element architecture |
US9369338B1 (en) * | 2013-12-30 | 2016-06-14 | Google Inc. | Network link capacity determination |
US20160087849A1 (en) * | 2014-09-24 | 2016-03-24 | Infinera Corporation | Planning and reconfiguring a multilayer network |
-
2014
- 2014-12-30 US US14/586,464 patent/US9602387B2/en not_active Expired - Fee Related
-
2015
- 2015-12-21 EP EP15201555.8A patent/EP3041168A1/en not_active Withdrawn
- 2015-12-21 EP EP15201589.7A patent/EP3041172A1/en not_active Withdrawn
- 2015-12-28 CN CN201910143465.5A patent/CN109905277B/zh active Active
- 2015-12-28 CN CN201511001308.9A patent/CN105743795B/zh active Active
- 2015-12-28 CN CN201511001452.2A patent/CN105743691A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778531B1 (en) * | 1999-11-04 | 2004-08-17 | Lucent Technologies Inc. | Multicast routing with service-level guarantees between ingress egress-points in a packet network |
CN101099351A (zh) * | 2005-02-09 | 2008-01-02 | 思科技术公司 | 用于触发对路径计算请求进行打包 |
CN103370908A (zh) * | 2011-02-21 | 2013-10-23 | 华为技术有限公司 | 用于找到跨多个域的点到多点标签交换路径的系统以及方法 |
CN103873366A (zh) * | 2012-12-18 | 2014-06-18 | 瞻博网络公司 | 具有集中控制的聚合网络 |
Also Published As
Publication number | Publication date |
---|---|
US9602387B2 (en) | 2017-03-21 |
EP3041172A1 (en) | 2016-07-06 |
CN105743795A (zh) | 2016-07-06 |
CN105743691A (zh) | 2016-07-06 |
CN109905277B (zh) | 2022-03-25 |
CN109905277A (zh) | 2019-06-18 |
US20160191370A1 (en) | 2016-06-30 |
EP3041168A1 (en) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105743795B (zh) | 用于广域网优化的点到多点路径计算 | |
US10374747B2 (en) | Point-to-multipoint path computation for wide area network optimization | |
US9712447B2 (en) | Point-to-multipoint path computation for wide area network optimization | |
US10547537B1 (en) | Batched path computation in resource-constrained networks | |
CN104780099B (zh) | 一种用于建立路径的方法及控制器网络设备 | |
US10742556B2 (en) | Tactical traffic engineering based on segment routing policies | |
CN104426766B (zh) | 跨多个网络层的动态端到端网络路径建立 | |
CN109257278B (zh) | 用于非分段路由启用的路由器的分段路由标签交换路径方法 | |
US8942256B1 (en) | Advertising with a layer three routing protocol constituent link attributes of a layer two bundle | |
JP5410998B2 (ja) | スイッチ及びルータのためのソフトウェア制御プレーン | |
CN114363250B (zh) | 支持分段路由的网络中的多路径的重新计算 | |
US11677659B2 (en) | Optimization of segment routing-enabled multipath network | |
CN114363249B (zh) | 针对多路径分段路由的带宽约束 | |
Hong et al. | Survivable virtual topology design in IP over WDM multi-domain networks | |
Petersson | MPLS based recovery mechanisms | |
Brandt | Auto-bandwidth control in dynamically reconfigured hybrid-SDN MPLS networks |
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 |