用于非分段路由启用的路由器的分段路由标签交换路径的制作方法

文档序号:16686103发布日期:2019-01-22 18:19阅读:185来源:国知局
用于非分段路由启用的路由器的分段路由标签交换路径的制作方法

本公开涉及计算机网络,并且更具体地涉及在计算机网络内设计通信流量。



背景技术:

计算机网络是交换数据和共享资源的互连计算设备的集合。在基于分组的网络(诸如因特网)中,计算设备通过将数据分成称为分组的小块来传送数据,这些小块跨网络被分别从源设备路由到目的地设备。目的地设备从分组中提取数据并且将数据组装成其原始形式。

网络内的被称为路由器的某些设备使用路由协议来交换和累积描述网络的拓扑信息。这允许路由器构建其自己的网络路由拓扑图。在接收到传入数据分组时,路由器检查分组内的密钥信息,并且根据所累积的拓扑信息转发分组。

很多路由协议落入称为内部网关协议(igp)的协议类别,在igp中,使用基于洪泛的分发机制来向网络内的路由器通告拓扑信息。这些路由协议通常依赖于要求路由器中的每一个针对给定域(称为igp区域或域)具有同步路由拓扑信息的路由算法。根据链路状态路由协议来维持的链路状态数据库(lsdb)或通信量工程数据库(ted)的内容具有igp域的范围。igp路由协议通常要求igp路由域中的所有路由器都在内部lsdb或ted内存储已经根据igp协议而被分发的所有路由信息。在操作中,每个路由器通常维持内部链路状态数据库,并且以定义的时间间隔扫描整个数据库以生成和输出链路状态消息,从而将数据库同步到路由域内的相邻路由器。以这种方式,链路状态跨整个路由域被传播并且被完整存储在该域内的每个路由器上。

基于分组的网络越来越多地利用标签交换协议以用于通信量工程和其他目的。多协议标签交换(mpls)是一种用于根据由网络中的路由器维持的路由信息来设计因特网协议(ip)网络内的通信量模式的机制。通过利用mpls协议(诸如,标签分发协议(ldp)、带有通信量工程扩展的资源预留协议(rsvp)(rsvp-te)或分段路由(sr)扩展),标签交换路由器可以使用在通信量之前附接的标签沿着通过网络去往目的地设备的特定路径(即,标签交换路径(lsp))转发通信量。lsp定义了通过网络从源设备向目的地设备携带mpls分组的不同路径。使用mpls协议,沿着lsp的每个路由器分配与目的地相关联的标签并且将该标签沿着路径传播到最近的上游路由器。沿着路径的路由器添加(压入)、移除(弹出)或交换标签,并且执行其他mpls操作以沿着建立的路径转发mpls分组。

诸如通过使用联网中的源分组路由(spring)协议,路由器可以采用分段路由技术,其在igp域内提供分段路由以通告单跳或多跳lsp。spring包括多种不同的标签类型,包括“邻接”标签和“节点”标签。为了通过网络转发分组,路由器可以压入、弹出或交换在分组通过网络被转发时被应用于该分组的标签栈(例如,分段列表)中的一个或多个标签。



技术实现要素:

通常,描述了用于建立分段路由标签交换路径(lsp)而不管沿着最短路径的路由器是否未针对分段路由被启用的技术。例如,跨未针对分段路由被启用的路由器来建立资源预留lsp(例如,资源预留协议(rsvp)lsp),使得可以建立分段路由lsp以隧穿通过资源预留lsp。

例如,当集中式控制器接收到使用分段路由来建立最短路径的请求时,沿着最短路径的一个或多个路由器可能未针对分段路由被启用。代替响应于确定最短路径中的一个或多个路由器未针对分段路由被启用而拒绝建立分段路由lsp的请求,控制器可以在未针对分段路由被启用的路由器周围建立资源预留lsp。控制器然后可以建立隧穿通过资源预留lsp的端到端分段路由lsp。例如,分段路由lsp可以是根据联网中的源分组路由(spring)协议的springlsp,并且资源预留lsp可以是资源预留协议(rsvp)lsp。以这种方式,控制器可以建立分段路由lsp,而不管最短路径上的每个路由器是否针对分段路由被启用。

在一个示例中,一种方法包括由管理网络中的多个网络设备的控制器接收对于从多个网络设备中的入口网络设备延伸到多个网络设备中的出口网络设备的分段路由标签交换路径(lsp)的请求。该方法还包括由控制器确定多个网络设备中的第一网络设备未针对分段路由被启用。该方法还包括响应于确定第一网络设备未针对分段路由被启用,由控制器建立从第二网络设备到第三网络设备的资源预留lsp,其中第一网络设备被定位在第二网络设备和第三网络设备之间。该方法还包括由控制器向入口网络设备发送对于分段路由lsp的供应请求。

在另一示例中,一种管理网络中的多个网络设备的控制器包括:存储器;以及可操作地耦合到该存储器的一个或多个处理器,其中该一个或多个处理器被配置为:接收对于从多个网络设备中的入口网络设备延伸到多个网络设备中的出口网络设备的分段路由标签交换路径(lsp)的请求;确定多个网络设备中的第一网络设备未针对分段路由被启用;响应于确定第一网络设备未针对分段路由被启用,建立从第二路由器到第三路由器的资源预留lsp,其中第一路由器被定位在第二路由器和第三路由器之间;以及发送对于分段路由lsp的供应请求。

在另一示例中,一种方法包括:由管理多个分段路由岛的控制器确定提供多个分段路由岛之间的连接性的一组资源预留标签交换路径(lsp),多个分段路由岛各自包括针对分段路由而被启用的一个或多个网络设备。该方法还包括响应于由控制器确定多个分段路由岛中的至少一个的拓扑已经改变,由控制器基于拓扑改变来确定该组资源预留lsp是否需要更新。该方法还包括:响应于确定该组资源预留lsp需要更新,由控制器配置已更新的一组资源预留lsp,该已更新的一组资源预留lsp包括在拓扑改变之后提供到多个分段路由岛的连接性的一个或多个资源预留lsp。该方法还包括由控制器建立已更新的一组资源预留lsp中的至少一个资源预留lsp,使得分段路由lsp隧穿通过至少一个资源预留lsp。

在附图和下面的描述中阐述了一个或多个示例的细节。从说明书、附图和权利要求书中,其他特征、目的和优点将显而易见。

附图说明

图1是示出根据本公开中描述的技术的用于通过为未针对分段路由被启用的路由器而配置的资源预留lsp来隧穿分段路由lsp的示例系统的框图;

图2是示出能够根据本文中描述的技术进行操作的示例控制器的框图;

图3是示出根据本公开中描述的技术的控制器的路径计算元件的示例实现的框图;

