一种路由建立方法和装置与流程

文档序号:14748495发布日期:2018-06-22 08:45阅读:149来源:国知局

本发明涉及通信技术领域,特别是涉及一种路由建立方法和装置。



背景技术:

随着大规模多媒体网络的发展,以及多媒体流和视讯会议等新业务的出现,对网络提出了更高的要求,不仅需要网络满足业务的QoS要求,还要在网络连接出现故障时保持业务持续不间断地进行,如果在源节点和目的节点只有一条通信路径,则在链路故障时不能满足快速恢复业务的要求。要达到上述要求,目前的做法是在源节点和目的节点之间提供两条链路分离的路径,其中一条路径为工作路由,另一条路径为工作路由的保护路由。

现有的路由建立方法是采用K优路径算法,先计算一条最短路径作为工作路由,然后再计算与该工作路由分离的最短路径作为保护路由。例如:对于“日字形”组网场景,在进行工作路由计算时,可能会使用“日字形”中间一横这个边作为工作路由的部分路径,在计算保护路由时,由于无论怎么选取路径都不会和工作路由分离,这时需要重新计算工作路由,再根据重新计算的工作路由计算保护路由,直到计算出分离的工作路由和保护路由为止。对于较为复杂的组网场景来说,可能需要通过K优路径算法计算几千、几万、甚至几亿次才能得到分离的工作路由和保护路由。所以,现有计算工作路由和保护路由的过程复杂且耗时,容易因为超时导致路由建立失败。

在实际工程当中,除了需要找到两条链路分离的路径,还要求两条路径分别经过指定的节点或链路(必经节点或必经链路),同时最终选定的工作路由和保护路由是所有可行方案中最优的路径,如:两条分离链路的代价之和最小。由于对工作路由和保护路由进行必经约束,所以进一步增加了确定工作路由和保护路由的过程复杂度,根据容易因为超时导致路由建立失败。



技术实现要素:

本发明提供一种路由建立方法和装置,用以解决现有确定工作路由和保护路由的过程复杂且耗时的问题。

为了解决上述技术问题,本发明是通过以下技术方案来解决的:

本发明提供了一种路由建立方法,包括:在网络拓扑中,确定包含源节点、必经节点和目的节点的最短环形链路;在所述最短环形链路中,确定从所述源节点到所述目的节点的两条路径;根据其中一条路径建立所述源节点和所述目的节点的工作路由,根据另一条路径建立所述源节点和所述目的节点的保护路由。

其中,所述必经节点包括:一类必经节点和/或二类必经节点;所述确定包含源节点、必经节点和目的节点的最短环形链路,包括:按照预先为所述源节点、所述一类必经节点、二类必经节点和所述目的节点设置的节点顺序,确定出顺序经过每个节点的最短环形链路,以在所述最短环形链路中,使从所述源节点到所述目的节点的两条路径中的一条路径经过所述一类必经节点,另一条路径经过所述二类必经节点。

其中,所述确定包含源节点、必经节点和目的节点的最短环形链路,包括:在网络拓扑中禁用二类必经节点;在禁用所述二类必经节点的网络拓扑中,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径;在网络拓扑中启用所述二类必经节点,禁用所述一类必经节点以及所述第一最短路径;在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,确定从所述源节点到所述目的节点的并且经过所述二类必经节点的第二最短路径;在所述第一最短路径和所述第二最短路径中,删除所述第一最短路径和所述第二最短路径共同经过的节点链路,形成最短环形链路。

其中,所述在禁用所述二类必经节点的网络拓扑中,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径,包括:在禁用所述二类必经节点的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述一类必经节点;如果所述最短路径经过所述一类必经节点,则将所述最短路径作为所述第一最短路径;如果所述最短路径不经过所述一类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述一类必经节点的所述第一最短路径。

其中,所述在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中, 确定从所述源节点到所述目的节点的并且经过所述二类必经节点的第二最短路径,包括:在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述二类必经节点;如果所述最短路径经过所述二类必经节点,则将所述最短路径作为所述第二最短路径;如果所述最短路径不经过所述二类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述二类必经节点的所述第二最短路径。

其中,所述根据其中一条路径建立所述源节点和所述目的节点的工作路由,根据另一条路径建立所述源节点和所述目的节点的保护路由,包括:根据经过所述一类必经节点的路径建立所述源节点和所述目的节点的工作路由;根据经过所述二类必经节点的路径建立所述源节点和所述目的节点的保护路由。

