专利名称:在一个通信网络中建立不同的故障恢复类型的路径的方法
技术领域:
本发明涉及故障恢复方法,尤其涉及能够使用不同故障恢复类型把一个网状网络从故障中恢复过来的路径建立方法。
背景技术:
在公众通信网络中,故障恢复是一个不可缺少的任务。由于其多方面的故障恢复特点,网状网络结构已经被广泛地接受。在一个网状网络中使用GMPLS(广义多通信协议标记切换Generalized Multi-Protocol Label Switching)技术的故障恢复方法在由Eric Mannie发表在IETF(Internet Engineering Task Force)中的互联网草案″Generalized Multi-Protocol Label Switching(GMPLS)Architecture″中的″draft-ietf-ccamp-gmpls-architecture-01.txt″(在下文称作文件1)中有所描述。根据文件1的第12章,故障恢复方法被分类为保护和恢复模式。在保护模式中,通过远在一个可能的故障之前分配一个备用资源而恢复故障,并且此预分配不需要用信令过程。通过操作一个开关而简单地恢复该故障部分。另一方面,该恢复模式是其中没有预先分配备用资源的一个模式。当故障出现时,使用信令在故障部分的边缘点之间交换信息,以便分配一个用于恢复的备用资源。故障恢复被分成两类,一类是逐个链路恢复法,另一类是根据每一LSP(标记切换路径)的恢复法,该LSP由GMPLS网络中的一个标记所标识。而且,根据备用资源的冗余度把该故障恢复方法依次分类为″1+1″、″1∶1″、″1∶N″和″M∶N″。恢复类型″1+1″通常用于该保护模式,其中一个保护资源被分配到一个工作资源并且该工作资源的信号也被提供在该保护资源的上游端。当该工作资源有故障时,该保护资源的下游端被切换,以便传送该信号下游。恢复类型″1∶1″既用于保护模式又用于恢复模式。在此恢复类型中,一个保护资源被分配到一个工作资源。然而,信号不提供到该保护资源。当该工作资源有故障时,该保护资源的上游和下游端都被切换,以便传送该信号。当该工作资源正常时,该保护资源被用于传送额外业务。当保护资源被切换来传送主信号时则关闭此额外业务。恢复类型″1∶N″也既用于保护模式又用于恢复模式。此恢复类型不同于″1∶1″恢复类型不同之处在于,通过单个工作资源共享N个保护资源。恢复类型″M∶N″是恢复类型″1∶1″和″1∶N″的一个特殊情况,并且当N大于1时,该恢复类型M∶N被称之为″共享″。通过设置N大于M,能够提高资源利用效率。然而,在工作和保护资源中同时都发生故障将意味着该系统不能被恢复,并且因此需要保证该保护资源中的发生故障的概率非常低。
为了保证共享资源具有一个低故障发生率,已经采用了一个共享风险链路群(SRLG)的构思。在一个波长复用网络中,共享同一个光纤、或共用同一个电缆的光纤、或连接到同一个节点的光纤的波长信道被作为一个共同的SRLG处理,并且在一个网络中由一个SRLG标识符所标识。可能有的情况是,单个链路属于若干不同的SRL组。
在一个GMPLS网络中,保持SRLG标识符的一个清单,用于属于该清单的SRL组的网络的每一链路。如果两个路径的链路属于共享风险链路群的不同集合,则该两个路径将是SRLG-不相联的路径,每一共享风险链路群中的任何链路之一都不与另一共享风险链路群的链路之一相重叠。如果该SRL群之一有故障,则该SRLG-不相联的路径决不会同时有故障。
通过使用GNTLS进行单个SRLG故障恢复的共享恢复技术在由Guangzhi Li等人提交给IETF的互联网络草案″RSVP-TE Extensions forShared-Mesh Restoration in Transport Network″中的draft-li-shared-mesh-restoration-01.txt(文件2)中公开。根据文件1,文件2可被分类为″具有预信号恢复带宽预约而不具有标记预选择的端对端LSP恢复″。
根据文件2,当产生一个路径设置请求时,网络计算一对SRLG-不相联工作和保护路径。然后通过网络发送一个信令信息。在此过程中,对于工作和保护路径都执行带宽预约。然而,仅对于该工作路径执行标记指定和连接建立。如果该工作路径有故障,则沿着该预留的保护路径的路由发送一个信令信息,以便执行标记指定和连接建立。为了保证单个SRL群的故障恢复,已有技术中使用了两种技术。一种是把SRLG标识符的一个列表附加到用于建立该保护路径的一个信令信息。在此列表中,指示出该工作路径的链路所属于的全部SRL群。另一技术是以用于每一SRL群的每一链路的一个预留阵列R[i](其中i表示SRLG ID)管理每一链路的预留带宽。预留阵列R[i]的管理实质上是根据工作路径的不同SRL群的一个保护路径的管理。具体地说,如果一个10Gbps带宽的工作路径使用属于由SRLG ID的1、3、5标识的共享风险链路群的一个清单的链路,在工作路径有故障时,则当建立一个保护路径时,SRLG标识符1、3、和5的一个清单被添加到一个信令信息。沿着保护路径的路由的节点把10Gbps添加到该保护路径的链路R[1]、R[3]和R[5]。如果该最大值Max(R[i])大于该链路的最大带宽,则不建立该保护路径。由于R[i]表示用于属于SRLG ID=i的一个链路所需要的带宽,所以能被恢复的单个SRLG故障范围Max(R[i])小于该链路的最大带宽。因为经过一个链路的所有的保护路径都共用同一个Max(R[i])的带宽,所以此恢复法可被分类为一个共享恢复类型M∶N。
为了寻求GMTLS中的最短路径,使用称之为CSPF(ConstrainedShortest Path First)的一个路由计算算法,该算法把狄杰克斯特拉算法(Dijkstra algorithm)用于满足一组约束条件的一组链路,例如在工作和保护路径之间的SRLG-不相联的一组链路,以及该非预留带宽大于一个路径的带宽的一个链路的约束条件。一个约束条件的应用保证需要的带宽在一个计算的路由的每一链路上的所需带宽能够是安全的。根据文件2,该最大值R[i]是由保护路径预留的整个频带宽度。能够通过从一个链路的带宽减去指定到工作和保护路径的带宽而确定非预留带宽。
但是,因为若干原因,已有技术的路由计算和故障恢复算法不允许不同故障恢复类型的若干通信信道容纳在单个通信网络中。例如,类型是1+1的故障恢复提供快速的故障恢复,但是需要与工作路径同量的备用资源用于一个保护路径,并且不允许保护路径传送附加业务。尽管共享恢复类型要花费比1+1类型更长的时间来恢复故障并且不能恢复多重故障,但是其允许备用资源在工作资源中共享并且提供适应额外业务的能力。共享恢复类型具有最高的资源利用效率。由于通过故障恢复时间和恢复速率表示的服务等级与资源利用效率相矛盾,所以已有技术采用不同的故障恢复类型对于不同的服务等级。
如果在单一网络中共存若干不同的故障恢复类型,则需要执行优先级控制。该1+1恢复类型被赋以超过1∶1类型的最高优先级,该1∶1类型应该指定为超过该共享类型的较高优先级,并且如果出现多重故障的话,则应该以该顺序执行故障恢复。
另一问题是该约束条件路由计算算法不适于附加业务,因为其可导致一种情形,其中在1∶1或共享类型保护路径没有建立的场合,在链路上设置附加业务。
在通信网络的故障恢复方面,时间-时隙分段是又一个问题。如果此路径的带宽大于分段时间-时隙的每一个的带宽,则在一个TDM链路上将不能建立一个路径。对于故障恢复目的,分段的时间-时隙不能被考虑。在文件2中,如果R[i]的最大值不超过某些阈值,则在逐个链路的基础上管理R[i],并且在一个链路上建立一个保护路径,其阈值等于在该链路和容纳在该链路中的一个工作路径的带宽之间的差值。如果在一个TDM链路上出现时间-时隙分段,则即使R[i]的最大值低于该阈值,在故障出现情的况下也不能建立一个保护路径。
发明内容
因此,本发明的一个目的是提供一种路径建立方法,用于在单一通信网络中容纳多个不同故障恢复类型的路径。
本发明的另一目的是提供一种用于执行故障恢复处理的路径建立方法,从而根据以降序给至该恢复类型的优先级而从故障中恢复不同故障恢复类型的失效通路。
本发明的进一步的目的是提供一种路径建立方法,能够计算用于附加业务(无保护的)恢复类型的一个路径的一个适当的路由。
本发明更进一步的目的是提供一种路径建立方法,避免可能作为分段时间-时隙的结果而出现的不成功的故障恢复。
根据本发明的第一方面,提供一种用于一个通信网络的路径建立方法,其中该网络包括通过链路互连的多个节点,该链路具有一个共享风险,以便形式一个共享风险链路群,该链路群是该网络的多个共享风险链路群之一。该方法包括步骤(a)定义分别对应于该共享风险链路群的多个非预留带宽,并且把每一个链路的一个最大带宽作为一个初始值设置到每一个定义的非预留带宽,并且(b)从每一个非预留带宽减去一个请求的路径的带宽(即波长路径),并且如果每一个被相减的非预留带宽都小于一个预定阈值,则拒绝该请求的路径的建立。
根据本发明的第二方面,提供一种用于一个通信网络的路径建立方法,其中该网络包括多个由链路互连的节点,并且其中由具有共同风险的链路形成多个共享风险链路群。该方法包括步骤(a)当请求″1+1″或″1∶1″恢复类型的一个工作路径或一个保护路径时,定义分别对应于该网络的全部共享风险链路群的多个非预留带宽,并且把每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,(b)当请求″共享″恢复类型的一个保护路径时,定义分别对应于相应工作路径的链路所属的共享风险链路群的多个非预留带宽,并且把对于每一个定义的非预留带宽的每一个链路的最大带宽设置为一个初始值,并且(c)从每一个该非预留带宽减去该工作或保护路径的带宽,并且如果该被相减的非预留带宽的一个最小值小于该预定阈值,则拒绝该请求的路径的建立。
如果该工作路径的故障恢复类型是附加业务类型,则本发明的方法进一步执行步骤把该工作路径的带宽相加到该附加业务的带宽以便产生一个和带宽,从每一链路的一个未指定带宽减去该非预留带宽的最小值以便产生一个差带宽,并且如果该和带宽小于该差带宽,则拒绝该附加业务的建立。
当在一个工作路径上检测到一个故障时,本方法确定在将被指定到与该工作路径形式一对儿的一个保护路径的每一个链路上的是否存在足够的带宽。如果不存在足够的带宽,则作出是否在每一链路上建立有一个附加业务的判定。如果在每一链路上建立有一个附加业务,则删除该附加业务,以便增加能够分配给该保护路径的每一链路的带宽。
根据本发明进一步的方面,从一个开始节点播出一个链路状态通知信息,用于指示用于附加业务的一个未指定带宽,该带宽等于UABW-Min(URBW(i))-ET/BW,其中,UABW=每一个链路的未指定带宽,Min(URBW(i))=分别对应于全部共享风险链路群的该非预留带宽的最小值,以及ET/BW=该附加业务的带宽。
响应该链路状态通知信息,通过使用链路执行一个路由计算,在每一个链路上,以该链路状态通知信息指示的该未指定的带宽大于建立在每一个链路上的一个工作路径的带宽。
根据本发明更进一步的方面,提供一种方法,定义代表一个共享风险链路群和保护路径的带宽的组合的一个计数数目,并且初始地设置该计数数目为零,其中每一个工作和保护路径是一个TDM路径。如果请求了1+1或1∶1恢复类型的一个保护路径,则本方法在请求的保护路径的每一个链路把1加到该网络的每一共享风险链路群的该计数数目,以便生产一个和值,以及如果该和值大于在每一个链路上能容纳的一个计数数目,则拒绝该请求的保护路径的建立。如果请求了一个″共享″保护路径,则本方法将把1加到其对应工作路径的链路所属于的该共享风险链路群的一个清单的计数数目,以便产生一个和值,以及如果该和值大于在对应工作路径的每一个链路上能容纳的一个计数数目,则拒绝该请求的保护路径的建立。
将进一步参照下面的附图详细描述本发明,其中图1是本发明的光通信网络的一个框图;图2是图1的一个网络节点的框图;图3是在图2的节点控制器的存储器中定义的节点A的端口表的示意图;图4是在图2的节点控制器的存储器中定义的节点A的路径表的示意图;图5是在图2的节点控制器的存储器中定义的节点A的链路表的示意图;图6是当提供一个路由计算时本节点控制器的操作的流程图;图7A和7B是当该节点是制订一个预留请求信息并且通过至少一个中间节点向一个终止节点发送该预留请求信息的一个开始节点时,该节点控制器的操作的流程图;图8A和BB是当该节点是从一个上游节点接收一个预留请求信息并且向一个终止节点发送该预留请求信息的一个中间节点时,该节点控制器的操作的流程图;图9是当该节点是用于接收预留请求信息并且用于制备发送到该开始节点的预留响应信息的一个终止节点时,该节点控制器的操作的流程图;图10A和10B是该终止节点的节点控制器用于制订一个预留响应信息并且向该开始节点发送该预留响应信息的操作的流程图;图11A和11B是该中间节点的节点控制器用于向该开始节点转发该预留响应信息的操作的流程图;图12A和12B是当接收到一个预留请求信息时该开始节点的节点控制器的操作流程图;图13A和13B是在上游链路上出现故障时,当该终止节点制订和朝着开始节点的方向发送一个故障恢复信息时该终止节点的节点控制的操作流程图;图14A和14B是当接收到一个故障恢复信息时该中间节点的节点控制器的操作流程图;图15是当接收到一个故障恢复信息时该开始节点的节点控制器的操作流程图;图16是本发明的一个TDM通信网络的框图;图17是图16的一个网络节点的框图;图18是根据本发明第二实施例的一个端口表的示意图;图19是根据本发明第二实施例的一个路径表的示意图;图20是根据本发明第二实施例的一个链路表的示意图;图21A和21B是根据本发明的第二实施例发送一个预留请求信息时,图16的一个开始节点的操作流程图;和图22A和22B是根据本发明的第二实施例转发一个预留请求信息时,图16的一个中间节点的操作流程图。
具体实施例方式
参考图1,其中示出的本发明第一实施例的一个光通信网络包括网路控制器1和以网孔结构由链路互连的多个节点A至F。例如,节点A和B在从节点A至节点B的方向由链路AB互连和在从节点B至节点A的方向由链路BA互连。在本实施例中,假设在从一个开始节点到一个终端节点的单一方向上建立一个路径。全部链路由SRLG(共享风险链路群)标识符G1至G7表示。在同一G1之下分组的一个链路束例如包括链路AB、BA、AC和CA。全部节点都经由控制信道100连接至包括CPU11和存储器12的网路控制器1。
工作路径和保护路径的一种结构的一个典型实例建立在图1的网络中。假设通过节点C在节点A和E之间建立恢复类型″1+1″的一个工作路径301,通过节点D建立作为路径301的备用一个保护路径311。通过节点B在节点A和F之间建立″共享″恢复类型的一个工作路径302,通过节点D建立作为路径302的备用一个保护路径312。通过使用该共享恢复类型保护路径312的带宽,在节点A和D之间建立一个附加业务(ET)路径。注意,该工作路径没有相应的保护路径而因此这一工作路径是无保护的。
该网络的每一节点的细节在图2中示出。如图所示,由数字2指示的每一节点包括一个节点控制器21和由该节点控制器控制的一个转换开关。通过每一个都传送4-信道WDM(波分多路复用)信号的光纤101至103、131至133把节点2连接到其它节点。每个波长信道是OC-192(Optical Carrier level 192)的SONET(Synchronous OpticalNETwork)信号。
换句话说,一个光纤与传送一个STS-768信号(同步输送器信号Synchronous Transport Signal)的单向链路等效。转换开关20是一个电空间转换开关,用于在每一波长基础上在输入端口a0-l0和输出端口a1-l1之间切换一个电信号。转换开关20可能进一步通过输入端口m0、n0和输出端口m1、n1连接客户节点(没示出)。转换开关20建立在一个输入端口和一个输出端口之间的连接,或建立在单一输入端口和两个输出端口之间的连接。
通过光纤101、102、103从一个相邻节点发送的WDM信号是每一个都由波长分解器261、262、263多路分解的信号,并且由引入线接口(IF)221至232转换成电信号,并且提供到转换开关20的输入端口a0至l0。出现在转换开关20的输出端口a1至l1的电信号由引出线接口(IF)241至252转换成光信号,并且由波长复用器271、272、273多路复用器,并且经过光纤131、132和133发送。
节点控制器21包括一个CPU21a和一个存储器21b。节点控制器21通过控制信道111、121、113连接到引入线接口221-232,并且通过控制信道121、122、123连接到引出线接口241-252。例如,控制信道111和121连接到该SONET额外开销的数据通信通道(DCC),以使该节点控制器21能够通过光纤101和131与第一相邻节点的节点控制器21通信。
以同样方式,该节点控制器21能够经过控制信道112和122与一个第二相邻节点通信,并且经过控制信道113和123与一个第三相邻节点的节点控制器21通信。此外,该节点控制器21能够通过控制一个信道100与网路控制器1通信。在该存储器21b中,定义有一个端口表、一个路径表和一个节点的链路表。
在图3中示出节点A的端口表的例子。端口表具有对应于转换开关20的所有的输入和输出端口的多个输入项。每一个输入项被分成用于标识该端口的字段端口ID、端口类型(输入或输出)、相邻节点、相邻节点的对应端口、端口的状态、如果该端口由一个路径使用的情况下的一个路径识别符、以及该路径的恢复类型。端口ID是一个标识符,局部地唯一标识在该节点A之内的一个端口。端口的状态指示该端口是否在空载、占线、或故障。在初始状态中,端口被标记为″空载″。注意,因为在初始设置时没有标记(端口)被指定,所以在该端口表中没有指示共享恢复类型保护路径312。
图4示出节点A的路径表。该路径表被分成对应于节点A的全部操作和保护路径的多个输入项。每一个输入项被细分为用于标识路径的字段,具有通道ID(指示一个工作保护对)、路径ID、该路径传输的带宽、上游节点ID、上游标记、下游节点ID、下游标记、路径的恢复类型以及路径的状态(工作或保护)。通道ID是该网络中总体唯一的一个标识符,标识一对儿工作和保护路径。如果一个工作路径不由一个保护路径支持,则通道ID仅被指定到该工作路径。路径ID也是该网络中总体唯一的一个标识符,标识一个路径。标记是使用在一个节点中的一个标识符,标识在由该节点使用的若干链路中的一个路径。在示出的实例中,该端口ID被用作一个标记。该开始节点的上游节点ID以及该终端节点的下游节点ID是客户ID。在每一路径输入项的恢复类型字段中指示了四个恢复类型(1+1、1∶1、共享、附加业务)之一。在初始设置之时,没有标记(端口号码)被指定到或者共享或者1∶1恢复类型的保护路径。
在本说明书中,一个链路的非预留带宽(URBW)被定义如下URBW=MXBW-ABW-RBW(1)其中,MXBW=该链路的最大带宽,ABW=指定带宽,RBW=预留带宽。
由于一个链路的未指定带宽(UABW)由下式给出
UABW=MXBW-ABW(2)一个链路的URBW被重新写如下URBW=UABW-RBW(3)本发明的特征在于,一个链路的URBW值与共享风险链路群相关。因此该SRLG相关的一个链路的非预留带宽被定义为URBW(i),其中i表示该相关的SRLG。一个链路的非预留带宽URBW(i)因此假设多个带宽值,号码上对应于相关的共享风险链路群的号码。
例如考虑该容纳该保护路径312的链路AD。由于工作路径302是在分别属于共享风险链路群G1和G6的AB和BF之上建立的,所以通过两种带宽值,即URBW(G1)和URBW(G6),给出链路AD的URBW(i)。
图5示出节点A的链路表。该链路表被分成多个输入项,对应于出自节点A的全部单向链路,即分别由一个链路ID标识的链路AB、AC和AD。用于每一个单向链路的输入项被细分为用于指示其属性的字段,包括相邻节点ID、链路的最大带宽(MXBW)、链路所属于的SRLG ID、SRLG相关的非预留带宽(URBW(i))、链路的未指定带宽(UABM)、指定共享恢复类型保护带宽(ASPBW)和附加业务带宽(ET/BW)。
如稍后将描述的那样,如果一个请求的路径是一个共享类型保护路径,并且通过其建立相应的工作路径的链路属于某些共享风险链路群,这些链路群被列在SRL群的一个清单中,并且附加到将被发送用于建立该请求的路径的一个预留请求信息。对于一个给出的共享类型保护路径,通过从最初设置的该链路最大带宽减去其对应工作路径的带宽而计算用于一个列表SRL群的URBW(i)值。因此,由于其对应工作路径302的链路AB和BF属于这些SRL群,所以针对保护路径312,计算用于SRL群G1和G6的URBW(i)。在例如其中建立了共享保护路径312的AD链路的URBW(i)字段中,初始设定的链路(STS-768)的最大带宽对于除了该共享类型保护路径的SRLG列表中列出之外的SRL群保持不变,并且被保持为Max(URBW(i)),作为用于建立可能的保护路径的一个最大可用带宽。
如果一个请求的路径是1+1或1∶1类型的工作路径或保护路径,则该请求的路径与该网络的所有的共享风险链路群相关。在此情况中,通过从该链路的初始设定最大带宽减去该请求的路径的带宽而计算用于该网络的所有的SRL群的URBW(i)值。因此,对于工作路径302来说,通过从最初STS-768最大值减去其带宽STS-192而计算用于该网络的全部SRL群的URBW(i)值,因此给出URBW(i)值,其中i=G1、G2、...G7,全部等于STS-576。此值被作为用于可能保护的路径的一个最大可用带宽(即Max(URBW(i))设置在该链路AB的URBW(i)字段中。由于不在链路AC上建立路径,所以STS-768的初始设定值被保持在此链路的URBW(i)字段中。
如果URBW(i)值小于其Max(URBW(i)),则这些URBW(i)值被设置在分别对于该相关的SRL组的该链路表的URBW(i)字段中。如果产生用于不同SRL群的若干最大URBW值,则它们在Max(URBW(i))之下束在一起并且设置在该链路表的URBW(i)字段中。有益地,这一将节省存储器空间。
本说明书中进一步定义的是Min(URBW(i)),是能被用于任何路径的一个链接的非预留带宽的净值,并且被给定如下Min(URBW(i))=一个链路的最大带宽-除了附加业务的带宽之外的全部保留带宽(ET/BW)(4)而且,用于附加业务的一个链路的一个未指定带宽(ET/UABW)定义如下ET/UABW=UABW-Min(URBW(i))-ET/BW(5)方程式(5)指示用于附加业务的一个链接的未指定带宽大于通过该链路建立的一个路径的带宽。响应该链路状态通知信息,每一个下游节点通过使用链路执行一个路由计算,在每一个链路上,以该链路状态通知信息指示的该未指定的带宽大于建立在每一个链路上的一个工作路径的带宽。
每一个节点的节点控制器21使用例如OSPF-TE(Open ShortestPath First Traffic Engineering Extension)的路由协议,通过控制信道1111-113和121-123把链路状态通知(LSA)信息广播到该网络。该广播信息包括开始和终端节点的节点标识符、计量(即跳跃的数目,此实例中设置为1)、SRLG ID、Min(URBW(i))、ET未指定带宽(ET/UABW)和未指定带宽(UABW)。
在每一节点中使用通知的LSA信息,以便在该存储器21b中创建类似于上述路径和链路表的一个拓扑结构数据库。在以一个路径预留过程进行处理之前,一个路径的开始节点的该节点控制器21执行一个路径初始化处理,以便通过使用例如CSPF(Constrained Shortest PathFirst)的一个路由计算算法将计算到该路径的终端节点的路径。在此处理中,不能被用于建立一个路径的链路在该拓扑结构数据库中被标识为″不能用″,以便不把它们带入该路由计算中。
由于通过LSA信息通知的附加业务(ET/UABW)的未指定带宽大于通过该链路建立的一个路径的带宽,所以没有该计算的用于附加业务的路由不经过其中没有建立1∶1或共用类型保护路径的链路的可能性,也没有通过其中已经指定了用于这种保护路径的全部带宽的链路的可能性。
图6示出由节点控制器21执行的针对每一请求路径的一个路由计算算法。如果一个路径的故障恢复类型在该拓扑结构数据库中被指示为″附加业务″(步骤S1),流程进到步骤S2,把包括该请求路径的一个链路的ET/UABW(附加业务的未指定带宽)与该路径的带宽比较。如果一个链路的ET/UABW小于该路径带宽,则从该拓扑结构数据库中删除该链路。结果是,其ET/UABW等于或大于该路径带宽的链路保持在该数据库中。
如果该请求路径的故障恢复类型是除附加业务以外的业务,则流程从步骤S1到S3,把该数据库的全部链路的Min(URBW(i))与该请求路径的带宽比较。如果一个链路的Min(URBW(i))小于该路径带宽,则从该拓扑结构数据库中删除该链路。以此方式,其Min(URBW(i))等于或大于该路径带宽的那些链路保持在该数据库中。
在步骤S4,节点控制器21确定该请求路径是否为一个保护路径。如果该请求的路径是一个工作路径,则流程进到步骤S6。如果该请求的路径是一个保护路径,则流程进到步骤S5,删除全部属于一个工作路径的SRLG(共享风险链路群)的数据库的链路,该工作路径与该请求的保护路径形式一对路径。利用这种删除,限制选择的链接,使得该保护路径形成不与其工作路径相联的一个SRL组。
在步骤S6,通过使用该拓扑结构数据库的全部可用的链接,开始节点的节点控制器21根据路由计算算法,例如公知的狄杰克斯特拉算法(Dijkstra algorithm),计算至路径终端节点的一个最短路径。此路径计算产生包括该请求路径的一个连接链路组。
按照一个路径计算处理,节点控制器21开始一个信号处理,用于在该计算的路径上发送一个信令信息,以便请求一个路径的建立。如果没有满足一个预定的阈值设置,则该请求可能被拒绝。
如果工作和保护路径都被请求,则分别针对每一个路径执行信号处理。例如RSVP-TE(Resource Reservation Protocol TrafficEngineering Extension)或CR-LDP(Constraint-based Routing LabelDistribution Protocol)的通信协议能被用于信令。在下面描述中,使用的是RSVP-TE通信协议。
为了建立一个路径,该开始节点在该计算的路径上发送一个预留请求信息到该路径的终端节点。该预留请求信息包含路径的带宽和识别符,包括其通道ID、路径ID、故障恢复类型、和一个路径类型指示,用于指示该路径是否为一个工作路径或一个保护路径。在一个保护路径的情况下,该预留请求信息进一步包含该保护路径与之配对的一个工作路径的SRLG列表。该SRLG列表是该配对工作路径的链路所属的共享风险链路群的一组ID。
下面是当从开始节点向终止节点发送一个预留请求信息时,该开始节点、中间节点和终止节点的节点控制器21的操作描述。
根据本发明的第一实施例,该开始节点的节点控制器通过使用该路由信息而根据图7A和7B的流程图进行操作,该路由信息是通过图8的程序和图3、5和6的表的路由计算制备而获得的。
在开始该程序之前,通过把一个下游链路的带宽的最大值(STS-768)设置到此链路的最大带宽字段和URBW(i)字段、并且分别把STS-768的值、0和0设置到UABW、ASPBW和ET/BW字段作为初始值(图5),该节点控制器初始化该链路表。
在步骤S11(图7A),节点控制器进行该链路表的搜索,查找在一个请求路径上的第一出现而链路ID。从开始节点沿着请求路径的方向看,此方法检测的链路是下游链路。该节点控制器在该链路表中检测一个下游链路,该链路表定位在由图8的程序计算的路由信息的上部。该开始节点检查以便得知该请求路径的故障恢复类型是否为附加业务,即一个将设置在共享或1∶1类型保护路径上的ET路径。
如果是此情况,则流程进到步骤S22(图7B),通过把该请求路径的带宽(P/BW)相加到该检测的下游链路的ET/BW、并且把该取和设置在该检测的下游链路的ET/BW字段中而更新该表。因此,在链路AD(图5)的输入项的FT/BW字段中,STS-192的路径带宽被相加到为零的该初始设定值,使得此字段被更新为STS-192。
在判定步骤S23,该节点控制器检验该更新的ET/BW值是否等于或大于在UABW(无条件带宽)和对于该网络的所有的SRL群(i)、即所有的SRL群的非预留带宽的最小值Min(URBW(i))之间的一个差值。如果ET/BW小于该差值,则不能建立该请求路径并且流程进到步骤S24,以便把该端口表、路径表和链路表恢复为原始值,并且通过产生指示该预留已经失败的一个处理结束码而拒绝该预留请求(步骤S25),并且流程进到该程序的结束。是否该更新的ET/BW等于或大于该差值,则能够建立该请求的路径并且流程从步骤S23进到步骤S18。
如果该请求的路径的恢复类型是除附加业务以外的恢复类型,则流程从步骤S11进入步骤S12,确定该请求的路径是否为一个工作路径或″1+1″恢复类型的保护路径。如果是此情况,流程进到步骤S13,通过从该下游链路的UABW值减去该路径带宽而计算一个差值,并且通过把该计算的差值设置到该下游链路的UABW字段而更新该链路表。因此,从初始设定在链路AB的输入项的UABW字段中的STS-768的该链路最大值减去工作路径302的STS-192的带宽,并且以一个被减的STS-576的值更新,作为用于可能保护路径的可用最大带宽(图5)。
注意,因为在该单向链路AC上没有建立工作路径和保护路径,该AC链路输入项的URBW(i)字段保持与该链路的初始设定最大带宽(=STS-768)相同的值。
是否该请求的路径是1∶1或共享类型的保护路径,则流程从步骤S12进入判定步骤S14,以便确定该恢复类型是否为″1∶1″。如果是此情况,则流程进到步骤S15。
在步骤S15,节点控制器通过从用于该网络的所有的SRL群(i)的URBW(i)减去路径带宽而计算差值,并且利用该计算的差值来设置该下游链路的URBW(i)字段而更新该表,并且流程进到判定步骤S17。因此,以步骤S15,请求路径(工作路径或1+1或1∶1类型的保护路径)与该网络的全部共享风险链路群相关,并且通过从该链路初始设定最大带宽减去该请求路径的带宽过计算用于该网络的全部SRL群的URBW(i)值。因此,对于工作路径302来说,通过从最初STS-768最大值减去其带宽STS-192而计算用于该网络的全部SRL群的URBW(i)值,因此给出URBW(i)值,其中i=G1、G2、...G7,全部等于STS-576。这些值被束在一起并且作为Max(URBW(i))设置在链路AB的URBW(i)字段中。
如果该请求的路径是″共享″恢复类型的保护路径,则流程从步骤S14进入步骤S16,通过从该链路的初始最大带宽减去路径带宽(P/BW)而计算一组差值,以便获取用于该SRLG列表的所有″i″的URBW(i)值,并且通过以该计算的差值设置该下游链路的URBW(i)字段而更新该链路表。更具体地说,如果该请求的路径是一个保护路径312,则针对SRL群G1和G6而计算URBW(i)值。在该链路AD输入项的URBW(i)字段中,该初始STS-768值针对该网络的其它SRL群作为Max(URBW(i))保持不变。
在判定步骤S17,该节点控制器查看对全部SRL群(i)来说,该URBW(i)是否等于或大于零。如果该URBW值至少之一小于零,则流程进到步骤S24,拒绝该预留请求。否则,流程进到步骤S18。
在步骤S18,节点控制器21通过确定一个通道ID和一个路径ID而预留一个路径。如果该请求的路径是一个工作路径,则一个新的通道ID和新的路径ID被指定到该路径。在一个保护路径的情况下,指定对应工作路径的通道ID和一个新的路径ID。
在步骤S19,节点控制器设置该通道ID、路径ID以及该请求路径的带宽。另外,该节点控制器21搜索该下游链路的相邻节点的链路表的相邻节点ID字段,并且把该检测的相邻节点ID设置在该路径表的下游节点ID字段中。
在步骤S20,该节点控制器把路由选择信息的全部链路ID前移一位,使得路由选择信息顶部的链路ID是去除,并且该第二个链路ID被放置于该下游链路ID列表的顶部位置。
在步骤S21,该节点控制器21制订用于请求一个路径的预留的一个预留请求信息,具有通道ID、路径ID、路径带宽、路径的故障恢复类型以及关于该路径是工作路径或保护路径的一个指示,以及其中表示了该请求路径的下游链路的路由选择信息。另外,该节点控制器21向下游发送该信息并且终止该程序在此情况中,该节点控制器产生一个处理结束码,指示在该开始节点的预留请求程序的成功。
随后执行图7A、7B的程序,图8A和8B所示的程序由一个中间节点响应来自上游节点的一个预留请求信息而执行。图8A、8B的程序与图7A、7B的程序的不同之处在于其不执行路径预留步骤,该路径预留步骤由开始节点在步骤S18执行。
当该中间节点从一个上游节点接收一个预留请求信息时,该中间节点识别已经从其接收了该信息的节点作为形成请求路径的一个链路的上游节点,并且查验该接收的信息,并且进行对应于步骤S11到S17的步骤S31到S37(图8A),以及对应于步骤S22和S23(图7B)的步骤S41和S42(图8B)。中间节点的节点控制器21进行从判定步骤S37到步骤S38的处理,以便复制把该通道ID、路径ID和请求路径的带宽从该接收的预留请求信息复制到该路径表,并且在该路径表中设置该上游和下游节点标识符。对应于图7A的步骤S20和S21,以与在开始节点中执行的同样方式执行步骤S39和S40,使得该预留的请求信息被进一步下游发送。如果步骤S37或S42的判定是否定的,则以与在开始节点中执行步骤S24、S25的同样方式执行步骤S43和S44,以便拒绝该预留请求。
当该请求的路径的终端节点接收一个预留请求信息时,该终端节点的节点控制器21以与中间节点已经识别的同样方式检测一个上游节点的ID,并且把该通道ID、路径ID和路径带宽从该预留请求信息复制到其路径表,并且把该识别的上游节点ID设置在该路径表中(图9的步骤S51)。象在中间节点那样,在该终端节点中不执行路径预留处理。
执行步骤S51后,终端节点开始执行图10A和10B所示的程序,以便制订预留响应信息并且发送到从其已经接收了该预留请求信息的上游节点。当请求一个工作路径时,制订一个预留响应信息的处理实质上是一个连接建立处理,并且如果请求一个工作路径或一个1+1恢复类型保护路径,则该制订一个预留响应信息的处理实质上是用于指定一个标记的标记指定处理。该预留响应信息包括一个通道ID、一个路径ID、一个标记和一个故障恢复标志。注意,该通道ID以及路径ID是与该预留请求信息中包含的通道ID以及路径ID相同的值。
图10A中,终端节点的节点控制器12检验该工作/保护指示以及该已收预留请求信息的故障恢复类型字段(步骤S60)。如果该请求的路径是一个保护路径并且其故障恢复类型是″1∶1″或共享,则流程进到步骤S71(图10B),通过把该信息的标记指定标志字段设置为″0″、故障报警标志字段设置为″0″而制订一个预留响应信息,并且复制与包含在已收预留请求信息中包含的同样的通道和路径ID。随后将上游发送该信息并且产生处理结束码,用于指示该程序已经运行成功(步骤S75)。
如果在步骤S60的判定是否定的,则流程进到步骤S61,以便确定该请求的路径是否为一个保护路径以及其恢复类型″是否为″1+1″。如果是此情况,则流程进到步骤S62,以便指定与指定到该对应工作路径相同的下游标记。通过把该下游标记设置到该路径表的下游标记字段,并且流程进到步骤S67。
如果该请求的路径是一个工作路径,则在步骤S61的判定是否定的,并且流程进到步骤S63,以便对端口表进行搜索,以查找其相邻节点ID是″客户″而其状态字段被设置″空闲″的一个输出端口。如果没有检测到这样一个输出端口,则在步骤S64的判定是否定的并且流程进到步骤S76,以便把该端口表、路径表和链路表恢复为原始状态,并且产生一个处理结束码,指示该程序已经导致一个失败(步骤S77)并且终止该运行。
如果检测到这样一个输出端口,则在步骤S64的判定是肯定的,并且流程进到步骤S65,以便通把一个″占线″指示、路径ID和故障恢复类型设置到该端口表的被检测输出端口的对应字段而更新该端口表。在步骤S66,终端节点的节点控制器通过把该检测的输出端口的端口ID设置到由该请求路径的路径ID标识的输入项的下游标记字段而更新其路径表。
在步骤S67,该节点控制器从该路径表读出该请求路径的一个上游节点ID,并且使用该ID作为一个关键字,搜索该端口表以查找其相邻节点ID字段包括同样的上游端口ID并且其状态字段包含一个″空闲″指示的一个输入端口。
如果检测到这样一个输入端口,则在步骤S68的判定是肯定并且流程进到步骤S69。否则,流程进到步骤S76(图10B)以便拒绝该预留请求。
在步骤S69,该节点控制器通过把该检测的输入端口的状态字段改变为″占线″以及把该路径ID和故障恢复类型设置为该端口表的检测的输入端口的输入项而更新该端口表。
在步骤S70,该节点控制器通过把该检测的输入端口ID设置到该信息的标记字段、″1″设置到该信息的标记指定标志字段、″0″设置到该故障报警标志字段,并且通过把与包含在该预留请求信息中的相同的通道和路径ID复制到该预留响应信息,而制订一个预留响应信息。流程从步骤S70进入步骤S72(图12B),通过把该检测的输入端口的端口ID设置到请求的路径输入项的上游标记字段而更新该路径表。在判定步骤S73,该节点控制器确定该请求的路径是否为一个保护路径以及其故障恢复类型是否为″1+1″。如果是此情况,则流程进到步骤S75,以便向上游发送该预留响应信息。如果该请求的路径是一个工作路径,则流程从步骤S73进入步骤S74,设置该转换开关,以便分别地建立在由该上游和下游标记指定的端口之间的一个连接,随后在步骤S75发送该预留响应信息。
在图11A中,一个中间节点的节点控制器12从该终端节点接收该预留响应信息,以及检验的响应信息的标记指定标志(步骤S81)。如果该请求路径是一个保护路径并且其故障恢复类型是″1∶1″或共享类型,则该标志是″0″,指示还没有指定标记并且流程进到步骤S90(图13B),以便向上游转发该接收的信息,并且产生处理结束码,指示该程序已经成功运行(步骤S94)。如果该标记指定标志是″1″,则在步骤S81的判定是肯定的,并且流程进到步骤S82,以便对该端口表作一个搜索以便查找其相邻节点ID是一个下游节点并且其远程端口ID字段是一个″标记″的一个输出端口。如果没有检测到这样一个输出端口,则在步骤S83的判定是否定的,并且流程进到步骤S95,以便把该端口表、路径表和链路表恢复为原始状态,并且产生一个处理结束码,指示该程序已经导致一个失败(步骤S96),并且终止该程序运行。
如果检测到这样一个输出端口,则在步骤S83的判定是肯定的,并且流程进到步骤S84,以便通把一个″占线″指示、路径ID和故障恢复类型设置到该端口表的被检测输出端口的对应字段而更新该端口表。在步骤S85,中间节点的节点控制器通过把该检测的输出端口的端口ID设置到由该请求路径的路径ID标识的输入项的下游标记字段而更新其路径表。
在步骤S86,该节点控制器从该路径表读出该请求路径的一个上游节点ID,并且使用该ID作为一个关键字,搜索该端口表以查找其相邻节点ID字段包括同样的上游端口ID并且其状态字段包含一个″空闲″指示的一个输入端口。
如果检测到这样一个输入端口,则在步骤S87的判定是肯定并且流程进到步骤S88。否则,流程进到步骤S95(图13B),以便拒绝该预留请求。
在步骤S88,该节点控制器通过把该检测的输入端口的状态字段改变为″占线″以及把该路径ID和故障恢复类型设置为该端口表的检测的输入端口的输入项而更新该端口表。在步骤S89,该节点控制器通过把该检测的输入端口ID设置到该信息的标记字段、″1″设置到该信息的标记指定标志字段、″0″设置到该故障报警标志字段,并且通过把与包含在该预留请求信息中的相同的通道和路径ID以及标记指定标志复制到该预留响应信息,而制订一个预留响应信息。流程从步骤S89进入步骤S91(图11B),以便通过把该检测的输入端口的端口ID设置到请求的路径输入项的上游标记字段而更新该路径表。在判定步骤S92,该节点控制器确定该请求的路径是否为一个保护路径以及其故障恢复类型是否为″1+1″。如果是此情况,则流程进到步骤S94,以便向上游发送该预留响应信息。如果该请求的路径是一个工作路径,则流程从步骤S92进入步骤S93,设置该转换开关,以便分别地建立在由该上游和下游标记指定的端口之间的一个连接,随后在步骤S94发送该预留响应信息。
在图12A中,一个开始节点的节点控制器12从该中间节点接收该预留响应信息,以及检验的响应信息的标记指定标志(步骤S101)。如果该请求的路径是一个保护路径并且其故障恢复类型是″1∶1″或共享,则该标志是″0″,表示还没有指定标记。在此情况中,流程进到步骤S113(图12B),产生一个处理结束码,指示该程序已经成功运行。
如果该标记指定标志是″1″,则在步骤S101的判定是肯定的,并且流程进到步骤S102,以便对该端口表作一个搜索,以便查找其相邻节点ID是一个下游节点并且其远程端口ID字段是一个″标记″的一个输出端口。如果没有检测到这样一个输出端口,则在步骤S103的判定是否定的,并且流程进到步骤S76,以便把该端口表、路径表和链路表恢复为原始状态,并且产生一个处理结束码,指示该程序已经导致一个失败(步骤S115)并且终止该程序运行。
如果在步骤S103检测到这样一个输出端口,则流程进到步骤S104,以便通把一个″占线″指示、该路径ID和故障恢复类型设置到该端口表的被检测输出端口的对应字段而更新该端口表。在步骤S105,开始节点的节点控制器通过把该检测的输出端口的端口ID设置到由该请求路径的路径ID标识的输入项的下游标记字段而更新其路径表。
在判定步骤S105,该节点控制器进行检验,以便确定该请求的路径是否为一个其故障恢复类型是″1+1″的保护路径。如果是,流程进到步骤S107,以便通过以与该保护路径形成一对的一个工作路径的上游标记设置该请求的路径输入项的上游标记字段而更新该路径表。流程进到步骤S112,以便在该转换开关中建立在由该上游和下游标记指定的输入和输出端口之间的连接。在步骤S113,产生一个过程结束码,表明一个路径的成功建立。
如果该请求的路径是一个工作路径,则在步骤106的判定是否定的,并且流程进到步骤S108,以便对端口表进行搜索,以查找其相邻节点ID字段包含一个客户ID并且其状态字段包含一个空闲指示的一个输入端口。如果该搜索失败,则在步骤S109的判定是否定的,并且流程进到步骤S114,以便把该端口表、路径表和链路表恢复到该原始状态,并且产生一个过程结束码,以便指示该路径建立已经失败。
如果该搜索成功,则在步骤S109的判定是肯定的,并且流程进到步骤S110,通过把一个占线状态指示、路径ID和该路径的故障恢复设置到该检测的输入端口的输入项而更新该端口表。在步骤S111,该开始节点的节点控制器由把该检测的输入端口的端口ID设置到该请求路径的上游标记字段而更新该路径表,并且进入到步骤S112,以便在转换开关中设置一个连接。
在上面的描述中,成功或失败指示的处理结束码可以发送到网路控制器1,用于网络资源管理的目的。随着一个路径的建立,通过使用链接状态通知(LSA)信息,相关链路的更新属性被通知到网络。
如果在一个工作路径中出现故障,则告警该路径的终端节点并且开始一个故障恢复处理。
在该故障恢复处理期间,终端节点的节点控制器21的操作以图13A的步骤S121开始,判定该有故障的工作路径是否为″1+1″的恢复类型。如果是此情况,则流程进到步骤S135(图13B),释放在由路径表的该有故障工作路径的输入项规定的转换开关20的端口之间的连接,并且建立在由与该故障工作路径相同的通道ID指示的一个保护路径的输入项规定的端口之间的连接。如果该有故障的工作路径的恢复类型是″1∶1″,则流程通过步骤5122和S123进到步骤S126,以便指定与该有故障工作路径的相同的下游标记。在步骤S127,该节点控制器从该路径表读出该请求路径的一个上游节点ID,并且使用该ID作为一个关键字,搜索该端口表以查找其相邻节点ID字段包括同样的上游端口ID并且其状态字段包含一个″空闲″指示的一个输入端口。如果检测到这样一个输入端口,则在步骤S128的判定是肯定的,并且流程进到步骤S69。否则,流程进到步骤S131(图13B),进一步搜索该端口表,查找其故障恢复类型是″附加业务″的一个输入端口。如果没有检测到这样一个输入端口,则流程进到步骤S137,恢复全部该更新的表并且产生一个失败指示处理结束码(步骤S138)。
如果在步骤S132的判定是肯定的,则流程进到步骤S133,通过把该检测的输入端口的状态字段改变为″空闲″以及把该故障恢复类型字段改变为空白而更新该端口表。以此方式,释放指定到一个ET带宽的标记,并且流程进到步骤S127(图13A),以便执行一个标记寻找搜索。由于该释放的标记是可用标记,所以该节点控制器检测一个输入端口并且开始从步骤S128到步骤S129,通过把该检测的输入端口的状态字段改变为″占线″以及把该路径ID和故障恢复类型设置到该端口表的检测输入端口的输入项而更新该端口表。
在步骤S130,该节点控制器通过把该检测的输入端口ID设置到该信息的标记字段、″1″设置到该信息的标记指定标志字段、″1″设置到该故障报警标志字段,并且把其它路由选择信息设置为该预留响应信息在包含的信息,而制订一个故障恢复信息。随后把该故障恢复信息发送到该中间节点。
流程从步骤S130进入步骤S134(图13B),以便通过把该检测的输入端口的端口ID设置到保护路径输入项的上游标记字段而更新该路径表。该终端节点的节点控制器21在该转换开关中建立在由该更新路径表的上游和下游标记规定的端口之间的一个连接(步骤S135),并且产生一个处理结束码(步骤S136)。
如果该保护路径的恢复类型是″共享″,则流程从步骤S122进入步骤S124,以便通过计算该指定该相关链路的路径保护带宽(ASPBW)和这保护的路径(P/BW)的带宽的取和以及把该取和设置到该相关链路输入项的ASPBW字段(图5)而更新该链路表。在判定步骤S125,该节点控制器检验该更新的ASPBW值,查看其是否等于或小于Max(URBW(i))-Min(URBW(i)),其中Max(URBW(i))表示该网络所有的SRL群URBW(i)的最大值。如果该判定是否定的,则流程进到步骤S137,以便恢复该表。否则,流程进到步骤S126,以便以与上述结合1∶1恢复类型描述的同样方式来执行标记指定、信息发送和连接建立处理。
当中间节点的节点控制器21从该终端节点接收该故障恢复信息时,其在图14A的步骤S141进行对该端口表的一个搜索,以便检测其相邻节点ID字段包括一个下游节点ID以及其远端节点ID字段包含一个标记的一个输出端口。
如果检测到这样一个输出端口(步骤S142),则流程进到步骤S143,以便通过在该状态字段中设置占线指示并且把该保护路径的故障恢复类型设置到该故障恢复字段而更新该端口表的检测端口输入项。否则,在步骤S157和S158执行表恢复和失败指示处理(图14B)。
流程从步骤S143进入步骤S144,以便更新该路径表,使得该检测的输出端口ID被设置到该保护路径输入项的下游标号字段。
在判定步骤S145,该该中间节点的节点控制器确定该保护路径的恢复类型是否为″共享″。如果是,则进入步骤S146,以便与图13A的步骤S1 24执行作为该终端节点的同样方式,通过计算该指定该相关链路的路径保护带宽(ASPBW)和这保护的路径(P/BW)的带宽的取和以及把该取和设置到该相关链路输入项的ASPBW字段而更新该链路表。在其重要性对应步骤S125的判定步骤S147,该节点控制器检验该更新的ASPBW值,查看其是否等于或小于Max(URBW(i))-Min(URBW(i))。是否该判定是否定的,则在步骤S157和S158执行表恢复和失败指示处理。如果在步骤S147的判定是肯定的,则流程进到步骤S148,从该路径表读出该请求保护的上游节点ID并且对该端口表进行搜索,以便查找其相邻节点ID字段包含相同的上游端口ID并且其状态字段包含空闲指示的一个输入端口。如果检测到这样一个输入端口(图14B的步骤S149),流程进到步骤S150,通过把检测的输入端口ID设置到该信息的标记字段、″1″设置在该标记指定标志字段、以及″1″设置在该故障报警字段而重新制定一个故障恢复信息。
在步骤S151,通过把该请求保护路径的上游标记字段改变到该检测的输入端口ID而更新该路径表。在该转换开关中建立由该请求的路径的输入项的上游和下游标记标识的端口之间的连接(步骤S152),并且该故障恢复信息被发送到该开始节点,以及产生一个处理结束码(步骤S153)。
如果没有检测到输入端口(步骤S149),流程进到步骤S154,搜索该端口表以便查找其故障恢复类型是″附加业务″的一个输入端口。如果检测到这样一个输出端口(步骤S155),则流程进到步骤S156,以便通过在该检测输入端口输入项的状态字段中设置一个空闲指示、并且把该请求路径的故障恢复类型设置到该故障恢复类型字段而更新该端口表。流程从步骤S156进入步骤S148,进一步搜索该端口表,以便查找将在该空出的输入端口输入项中找到的一个输入端口。
如果该保护路径的恢复类型是除″共享″以外的类型,则在步骤S145的判定是否定的,并且流程跳过步骤S145和S146,进行该端口表的搜索以便查找一个可用的输入端口(步骤S148)。
在该开始节点中,该节点控制器21通过图15的步骤S161对该端口表的搜索来响应来自中间节点的故障恢复信息。类似于中间节点的步骤S141,该节点控制器寻求其相邻节点ID字段包含一个下游节点ID以及其远端节点ID字段包括一个标记的输出端口。如果检测到这样一个输出端口(步骤S162),则通过在该状态字段中设置占线指示而更新该端口表的检测端口输入项并且把该保护路径的故障恢复类型设置到该故障恢复字段(步骤S163)。否则,在步骤S167和S168执行表恢复和失败指示处理。
在步骤5164,更新该路径表,以使该有故障的工作路径的上游标记被设置到该保护路径输入项的下游标记字段。在该转换开关中建立该路径表中由该保护路径的输入项的上游和下游标记指定的端口之间的一个连接(步骤S165),并且产生一个处理结束码(S166)。
本发明第一实施例被总结如下当一个工作路径有故障时,如果此路径的恢复是″1+1″、″1∶1″或″共享″类型,则通过把业务切换到一个对应的保护路径而从故障中恢复该网络。如果是无保护的或附加业务类型,则在工作路径上不执行恢复过程。因此,能够利用不同优先权的恢复规则,把通信信道的不同恢复等级(1+1、1∶1、共享、无保护、附加业务)容纳在单一网络中。
虽然″1+1″保护路径被指定一个标记并且因此使之与其对应工作路径并行地建立,但是它们并不从故障中恢复。因此,在一个工作路径上的业务能够同时地在工作和保护路径的范围内从故障中恢复。没有标记被指定到1∶1或共用类型的保护路径。当执行一个故障恢复处理以便通过该网络创建连接时,这些保护路径被指定一个标记。
该1∶1或共享类型的保护路径能够被彼此区别,以便通过不同的预留带宽量按照下面给出的关系分别地管理针对一个1∶1类型保护路径预留的带宽=UABW(未指定带宽)-Max(URBW(i))针对一个共享类型保护路径预留的带宽=Max(URBW(i))-Min(URBW(i))倘若当一个以上的工作路径同时有故障时(除了恢复类型是1+1的一个工作路径之外)该1∶1类型保护路径的建立比该共享类型保护路径的建立具有更高的优先级,因为该标记指定原则使得在一个保护路径的每一链路上指定一个标记,只要ASPBW(指定共享保护带宽)等于或小于在Max(URBW(i))和Min(URBW(i))之间的差值,即预留给一个共享类型保护路径的带宽。
本发明的通信网络能够被修改,以使前面实施例的全部节点的该端口表、路径表和链路表被集中在一个网路控制器中,并且创建在该网路控制器1的存储器12中。作为这种集中的结果,没有路由协议被用于广播链路状态通知信息。网路控制器1集成该网络的全部链路信息,并且构成集成链路信息,以便在该存储器12中创建一个拓扑结构数据库。响应来自一个开始节点的路径设置请求,该网路控制器1以同样方式与前面所述实施例同样方式把路由计算提供到到终端节点,然后以如上所述的同样方式,通过使用其端口、路径和链路表操作一个虚拟信令协议,在节点A到F的每一个上执行一个初始设置过程。根据全部节点的路径表中设置的上游和下游标记,该网路控制器把控制信息发送到全部节点,以便通过全部节点的转换开关建立连接。当在一个工作路径上检测到一个故障时,该路径的终端节点把此故障的事实通知该网路控制器。网路控制器1根据本虚拟信令协议操作,使用全部节点的端口、路径和链路表来重新建立连接。
图16示出根据本发明第二实施例的一个通信网络,而节点A的详细的说明在图17中示出。本实施例被用于避免由于分段时间-时隙引起的不成功的故障恢复。此网络中,不是波长路径,而是建立图16以示出的TDM路径,其结构与图1的结构完全相同。在该示出的实例中,工作和保护TDM路径301、311具有STS-1的带宽,而工作和保护TDM路径302、312具有STS-3的带宽。该附加业务路径303具有STS-1的带宽,其占据该共享类型保护路径312的STS-3带宽的一部分。
图17中,节点A的转换开关20具有用于从相邻节点接收TDM信号的输入端口a0、b0、c0,以及用于发送TDM信号到相邻节点的输出端口a1、b1、c1。输入和输出端口m0和m1被连接到一个客户终端。
在图18A中示出节点A的一个端口表,用于把该节点的端口识别符映射到属性,其与图3的端口表的不同在于,还包括一个STS-1号码。显示了从″0″到″11″的十二个STS-1的号码。由于工作路径302的带宽是STS-3,所以三个STS-1信道映射到例如端口ID=m0和端口ID=a1。
节点A的一个路径在图19中示出。此路径表与该第一实施例的路径表不同在于,每一个上游标记和下游标记都由一个端口号码和一个STS-1号码组合。
该节点A的链路表在图20中示出,与第一实施例的链路表的不同在于,还包括一个字段来指示未指定的(TDM)保护路径(UAPP)的计数数目。计数数目UAPP由SRLG ID和一个请求路径的带宽的组合表示。在链路AD(图20)的情况下,例如第一计数数目“1”被定义为(G1+STS-3)的组合,第二计数数目“1”被定义为(G6+STS-3)的组合。这表明如果在共享风险链路群G1或G6的链路上出现故障,那么需要(STS-3)×1的带宽来建立保护路径312。
该路径表和链路表的内容从该端口表获得,并且当一个预留请求程序开始设置一个请求TDM路径时,被按照下述方式更新。如结合前面实施例描述的那样,执行一个初始化处理,以便把初始值设置到该路径和链路表。
在图21A中,在图6的一个路由计算处理之后,按照一个开始节点的节点A的操作以附加初始化步骤S171开始,把″0″设置到链路表的UAPP(未指定保护路径的号码)字段的全部输入项(图20)。在步骤S172,如果该请求的TDM路径的恢复类型是附加业务,则流程进到步骤S186(图21B),通过把该请求的路径(P/BW)的带宽相加到一个下游链路的ET/BW并且把该取和设置在该检测的下游链路的ET/BW字段中而更新该链路表。因此,在链路AD(图20)的输入项的ET/BW字段中,STS-1的路径带宽被相加到为零的初始设定值,使得此字段被更新为STS-1。在判定步骤S187,节点A检查该更新的ET/BW值,查看其是否等于或大于用于该网络的全部SRL群(i)的UABW(未指定带宽)和Min(URBW(i)),即针对全部SRL群的非预留带宽值的最小值,之间的一个差值。如果ET/BW小于该差值,则不能建立该请求路径,并且流程进到步骤S184,以便把该端口表、路径表和链路表恢复为原始值,并且通过产生指示该预留已经失败的一个处理结束码而拒绝该预留请求(步骤S185)。是否该更新的ET/BW等于或大于该差值,则能够建立该请求的路径并且流程从步骤S187进到步骤S181。
如果该请求的路径的恢复类型是除附加业务以外的恢复类型,则流程从步骤S172进入步骤S173,确定该请求的路径是否为一个工作路径或″1+1″恢复类型的保护路径。如果是此情况,流程进到步骤S174,通过从该下游链路的UABW值减去该路径带宽而计算一个差值,并且通过把该计算的差值设置到该下游链路的UABW字段而更新该链路表。而且,针对网络的全部SRL群组,以URBW(i)-P/BW更新URBW(i),并且流程进到步骤S180。
因此,从初始设定在链路AB的输入项的UABW字段中并且以STS-9值更新的STS-12的最大值减去链接AB的路径带宽(=STS-3),如图20所示。
如果请求的路径是1∶1或共享类型的保护路径,则流程从步骤S173进入判定步骤S175,以便确定该恢复类型是否为″1∶1″。如果是此情况,则流程进到步骤S176,计算用于该网络的全部SRL群(i)的URBW(i),并且通过以该计算的URBW值设置该下游链路的URBW(i)字段而更新该链路表。因此,计算的URBW值全部等于STS-9(即=(STS-12)-(STS-3)),并且束在一起,设置在链路表的链路AB输入项的URBW(i)字段中(图20)。
流程进入判定步骤S177,通过把1相加到计数数目的初始设定值0并且把该取和设置到该网络全部SRL群的下游链路的UAPP字段而更新该链路表,并且进入步骤S180。
如果该保护路径的恢复类型是″共享″,则流程从步骤S175进入步骤S178,计算用于该SRLG列表的全部SRL群(i)的URBW(i)值,并且利用该计算的值更新该链路表。如果请求该共享类型保护路径312,该SRLG清单包含群G1和G6。因此,针对SRL群G1和G6的每一个从STS-12的初始设定最大值减去该路径带宽STS-3。结果是,STS-9被设置在用于SRL群G1和G6的每一个的链路AD的URBW(i)字段中,并且用于该网络的其它SRL群的STS-12的初始最大值保持不变。
流程进入判定步骤S179,通过把1相加到初始设定值0并且把该取和设置到该SRLG列表的全部SRL群的下游链路的UAPP字段而更新该链路表。因此,该链路表被更新,以使该下游链路AD的UAPP字段中的未指定保护路径的数量(在此情况中是STS-3)被递增1,用于SRL群G1、G6(图20)。
在步骤S180,节点A检验该链路表的下游链路输入项的URBW字段,并且进行第一测试,确定用于该网络的所有的SRL群的非预留带宽URBW(i)是否等于或大于零,并且通过使用该端口号码、STS-1数目和该路径与端口表的状态字段进行第二测试,查看该标记是否能够指定到该下游链路的全部未指定的保护路径。
如果在步骤S180的第一和第二测试都没有被满足,则确定该和值大于在每一个链路上不能容纳的一个计数数目,并且流程进到步骤S184,把全部表恢复到原始值,并且产生一个故障指示处理结束码(步骤S185)。如果在步骤S180的第一和第二测试均被满足,则确定该和值大于在每一个链路上能容纳的一个计数数目,并且流程进到步骤S181,确定用于该请求路径的通道ID和路径ID。在步骤S182,利用该确定的识别符以及利用该路径的带宽和下游节点的标识符来更新该路径表(图19)。
由图6的路由计算产生的路由信息包括如上所述的链路识别符的连接序列。在步骤S153,包含在该路由信息中的链路标识符被前移一位,使得在该先前第二位置的链路ID被移动到该序列的顶部。利用该请求路径的该链路标识符和存储在该路径表中并且下游发送的数据制订一个预留请求信息。
响应来自节点A的预留请求信息,中间节点根据图22A和22B的流程图操作,图22A和22B的流程图与图21A、21B的流程图几乎相同,除了利用节点标识符更新该开始节点的路径表之外,只是以一个上游节点标识符更新该路径表而免除了该通道ID和路径ID确定步骤。在图22A中,步骤S191到步骤S200对应图21A的步骤S171到S180,并且步骤S201到S204对应步骤S182到S185,并且在图22B中,步骤S205和S206对应于图21B的步骤S186和S187。
权利要求
1.一种用于一个通信网络的路径建立方法,其中该网络包括多个由链路互连的节点,所说的链路形成多个共享风险链路群,该方法包括步骤a)定义分别对应于所说的共享风险链路群的多个非预留带宽,并且把所说的每一个链路的一个最大带宽作为一个初始值设置到每一个定义的非预留带宽;和b)从每一个非预留带宽减去一个请求的路径的带宽,并且如果每一个被相减的非预留带宽都小于一个预定阈值,则拒绝该请求的路径的建立。
2.权利要求1的方法,其中步骤(a)和(b)包括a)当请求一个工作路径时,a1)定义分别对应于所说的网络的全部共享风险链路群的多个非预留带宽,a2)把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,a3)从每一个非预留带宽减去该工作路径的带宽,以及a4)如果该被减的非预留带宽的最小值小于一个预定的阈值,则拒绝该工作路径的建立,b)当请求″1+1″或″1∶1″恢复类型的一个保护路径时,b1)定义分别对应于所说的网络的全部共享风险链路群的多个非预留带宽,b2)把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,b3)从每一个非预留带宽减去该保护路径的带宽,以及b4)如果该被减的非预留带宽的最小值小于所说的预定的阈值,则拒绝该要求的路径的建立,以及c)当请求″共享″恢复类型的一个保护路径时,c1)定义多个非预留带宽分别对应于一个对应工作路径的链路所属于的该共享风险链路群,c2)把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,c3)从每一个非预留带宽减去该保护路径的带宽,以及c4)如果该被减的非预留带宽的最小值小于所说的预定的阈值,则拒绝该要求的路径的建立,
3.权利要求2的方法,进一步包括步骤;从一个开始节点发送一个信令信息,用于指示所说的共享风险群的列表,其中步骤(b)根据包含在该信令信息中的该列表而定义所说的非预留带宽。
4.权利要求2的方法,其中如果该工作路径的故障恢复类型是除该附加业务类型以外类型,则执行步骤(a)。
5.权利要求2或4的方法,其中如果该工作路径的故障恢复是所说的附加业务类型,则步骤(a)进一步包括步骤把该工作路径的带宽相加到该附加业务的带宽以便产生一个和带宽;从所说的每一链路的一个未指定带宽减去该非预留带宽的最小值,以便产生一个差带宽,以及如果所说的和带宽小于所说的差带宽,则拒绝该附加业务的建立。
6.权利要求2的方法,进一步包括步骤当在所说的工作路径上检测到一个故障时,确定在将被指定到与所说的工作路径形成一对的一个保护路径的每一个所说的链路上是否存在足够的带宽,并且如果不存在所说的足够带宽,则确定在所说的每一个链路上是否建立了一个附加业务,删除该附加业务以便增加能够被指定到所说的保护路径的每一个链路的带宽。
7.权利要求3的方法,进一步包括步骤从所说的开始节点广播一个链路状态通知信息,用于指示用于附加业务的一个未指定带宽,所说的未指定带宽等于UABW-Min(URBW(i))-ET/BW,其中,UABW=所说的每一个链路的未指定带宽,Min(URBW(i))=分别对应于全部共享风险链路群的所说的非预留带宽的最小值,以及ET/BW=所说的附加业务的带宽。
8.权利要求7的方法,进一步包括步骤响应所说的链路状态通知信息,通过使用链路执行一个路由计算,在每一个链路上在所说的链路状态通知信息中指示的所说的未指定的带宽大于在每一所说的链路上建立的一个工作路径的带宽。
9.权利要求2的方法,进一步包括步骤定义代表所述共享风险链路群和一个请求带宽的组合的一个计数数目,并且把零作为一个初始值设置到所说的计数数目,其中每一所说的工作和保护路径是一个TDM(分时多路复用)路径,以及其中步骤(b)进一步包括步骤当请求所说的路径时,在该请求的保护路径的每一个链路,把1相加到所说网络的共享风险链路群的每一个的计数数目,以便产生一个和值,以及如果所说的和值大于在每一个链路上能容纳的一个计数数目,则拒绝所说的请求的保护路径的建立,以及其中步骤(c)进一步包括步骤当请求了所说的路径时,把1加到该保护路径的对应链路的链路所属于的所说的共享风险链路群的一个清单的所说的计数数目,以便产生一个和值,以及如果所说的和值大于在对应工作路径的每一个链路上能容纳的一个计数数目,则拒绝该请求的保护路径的建立。
10.权利要求2的方法,进一步包括步骤为每个所述链路定义所述非预留带宽的一个最大值和所述非预留带宽的一个比最大值小的值,并且当在工作路径上出现故障的情况下建立保护路径时采用该定义的值。
11.权利要求10的方法,进一步包括步骤为保护路径的每个路径上的一个保护路径定义一个指定的共享保护带宽,并且把零作为一个初始值设置到该定义的保护带宽;在与所述保护路径形成一对的共享恢复类型工作路径出现故障的情况下,将该保护路径的带宽加到所述保护路径的每个路径的所述指定的共享保护带宽上;以及如果所述相加求和的带宽等于或小于所述非预留带宽的所述最大值与所述非预留带宽的一个最小值之间的差,那么为所述保护路径指定一个被请求的带宽。
12.一个通信网络的一个网络节点,其中该网络节点是多个网络节点之一,其中这些网络节点由具有共享风险链路群的链路互连,该网络节点包括一个存储器,用于定义分别对应于所说的共享风险链路群的多个非预留带宽,并且把所说的每一个链路的一个最大带宽作为一个初始值设置到每一个定义的非预留带宽;以及一个控制器,用于从每一个非预留带宽减去一个请求的路径的带宽,并且如果每一个被相减的非预留带宽都小于一个预定阈值,则拒绝该请求的路径的建立。
13.权利要求12的网络节点,其中,当请求一个工作路径时,该控制器定义分别对应于所说网络的所有的共享风险链路群的多个非预留带宽,把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,从每一个该非预留带宽减去该工作路径的带宽,并且如果该被相减的非预留带宽的一个最小值小于该预定阈值,则拒绝该工作路径的建立,其中当请求″1+1″或″1∶1″恢复类型的一个保护路径时,该控制器定义分别对应于所说的网络的全部共享风险链路群的多个非预留带宽,把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,从每一个非预留带宽减去该保护路径的带宽,并且如果该被减的非预留带宽的一个最小值小于所说的预定阈值,则拒绝该请求的路径的建立;以及其中当请求″共享″恢复类型的一个保护路径时,该控制器定义多个非预留带宽分别对应于一个对应工作路径的链路所属于的该共享风险链路群,把所说的每一个链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽,从每一个非预留带宽减去该保护路径的带宽,并且如果该被减的非预留带宽的一个最小值小于所说的预定阈值,则拒绝该请求的路径的建立。
14.权利要求13的网络节点,其中该控制器从一个开始节点发送一个用于指示所说的共享风险链路群的清单,并且根据该信令信息中包含的该清单定义该非预留带宽。
15.权利要求13的网络节点,其中如果该工作路径的故障恢复类型是附加业务类型,则该控制器把该工作路径的带宽相加到该附加业务的带宽,以便产生一个和带宽,从所说的每一链路的一个未指定带宽减去该非预留带宽的最小值,以便产生一个差带宽,并且如果所说的和带宽小于所说的差带宽,则拒绝该附加业务的建立。
16.权利要求13的网络节点,其中当在该工作路径上检测到一个故障时,该控制器确定在将被指定到与所说的工作路径形成一对的一个保护路径的每一个所说的链路上是否存在足够的带宽,并且如果不存在所说的足够带宽,则确定在所说的每一个链路上是否建立了一个附加业务,并且删除该附加业务以便增加能够被指定到所说的保护路径的每一个链路的带宽。
17.权利要求14的网络节点,其中该控制器从所说的开始节点广播一个链路状态通知信息,用于指示用于附加业务的一个未指定带宽,所说的未指定带宽等于UABW-Min(URBW(i))-ET/BW,其中,UABW=每一个链路的未指定带宽,Min(URBW(i))=分别对应于全部共享风险链路群的该非预留带宽的最小值,以及ET/BW=该附加业务的带宽。
18.权利要求17的网络节点,其中响应一个链路状态通知信息,该控制器通过使用链路执行一个路由计算,在每一链路上以所说链接状态通知信息指示的所说的未指定带宽大于建立在每一个所说链路上的一个工作路径的带宽。
19.权利要求14的网络节点,其中该控制器定义代表所述共享风险链路群和一个请求的带宽的组合的所述存储器中的一个计数数目,并且把零作为一个初始值设置到该计数数目,其中每一所说的工作和保护路径是一个TDM(分时多路复用)路径,并且其中当请求″1+1″或″1∶1″恢复类型的一个保护路径时,该控制器在该请求的保护路径的每一链路把1加到所说网络的共享风险链路群的每一的计数数目,以便产生一个和值,以及如果所说的和值大于在每一个链路上能容纳的一个计数数目,则拒绝该请求的保护路径的建立,并且其中当请求″共享″恢复类型的一个保护路径时该控制器将把1加到该保护路径的对应工作路径的链路所属于的该共享风险链路群的一个清单的计数数目,以便产生一个和值,以及如果所说的和值大于在对应工作路径的每一个链路上能容纳的一个计数数目,则拒绝该请求的保护路径的建立。
20.权利要求13的网络节点,其中该控制器被用来为每个所述链路定义所述非预留带宽的一个最大值和所述非预留带宽的一个比最大值小的值,并且当在工作路径上出现故障的情况下建立保护路径时采用该定义的值。
21.权利要求20的网络节点,其中所述控制器被用来为保护路径的每个路径上的一个保护路径定义一个指定的共享保护带宽;把零作为一个初始值设置到该定义的保护带宽,在与所述保护路径形成一对的共享恢复类型工作路径出现故障的情况下,将该保护路径的带宽加到所述保护路径的每个路径的所述指定的共享保护带宽上;以及如果所述相加求和的带宽等于或小于所述非预留带宽的所述最大值与所述非预留带宽的一个最小值之间的差,那么为所述保护路径指定一个被请求的带宽。
全文摘要
在由具有共同风险的链路形成的多重共享风险链路群的一个通信网络中,对应于全部SRLG定义非预留带宽,并且当请求"1+1"或"1∶1"恢复类型的一个工作路径或一个保护路径时,把每一链路的最大带宽设置为每一个定义的非预留带宽的初始值。当请求"共享"恢复类型的一个保护路径时,对应于相应工作路径的链路所属于的该SRLG而定义非预留带宽,并且把每一链路的最大带宽作为一个初始值设置到每一个定义的非预留带宽。从每一个非预留带宽减去该工作或保护路径的带宽。如果该相减的值的最小值小于一个阈值,则拒绝该请求。
文档编号H04Q11/00GK1437356SQ0310422
公开日2003年8月20日 申请日期2003年2月8日 优先权日2002年2月6日
发明者石桥修, 末村刚彦 申请人:日本电气株式会社