图4是示出能够根据本文中描述的技术进行操作的示例路由器的框图;

图5是示出根据本公开的技术的用于通过资源预留lsp来隧穿分段路由lsp的示例操作的流程图;以及

图6是示出根据本公开中描述的技术的用于调节连接分段路由岛的一组可用资源预留lsp的示例操作的流程图。

具体实施方式

图1是示出根据本公开中描述的技术的用于通过为未针对分段路由被启用的路由器而建立的资源预留标签交换路径(lsp)来隧穿分段路由lsp的示例系统10的框图,示例系统10包括计算机网络14。网络14可以包括路由器12a-12g(“路由器12”)以建立配置有资源预留协议或分段路由协议的lsp。

由入口路由器12a接收的网络通信量的源可以包括一个或多个设备(未示出)和/或向网络14中的入口路由器12a提供通信量的任何公共或专用网络或因特网。在lsp上被转发的网络通信量的目的地可以包括一个或多个目的地设备和/或网络,网络可以包括lan或广域网(wan),其可以包括多个设备。例如,目的地设备可以包括个人计算机、膝上型计算机、工作站、个人数字助理(pda)、无线设备、网络就绪设备、文件服务器、打印服务器或经由网络14访问源的其他设备。

在图1的示例中,路由器12可以使用分段路由技术(例如,联网中的源分组路由(spring)协议)以用于建立lsp。例如,分段路由技术被用于为从入口路由器12a到出口路由器12g的路径配置标签。igp域(例如,网络14)内的分段路由允许路由器通告igp域内的单跳或多跳lsp,诸如分段路由lsp。对于分组路由,“路径”信息作为针对域的igp链路状态信息的一部分在路由器之间被散播。路由器能够通过将分段路由报头(例如,标签)附接在分组之前来操纵分组通过被称为分段的一组受控指令。分段路由允许路由器强制流通过任何拓扑路径和服务链,同时仅在分段路由域的入口节点处维持每流状态。

分段路由的一个潜在优点可以是,在没有转发平面中的改变的情况下分段路由架构能够被直接应用于多协议标签交换(mpls)数据平面。网络管理员29(“admin29”)只需要每个路由器分配一个节点分段,并且分段路由内部网关协议(igp)控制平面自动构建从一个路由器到任何其他路由器所需要的mpls转发构造。分段路由在filsfils等人的2013年6月的互联网草案draft-filsfils-rtgwg-segment-routing-00的“segmentroutingarchitecture”中被进一步描述,而分段路由用例在filsfils等人的2013年7月的互联网草案draft-filsfils-rtgwg-segment-routing-use-cases-01的“segmentroutingusecases”中被描述,其通过引用以其整体并入本文。关于spring的进一步细节在(1)2014年7月3日的ietf草案:draft-filsfils-spring-segment-routing-04的“segmentroutingarchitecture”;(2)s.previdi等人的2017年5月的rfc7855的“sourcepacketroutinginnetworking(spring)problemstatementandrequirements”;以及(3)2014年8月1日的ietf草案:draft-filsfils-spring-segment-routing-mpls-03的“segmentroutingwithmplsdataplane”中找到,其通过引用以其整体并入本文。

在图1的示例中,被包括在分段路由域中的路由器12可以根据spring协议来交换标签。路由器12作为标签交换路由器(lsr)来操作,lsr将标签分发到网络10内的相邻lsr以支持沿着网络10内的路由路径的spring转发。spring包括多种不同标签类型,包括“邻接”标签和“节点”标签。为了通过网络10转发分组,启用spring的路由器可以压入、弹出或交换在分组通过网络被转发时被应用于该分组的标签栈(例如,“分段列表”)中的一个或多个标签。标签栈可以对分组的拓扑和通信量源路由进行编码。

下文中进一步描述不同类型的spring标签。邻接标签可以对特定分段路由节点(诸如路由器12之一)具有本地语义。特别地,邻接标签将通信量操纵到近邻(例如,通信链路和/或接口)或一组近邻上。因此,邻接标签可以与特定路由器相关。为了使用邻接标签,路由器可以初始地将邻接标签分配给特定近邻,并且使用中间系统-中间系统(isis)协议或开放最短路径优先(ospf)协议将邻接标签通告给分段路由域中的其他路由器。路由器可以是分段路由域中使用特定邻接标签的唯一路由器。当路由器使用邻接标签转发分组时,路由器可以使分组使用与邻接标签相关联的路由器的近邻。以这种方式,可以使用邻接标签来在网络10内建立单跳隧道。

相反,节点标签可以在分段路由域内具有全局语义。也就是说,启用spring的路由器12中的每一个可以被指派对于分段路由域内的每个相应路由器唯一的定义的节点标签范围(通常称为分段路由全局块(srgb))。网络10的运营商可以确保来自全球范围的不同节点标签范围到不同路由器的唯一分配。除了节点标签范围之外,每个特定路由器还可以具有唯一地标识分段路由域中的特定路由器的特定节点标识符。每个相应的路由器可以使用isis或ospf将其相应的节点标识符和节点标签范围通告给分段路由域中的其他路由器。

基于使用例如最短路径路由确定的路由,路由器12中的每一个可以配置其转发状态以将节点标签(对应于网络中的其他节点)压入、弹出或交换到分组上,以使用到目的地的确定的路由来转发这样的分组。例如,路由器12中的每一个可以使用通过igp学习的拓扑信息来执行路径选择,以基于由路由器维持的路由信息来逐跳计算网络10内的最短路径。路由器12中的每一个然后可以选择沿着本地计算的最短路径的下一跳,并且安装与路由器的转发平面中的所选择的下一跳相关联的转发信息,其中转发信息标识在转发通信量时要使用的网络接口以及在将通信量转发出接口时要应用的一个或多个标签。路由器使用具有指派的标签的下一跳来逐跳转发通信量。

为了说明节点标签的使用,出口路由器12g通常可以将其节点分段标识符(节点sid)通告给路由器12中的每一个。路由器12a-12f中的每一个通常可以在其转发状态中安装节点sid。路由器12a可以利用路由器12g的节点sid将去往路由器12g的分组注入到网络10中。路由器12a基于与路由器12g的节点sid相关联的节点标签来确定到路由器12g的最短路径,其包括路由器12b作为下一跳。路由器12a可以应用指示路由器12g的节点标识符的节点标签,并且节点标签可以在指派给12b的标签范围内。在一些示例中,节点标签被编码以指示节点标识符并且指示标签在特定标签范围内。在接收到分组时,路由器12b可以基于节点标签和存储的转发信息来确定转发动作。作为示例,路由器12b可以确定转发信息指示将由路由器12a先前应用的节点标签交换为指示路由器12g的节点标识符的标签的转发动作,并且新标签可以在指派给12c的标签范围内。在一些示例中,转发动作指示节点标签被交换为相同的节点标签。分组由从路由器12a到路由器12g的路径上的路由器12中的每一个以类似的方式处理和转发。当路由器12g接收到分组时,路由器12g可以从分组中弹出节点标签并且将分组转发到目的地。以此方式,分段路由域中的任何路由器可以通过应用适当的节点标签将分组转发到网络中的任何其他路由器。