其中,如果所述一类必经节点为工作必经节点,则所述二类必经节点为保护必经节点;如果所述一类必经节点为保护必经节点,则所述二类必经节点为工作必经节点;其中,所述工作必经节点是指工作路由必须经过的节点,所述保护必经节点是指保护路由必须经过的节点。

本发明还提供了一种路由建立装置,包括:确定模块,用于在网络拓扑中,确定包含源节点、必经节点和目的节点的最短环形链路;确定模块,用于在所述最短环形链路中,确定从所述源节点到所述目的节点的两条路径;建立模块,用于根据其中一条路径建立所述源节点和所述目的节点的工作路由,根据另一条路径建立所述源节点和所述目的节点的保护路由。

其中,所述必经节点包括:一类必经节点和/或二类必经节点;所述确定模块,用于按照预先为所述源节点、所述一类必经节点、二类必经节点和所述目的节点设置的节点顺序,确定出顺序经过每个节点的最短环形链路,以在所述最短环形链路中,使从所述源节点到所述目的节点的两条路径中的一条路径经过所述一类必经节点,另一条路径经过所述二类必经节点。

其中,所述确定模块,进一步用于:在网络拓扑中禁用二类必经节点;在禁用所述二类必经节点的网络拓扑中,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径;在网络拓扑中启用所述二类必经节点,禁用所述一类必经节点以及所述第一最短路径;在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,确定从所述源节点到所述目的节点的并且经过所述二 类必经节点的第二最短路径;在所述第一最短路径和所述第二最短路径中,删除所述第一最短路径和所述第二最短路径共同经过的节点链路,形成最短环形链路。

其中,所述确定模块,具体用于:在禁用所述二类必经节点的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述一类必经节点;如果所述最短路径经过所述一类必经节点,则将所述最短路径作为所述第一最短路径;如果所述最短路径不经过所述一类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述一类必经节点的所述第一最短路径。

其中,所述确定模块,具体用于:在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述二类必经节点;如果所述最短路径经过所述二类必经节点,则将所述最短路径作为所述第二最短路径;如果所述最短路径不经过所述二类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述二类必经节点的所述第二最短路径。

其中,所述建立模块,用于根据经过所述一类必经节点的路径建立所述源节点和所述目的节点的工作路由;根据经过所述二类必经节点的路径建立所述源节点和所述目的节点的保护路由。

其中,如果所述一类必经节点为工作必经节点,则所述二类必经节点为保护必经节点;如果所述一类必经节点为保护必经节点,则所述二类必经节点为工作必经节点;其中,所述工作必经节点是指工作路由必须经过的节点,所述保护必经节点是指保护路由必须经过的节点。

本发明有益效果如下:

本发明只需确定出包含源节点、必经节点和目的节点的最短环形链路即可确定源节点和目的节点的工作路由和保护路由,并且保证了工作路由和保护路由都经过了各自的必经节点,确定过程简便且不耗时,提升了路由建立效率,降低了路由建立失败的风险。

附图说明

图1是根据本发明第一实施例的路由建立方法的流程图;

图2是根据本发明第二实施例的确定最短环形链路的步骤流程图;

图3是根据本发明第三实施例的路由建立方法的流程图;

图4-1是根据本发明第三实施例的网络拓扑示意图;

图4-2是根据本发明第三实施例的确定最短路径P1的示意图;

图4-3是根据本发明第三实施例的最终得到的最短路径P1的示意图;

图4-4是根据本发明第三实施例的确定最短路径P2的示意图;

图4-5是根据本发明第三实施例的最终得到的最短路径P2的示意图;

图4-6是根据本发明第三实施例的最短环形链路的示意图;

图5是根据本发明第四实施例的路由建立装置的结构图。

具体实施方式

以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

实施例一

本实施例提供一种路由建立方法,如图1所示,为根据本发明第一实施例的路由建立方法的流程图。

步骤S110,在网络拓扑中,确定包含源节点、必经节点和目的节点的最短环形链路。

在网络拓扑中,包括多个节点以及多条用于连接两个节点的节点链路。

在网络拓扑中,事先指定源节点、目的节点和必经节点。必经节点为最终建立的路由必须经过的节点。

最短环形链路是经过源节点、必经节点和目的节点的最短的环形链路。进一步地,按照预先为源节点、必经节点和目的节点设置的节点顺序,确定出顺序经过每个节点的最短的环形链路,作为最短环形链路。

