电信网络中的路由方法

文档序号:7741214阅读:228来源:国知局
专利名称:电信网络中的路由方法
技术领域
本发明涉及在电信网络中,特别是在具有SDH或WDM业务的电信网络中快速有效地找到最佳路径(路由)的方法。
电信业务的使用范围越来越广并且组成电信网络的设备的复杂性为具有高效且令人满意的性能的路由算法的设计和实现带来了大量问题。
在网络体系结构中,当代的所有SDH或WDM设备在最短路径计算方面未发挥积极的作用,将与网络相关的所有数据存储在包含整个网络视图的单个数据库中。因此,在此集中式体系结构中,当要应用路由算法来计算最短路径和数据路由时,必须从数据库下载描述网络当前状态的数据。这引起很多问题,特别是在考虑到电信网络的当前规模,尤其是其发展趋势时。实际上,现在的网络由与设备数量成比例的多个链路连接的数千个设备组成,并且现在的增长率预示着很快会达到数万个设备,并在不远的将来继续达到数十万个设备。
很明显在每次需要计算最短路径时恢复如此数量巨大的数据涉及的工作量相当大,因此响应时间太长。对数据库的访问实际上包括一组非常耗时的操作。已经证明,用在访问上的时间比实际用于计算的时间要长得多。同时也要记住,装入数据库中所含所有数据需要大量的内存。此外,对网络成员路由的限制暗示着对可能失败的结果进行事后验证并需要重复搜索算法。建议的一个解决方案是将网络分区以取得需要更少内存(具有较小的图)的优点和实现更快的路由算法。但只进行分区可能只解决部分问题。
本发明的总目的是提供一种方法以消除上述缺陷,该方法使电信网络中的路由选择具有更高的效率并可伸缩从而不会由于无法接受网络中设备和链路的增加而受到影响,并且允许在考虑组成网络的设备的任何连接约束的同时追踪最佳路径。
鉴于此目的,旨在根据本发明提供一种在电信网络中进行路由选择的方法,该方法包括在预处理步骤中将网络图G分区,在分区Pi上创建简化图GR并且在如此转换的图上执行路由选择的步骤,在预处理步骤中构造网络的对偶图,并且通过使用设备特征限制的连接简化图形。
为阐明本发明创新原理及其与先技术相比的优点,下面借助采用所述原理的非限制性示例,参照附图描述了本发明的可行实施例。在图形中