在图1的示例中,系统10包括控制器30,控制器30可以集中计算springlsp。控制器30可以接收来自网络管理员29的请求(或发送到中央控制器30的自动请求),以配置从路由器12a到路由器12g的端到端springlsp。控制器30可以计算从入口路由器12a到出口路由器12g的最短路径,并且向入口路由器12a发送供应请求以用于创建springlsp。然而,在一些示例中,最短路径中的路由器12中的一个或多个可能未被配置为支持spring。出于说明的目的,假定图1中的路由器12d没有启用spring。在这个示例中,响应于确定路由器12d未启用spring,控制器30可以拒绝创建springlsp的请求。

例如,控制器30可以从一个或多个路由器12的链路状态数据库(lsdb)确定路由器12中的一个或多个是否没有启用spring。使用路由域(例如,igp路由域)内的链路状态路由协议,路由器12通常维持诸如lsdb的通信量工程数据库(ted),用于存储关于被称为路由域的给定区域内的节点、链路和路径的链路状态信息。存储在这些通信量工程数据库中的用于igp域的属性通常包括但不限于:路径的入口/出口ip地址、显式路由对象(ero)列表、备用ero列表、支持的逐跳算法列表、和逐跳标签范围。在一些示例中,支持spring的路由器还存储ted分段标识符(sid)信息,包括节点分段标识符(节点sid)或邻接分段标识符(邻接sid)。sid的示例包括mpls标签、mpls标签空间中的索引值和节点的互联网协议(ip)地址。控制器30可以使用igp或边界网关协议链路状态(bgp-ls)来对等地进入路由器12的lsdb,以确定路由器12d的lsdb不包括sid,并且因此没有启用spring。在一些示例中,控制器30可以将路由器12的lsdb中的信息导入到控制器30的ted中。在任何情况下,控制器30可以确定路由器12中的任一个的sid信息的不存在,以确定最短路径中的一个或多个路由器是否没有启用spring,其中控制器30通常会拒绝建立springlsp的请求。

根据本文中描述的技术,控制器30可以建立rsvplsp26以从路由器12c到路由器12e隧穿跨越没有启用spring的路由器12d,而非当沿着最短路径的路由器12d没有启用spring时拒绝从入口路由器12a到出口路由器12g建立端到端springlsp的请求。从入口路由器12a到出口路由器12g的端到端springlsp24然后可以被建立并且遂穿通过rsvplsp26。

控制器30可以在与未启用spring的路由器相邻的路由器之间配置rsvplsp26,使得springlsp24可以隧穿通过rsvplsp26。为了在路由器12c和12e之间建立rsvplsp26,控制器30可以使用路径计算元件协议(pcep)或网络配置(netconf)协议来建立配置会话。在图1的示例中,控制器30可以使用pcep与路由器12c建立pcep配置会话28,以配置路由器12c在路由器12c和12e之间建立rsvplsp。例如,控制器30可以为路由器12c提供显式路由对象(ero),该路由对象定义rsvplsp的路径,例如通过路由器12c、12d、12e的路径。响应于从控制器30接收到ero,路由器12c通过发送请求为lsp预留指定量的带宽的信令消息来建立rsvplsp26。在一些示例中,网络管理员29可以使用pcep来与rsvplsp26的每个路由器(例如,路由器12c、12d和12e)建立相应的pcep配置会话。出于说明的目的,至少路由器12c-12e可以使用诸如具有通信量工程扩展的资源预留协议(rsvp-te)的资源预留协议来建立rsvplsp26。

为了使得springlsp24能够遂穿通过rsvplsp26,网络管理员29经由控制器30可以为路由器12c-12e配置遂穿命令(如下面进一步描述的)。例如,网络管理员29可以经由控制器30配置协议快捷方式(例如,isis和通信量工程)以及网际协议(ip)族(“inet族”)(诸如ipv4路由),以使得端到端springlsp能够遂穿通过所建立的rsvplsp。

在一些示例中,控制器30可以触发路由器12c以使用rsvp-te协议来计算从路由器12c到路由器12e的满足由网络管理员施加的关于rsvplsp26的某些约束的路径,而非控制器30计算路径并且将其提供给路由器12c。例如,路由器12c-12e可以基于关于网络14内的链路的约束信息(包括例如预留带宽可用性、链路颜色、共享风险链路组(srlg)等)来建立rsvp-telsp。rsvp-te可以使用由来自isis协议或ospf协议的路由通告所累积的预留带宽可用性信息来配置rsvplsp26。在计算rsvplsp26之后,rsvp-te可以发送路径信息以用于建立rsvplsp26。rsvp-te建立遵循从路由器12c到路由器12e的单个路径的lsp,并且在rsvplsp26上发送的所有网络通信量必须完全遵循该路径。rsvp-te的其他示例在2001年12月的requestforcomments3209的d.auduche等人的“rsvp-te:extensiontorsvpforlsptunnels”中被描述,其通过引用以其整体并入本文。

在一些示例中,控制器30可以优化连接分段路由岛32a、32b(统称为“分段路由岛32”)的一组资源预留lsp。分段路由岛32中的每一个一个或多个相邻路由器,其各自针对分段路由被启用。分段路由岛中的路由器被定义为如下路由器:给定分段路由岛中的任何路由器都可以到达分段路由岛中的任何其他路由器,而无需遍历未针对分段路由被启用的路由器。分段路由岛外的路由器未针对分段路由被启用,或者必须遍历未针对分段路由被启用的中间跳路由器才能到达分段路由岛内的路由器。

例如,分段路由岛32a包括路由器12a-12c,并且分段路由岛32b包括路由器12e-12g。在这个示例中,还配置从路由器12c到路由器12f的资源预留lsp,例如rsvplsp34。在这个示例中,分段路由岛32中的每一个经由一组资源预留lsp(例如,rsvplsp26和rsvplsp34)被连接。尽管出于示例的目的而示出为具有两个分段路由岛32和连接分段路由岛32的两个rsvplsp26、34,但是在其他示例中,网络10可以包括更多的分段路由岛和连接各个分段路由岛的多组lsp(不一定是rsvp)。分段路由岛可以通过一个或多个lsp连接,并且这些lsp可以被认为是连接分段路由岛的“一组”lsp。