具体的,可以事先指定必经节点的类型。必经节点的类型包括:一类必经节点和二类必经节点。

按照预先为源节点、目的节点、一类必经节点和二类必经节点设置的节点顺序,确定出顺序经过每个节点的最短的环形链路,作为最短环形链路,以在最短环形链路中,使从源节点到目的节点的两条路径中的一条路径经过一类必经节点,另一条路径经过二类必经节点。

如果一类必经节点为工作必经节点,则二类必经节点为保护必经节点;反之,如果一类必经节点为保护必经节点,则二类必经节点为工作必经节点。工作必经节点是指工作路由必须经过的节点,保护必经节点是指保护路由必须经过的节点。可以事先指定工作路由必须经过的一个或多个工作必经节点或者节点链路,和/或保护路由必须经过的一个或多个保护必经节点或者节点链路。必须经过的节点链路可以通过该节点链路两端的节点表示,即工作路由必须经过的节点链路通过将该节点链路两端的节点作为工作必经节点来表示,保护路由必须经过的节点链路通过将该节点链路两端的节点作为保护必经节点来表示。

步骤S120,在最短环形链路中,确定从源节点到目的节点的两条路径。

在最短环形链路中,确定以源节点作为起点,以目的节点作为终点的路径,因为最短环形链路为一个环形,那么符合要求的路径应为两条,在从源节点到目的节点的两条路径中,其中一条路径经过一类必经节点,另一条路径经过二类必经节点。

步骤S130,根据其中一条路径建立源节点和目的节点的工作路由,根据另一条路径建立源节点和目的节点的保护路由。

根据经过工作必经节点的路径建立源节点和目的节点的工作路由,根据经过保护必经节点的路径建立源节点和目的节点的保护路由。

例如:在网络拓扑中,指定节点A为源节点,节点C为目的节点,节点B为一类必经节点,节点E为二类必经节点;设置最短环形链路中包含节点顺序:节点A→节点B→节点C→节点E→节点A;经确定得到的最短环形链路为:节点A-节点F-节点B-节点C-节点E-节点G-节点H-节点A;由于节点A为源节点,节点C为目的节点,所以可以确定从节点A到节点C的两条路径分别为:节点A→节点F→节点B→节点C,节点A→节点H→节点G→节点E→节点C;如果节点B为工作必经节点,节点E为保护必经节点,则可以根据路径:节点A→节点F→节点B→节点C建立工作路由,根据路径:节点A→节点H→节点G→节点E→节点C建立保护路由。

在本实施例中,只需确定出包含源节点、必经节点和目的节点的最短环形链路即可确定源节点和目的节点的工作路由和保护路由,并且保证了工作路由和保护路由都经过了各自的必经节点,确定过程简便且不耗时,提升了路由建立效率,降低了路由建立失败的风险。

在本实施例中,因为最短环形链路为一个环形,所以最终确定的工作路由和保护路由是分离的两条路由,在工作路由中,如果源节点和目的节点之间的中间节点或是链路出现故障,则可以启用保护路由来替代工作路由。也正是因为最短环形链路是包含源节点、必经节点和目的节点的最短的环形路径,所以最终确定的工作路由和保护路由是最优的工作路由和保护路由。

实施例二

为了使本发确定最短环形链路的过程更加清楚,下面对确定最短环形链路的步骤进一步地描述。在本实施例中,使最短环形链路包含节点顺序:源节点、一类必经节点、目的节点、二类必经节点、源节点。

图2为根据本发明第二实施例的确定最短环形链路的步骤流程图。

步骤S210,在网络拓扑中禁用二类必经节点。

步骤S220,在禁用二类必经节点的网络拓扑中,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径。

第一最短路径是指经过一类必经节点的路径,且该路径是从源节点到目的节点的最短路径。

在网络拓扑中禁用二类必经节点,是为了避免出现第一最短路径经过二类必经节点的情况。

具体的,在禁用二类必经节点的网络拓扑中,利用预设的Dijkstra(迪克斯特拉)算法,确定从源节点到目的节点的最短路径,并判断该最短路径是否经过一类必经节点;如果该最短路径经过一类必经节点,则将该最短路径作为第一最短路径;如果该最短路径不经过一类必经节点,则利用预设的K优(K Shortest Paths或K Shortest Simple Paths)算法,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径。