图1显示了网络示例的图形;图2在三个子网A、B和C中显示了图1网络的可能划分;图3显示了为图1中的分区A添加假设节点;图4显示了根据本发明的方法创建的原分区A的简化图;图5显示了动态完成简化图的示例;图6显示了在简化图上找到的最短路径示例;图7显示了转换到原图上的图6的最短路径;图8显示了具有通过同一分区几次的最佳路径的网络示例;图9显示了基于连接约束的示意性的设备细分;图10显示了应用本发明的“智能对偶网络”方法的原网络示例的略图;图11a到11e以图示方式说明将所述方法应用到图10中网络上的连续步骤;图12到14显示了本发明方法步骤的应用示例;图15到17显示了本发明方法步骤的另一扩展应用示例;以及图18-24显示了应用本发明方法的扩展示例。
参照附图,图1显示了一般的网络示例。可以首先对此网络进行划分,以便得到一定数量的更易于管理的分区或子网。约定
1.网络的每个设备属于单个分区。一个分区包含多个设备。这意味着属于一个分区的设备集与属于随机选择的另一分区的设备集的交集是空集。
2.一个分区不包含其它分区。因此对网络进行分区是在单一抽象级别上进行的。
3.网络的原链路分类为-分区间链路;这些链路连接属于两个不同分区的两个设备;分区间链路的特征在于<源代码,源分区>和<目标节点,目标分区>对。
-分区内链路;这些链路连接属于同一分区的两个设备;分区内链路的特征在于三值组<源节点,目标节点,分区>。
4.链路不可同时分类为分区间链路和分区内链路。
5.对所连接的两个分区,每条分区间链路构成业务可流经的端口。实际在端口内流动的业务将具有与<源节点,目标节点>排列相一致的方向。为此,同一链路既起源分区输出端口的作用,又起目标分区输入端口的作用。
为确保对具有N个节点(设备)、M条弧线(链路)和成本函数C(M)的图所表示的网络进行分区,定义分区集P并将属于原图的ni个节点和mi条弧线分配给每个分区Pi,使得这些弧线的每条弧线的尾节点和头节点属于Pi(分区内链路)。具有属于两个不同分区的节点i和j的其它Mk条弧线(i,j)是分区间链路。分区P通过原图的mk条弧线(分区间链路)连接。
应用规则(1)和(2)给出如下等式Σi=1Pni=N,]]>(mk+Σi=1Pmi)=M]]>图1显示了我们应称为原网络的可能网络的示例,而图2说明可以将此网络划分成三个子网A、B和C。当然,由于网络规模增大,分区也会产生与数据库管理有关的规模过大的子网。另一方面,为了避免网络分区过度而导致过多的分区,所以要对网络分区进行约束。
要实现的目的是存储概括网络当前状态的基本数据集合,以避免不得不存储子网或网络的原图的完整副本,并因此避免不得不加载描述网络的所有数据。
因此根据本发明,可从原网络图GR中提取简化图G。
要构造此简化图,可执行以下步骤1.在简化图GR中为原图的每条分区间链路分配节点nf;2.对于每个分区Pi-将端口集分成输入端口集和输出端口集;-在分区级别Pi,将在步骤1中创建的表示分区Pi的端口(分区间链路)的每个假设节点nf与一个假设节点相关联,取决于相关联端口的方向,这个假设节点可为假设输入端口nfi或输出端口nfu-将所述假设节点nfi或nfu与所述原图中连接到所述端口的节点相连;为避免计算相同成本两次,将成本0分配给以节点nfu作为其头节点的弧线;以节点nfi为其尾节点的弧线的成本保持在Cin值。
-计算从每个假设输入节点nfi到每个假设输出节点nfu的最短路径;每条路径的特征在于连接所述<输入端口,输出端口>节点对的原图的弧线集;3.在步骤2中计算的弧线集中,简化图中的弧线mr连接表示两个端口的节点nf。如果两个假设节点之间的路径不存在,因而与所述路径的弧线集是空集,则不要在简化图中插入弧线。
4.下面的数据与简化图的每条弧线mr相关-在原图中连接假设节点nfi和nfu的端口的路径所通过的原图弧线列表L;-成本,它是原图中路径所通过的弧线成本之和;以及-确定路径的分区名称。
(GR(Pi))定义为GR的弧线集,在分区Pi内计算GR的弧线列表L。同样,(GR(Pi))表示分区区域为Pi的GR的弧线集。
图3说明在图1所示的分区A中增加假设节点。图4显示了通过采用上述步骤创建的表示原分区A的简化图。
为便于理解简化图结构,未在图中插入弧线的成本,从而不使图示复杂化。
例如,假设分区A内从端口7,6到端口5,14的最短路径为{7,6;6;3;4;5;5,14}。与简化图GR的弧线<7,6;5,14>相关联的数据因此为1.列表LL={<7,6;6>,<6;3>,<3;4>,<4;5>,<5;5,14>}。
2.此路径的总成本。
3.分区名称A。
同样,为清晰起见,路径指定为连续的弧线,其中,每条弧线的标识符指定为相关尾节点和头节点的名称对。当然,如果不止一条弧线在同一方向连接同一对节点,则这种用语便不适用。
同样是为了理解此示例,另一种简化方式是为属于不同分区的节点指定不同的名称;实际上,设备是由“名称,分区”值对加以区分的,因此,属于两个不同分区的两个设备可享有同一名称。
收到针对坐标<源节点ns,源分区Ps>,<目标节点nd,目标分区Pd>所确定的节点对的连接请求R时,必需执行以下步骤来完成简化图1.将原图的源节点和目标节点添加到简化图中;2.对于<ns,Ps>对;-从数据库中提取所有仅用于源分区的数据;-计算从源节点到源分区的所有输出端口的最短路径;-将包含与简化图中其它弧线相同的数据(源分区上通过的弧线列表,总成本,源分区的名称)的弧线与上一步骤中计算的每条路径相关联。
3.对于<nd,Pd>对-从数据库提取所有仅用于目标分区的数据;-计算从目标分区的所有输入端口到目标节点的最短路径;-将包含与简化图中其它弧线相同的数据(目标分区上通过的弧线列表,总成本,目标分区的名称)的弧线与前一步骤中计算的每条路径相关联。
图5显示了基于图4中的GR动态完成简化图的示例,简化图的动态完成是计算从分区A节点1(<1,A>)到分区C节点8(<8,C>)路径的所必需的。
简化图完成时,可以通过直接在简化图上操作来计算所需的最短路径。
因此找到简化图GR的有序弧线<nfi,nfu>列表。每个列表成员,即简化图的每条弧线mr与假设节点nfi和nfu的两个相关端口之间的最短路径所通过的原图弧线列表相关。
提供所需解所必需的最后步骤包括依据构成解的简化图的弧线的顺序使列表线性化,而自然地避免了重复分区间链路弧线。
例如,假定在图5的简化图上计算的从分区A<1,A>的节点1到分区C<8,C>的节点8的最短路径是图6所示的一条路径。从图6中可以看到,此最短路径由简化图的三条弧线序列组成,即简化图动态完成期间添加的弧线<1,A;5,14>、弧线<12,11;8,C>和构造简化图期间引入的弧线<5,14;12,11>。
假定以下数据与这三条弧线相关1.弧线<1,A;5,14>·L={<1;2>,<2;5>,<5;5,14>}。
·成本C1=12。
·分区名称A。
2.弧线<5,14;12,11>
·L={<5,14;14>,<14;15>,<15;16>,<16;12>,<12;12,11>}。
·成本C2=5。
·分区名称B。
3.弧线<12,11;8,C>·L={<12,11;11>,<11;10>,<10;7>,<7;8>}。
·成本C3=6。
·分区名称C。
因此,在原图中从节点1到节点8的最短路径具有等于这三条弧线成本之和的成本,即Ctot=C1+C2+C3=23,并且由以下弧线序列组成路径={<1;2>,<2;5>,<5;14>,<14;15>,<15;16>,<16;12>,<12;11>,<11;10>,<10;7>,<7;8>}。
因此,在原图上找到的从节点1到节点8的路径是如图7所示的一条路径。
应注意的是,所建议的路由方法确保计算最佳路径,即使如图8例示实例所示,在最佳路径通过同一分区几次的特殊情况下也是如此。
在源节点和目标节点属于同一分区时,这很重要。在这种情况下,可能有利的是,加载与包含两个节点的分区相关联的所有数据并先尝试不用简化图而计算分区内两个节点之间的最短路径。这样计算出的路径不一定是可通过其它分区然后返回包含两个节点的分区的最佳路径,但它是创建连接问题的有效解,因为通常可以限制组成路径的链路数量。由于分区内的路径不存在而使这种先进行的尝试失败,这并不意味着该路径不存在于原网络中;为此,如果未找到路径,则将计算扩增到整个简化图即可,通常情况下根据本发明的方法继续进行。
同样,对于在简化图上计算最短路径,可在计算后续连接之前的任何时候在简化图上消去源节点和目标节点以及关联弧线。对此,仅在收到新连接请求才删除此数据可能会有利。这样,如果新源节点或目标节点与先前的源节点或目标节点相同,则可重用以前的数据。
当然,有必要更新在计算先前连接后可能不一致的链路。
这是个一般要求;在给出解时,必需确保简化图与原图的一致性。简化图必须总是能够概括网络的当前状态。不同的情况会产生一致性问题。主要的情况可概括为使用已经分配的资源、连接释放、在分区中插入新节点或链路、在分区中取消节点或链路、插入分区间链路及取消分区间链路。
下面分析了这些主要的情况。
例如,为避免随后的连接可使用刚计算过的连接的资源,应指派所得解所用的资源;这样,在这些连接释放前,随后的连接请求无法使用这些资源。对于属于所找到的路径的简化图GR的所有mr路径以及对于所有在它们的列表L中包含属于所得解的链路G的简化图GR的链路,会出现一致性问题,在本情况下将此问题定义为“资源占用问题”。相反,对于在连接建立未通过的G个分区中计算的GR的所有链路以及对于所有那些在它们的列表L中不包含属于所得解的链路之一的简化图GR的链路,在本情况下不会出现一致性问题;在未指派资源时,最短路径保持不变。
在取消分区的节点或链路时,会出现同样解的同样的一致性问题。另一方面,在释放连接后,出现了前一情况的对偶情况,该情况由于连接先前占用的资源可用于计算新连接而会导致产生一致性问题。因此,在出现此类事件时,必需更新在释放的连接所通过的G的分区中计算的所有路径。
在将新节点或链路插入分区时会出现同样的一致性问题,并且同样必需更新在设置新节点或链路的分区中计算的所有路径。但在插入分区间链路时,属于GR的新节点与G的新弧线相关联。插入此新节点涉及计算所有端口到包含尾节点的分区内所述分区间链路的路径以及计算从该分区间链路到包含头节点的分区内的所有输出端口的路径。
相反,在取消分区间链路后,表示此端口的GR节点必须与影响它的所有输入和输出弧线一起取消。可以看到,要保持简化图始终一致,就必需做出一些努力。可能出现的疑问是为保持简化图一致所作的努力取消了它的使用优势,响应时间不比每次新连接请求时到达时从数据库抽取所有数据更好。实际上已证明,更新简化图可在路径找到之后不受干扰地进行,所需时间因此在两次请求之间的静寂时间内。对客户端而言,如果路由算法使用简化图,接收即时响应毫无疑问具有优势,因为简化图的更新时间不会对客户端造成负担。
仅仅在连接请求到达与查看响应之间所经过的时间内对数据库进行的访问只涉及源分区和目标分区两个分区;回想一下,这些数据是动态完成简化图所必需的。显然,这样便可实现尽可能少地访问数据库的目的。
此外,实验上观察到,与网络规模相比,构成连接的链路数量很少。
由于组成连接的弧线数量少,因而可明白连接通过很少分区的概率很高,这意味着可能不必从数据库加载大量数据。只有在简化图构造步骤中才要访问数据库以提取网络的所有数据,并且此预处理步骤一旦结束便不再影响响应时间。
同时,给定刚建立的连接所通过的分区Pi,则由于属于分区Pi的连接的弧线数量不高,GR(Pi)的弧线不可能会在其列表L中包含该连接的弧线之一,因此,可能不必再次计算(GR(Pi))的所有弧线。实际上,最后这一方面很大程度上取决于不同分区的拓朴和成本分布,并且在构造简化图过程中,如果在Pi中具有在成本方面特别有利的必选路径或弧线,则GR(Pi)的若干弧线可能包含相同的链路。
不应低估使算法“并行化”的可能性。由于管理的设备在最短路径计算中未起到积极作用,因而这时不可能实现分布式算法,实现此目的的唯一方式是充分利用为网络管理而设计的计算器。这些计算器是具有共享内存的多处理器机器,功能强大。
使用附加给网络分区的简化图允许根据资源的地理分布而将工作负荷分布到不同的处理器上,并且可寻求将线程与每个分区相关联以便并行执行简化图的构造和更新操作。在电信网络中,分布在网络中的一些SDH或WDM设备引入了连接约束,这大大增加了路由算法的复杂性。连接约束指在给定已建立输入端口的情况下,并不总是可能将该端口与任一输出端口相连接。
例如,设备端口可根据它们的连接约束排列成三个可能的集合。可以作如下区分-没有约束的端口,对于此类端口,通过属于此集合的一个端口到达设备输入端的信号可通过属于此集合的任一输出端口离开该设备;-具有完全约束或“固定交叉连接”的端口;通过属于此集合的一个端口到达设备的信号被迫通过属于此集合的一个预定输出端口离开该设备;以及-具有部分约束或保护的端口;这些端口用于保护使用其它集合的端口建立的连接。此端口集合的约束取决于要保护的连接。例如由于不能将光学信号从一定波长表征的某一信道连接到另一由其本身的波长表征的信道,可能对这些连接施加限制切换操作的约束。例如,此问题会在通过使用适当的卡和复用器(MUX)将SDN域中的若干信号复用到WDM域时出现。
当然,这些卡中的每张卡必须使用一定波长将其信号发送到多路复用器,所述一定波长不同于所有那些用于发送从其它卡输入到MUX的其它信号的波长。MUX可将这些不同信号复用成单个WDM信号,并在同一光纤内以不同波长传输这些信号。通过硬件来设置从卡将信号发送到MUX所用的波长。实际上,存在旨在通过软件设置适当ё的不同研究,这将在路由进程中引入更高的自由度。
所有这些约束使得必须求解带代价和禁止约束的最短路径问题;每对弧线(i,j)(i,j)与表示将节点j上的输入信号从弧线(i,j)切换到弧线(j,k)的代价相关联。如果不允许切换,则代价为无穷大。
原图中每条弧线的对偶网络与“转换图”中的节点关联。弧线与每种代价相关联。禁止的切换在转换图中简单地表示为缺少弧线。在不同的可能转换中,意外地发现对偶图转换或对偶图似乎最令人满意。正是由于对偶转换的特点,在节点数量比连接数量少得多的电信网络中,转换成对偶图会使复杂性增加到无法接受的程度。在对偶图中,节点的数量等于原图中的弧线数量,并且转换网络的弧线表示网络设备中允许的交叉连接。应用到SDH或WDM电信领域的对偶图的最明显的问题是,为表现一些设备引入的一些约束,必须对所有设备执行相同的转换。这意味着还必须对所有那些未引入连接约束的设备执行转换,而因此造成的节点预备性物理扩展工作成本太高;没有连接约束的设备通过对偶图分解成一定数量的节点ò=(òin+òout)其中,òin表示在原图中到设备的输入链路数量,òout表示从原图中设备开始并进入数量等于Mr=(òin×òout)的多条弧线的输出链路数量。
从下面可以看到,采用本发明的对偶转换(dual conversion)、简化图和分区就产生了称为“智能对偶图”转换,这种转换消除了对偶图的缺点,而且正好相反,它可实现高效的路由选择。
此方法使用对偶转换来构造与不同分区相关联的图;一旦计算了构造或更新简化图所必需的路径,则取消所述图。因此,再次实现了永久保持并定期更新的唯一数据结构是简化图。确保在计算从每个分区的输入端口到输出端口的路径时考虑了设备的连接约束。通过直接在简化图GR上操作而建立的连接因此将这些约束纳入了考虑,因为它是不同允许路径的连接。
因此,在简化图上,不必执行任何转换,但在无限制的情况下,直接将上述操作用于寻求最短路径。
通过对网络进行分区,节点和弧线的数量的增长限制为每次网络更新时涉及的分区。为强调此事实,只要想想每次连接请求到达时,从数据库加载所有与网络相关的数据并在如此数量巨大的数据上进行转换意味着什么就足够了。
假定存在网络G(V,A),其中,|V|=N,|A|=M,并用W表示每个设备的平均输入链路数量。因为某个设备的输入链路是另一设备的输出链路,因此,W也表示每个设备的平均输出链路数量。
为避免可能的误解,要注意W在此处定义为网络中每个设备实际设置的平均输入或输入链路数量。不要将此数量与设备可以管理的输入或输出链路数量相混淆;从转换网络的规模而言,这两个值仅在最差的情况下才会一致,在这种情况下,每个设备在输入或输出处具有最大数量的可设置链路。在允许所有可能的交叉连接的最坏情况下,通过对偶图转换得到由M个节点和NxW2条弧线组成的网络,这是因为每条弧线变成一个节点,而有W2条弧线对应每个设备。每条输入链路可连接到每条输出链路,并且输入和输出链路的平均数量为W。
从上述可明白要构造和更新简化图,必须执行最短路径搜索算法若干次。因此,选择使用哪种最短路径算法是关键点之一。根据效率的选择可能建议采用通过斐波那奇(Fibonacci)堆的特殊数据结构实现的Dijkstra算法。在Dijkstra算法的这种实现方案中,在具有N个节点和M条弧线的网络上的计算复杂性等于O(M+Nxlog(N)),以值NxW2替代M,值M替代N,则转换网络的复杂性为O(NxW2+Mxlog(M))要注意值W在上面受到设备可管理的最大链路数量的限制,因此,前面的复杂性变为
O(N+Mxlog(M))然而,实践中W的值在由几个节点和几条弧线组成的网络中特别重要。此时,必需考虑以下事项。SDH业务是结构化业务,因此除源节点和目标节点对,每个连接请求必须指定所需的业务类型;这意味着在存储器中保存每种类型业务的简化GR。
理论上,在创建表示网络的图的层次上(无论是否使用简化图),这种情况会涉及将每条链路扩展成若干弧线,这些弧线的数量等于与请求的业务类型相关的链路上的可用容器数量。基本的观察结果是连接约束与输入或输出链路有关,而与两个链路内选择的特殊容器无关。这样,在提取数据的步骤中,可以选择支持请求的业务类型的任一可用容器。为确保正确的业务分布,根据客户端分配给该链路的成本与该链路上业务可用性的线性组合来确定弧线的成本。
在光学设备能够进行完整的波长转换的情况下,有关SDH业务的推理同样对WDM业务有效。即使在这种情况下,实际上可选择光学链路上的任一可用信道而不是将链路分解成若干可用信道,并根据针对SDH业务建议的标准来分配某种成本。除此之外,可应用其它波长分配策略。
设备的输入和输出链路显然可加以分解以便分配有利于交叉连接的成本,如果此操作在不需要将光域信号转换成电信号和将电信号转换成光信号的情况下进行,则它们不进行波长转换。
另一方面,对于WDM单跳网络,有必要将每条链路分解成数量等于可用信道数量的链路。单跳网络实际上引入了“波长连续约束”,在此约束中,要建立的连接将在其每条链路中使用相同的波长。要得到容许的解,有必要只将表示两个相同波长之间的交叉连接插入转换的网络中。从引入的约束来看,我们可以将波长连续约束与固定交叉连接相比较。上面我们记述了使用对偶图将导致复杂性明显增加。实际上,利用本发明的分区方法,可以将设备划分成具有连接约束特征的集合和没有连接约束的集合。这样,在分区中存在没有连接约束的设备,并且不采用对偶图而是直接应用优选的“单一最短路径算法”。如果在同一分区中存在有约束和没有约束这两种类型的设备,则可应用以下称为“智能对偶网络”的过程。换而言之,对偶网络对没有网络约束的网络成员没有效率。在这种情况下,可以对利用了如下事实的方法或算法(智能对偶网络)加以变化这些节点的特征在于每个输入能够不付出任何代价地到达输出。因此,每条弧线具有零代价。这样,从p^2到2p的弧线是可能的。
所述方法由以下步骤组成。
1.将设备分成以下三类(图9中给出了三类设备的示例)-没有连接约束的A设备;任一输入端口可连接到任一输出端口;-具有部分连接约束的B设备;存在由输入和输出端口组成的至少一个集合,在该集合内,可将任一输入端口与任一输出端口相连接;以及-具有完全连接约束的C设备;每个输入端口均有需要加以考虑的约束。
2.将转换图中的假设节点Nf与每个A型和B型的设备相关联。
3.将以有连接约束的端口作为尾节点或头节点的每条链路与转换图中的假设节点Lf相关联;这在原图中两个节点之一是类型C或B且所用端口具有约束时进行。
4.对于与原A型节点相关联的转换图中的每个假设节点Nf-就依据步骤3创建的、与其相关的每个假设节点Lf而言,如果Lf的原弧线输入到Nf的原节点,则插入将Lf连接到Nf的链路;此弧线的成本必须是Lf表示的原弧线的成本;-就依据步骤3创建的、与其相关的每个假设节点Lf而言,如果Lf的原弧线是与Nf相关联的原节点的输出,则插入将Nf连接到Lf的无成本链路;以及
-考虑未进行步骤3中所述转换并且在原图中以Nf的节点作为其头节点或尾节点的原图弧线;对每条弧线,将Nf连接到与原图的头节点或尾节点相关联的其它假设节点,同时保持与原图弧线相同的成本。
5.对于与原B型节点相关联的转换图中的每个假设节点Nf-考虑依据步骤3为原图中有约束端口的去往或来自假设接点Nf的接点的输入或输出弧线而创建的假设节点Lfin或Lfout,对每个这些假设节点Lfin,插入将Lfin连接到其它假设节点Lfout的链路;此连接必须仅对对应于可连接的原图弧线对的假设节点Lfin、Lfout对进行;弧线的成本必须等于Lfin所表示的原弧线的成本和将原图中的这两条弧线相连所要付出的代价成本之和;-考虑为原图中无约束端口的去往或来自假设接点Nf的接点的输入或输出弧线而创建的假设节点Lfin或Lfout,对每个这些假设节点Lfin,插入将假设接点Lfin连接到假设节点Nf而同时保持Lfin所表示的原弧线的成本的链路;对每个这些假设节点Lfout,插入以零成本将假设节点Nf连接到假设节点Lfout的链路;-考虑未经历步骤3中所述转换并且在原图中以Nf表示的节点作为头节点或尾节点的原图弧线;对每条弧线,将Nf连接到与原图的所述头节点或尾节点相关联的其它假设节点,同时保持与原图弧线相同的成本。
6.对于与原C型节点相关联的转换图中的每个假设节点Nf-依据步骤3创建的所有假设节点Lfin或Lfout与原图中有约束端口的去往或来自Nf所表示的接点的输入或输出弧线相关联;为表示原图中两条可连接弧线的所有Lfin或Lfout对插入弧线。
图10以示例方式说明了施以上述方法步骤的原图。具体地说,
图11a到11e分别显示了转换步骤2、3、4、5和6。
在上述内容中,我们描述了本发明的网络分区方法如何使对偶图的规模受到限制;分别对各分区应用网络转换,以构造、动态完成和更新简化图。
这样,与整个网络相比,每个分区具有较少数量的节点和链路。在完成这些操作中的每个步骤之后,取消所涉及的表示分区对偶图的数据结构。如果考虑的是智能对偶网络而非对偶图,则这些评述不变。
但在连接请求到达时还必须构造简化图动态完成过程中所涉及的源分区和目标分区的智能对偶网络。此外,识别转换网络中的请求节点必须是可能的。
根据以上观点,可简洁地列出以下用于动态完成简化图的其它步骤1.在源分区或目标分区的智能对偶网络的构造过程中,如果源节点或目标节点属于类型C,则添加假设节点;如果源节点属于类型A或B,则在构造智能对偶网络所必需的正常操作期间直接创建转换网络的节点。
2.考虑源节点ns,如果ns属于类型A,则不采取任何操作;如果ns属于类型B,则为具有连接约束的每个输出端口添加弧线,该弧线在表示转换图中ns的假设节点与表示该端口上链路的假设节点之间;如果ns属于类型C,则为每个输出端口添加弧线,该弧线在表示转换图中ns的假设节点与表示该端口上链路的假设节点之间。
3.考虑目标节点nd,并且如果nd属于类型A,则不采取任何操作;如果nd属于类型B,则为具有连接约束的每个输入端口添加弧线,该弧线在转换图中表示该端口上链路的假设节点与表示nd的假设节点之间;如果nd属于类型C,则为每个输入端口添加弧线,该弧线在转换图中表示该端口上链路的假设节点与表示nd的假设节点之间。
换言之,所建议的方法概括起来由三个步骤组成,即-预处理-在转换图上进行路由选择;以及-更新图。
预处理由两个步骤组成,即-构造对偶网络;以及-使用固定连接来简化图;是否实现此操作是可选的。
每次请求针对尚未考虑的业务类型进行路由选择时,便要构造该业务的简化图,取消不支持该业务的原图弧线。
对于每种类型的业务,将应用上述图分区方法形成的简化图保存在存储器中。
在转换图上进行路由选择是这样进行的,即,对于从分区A中的节点s到分区B中的节点d的每种业务类型tr的请求,用两个子图代替与业务tr以及分区A和B相关联的图部分,这两个子图给出了从节点s到分区A边缘节点的最小成本以及从分区B边缘节点到节点d的最小成本。
在进行下一次路由选择之前必须更新图,但更新针对路由选择所用到的分区。具体地说,有必要仅更新在原图中与计算得到的路由共享至少一条弧线的转换图路径。即使在插入、变更或取消节点时,这种更新也是必需的。
图12显示了一种网络实例。图13显示了图12所示子网2的对偶网络。在此示例中,对于每个ij,jk,所有代价均等于1∶óij,jk=1。图14显示了相应的简化图。可以看出,如果Min(p)和Mout(p)指定分区的输入/输出弧线数量,则在转换图中,每个分区不再有Min(p)×Mout(p)条弧线。
图15显示了组成网络且具有连接约束的一些设备示例。例如,约束如下-网络A和D的成员具有完全的连接约束;
-网络B的成员具有部分连接约束;以及-网络C的成员无连接约束。
为转换网络,根据网络成员的特定采用三条不同的规则。前两条规则如下-完全连接约束;所有输入/输出连接成为节点;-无连接约束;将网络成员与具有连接约束的网络成员连接在一起的所有连接成为节点;将网络成员与没有连接约束的网络成员连接在一起的所有连接成为一条连接,这条连接将没有约束的节点连接到与没有连接约束的网络成员相关的新假设节点。
将这前两条规则应用到图15所示的原网络后,得到图16所示的图。
第三条规则与部分连接约束的情况相关;一组完全可连接的端口由单个节点表示;具有连接约束的端口则根据完全连接约束规则处理。
亦采用此规则,就得到图17所示最终网络的概貌图。
为概括上述内容,以下给出一个在具有带连接约束的设备的网络中识别最短路径所必需的操作的概括性示例。
根据本发明的方法,第一步骤由在一个级别将原网络分区并根据这些分区内不同设备表现出的连接约束将它们分类。图18说明此第一步骤。随后,对每个分区,有必要插入表示原图分区间链路的假设节点,并在上述操作后执行智能对偶网络转换。图19说明此步骤。
对每个分区,计算连接<输入端口和输出端口>对的最短路径。如果不存在对应这种端口对的路径,则不在简化图中插入弧线。如上所述继续操作,构造简化图。图20中显示了与图18所示网络相关联的简化图。
当连接请求到达(<S,Pa>,<D,Pc>)时,有必要在考虑到智能对偶网络转换的同时,如上所述动态完成简化图。图21说明此步骤,在该图中显示了动态完成简化图过程中所涉及的分区的智能对偶网络,而图22中显示了为计算(<S,Pa>,<D,Pc>)连接而完成的简化图的最终结果。
要强调的是,对于属于A型节点类的节点S,由于假设节点Sf是在Pa的智能对偶网络构造期间自动创建的,因此不添加任何节点。对于属于C型节点类的节点D,有必要插入作为目标节点的假设节点Df,假设节点Df表示所有将它连接到表示D的输入端口上链路的节点的弧线的头节点。
最后,在图22所示的简化图上计算所需的路径,以得到对应于原图中图24所示路径的图23所示的结果。
显然,就实现了预定目的。
在本发明方法的各种优点中,对偶转换允许随后更简单地开发网络保护技术,这是基础性的,因为光纤通信提供了大量频带。在通过对偶转换产生的转换网络上,仍可使用在普通电路交换网络中使用的最短路径算法,例如,Dijkstra算法。此外,转换网络的规模随设备连接约束数量的增加而降低。例如,固定交叉连接大大减少了对偶网络中的弧线数量。最后,由于使用网络分区,因而大大限制了在对偶网络中转换原网络的工作。实际上,一旦构造了简化图GR,此工作仅在源分区和目标分区上进行以提供连接请求响应,以及仅在后续更新阶段中路径所通过的分区上进行,从而不会对客户端造成负担。
当然,以上对采用本发明创新原理的实施例的说明是通过在本发明所要求的专有权范围内的所述原理的非限制示例来给出的。
权利要求
1.一种用于在电信网络中进行路由选择的方法,它包括在预处理步骤中将所述网络的图G分区,并在所述分区Pi上创建简化图GR并且在如此转换的所述图上执行路由选择的步骤,在所述预处理步骤中构造所述网络的对偶图,并通过使用所述设备特征所约束的连接简化所述图。
2.如权利要求1所述的方法,其特征在于,只有所述简化图保存在存储器中。
3.如权利要求1所述的方法,其特征在于,采用下述步骤来构造所述简化图GR-在所述简化图GR中为所述原图的每条分区间链路分配节点nf;-对于每个分区Pi,将端口集分成输入端口集和输出端口集;在分区级别Pi,将根据步骤1创建的表示所述分区Pi的端口(分区间链路)的每个所述假设节点nf与一个假设节点相关联,取决于相关端口的方向,这个假设节点可为假设输入节点nfi或输出节点nfu;-将所述假设节点nfi或nfu与所述原图中连接到所述端口的节点相连;为避免计算相同成本两次,将成本0分配给以所述节点nfu作为其头节点的弧线;以所述节点nfi为其尾节点的弧线的成本保持在Cin值。-计算从每个假设输入节点nfi到每个假设输出节点nfu的最短路径;每条路径的特征在于连接所述<输入端口,输出端口>节点对的所述原图的弧线集;-将所述简化图中连接表示所述两个端口的节点nf的弧线与依据上述步骤计算得到的非空弧线集组成的每条路径相关联;如果所述两个假设节点之间的所述路径不存在,因而与此路径相关的所述弧线集是空集,则不在简化图中插入所述弧线。
4.如权利要求3所述的方法,其特征在于,下面所列的数据与所述简化图的每条弧线mr相关联-在所述原图中连接所述假设节点nfi和nfu的相关端口的路径所通过的所述原图的弧线的列表L;-等于所述原图中所述路径所通过的弧线的成本之和的成本;以及-确定所述路径的分区名称。
5.如权利要求1所述的方法,其特征在于,在收到对由坐标<源节点ns,源分区Ps>,<目标节点nd,目标分区Pd>确定的节点对的连接请求时,通过以下步骤完成所述简化图-将所述原图的源节点和目标节点添加到所述简化图中;-对于<ns,Ps>对,从数据库提取且只提取所述源分区的所有数据;计算从所述源节点到所述源分区的所有输出端口的最短路径;将与所述简化图中其它弧线一样包含相同数据(所述源分区中通过的弧线列表、总成本和所述源分区的名称)的弧线与根据上述步骤计算得到的每条路径相关联;-对于<nd,Pd>对,从所述数据库提取所述目标分区的数据;计算从所述目标分区的所有输入端口到所述目标节点的最短路径;将与所述简化图中其它弧线一样包含相同数据的弧线与根据上述步骤计算得到的每条路径相关联。
6.如权利要求1所述的方法,其特征在于,为了创建所述对偶图,将所述网络或子网的所述设备划分成至少三类,即-没有连接约束的A设备;任一输入端口可连接到任一输出端口;-具有部分连接约束的B设备;存在由输入和输出端口组成的至少一个这样的集合,在该集合内,可将任一输入端口与任一输出端口相连接;以及-具有完全连接约束的C设备;每个输入端口均有要加以考虑的约束。
7.如权利要求6所述的方法,其特征在于,所述转换图中的假设节点Nf与每个A型和B型设备相关联,并且以具有连接约束的端口作为尾节点或头节点的每条链路与所述转换图中的假设节点Lf相关联。
8.如权利要求7所述的方法,其特征在于,对于原A型节点的所述转换图的每个假设节点Nf-就依据段落3创建的、与其相关的每个假设节点Lf而言,如果Lf的原弧线输入到Nf的原节点,则插入连接Lf与Nf的链路;此弧线的成本必须是Lf表示的原弧线的成本;-就依据段落3创建的、与其相关的每个假设节点Lf而言,如果Lf的原弧线是Nf的原节点的输出,则插入连接Nf与Lf的无成本链路;以及-考虑未进行所述转换并且在所述原图中以Nf的节点作为其头节点或尾节点的所述原图的弧线,对于每条弧线,将Nf连接到与所述原图的所述头节点或尾节点相关联的其它假设节点,同时保持与所述原图的所述弧线相同的成本。
9.如权利要求7所述的方法,其特征在于,对于原B型节点的所述转换图的每个假设节点Nf-考虑为所述原图中有约束端口的去往或来自假设接点Nf的接点的输入或输出弧线而创建的假设节点Lfin或Lfout,对每个这些假设节点Lfin,插入将Lfin连接到其它所述假设节点Lfout的链路;此连接必须仅对对应于可连接的所述原图弧线对的所述假设节点Lfin、Lfout对进行;-考虑为所述原图中无约束端口的去往或来自假设接点Nf的接点的输入或输出弧线而创建的假设节点Lfin或Lfout,对这些假设节点Lfin中的每个接点,插入将所述假设接点Lfin连接到所述假设节点Nf而同时保持Lfin所表示的原弧线的成本的链路;而对这些假设节点Lfout中的每个接点,插入以零成本将所述假设节点Nf连接到所述假设节点Lfout的链路;-考虑未经历段落3中所述转换并且在所述原图中以Nf表示的节点作为头节点或尾节点的原图弧线;对每条弧线,将Nf连接到与所述原图的所述头节点或尾节点相关联的其它假设节点,同时保持与所述原图的所述弧线相同的成本。
10.如权利要求7所述的方法,其特征在于,对于与原C型节点相关联的所述转换图的每个假设节点Nf-考虑到所创建的所有所述假设节点Lfin或Lfout与所述原图中有约束端口的去往或来自Nf所表示的接点的输入或输出弧线相关联,为表示所述原图中两条可连接弧线的所有Lfin、Lfout对插入弧线。
11.如权利要求6所述的方法,其特征在于,为动态完成所述简化图而采取的步骤包括在创建源分区图或目标分区图期间-如果所述源节点或目标节点属于类型C,则添加假设节点;以及-如果所述源节点属于类型A或B,则直接创建所述转换网络的节点。
12.如权利要求6所述的方法,其特征在于,为得到所述简化图而执行以下动态完成步骤,这些步骤包括考虑所述源节点ns,以及-如果ns属于类型A,则不采取任何操作;-如果ns属于类型B,则为具有连接约束的每个输出端口添加弧线,该弧线在表示所述转换图中ns的所述假设节点与表示该端口上所述链路的所述假设节点之间;以及-如果ns属于类型C,则为每个输出端口添加弧线,该弧线在表示所述转换图中ns的所述假设节点与表示该端口上所述链路的所述假设节点之间。
13.如权利要求6所述的方法,其特征在于,为动态完成所述简化图而执行的步骤包括考虑所述目标节点ns,以及-如果ns属于类型A,则不采取任何操作;-如果nd属于类型B,则为具有连接约束的每个输入端口添加弧线,该弧线在所述转换图中表示该端口上的链路的假设节点与表示nd的假设节点之间;以及-如果nd属于类型C,则为每个输出端口添加弧线,该弧线在所述转换图中表示该端口上所述链路的假设节点与表示nd的假设节点之间。
全文摘要
为在电信网络中执行路由选择,建议在预处理步骤中将网络分区,在分区上创建简化图,预处理步骤中会构造网络的对偶图并且使用设备特征确定的连接来简化图形。随后在转换图上执行路由选择。还描述了使图保持一致的图更新技术。每次请求针对尚未考虑的业务类型进行路由选择时,便要构造该业务的简化图,同时取消不支持该业务的原图形弧线。对于每种类型的业务,仅将通过上述的图形分区形成的简化图保存在存储器中,从而大大节省了资源。
文档编号H04L12/56GK1554171SQ02817582
公开日2004年12月8日 申请日期2002年7月9日 优先权日2001年7月13日
发明者B·希利诺, M·奥里兹, B 希利诺, 镒 申请人:马科尼通讯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1