在一些示例中,控制器30存储指示分段路由岛中的成员资格的状态以及连接分段路由岛的多组lsp。响应于确定分段路由岛32的拓扑已经改变,控制器30可以调节该组资源预留lsp。例如,分段路由岛32b的路由器12e可能不再是启用spring的。分段路由岛32b的拓扑被改变为包括路由器12d和12e。在这种情况下,rsvplsp26可能不再连接分段路由岛32a和32b。作为响应,控制器30可以从可以提供分段路由岛32之间的连接性的一组rsvplsp中移除rsvplsp26。在其他示例中,响应于检测到影响分段路由岛连接的拓扑改变,控制器30可以根据需要添加rsvplsp以提供分段路由岛之间的连接性。以这种方式,当分段路由岛32中的每一个的拓扑改变时,控制器30可以调节该组rsvplsp。

以此方式,响应于确定一个或多个路由器未针对分段路由被启用,控制器可以不拒绝配置端到端分段路由lsp的请求。也就是说,控制器可以配置分段路由lsp,而不管路径中的一个或多个路由器是否未针对分段路由被启用。而且,控制器可以提供连接分段路由岛的一组资源预留lsp的全局优化或管理。

图2是示出能够根据本公开中描述的技术进行操作的控制器的示例的框图。控制器200可以包括例如服务器或网络控制器,并且可以表示图1的控制器30的示例实例。

在图2的示例中,控制器200包括控制单元202,其被耦合到网络接口220以通过入站链路222和出站链路224与其他网络设备交换分组。控制单元202可以包括执行软件指令的一个或多个处理器(图2中未示出),这些软件指令诸如用于定义软件或计算机程序的软件指令、存储到计算机可读存储介质(未在图2中示出)的软件指令,计算机可读存储介质诸如包括以下各项的非暂态计算机可读介质:存储设备(例如,磁盘驱动器或光驱)或存储器(诸如闪存或随机存取存储器(ram))或任何其他类型的易失性或非易失性存储器,其存储用于使一个或多个处理器执行本文中描述的技术的指令。备选地或附加地,控制单元202可以包括用于执行本文中描述的技术的专用硬件,诸如一个或多个集成电路、一个或多个专用集成电路(asic)、一个或多个专用特殊处理器(assp)、一个或多个现场可编程门阵列(fpga)、或专用硬件的前述示例中的一个或多个的任何组合。

控制单元202为网络服务应用204和路径计算元件212提供操作环境。在一个示例中,这些模块可以被实现为在一个或多个服务器的一个或多个虚拟机上执行的一个或多个过程。也就是说,虽然通常被图示和描述为在单个控制器200上执行,但是这些模块的各方面可以被委托给其他计算设备。

网络服务应用204表示向包括控制器200的服务提供商网络的客户端提供服务以根据本公开的技术来管理聚合域(或者称为“路径计算域”)中的连接性的一个或多个过程。网络服务应用204可以向服务提供商网络的客户端提供例如ip语音(voip)、视频点播(vod)、批量传输、有围墙/开放式花园、ip移动性子系统(ims)和其他移动性服务以及互联网服务。网络服务应用204需要由路径计算元件212提供的服务,诸如节点管理、会话管理和策略实施。网络服务应用204中的每一个可以包括一个或多个客户端应用通过其来请求服务的客户端接口206。客户端接口206可以表示例如命令行界面(cli)或图形用户界面(gui)。客户端接口206可以另外地或备选地向客户端应用提供诸如web服务的应用编程接口(api)。

网络服务应用204向路径计算单元212发出路径请求,以请求由控制器200控制的路径计算域中的路径。在一个示例中,控制器200可以接收客户对于由网络服务应用204提供的端到端分段路由的lsp服务的请求。

路径计算元件212接受来自网络服务应用204的路径请求,以在路径计算域上的端点之间建立路径。为了计算和建立通过路径计算域的路径,路径计算元件212包括拓扑模块216,用于接收描述路径计算域的可用资源的拓扑信息,其包括分段标识符信息。

路径计算元件212的路径计算模块214计算所请求的通过路径计算域的路径。例如,路径计算模块214可以计算从路由器12a到路由器12g的分段路由lsp。供应分段路由lsp可能需要在提交路径以提供分组传输之前进行路径验证。如下面进一步描述的,路径计算模块214可以确定所计算的分段路由lsp无效。也就是说,路径计算模块214可以确定所计算的分段路由lsp中的一个或多个路由器不包括分段标识符(sid)信息并且未针对分段路由被启用。响应于确定所计算的分段路由lsp中的一个或多个路由器未针对分段路由被启用,路径配置模块218可以供应资源预留lsp,使得所计算的分段路由lsp可以隧穿通过资源预留lsp。

图3是进一步详细示出图2的控制器200的路径计算元件212的示例实现的框图。在这个示例中,路径计算元件212包括北向应用编程接口(api)230和南向api232形式的北向和南向接口。北向api230包括网络服务应用204可以用来配置和请求路径计算域内的路径计算的方法和/或可访问数据结构。南向api232包括路径计算元件212用来接收路径计算域的拓扑信息并且通过访问和编程路径计算域内的路由器(例如,路由器12)的数据平面来建立路径的方法和/或可访问的数据结构。

路径计算模块214包括用以存储用于计算和建立所请求的路径的路径信息的数据结构。这些数据结构包括路径需求236和路径导出240。尽管图3仅示出了路径需求236和路径导出240数据结构,但路径计算模块214可以包括未示出的附加数据结构,诸如在路径计算时描述外部约束(例如,带宽)的约束数据结构,使得网络服务应用204能够在路径计算模块214计算一组路径之前修改链路属性,路径计算模块214还可以包括操作配置数据结构,操作配置数据结构向路径计算元件214提供配置信息以配置关于例如服务等级(cos)描述符和绕行行为的路径计算算法。

网络服务应用204可以调用北向api230来安装/查询来自这些数据结构的数据。例如,网络服务应用204可以请求分段路由lsp。路径需求236表示接收对于要由路径计算模块214计算的路径的路径请求并且将这些路径请求(包括路径需求)提供给路径引擎244以用于计算的接口。路径需求236可以被接收,或者可以被路径计算元件212处理。在这种情况下,路径需求消息可以包括具有用于终止指定路径的路由器的入口路由器标识符和出口路由器标识符的路径描述符。

路径导出240表示存储用于当前在路径计算域中提交或建立的所有路径的路径描述符的接口。响应于经由北向api230接收到的查询,路径导出240返回一个或多个路径描述符。接收到的查询可以请求路径的任意两个路由器之间的路径。在一些示例中,路径描述符可以由网络服务应用204用来在路径的入口路由器和出口路由器处建立转发配置。路径描述符可以包括显式路由对象(ero)。响应于来自感兴趣方的查询,路径描述符或“路径信息”可以被发送。路径导出消息传递路径信息。响应于接收到路径描述符,接收设备可以使用分段路由协议(例如,spring)或资源预留协议(例如,rsvp)来发信号通知mplslsp。例如,响应于接收到路径描述符,路由器12c可以使用rsvp来发信号通知rsvplsp,并且路由器12a可以使用spring来发信号通知分段路由lsp。