步骤S230,在网络拓扑中启用二类必经节点,禁用一类必经节点以及第一 最短路径。

步骤S240,在禁用一类必经节点以及第一最短路径的网络拓扑中,确定从源节点到目的节点的并且经过二类必经节点的第二最短路径。

第二最短路径是指经过二类必经节点的路径,且该路径是从源节点到目的节点的最短路径。

在网络拓扑中禁用一类必经节点和第一最短路径,是为了避免第二最短路径经过一类必经节点,也避免第二最短路径和第一最短路径发生重合。

在禁用一类必经节点以及第一最短路径的网络拓扑中,利用预设的Dijkstra算法,确定从源节点到目的节点的最短路径,并判断该最短路径是否经过二类必经节点;如果该最短路径经过二类必经节点,则将该最短路径作为第二最短路径;如果该最短路径不经过二类必经节点,则利用预设的K优算法,确定从源节点到目的节点的并且经过二类必经节点的第二最短路径。

步骤S250,在第一最短路径和第二最短路径中,删除第一最短路径和第二最短路径共同经过的节点链路,形成最短环形链路。

在网络拓扑中,将之前禁用的一类必经节点和第一最短路径重新启用,这样第一最短路径和第二最短路径将会同时存在于网络拓扑中,找出第一最短路径和第二最短路径共同经过的节点链路,即重合的节点链路;在第一最短路径和第二最短路径中删除共同经过的节点链路之后,第一最短路径和第二最短路径的剩余节点链路将会形成一个环形链路,该环形链路即是包含源节点、必经节点和目的节点的最短环形链路,且在最短环形链路中包含节点顺序源节点、一类必经节点、目的节点、二类必经节点、源节点。

本实施例的确定过程在时间复杂度和空间复杂度上,都有很大程度的优化,通过本实施例最终选出的两条路径是完全分离的,保护路径不用依赖于工作路径,且工作路径和保护路径的的代价(权值)是最小的。

根据本实施例可以形成两种确定最短环形链路的方式:

方式一,将工作必经节点作为一类必经节点,将保护必经节点作为二类必经节点,那么可以先确定出经过工作必经节点的第一最短路径,再确定出经过保护必经节点的第二最短路径。

方式二,将保护必经节点作为一类必经节点,将工作必经节点作为二类必 经节点,那么可以先确定出经过保护必经节点的第一最短路径,再确定出经过工作必经节点的第二最短路径。

上述方式一和方式二和单独使用,这时只能得到一组工作路由和保护路由;也可以将方式一和方式二一起使用。如果方式一和方式二同时使用,则可以确定出两组工作路由和保护路由,可以在两组工作路由和保护路由中,选择一组最优的工作路由和保护路由。最优的工作路由和保护路由可以是跳数之和最小的工作路由和保护路由,也可以是代价值/权值之和最小的工作路由和保护路由。

实施例三

下面提供一种较为具体的实施例来进一步地描述本发明。在本实施例中,一类必经节点为工作必经节点,二类必经节点为保护必经节点。

图3是根据本发明第三实施例的路由建立方法的流程图。图4(包括图4-1~图4-6)是根据本发明第三实施例的路由建立方法的示意图。

步骤S310,为网络拓扑中的各条节点链路设置初始权值。

节点链路具有方向性,例如:双向链路和单向链路;单向链路包括:上行链路、下行链路。可以为节点链路设置与方向对应的权值,例如:在设置初始权值时,针对节点A和节点B之间的节点链路,可以使两个方向的权值相同,如链路A→B和链路B→A的权值都为1。

在本实施例中,节点链路两个方向对应的初始权值为1,在确定任意两节点之间的路径对应的权值之和时,可以确定该路径中从第一个节点到最后一个节点的跳数,该跳数即是权值之和。

如图4-1所示的网络拓扑中,包括节点1~节点22,节点12为源节点,节点9为目的节点(或宿节点),节点4和节点21为工作必经节点,节点8为保护必经节点。网络拓扑中的每条节点链路都为双向链路,设置网络拓扑中的每条节点链路的每个方向对应的初始权值为1。例如:节点8→节点10的初始权值为1,节点10→节点8的初始权值也为1。

步骤S320,在网络拓扑中禁用保护必经节点,利用Dijkstra算法,确定源节点到目的节点的最短路径P1,该最短路径P1经过工作必经节点。