拓扑模块216包括用于处理拓扑发现并且确定一个或多个路由器是否未针对分段路由被启用的拓扑指示模块250。拓扑指示模块250可以包括用于向路径计算模块214描述所接收的拓扑的接口。拓扑指示模块250可以使用拓扑发现协议来向路径计算模块214描述路径计算域拓扑。拓扑指示模块250可以包括路由协议过程,其执行路由协议以接收路由协议通告(诸如,开放式最短路径优先(ospf)或中间系统到中间系统(is-is)链路状态通告(lsa)或边界网关协议(bgp)更新消息等)。

在一些示例中,拓扑指示模块250从路由器12接收包括分段标识符(sid)信息的拓扑信息。拓扑指示模块250例如可以执行isis或bgp-ls以接收连接到控制器200的路由器12的属性,包括sid信息,诸如节点sid或邻接sid。

通信量工程数据库(ted)242可以存储由拓扑指示模块250接收的用于构成控制器200的路径计算域的网络的sid信息243。例如,ted242可以存储到计算机可读存储介质(未示出)。ted242可以包括一个或多个链路状态数据库(lsdb),其中链路和节点数据在路由协议通告中被接收,从拓扑服务器被接收,和/或由诸如覆盖控制器等链路层实体发现并且然后被提供到拓扑指示模块250。在一些示例中,控制器200可以使用isis或bgp-ls来对等到存储在路由器12中的lsdb,以确定sid信息243的存在,而不是将sid信息243导入ted242。在一些示例中,控制器200可以与ted242分离地存储sid信息243。

通常,为了计算分段路由lsp,路径引擎244基于ted242来确定在层中是否存在针对所请求的路径路径。路径引擎244可以使用dijkstra约束的spf(cspf)246路径计算算法以用于标识通过路径计算域的令人满意的路径。在一些示例中,路径引擎244以ted242的形式接收路径计算域的当前拓扑快照,并且使用ted242中的sid信息243来确定最短路径的路由器是否针对分段路由被启用。例如,路径引擎244可以通过确定sid信息243是否包括用于最短路径中的路由器中的每一个的sid信息来确定最短路径的路由器是否针对分段路由被启用。

在一些示例中,控制器200(例如,控制器200的pce212)可以例如基于ted242和sid信息243来标识针对分段路由被启用的路由器的“岛”。pce212可以提供连接分段路由岛的一组资源预留lsp的全局优化或管理,诸如响应于确定分段路由岛拓扑的改变。

在一些示例中,路径引擎244可以基于ted242和sid信息244来确定sid信息243不包括与请求的分段路由lsp的最短路径的一个或多个路由器相关联的sid信息,并且一个或多个路由器因此未针对分段路由被启用。响应于确定一个或多个路由器未针对分段路由被启用,路由引擎244可以为资源预留lsp(例如,rsvplsp)计算跨越未针对分段路由被启用的一个或多个路由器和/或其相邻路由器的路径,而非由于一个或多个路由器未针对分段路由被启用而拒绝路径请求。

路径管理器248使用路径供应模块218沿着所计算的路径建立资源预留lsp。在图3的示例中,路径供应模块218包括转发信息库(fib)配置模块252(被示出为“fib配置252”)。fib配置模块252将转发信息编程到路径计算域的路由器的数据平面。fib配置模块252可以实现例如诸如路径计算元件协议(pcep)等软件定义网络(sdn)协议,以提供并且指引节点将转发信息安装到它们相应的数据平面。fib配置模块252可以附加地或备选地实现其他接口类型,诸如网络配置(netconf)接口或任何其他节点配置接口。关于pcep的附加细节可以在2009年3月的网络工作组(networkworkinggroup)的评论请求(requestforcomment)5440的“pathcomputationelement(pce)communicationprotocol(pcep)”中找到,其通过引用以其整体并入本文。关于netconf的附加细节可以在2011年6月的评论请求6241的“networkconfigurationprotocol(netconf)”中找到,其通过引用以其整体并入本文。

fib配置模块252与路由器12建立通信会话以根据从路径计算模块214接收的信息来安装转发信息。例如,fib252可以使用pcep来与路由器12c建立pcep配置会话,以向路由器12c提供定义用于路由器12c和12e之间的资源预留lsp的路径的显式路由对象(ero)。以这种方式,路由器12c可以使用ero和资源预留协议(例如,rsvp信令)为未针对分段路由被启用的一个或多个路由器建立资源预留lsp。在一些示例中,fib配置252可以使用pcep来与资源预留lsp的每个路由器(例如,路由器12c、12d和12e)建立pcep配置会话。在任何情况下,路径供应模块218可以从路由器12c-12e供应资源预留lsp。fib252然后可以使用pcep来与路由器12a建立pcep配置会话以向路由器12a提供定义用于路由器12a和12g之间的分段路由lsp的路径的ero。

为了在配置用于资源预留lsp的路由器上启用隧穿支持,网络管理员可以经由控制器200配置以下遂穿命令以使得分段路由lsp能够被隧穿通过资源预留lsp所需要的路由器(例如,图1中的路由器12c-12e)中的资源预留lsp:

协议{

isis{

交通工程{

inet族{

快捷方式;

}}}}

在以上示例配置中,网络管理员可以经由控制器200配置协议快捷方式(例如,isis和通信量工程)以及互联网协议族(“inet族”)(诸如ipv4路由),以使得端到端分段路由lsp能够遂穿通过所建立的资源预留lsp。以这种方式,可以建立分段路由lsp,而不管沿着所计算的分段路由lsp的最短路径的一个或多个路由器是否未针对分段路由被启用。

图4是示出执行本公开中描述的技术的各个方面的示例路由器400的框图。路由器400可以表示图1的路由器12中的任一个。虽然关于路由器400进行描述,但是这些技术可以由能够至少实现包括资源预留协议或分段路由协议的路由协议的任何其他类型的网络设备来实现。因此,虽然关于路由器400进行描述,但是这些技术不应当限于关于图4的示例描述的路由器400。

在图4的示例中,路由器400包括分别经由网络链路456a-456n和457a-457n来接收和发送诸如分组流的数据单元的接口卡454a-454n(“ifc454”)。路由器400可以包括具有用于容纳包括ifc454的一组卡的数个槽的机架(未示出)。每个卡可以被插入到机架的对应槽中,用于经由高速开关(未示出)将卡电耦合到路由组件444,高速开关可以包括例如交换结构、开关设备、可配置的网络交换机或集线器或者其他高速交换机制。ifc454可以经由数个物理接口端口(未示出)耦合到网络链路456a-456n和457a-457n。通常,ifc454各自可以表示路由器400可以通过其与网络的链路接口连接的一个或多个网络接口。

通常,路由器400可以包括确定接收的分组的路由并且经由ifc454相应地转发分组的控制单元442。在图4的示例中,控制单元442包括配置和控制由分组转发组件446(数据平面)应用的分组转发操作的路由组件444(控制平面)。

路由组件444为在网络栈的不同层处执行的各种路由协议450提供操作环境。路由组件444负责维持路由信息460以反映路由器400连接到的网络和其他网络实体的当前拓扑。特别地,路由协议周期性地更新路由信息460,以基于由路由器400接收的路由协议消息来准确地反映网络和其他实体的拓扑。协议可以是在一个或多个处理器上执行的软件过程。例如,路由组件444包括在网络栈的网络层处操作的网络协议,这些网络协议通常被实现为可执行软件指令。

在图4的示例中,协议470可以包括具有通信量扩展(rsvp-te)协议471的资源预留协议以建立rsvp-telsp(例如,图1的rsvplsp26)。例如,路由组件444可以使用rsvp-te471来生成并且发送用于建立rsvplsp的路径和接收消息。

协议470还可以包括igp-te472以实现具有通信量工程扩展的igp协议来交换链路状态信息,并且促进分组或其他数据单元在端点设备之间的转发。在一些示例中,igp-te组件472可以包括根据以下中的一项或多项的ospf路由协议:由j.moy于1998年4月发布的题为“ospfversion2”的rfc2328、由r.coltun等人于2008年7月发布的题为“ospfforipv6”的rfc5340、由n.sheth等人于2013年1月发布的题为“ospfhybridbroadcastandpoint-to-multipointinterfacetype”的rfc6845、以及由a.lindem等人于2013年1月发布的题为“ospfv3lsaextendibility”的网络工作组的互联网草案draft-acee-ospfv3-lsa-extend-01.txt,它们中的每一个通过引用并入,如同以其相应的整体阐述。在一些示例中,根据由d.oran于1990年2月发布的题为“osiis-isintra-domainroutingprotocol”的rfc1142,igp-te组件472可以包括实现用于在路由域内交换路由和可达性信息的igp的is-is路由协议,其全部内容通过引用并入本文。igp-te组件可以包括支持利用多协议标签交换(mpls)进行通信量工程的通信量扩展,如由tonyli等人于1999年2月公布的题为“igprequirementsfortrafficengineeringwithmpls”的网络工作组的互联网草案draft-li-mpls-igp-te-00.txt中所述,其全部内容通过引用并入本文。

协议470还可以包括配置协议。例如,协议470可以包括根据由jp.vasseur,ed.等人于2009年3月发布的题为“pathcomputationelement(pce)communicationprotocol(pcep)”的rfc5440的pcep474或者根据由r.enns,ed.等人于2011年6月发布的题为“networkconfigurationprotocol(netconf)”的netconf(未示出),其中每一个通过引用以其整体并入。协议470可以包括其他路由协议(未示出),诸如路由信息协议(rip)、边界网关协议(bgp)或其他网络协议。

在其中路由器400支持spring协议的一些示例中,路由组件444包括用于实现用于指定路由器400如何通告节点或邻接标签的igp协议(例如,is-is和ospf)的分段路由技术的分段路由(sr)组件473。如图1所示,这些节点或邻接标签可以通过在分组之前附接分段路由报头来操纵分组通过一组受控指令(被称为分段)。

通过执行路由协议,路由组件444标识通过网络的现有路由并且确定通过网络的新路由。路由组件444存储路由信息460,其包括例如通过网络的已知路由。转发组件446存储包括输出链路457的目的地的转发信息462。转发信息462可以根据路由信息460来生成。

路由组件444可以包括用于存储例如用于资源预留lsp或分段路由lsp的路径信息的通信量工程数据库(ted)482。在其中路由器400支持分段路由(例如,spring)的一些示例中,ted482可以包括分段标识符信息。如下所述,控制器可以对等到ted482或从ted482导入,以确定路由器400是否针对分段路由被启用。ted482可以采取各种数据结构的形式,诸如数个表格、链接列表、基数树、数据库、平面文件或其他数据结构。

根据本公开中描述的技术,例如,诸如控制器(例如,图1的控制器30)的路径计算元件(pce)467可以与路由器400建立pcep配置会话。路由器400可以与pce467建立pcep配置会话,其中路由器400可以从pce467接收路径配置信息(例如,供应信息)以建立资源预留lsp。

如以上在图3中所描述的,路由器400还可以从pce467接收遂穿命令以使得分段路由lsp能够遂穿通过包括路由器400的rsvplsp。遂穿命令可以包括配置路由协议(例如,isis和通信量工程)和互联网协议族(例如,ipv4)。

路由器400可以依赖ted482中的信息(或来自pce367的配置信息)来提供资源预留协议预留。在一个示例中,路由器400可以使用rsvp-te451以基于来自pce467的供应信息来生成resv消息。以这种方式,经由来自pce467的配置信息,路由器300可以建立资源预留lsp,分段路由lsp可以隧穿通过该资源预留lsp。

虽然出于示例的目的关于路由器来进行描述,但是路由器400可以更一般地是具有路由功能的网络设备,并且不一定是专用路由设备。图4所示的路由器400的架构仅出于示例的目的被示出。本公开的技术不限于这种架构。在其他示例中,路由器400可以以各种方式来配置。在一个示例中,控制单元442的一些功能可以分布在ifc454内。在另一示例中,控制单元442可以包括作为从路由器操作的多个分组转发引擎。

控制单元442可以仅以软件或硬件来实现,或者可以被实现为软件、硬件或固件的组合。例如,控制单元442可以包括以软件指令的形式执行程序代码的一个或多个处理器。在这种情况下,控制单元442的各种软件组件/模块可以包括存储在诸如计算机存储器或硬盘的计算机可读存储介质上的可执行指令。

图5是示出根据本公开中描述的技术的用于建立遂穿通过资源预留lsp的分段路由lsp的控制器的示例操作的流程图。将参考图2的控制器200和图3的路径计算元件212来解释图5。

控制器200可以接收对于建立分段路由lsp的请求(502)。在一些示例中,控制器200可从请求服务的网络管理员(或另一实体)接收,该服务要求从入口路由器(例如,路由器12a)到出口路由器(例如,路由器12g)的分段路由lsp。