在从源节点到目的节点、且经过工作必经节点的各条路径中,最短路径P1 是指所经各条节点链路的初始权值之和最小的路径。该最短路径P1为上述的第一最短路径。

进一步地,在找到从源节点到目的节点、且经过工作必经节点的路径之后,可以按照该路径的方向,获取该路径经过的每条节点链路在该方向上对应的权值,将获取的权值相加,进而确定出该路径对应的权值之和。

如图4-2所示,在网络拓扑中禁用节点8(保护必经节点);利用Dijkstra算法,确定从节点12到节点9最短路径为:节点12→节点10→节点11→节点9,但是该最短路径没有经过节点4和节点21(工作必经节点),需要调用K优算法确定从节点12到节点9的路径且该路径需要经过节点4和节点21,如果算出的路径有多条,则确定每条路径经过的节点链路的初始权值之和,将初始权值之和最小的路径作为最短路径P1。

如图4-3所示的最短路径P1(粗线)的示意图,最短路径P1为:节点12(源节点)→节点3→节点4(工作必经节点)→节点2→节点20→节点21(工作必经节点)→节点5→节点7→节点9(目的节点),该最短路径P1经过的节点链路的初始权值之和为8。

步骤S330,在网络拓扑中启用保护必经节点,禁用工作必经节点和最短路径P1,并修改各条节点链路的初始权值。

因为链路具有方向性,在网络拓扑中禁用最短路径P1所经的各条节点链路,即禁用路径节点12→节点3→节点4→节点2→节点20→节点21→节点5→节点7→节点9,但是,应该注意的是,在网络拓扑中,不禁用路径节点12←节点3←节点4←节点2←节点20←节点21←节点5←节点7←节点9。

确定源节点到网络拓扑中每个节点的最短路径距离;根据源节点到每个节点的最短路径距离以及为每条节点链路设置的初始权值,修改每条链路的权值。

利用Dijkstra算法,确定从源节点到每个节点的最短路径,在该最短路径中,从源节点到该节点的跳数为最短路径距离。

利用公式w'(u,v)=w(u,v)-d(s,v)+d(s,u),修改最初为网络拓扑中各条节点链路设置的初始权值。

其中,u表示链路的起点,v表示链路的终点,s表示源节点,w'(u,v)为链路u→v修改后的权值,w(u,v)为链路u→v的初始权值,d(s,v)为源节点到链路 终点的最短路径距离,d(s,u)为源节点到链路起点的最短路径距离。

例如:确定节点10→节点11的链路的权值,节点10→节点11的链路的初始权值为1,节点12到节点10的最短路径距离为1,节点12到节点11的最短路径距离为2,那么节点10→节点11的链路的权值w'(10,11)=w(10,11)-d(12,11)+d(12,10)=1-2+1=2。

步骤S340,在禁用工作必经节点和最短路径P1的网络拓扑中,利用Dijkstra算法,再次确定源节点到目的节点的最短路径P2,该最短路径P2经过保护必经节点。

在从源节点到目的节点、且经过保护必经节点的各条路径中,最短路径P2是指所经各条节点链路的初始权值之和最小的路径。该最短路径P2为上述的第二最短路径。

如图4-4所示,在网络拓扑中启用节点8(保护必经节点),禁用节点4和节点21(工作必经节点),以及禁用最短路径P1:节点12→节点3→节点4→节点2→节点20→节点21→节点5→节点7→节点9;在得到的新网络拓扑中,利用Dijkstra算法,确定从节点12到节点9的最短路径为:节点12→节点10→节点11→节点9,但是该最短路径没有经过节点8,需要调用K优算法确定从节点12到节点9的路径且该路径需要经过节点8,如果算出的路径有多条,则确定每条路径经过的节点链路的权值(修改之后的权值)之和,将权值之和最小的路径作为最短路径P2。

如图4-5所示的最短路径P2(粗线)的示意图,最短路径P2为:节点12(源节点)→节点10→节点8(保护必经节点)→节点9(目的节点),该最短路径P2经过的节点链路的权值之和为1。

步骤S350,在最短路径P1和最短路径P2中,删除最短路径P1和最短路径P2共同经过的节点链路。

最短路径P1为:节点12→节点3→节点4→节点2→节点20→节点21→节点5→节点7→节点9。

最短路径P2为:节点12→节点10→节点8→节点9。

经过比较,最短路径P1和最短路径P2没有共同经过的节点链路,即没有重合的节点链路。那么,最短路径P1和最短路径P2直接可以组成最短环形链 路,且该最短环形链路顺序经过了节点12、节点4、节点21、节点9和节点8。