路径计算模块214可以使用cspf来选择用于分段路由lsp的最短路径(504)。控制器200可以确定所选择的路径中的所有路由器是否针对分段路由被启用(506)。例如,路径计算模块214可以从导入到ted242中的sid信息(或者备选地从路由器12的lsdb)确定最短路径中的一个或多个路由器是否未针对分段路由被启用。特别地,路径计算模块214可以确定路由器12中的每一个是否包括分段标识符信息。如果路由器12中的每一个包括分段标识符信息,则路径计算模块214可以确定在最短路径中的路由器针对分段路由被启用。作为响应,控制器200的路径供应模块218可以向入口路由器发送供应请求以供应分段路由lsp(508)。

在最短路径中的一个或多个路由器中不存在分段标识符信息时,路径供应模块218可以供应资源预留lsp,使得分段路由lsp可以隧穿通过资源预留lsp。

例如,控制器200的路径供应模块218可以配置与一个或多个路由器的配置会话,其中资源预留lsp将被建立(510)。在一个实例中,控制器200的路径供应模块218可以使用pcep来与一个或多个路由器建立pcep配置会话或者使用netconf来与一个或多个路由器建立netconf配置会话。

控制器200然后可以建立资源预留lsp隧道(512)。例如,控制器200的路径供应模块218可以将对于资源预留lsp的供应请求发送到与未针对分段路由被启用的路由器相邻的一个或多个路由器。相邻路由器可以发送例如资源预留协议预留以建立通过未针对分段路由被启用的路由器的资源预留lsp(例如,rsvplsp)隧道。

如上所述,为了在其中资源预留lsp将被建立的一个或多个路由器上启用隧穿支持,控制器200可以配置包括路由协议和互联网协议族的遂穿命令。在一些示例中,控制器200可以在路由器的初始配置时启用隧穿支持。

响应于启用资源预留lsp隧道,控制器200可以将对于分段路由lsp的供应请求发送到入口路由器。以这种方式,控制器200可以建立包括未针对分段路由被启用的一个或多个路由器的资源预留lsp,使得分段路由lsp可以隧穿通过该资源预留lsp,而非在最短路径中的一个或多个路由器未针对分段路由被启用时拒绝供应分段路由lsp的请求。

图6是示出根据本公开中描述的技术的用于调节连接分段路由岛的一组可用资源预留lsp的示例操作的流程图。将参考图1的控制器30和图2的控制器200来解释图6。分段路由岛为针对分段路由被启用的多组相邻路由器。

控制器30可以确定一组资源预留lsp,它们各自提供到多个分段路由岛(例如,图1的分段路由岛32)的连接性(602)。例如,控制器30可以确定rsvplsp26将分段路由岛32a连接到分段路由岛32b,并且rsvplsp34将分段路由岛32a连接到分段路由岛32b。

例如,基于存储在ted242中的数据,控制器30可以确定到分段路由岛32中的任一个的拓扑中的改变(604)。例如,分段路由岛32b可以包括路由器12e-12g。在一个实例中,如果控制器30确定分段路由岛32的拓扑不变(即,仍然包括路由器12e-12g),则该组资源预留lsp保持不变(606)。也就是说,连接分段路由岛32的当前的一组资源预留lsp仍然包括rsvplsp26、34。

在另一实例中,控制器30可以基于ted242确定分段路由岛32b的拓扑已经改变。例如,分段路由岛32b内的路由器12e可能不再针对分段路由被启用。在另一示例中,针对分段路由被启用的附加路由器可以被添加到分段路由岛32b。在任何情况下,控制器30可以确定分段路由岛32b的拓扑已经改变。

响应于确定分段路由岛32中的至少一个的拓扑已经改变,控制器30可以基于拓扑中的改变来确定该组资源预留lsp是否已经改变或需要被更新(608)。也就是说,控制器30可以确定分段路由lsp(例如,springlsp24)通过隧穿通过该组资源预留lsp中的rsvplsp26和34中的每一个来是否仍然能够连接分段路由岛32。

在一个实例中,如果控制器30确定当前的一组资源预留lsp仍然提供分段路由岛32之间的连接性,则该组资源预留lsp保持不变(606)。

在另一实例中,如果控制器30确定当前的一组资源预留lsp中存在改变,则控制器30可以配置包括在拓扑改变之后提供到多个分段路由岛的连接性的一个或多个资源预留lsp的已更新的一组资源预留lsp(610)。在其中路由器12e不再启用分段路由的示例中,控制器30可以确定springlsp24可以不再遂穿通过rsvplsp26以连接分段路由岛32。作为响应,控制器30可以从当前的一组资源预留lsp中移除rsvplsp26以形成已更新的一组资源预留lsp。

控制器30可以提供已更新的一组资源预留lsp,针对该已更新的一组资源预留lsp的分段路由lsp可以通过遂穿通过该已更新的一组资源预留lsp中的资源预留lsp来连接分段路由岛32。例如,控制器30可以从该已更新的一组资源预留lsp建立新的资源预留lsp,例如rsvplsp34,使得分段路由lsp(例如,springlsp24)可以遂穿通过已更新的一组资源预留lsp中的该资源预留lsp(612)。以这种方式,响应于供应分段路由lsp的请求,控制器30可以建立已更新的一组资源预留lsp中的资源预留lsp,其中分段路由lsp可以隧穿通过该资源预留lsp以连接分段路由岛屿32。

本文中描述的技术可以以硬件、软件、固件或其任何组合来实现。被描述为组件、单元或模块的各种特征可以一起被实现在集成逻辑器件中,或者单独被实现为离散但是可互操作的逻辑器件或其他硬件设备。在一些情况下,电子电路的各种特征可以被实现为一个或多个集成电路设备,诸如集成电路芯片或芯片组。

如果以硬件来实现,则本公开可以涉及诸如处理器或集成电路设备(诸如集成电路芯片或芯片组)的装置。备选地或附加地,如果以软件或固件来实现,则这些技术可以至少部分地通过包括指令的计算机可读数据存储介质来实现,这些指令在被执行时使处理器执行上述方法中的一个或多个。例如,计算机可读数据存储介质可以存储这样的指令用于由处理器执行。

计算机可读介质可以形成计算机程序产品的一部分,计算机程序产品可以包括封装材料。计算机可读介质可以包括计算机数据存储介质,诸如随机存取存储器(ram)、只读存储器(rom)、非易失性随机存取存储器(nvram)、电可擦除可编程只读存储器(eeprom)、闪存、磁或光学数据存储介质等。在一些示例中,制品可以包括一个或多个计算机可读存储介质。

在一些示例中,计算机可读存储介质可以包括非暂态介质。术语“非暂态”可以指示存储介质没有被实施在载波或传播信号中。在某些示例中,非暂态存储介质可以存储能够随时间改变的数据(例如,在ram或高速缓存中)。