如果最短路径P1和最短路径P2有共同经过的节点链路,则需要在最短路径P1和最短路径P2中删除该节点链路。例如:最短路径P1为A→B→H→I→J,最短路径P2为A→F→G→H→B→C→D→E→J,最短路径P1和最短路径P2共同经过的节点链路为B-H,即链路B→H和链路H→B,那么,在最短路径P1(A→B→H→I→J)中删除链路B→H,在最短路径P2(A→F→G→H→B→C→D→E→J)中删除链路H→B,最短路径P1和最短路径P2中的剩余节点链路可以组成最短环形链路A-B-C-D-E-F-G-H-I-J。

步骤S360,根据最短路径P1和最短路径P2中的剩余节点链路,确定工作路由和保护路由。

如图4-6所示,在网络拓扑中启用工作必经节点和最短路径P1,在网络拓扑中同时存在最短路径P1和最短路径P2,在最短路径P1和最短路径P2组成的最短环形链路中,以节点12为起点,以节点9为终点的路径有两条,分别为路径1:节点12→节点3→节点4→节点2→节点20→节点21→节点5→节点7→节点9,以及路径2:节点12→节点10→节点8→节点9。

由于路径1中包含工作必经节点,路径2中包含保护必经节点,所以将路径1作为工作路由,将路径2作为保护路由。

步骤S370,根据确定出的工作路由和保护路由的结果,建立路由。

实施例四

本实施例提供一种路由建立装置,如图5所示,为根据本发明第四实施例的路由建立装置的结构图。

确定模块510,用于在网络拓扑中,确定包含源节点、必经节点和目的节点的最短环形链路,并且,在所述最短环形链路中,确定从所述源节点到所述目的节点的两条路径。

建立模块520,用于根据其中一条路径建立所述源节点和所述目的节点的工作路由,根据另一条路径建立所述源节点和所述目的节点的保护路由。

在一个实施例中,必经节点包括:一类必经节点和/或二类必经节点;

确定模块510,用于按照预先为所述源节点、所述一类必经节点、二类必 经节点和所述目的节点设置的节点顺序,确定出顺序经过每个节点的最短环形链路,以在所述最短环形链路中,使从所述源节点到所述目的节点的两条路径中的一条路径经过所述一类必经节点,另一条路径经过所述二类必经节点。

进一步地,确定模块510,用于在网络拓扑中禁用二类必经节点;在禁用所述二类必经节点的网络拓扑中,确定从源节点到目的节点的并且经过一类必经节点的第一最短路径;在网络拓扑中启用所述二类必经节点,禁用所述一类必经节点以及所述第一最短路径;在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,确定从所述源节点到所述目的节点的并且经过所述二类必经节点的第二最短路径;在所述第一最短路径和所述第二最短路径中,删除所述第一最短路径和所述第二最短路径共同经过的节点链路,形成最短环形链路。

确定模块510,具体用于:在禁用所述二类必经节点的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述一类必经节点;如果所述最短路径经过所述一类必经节点,则将所述最短路径作为所述第一最短路径;如果所述最短路径不经过所述一类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述一类必经节点的所述第一最短路径。

确定模块510,具体用于:在禁用所述一类必经节点以及所述第一最短路径的网络拓扑中,利用预设的Dijkstra算法,确定从所述源节点到所述目的节点的最短路径,并判断所述最短路径是否经过所述二类必经节点;如果所述最短路径经过所述二类必经节点,则将所述最短路径作为所述第二最短路径;如果所述最短路径不经过所述二类必经节点,则利用预设的K优算法,确定从所述源节点到所述目的节点的并且经过所述二类必经节点的所述第二最短路径。

建立模块520,用于根据经过所述一类必经节点的路径建立所述源节点和所述目的节点的工作路由;根据经过所述二类必经节点的路径建立所述源节点和所述目的节点的保护路由。

在另一实施例中,如果所述一类必经节点为工作必经节点,则所述二类必经节点为保护必经节点;如果所述一类必经节点为保护必经节点,则所述二类必经节点为工作必经节点;其中,所述工作必经节点是指工作路由必须经过的节点,所述保护必经节点是指保护路由必须经过的节点。

本实施例所述的装置的功能已经在图1~图4所示的方法实施例中进行了 描述,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。

尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

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