代码或指令可以是由包括一个或多个处理器的处理电路执行的软件和/或固件,一个或多个处理器诸如一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程门阵列(fpga)或其他等效的集成或离散逻辑电路。因此,如本文中使用的术语“处理器”可以是指任何前述结构或适用于实现本文中描述的技术的任何其他结构。另外,在一些方面中,本公开中描述的功能可以在软件组件或硬件组件内被提供。

除了上述内容或作为上述内容的备选,描述了以下示例。在任何以下示例中描述的特征可以与本文中描述的任何其他示例一起使用。

示例1.一种方法,包括:由管理网络中的多个网络设备的控制器接收对于从所述多个网络设备中的入口网络设备延伸到所述多个网络设备中的出口网络设备的分段路由标签交换路径(lsp)的请求;由所述控制器确定所述多个网络设备中沿着为所述分段路由lsp而选择的路径的第一网络设备未针对分段路由被启用;响应于确定所述第一网络设备未针对分段路由被启用,由所述控制器建立从第二网络设备到第三网络设备的资源预留lsp,其中所述第一网络设备被定位在所述第二网络设备和第三网络设备之间;以及由所述控制器向所述入口网络设备发送对于所述分段路由lsp的供应请求。

示例2.根据示例1所述的方法,其中接收对于所述分段路由lsp的所述请求包括接收对于联网中的源分组路由(spring)lsp的请求

示例3.根据示例1所述的方法,其中建立所述资源预留lsp包括建立资源预留协议(rsvp)lsp。

示例4:根据示例1所述的方法,其中建立所述资源预留lsp包括沿着包括所述第一网络设备的路径而建立。

示例5.根据示例1所述的方法,其中确定所述第一网络设备未针对分段路由被启用包括:由所述控制器确定所述控制器的通信量工程数据库(ted)不包括与所述第一网络设备相关联的分段标识符(sid)。

示例6.根据示例1所述的方法,其中确定所述第一网络设备未针对分段路由被启用包括:由所述控制器确定所述第一网络设备的链路状态数据库(lsdb)不包括与所述第一网络设备相关联的分段标识符(sid)。

示例7.根据示例1所述的方法,其中建立从所述第二网络设备到所述第三网络设备的所述资源预留lsp包括:由所述控制器与所述多个网络设备中的所述第二网络设备建立配置会话,所述配置会话至少包括路径计算元件协议(pcep)配置会话和网络配置协议(netconf)配置会话。

示例8.根据示例1所述的方法,进一步包括:由所述控制器配置遂穿命令以启用从所述第二网络设备到所述第三网络设备的遂穿支持,其中所述遂穿支持使得所述分段路由lsp能够隧穿通过所述资源预留lsp,所述资源预留lsp通过所述第一网络设备而被建立。

示例9.根据示例1所述的方法,进一步包括:响应于确定所述第一网络设备未针对分段路由被启用,由所述控制器继续进行对于所述分段路由lsp的请求。

示例10.根据示例1所述的方法,进一步包括:由所述控制器基于所述控制器的通信量工程数据库来选择用于所述分段路由lsp的路径。

示例11.一种管理网络中的多个网络设备的控制器,包括:存储器;以及可操作地耦合到所述存储器的一个或多个处理器,其中所述一个或多个处理器被配置为:接收对于从所述多个网络设备中的入口网络设备延伸到所述多个网络设备中的出口网络设备的分段路由标签交换路径(lsp)的请求;确定所述多个网络设备中沿着为所述分段路由lsp而选择的路径中的第一网络设备未针对分段路由被启用;响应于确定所述第一网络设备未针对分段路由被启用,建立从第二网络设备到第三网络设备的资源预留lsp,其中所述第一路由器被定位在所述第二网络设备和所述第三网络设备之间;以及发送对于所述分段路由lsp的供应请求。

示例12.根据示例11所述的控制器,其中所述分段路由lsp包括联网中的源分组路由(spring)lsp。

示例13.根据示例11所述的控制器,其中所述资源预留lsp包括资源预留协议(rsvp)lsp。

示例14.根据示例11所述的控制器,其中所述资源预留lsp沿着包括所述第一网络设备的路径而被建立。

示例15.根据示例11所述的控制器,其中为了确定所述多个网络设备中的所述第一网络设备未针对分段路由被启用,所述一个或多个处理器和所述存储器被配置为:确定所述控制器的通信量工程数据库(ted)不包括与所述第一网络设备相关联的分段标识符(sid)。

示例16.根据示例11所述的控制器,其中为了确定所述多个网络设备中的所述第一网络设备未针对分段路由被启用,所述一个或多个处理器和所述存储器被配置为:确定所述第一网络设备的链路状态数据库(lsdb)不包括与所述第一网络设备相关联的分段标识符(sid)。

示例17.根据示例11所述的控制器,其其中为了建立从所述第二网络设备到所述第三网络设备的所述资源预留lsp,所述一个或多个处理器进一步被配置为:与所述多个网络设备中的第二网络设备建立配置会话,其中所述配置会话包括路径计算元件协议(pcep)配置会话和网络配置协议(netconf)配置会话中的至少一项。

示例18.根据示例11所述的控制器,其中所述一个或多个处理器进一步被配置为:配置遂穿命令以启用从所述第二网络设备到所述第三网络设备的隧穿支持,其中所述遂穿支持使得所述分段路由lsp能够隧穿通过所述资源预留lsp,所述资源预留lsp通过所述第一网络设备而被建立。

示例19.根据示例11所述的控制器,其中所述一个或多个处理器进一步被配置为:响应于确定所述第一网络设备未针对分段路由被启用,继续进行对于所述分段路由lsp的请求。

示例20.一种方法,包括:由管理多个分段路由岛的控制器确定提供所述多个分段路由岛之间的连接性的一组资源预留标签交换路径(lsp),所述多个分段路由岛各自包括针对分段路由而被启用的一个或多个网络设备;响应于由所述控制器确定所述多个分段路由岛中的至少一个的拓扑已经改变,由所述控制器基于所述拓扑改变来确定所述一组资源预留lsp是否需要更新;响应于确定所述一组资源预留lsp需要更新,由所述控制器配置已更新的一组资源预留lsp,所述已更新的一组资源预留lsp包括在所述拓扑改变之后提供到所述多个分段路由岛的连接性的一个或多个资源预留lsp;以及由所述控制器建立所述已更新的一组资源预留lsp中的至少一个资源预留lsp,使得分段路由lsp隧穿通过所述至少一个资源预留lsp。

此外,上述任何示例中阐述的任何特定特征可以被组合成所描述技术的有益示例。也就是说,任何具体特征通常适用于本公开的所有示例。已经描述了技术的各种示例。这些和其他示例在以下权利要求的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1