掌桥专利:专业的专利平台
掌桥专利
首页

网络图中的路径获取方法及路由组网的维护方法

文献发布时间:2023-06-19 10:03:37


网络图中的路径获取方法及路由组网的维护方法

技术领域

本公开涉及计算机技术领域,具体而言,本公开涉及一种网络图中的路径获取方法及路由组网的维护方法。

背景技术

路由组网是指以多个路由器为节点,各路由器之间的物理连接为连接路径的网络,在路由组网运行过程中往往希望两个中心路由之间的通信路径尽可能的短,以保证两个中心路由之间的通信效率。在网络图中可以获取网络图中任意两个节点之间的多条相对较短的路径(或称为目标路径),因此也可以获取路由组网中两个中心路由之间的多条相对较短的路径,并从这多条相对较短的路径中选取一条通信路径供两者进行通信。

现有的获取网络图中两个节点之间的多条相对较短的路径的方法,在计算两个节点之间的多条相对较短的路径时,每条较短的路径的获取都是以该两个节点中一个节点为起点另一个节点为终点,计算两者之间的相对较短的路径,但是,获取多条相对较短的路径的多次计算中会存在很多重复的计算,导致多条相对较短的路径的获取效率低。

发明内容

提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

第一方面,本公开实施例提供了一种网络图中的路径获取方法,包括:

基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点;

基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,得到至少一个新的变动节点;

重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,直至网络图中不存在变动节点,得到目标网络图;

基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标条路径。

第二方面,本公开实施例提供了一种路由组网的维护方法,包括:

获取路由组网对应的网络图;

基于网络图中的路径的获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;

将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

第三方面,本公开实施例提供了一种网络图中的路径获取装置,包括:

第一路径数组更新模块,用于基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点;

第二路径数组更新模块,用于基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,更新该直连节点的路径数组,得到至少一个新的变动节点;

循环模块,用于重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,得到目标网络图;

目标路径获取模块,用于基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

第四方面,本公开实施例提供了一种路由组网的维护装置,包括:

网络图获取模块,用于获取路由组网对应的网络图;

目标通信路径获取模块,用于基于网络图中的路径的获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;

通信路径切换模块,用于将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

第五方面,本公开实施例提供了一种电子设备,包括存储器和处理器;

存储器中存储有计算机程序;

处理器,用于执行计算机程序以实现第一方面或第二方面实施例中所提供的方法。

第六方面,本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现第一方面或第二方面实施例中所提供的方法。

本公开提供的技术方案带来的有益效果是:

通过为网络图中每个节点设置路径数组,并利用变动节点的路径数组中发生变动的路径信息更新直连节点的路径数组,使得在更新结束后得到的目标网络图中每一节点的路径数组中的路径信息都指示该节点与目标节点之间的目标路径,进而可以根据每一节点的路径数组获取该节点与目标节点之间的目标路径,该方案获取目标路径过程中无需重复计算,提高了的计算效率,将该方案应用于路由组网的维护时,可以保证两个中心路由之间的通信效率。

附图说明

为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单地介绍。

图1为本公开实施例提供的一种网络图中的路径获取方法的流程示意图;

图2为本公开实施例的一个示例中网络图的结构示意图;

图3为本公开实施例提供的一种路由组网的维护方法的流程示意图;

图4为本公开实施例提供的一种网络图中的路径获取装置的结构框图;

图5为公开实施例提供的一种路由组网的维护装置的结构框图

图6为本公开实施例提供的一种电子设备的结构。

具体实施方式

下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本公开的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。

图1为本公开实施例提供的一种网络图中的路径获取方法的流程示意图,如图1所示,该方法可以包括:

步骤S101,基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点。

其中,目标节点可以理解为网络图中的目标路径计算的起始节点,目标节点可以根据从网络图中选取。网络图中某一节点的直连节点即与该节点直接连接的节点(该节点与其节点的连接路径中没有其他节点),某一节点与其直连节点之间的连接路径即为直连路径。

其中,在本公开的方案中为网络图中每一节点设置路径数组,该路径数组长度可以设置为M(M为正整数),即该数值可以包含M位,每一位上可存储该节点到目标节点之间的路径信息。在使用本公开方案提供的方法前,可认为网络图中每一节点的路径数组为空,即没有存储任何路径信息。变动节点可以理解为采用本公开的方案进行更新时其路径数组中路径信息发生变化的节点。

具体地,获取目标节点的多个直连节点,并分别对每个直连节点的路径数组进行更新,即利用目标节点与各直连节点之间的直连路径对应的路径信息对对应的直连节点的路径数组的路径信息进行更新,可以是将目标节点与各直连节点之间的直连路径对应的路径信息存储至对应的直连节点的路径数组中。由于各直连节点的路径数组发生了变化,那么,各直连节点成为变动节点。可以理解的是,该步骤为本公开方案的第一次更新步骤,可认为是以目标节点为变动节点的第一次更新步骤,后续步骤中将以更新后得到的变动节点继续进行更新。

举例来说,如图2所示,网络图中包括节点A、B、C、D,其中,A目标节点,那么A的直连节点为B和C,那么,将直连路径对应的路径信息A-B存储至B的路径数组中,得到变动节点B,将直连路径对应的路径信息A-C存储至C的路径数组中,得到变动节点C,B和C作为变动节点将参与下一轮更新。

步骤S102,基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组,得到至少一个新的变动节点。

具体地,获取上一步骤中得到的变动节点的直连节点,然后获取该变动节点的路径数组中发生变动的路径信息对应的连接路径、以及该变动节点的每个直连节点与该变动节点之间的直连路径两者组合构成的组合路径对应的路径信息,再利用该组合路径对应的路径信息对对应的直连节点的路径数组的路径信息进行更新。在此更新步骤之后,若变动节点的直连节点的路径信息发生变化,则得到新的变动节点。

接上举例,再次参考图2,变动节点B有一个直连节点D,由于节点B的路径数组中增加了路径信息A-B,该路径信息对应于目标节点A和节点B之间的直连路径,那么,将该直连路径、以及节点B与节点D之间的直连路径组合得到组合路径,利用该组合路径对应的路径信息A-B-D对节点D的路径数组的路径信息进行更新,从而节点D成为新的变动节点。变动节点C有一个直连节点B,由于节点C的路径数组中增加了路径信息A-C,该路径信息对应于目标节点A和节点C之间的直连路径,那么,将该直连路径、以及节点C与节点B之间的直连路径组合得到组合路径,利用该组合路径对应的路径信息A-C-B对节点B的路径数组的路径信息进行更新,从而节点B也成为新的变动节点。

步骤S103,重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,直至网络图中不存在变动节点,得到目标网络图。

具体地,重复执行更新步骤,即重复执行对变动节点的基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,直至网络图中不存在变动及节点,即完成更新,得到目标网络图。那么,得到的目标网络图中每个节点的路径数组中存储的路径信息都指示了该节点与目标节点之间的相对较短路径(即目标路径)。可以理解的是,在相对较短的路径中存在一条最短路径,因此该方案实质上在获取到目标路径后即获取到了该节点与目标节点之间的最短路径。

步骤S104,基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

具体地,由于目标网络图中每个节点的路径数组中存储的路径信息都指示了该节点与目标节点之间的目标路径,可以根据任一节点的路径数组中的路径信息确定出该节点与目标节点之间的至少一条目标路径。可以理解的是,网络图中不是每个节点与目标节点之间的路径数都可以达到M条,因此有些节点的路径数组可能有些位数为空,即这些节点与目标节点之间的目标路径可以少于M条。

本公开提供的方案,通过为网络图中每个节点设置路径数组,并利用变动节点的路径数组中发生变动的路径信息更新直连节点的路径数组,使得在更新结束后得到的目标网络图中每一节点的路径数组中的路径信息都指示该节点与目标节点之间的目标路径,进而可以根据每一节点的路径数组获取该节点与目标节点之间的目标路径,该方案获取目标路径过程中无需重复计算,提高了的计算效率。

在本公开的一种可选实施例中,基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,包括:

基于每个变动节点的路径数组中变动的路径信息对应的连接路径、以及该变动节点与每个直连节点之间的直连路径,组合得到对应的组合路径;

基于组合路径,更新该直连节点的路径数组的路径信息。

具体地,对于每个变动节点,需要基于该变动节点的路径数组中发生变动的路径信息对其直连节点进行路径数组的更新,该变动节点的路径数组中发生变动的路径信息对应的连接路径、以及该变动节点与该直连节点之间的直连路径组合成得到组合路径,该组合路径为该直连节点与目标节点之间的连接路径,因此可以用该组合路径对应的路径信息对该直连节点的路径数组的路径信息进行更新。

在本公开的一种可选实施例中,基于组合路径,更新该直连节点的路径数组的路径信息,包括:

若每个直连节点的路径数组中的路径信息的条数少于预设数值,则将该直连节点对应的组合路径的路径信息存储至该直连节点的路径数组中;

若每个直连节点的路径数组中的路径信息的条数等于预设数值,则用该直连节点对应的组合路径的路径信息,替换该直连节点的路径数组中的对应于最长路径的路径信息。

其中,预设数值可以设置为M,网络图中每一节点的路径数组的长度为M,那么每一节点的路径数组的路径数组最多存储M条路径信息,由前文描述可知,某些节点与目标节点之间的连接路径可能达不到M条,故这些节点的路径数组中路径数组的条数可以少于M条。

具体地,在基于变动节点的路径数组中发生变动的路径信息对其直连节点的路径数组进行更新时,若其直连节点的路径数组中的路径信息的条数小于M条时,则直接将对应的组合路径的路径信息存储至该直连节点的路径数组中,若其直连节点的路径数组中的路径信息的条数等于M条时,获取该直连节点中对应于最长连接路径的路径信息,并用组合路径的路径信息替换该路径信息,以保证该直连节点中M条路径信息指示目标路径。

在本公开的一种可选实施例中,基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径,包括:

将任一节点的路径数组中存储的路径信息对应的连接路径,作为目标节点与任一节点之间的目标路径。

具体地,对于路径数组中存储有M条路径信息的节点,其路径数组中M条路径信息指示的M条连接路径即为该节点与目标节点之间的M条目标路径。对于路径数组中存储有少于M条(如N条,N为正整数)路径信息的节点,其路径数组中N条路径信息指示的连接路径即为该节点与目标节点之间的N条目标路径。

在本公开的一种可选实施例中,该方法还可以包括:

在基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组之前,为网络图中的每个节点初始化对应的长度为预设数值的路径数组。

具体地,在利用目标节点作为变动节点对其直连节点进行更新之前,需要先为网络图中各节点设置对应的长度为M的路径数组,用于后续更新过程中存储对应的路径信息。其中,M为正整数,可以根据实际需求进行设定。

图3为本公开实施例提供的一种路由组网的维护方法的流程示意图,如图3所示,该方法可以包括:

步骤301,获取路由组网对应的网络图。

具体地,将每一路由作为一个节点,各路由之间的通信连接作为通信路径,获取对应的网络图。

步骤302,基于网络图中的路径获取方法,获取所述网络图中任意两个中心路由节点之间的至少一条目标通信路径。

具体地,要获取任一两个中心路由节点之间的至少一条目标通信路径,则将其中一个路由节点作为目标节点,利用上述实施例中描述的网络图中的路径获取方法,获取对应的目标网络图,然后再基于另一个中心路由节点的路由路径数组获取两个中心路由节点之间的至少一条目标通信路径。

步骤303,将所述至少一条目标通信路径中的任一条通信路径作为所述任意两个中心路由节点之间的通信路径,并在所述任一条通信路径发生故障时,将所述至少一条目标通信路径中另一条通信路径作为所述任意两个中心路由节点之间的通信路径。

本公开提供的方案,通过为网络图中每个节点设置路径数组,并利用变动节点的路径数组中发生变动的路径信息更新直连节点的路径数组,使得在更新结束后得到的目标网络图中每一节点的路径数组中的路径信息都指示该节点与目标节点之间的目标路径,进而可以根据每一节点的路径数组获取该节点与目标节点之间的目标路径,该方案获取目标路径过程中无需重复计算,提高了的计算效率,将该方案应用于路由组网的维护时,可以保证两个中心路由之间的通信效率。

图4为本公开实施例提供的一种网络图中的路径获取装置的结构框图,如图4所示,该装置400可以包括:第一路径数组更新模块401、第二路径数组更新模块402、循环模块403以及目标路径获取模块404,其中:

第一路径数组更新模块401用于基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点;

第二路径数组更新模块402用于基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,更新该直连节点的路径数组,得到至少一个新的变动节点;

循环模块403用于重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,得到目标网络图;

目标路径获取模块404用于基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

本公开提供的方案,通过为网络图中每个节点设置路径数组,并利用变动节点的路径数组中发生变动的路径信息更新直连节点的路径数组,使得在更新结束后得到的目标网络图中每一节点的路径数组中的路径信息都指示该节点与目标节点之间的目标路径,进而可以根据每一节点的路径数组获取该节点与目标节点之间的目标路径,该方案获取目标路径过程中无需重复计算,提高了的计算效率。

在本公开的一种可选实施例中,第二路径数组更新模块具体用于:

基于每个变动节点的路径数组中变动的路径信息对应的连接路径、以及该变动节点与每个直连节点之间的直连路径,组合得到对应的组合路径;

基于组合路径,更新该直连节点的路径数组的路径信息。

在本公开的一种可选实施例中,第二路径数组更新模块进一步用于:

若每个直连节点的路径数组中的路径信息的条数少于预设数值,则将该直连节点对应的组合路径的路径信息存储至该直连节点的路径数组中;

若每个直连节点的路径数组中的路径信息的条数等于预设数值,则用该直连节点对应的组合路径的路径信息,替换该直连节点的路径数组中的对应于最长路径的路径信息。

在本公开的一种可选实施例中,目标路径获取模块具体用于:

将任一节点的路径数组中存储的路径信息对应的连接路径,作为目标节点与任一节点之间的目标路径。

在本公开的一种可选实施例中,该装置还可以包括路径数组设置模块,用于:

在基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组之前,为网络图中的每个节点初始化对应的长度为预设数值的路径数组。

图5为公开实施例提供的一种路由组网的维护装置的结构框图,如图5所示,该装500可以包括:网络图获取模块501、目标通信路径获取模块502以及通信路径切换模块503,其中:

网络图获取模块501用于获取路由组网对应的网络图;

目标通信路径获取模块502用于基于网络图中的路径获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;

通信路径切换模块503用于将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

本公开提供的方案,通过为网络图中每个节点设置路径数组,并利用变动节点的路径数组中发生变动的路径信息更新直连节点的路径数组,使得在更新结束后得到的目标网络图中每一节点的路径数组中的路径信息都指示该节点与目标节点之间的目标路径,进而可以根据每一节点的路径数组获取该节点与目标节点之间的目标路径,该方案获取目标路径过程中无需重复计算,提高了的计算效率,将该方案应用于路由组网的维护时,可以保证两个中心路由之间的通信效率。

下面参考图6,其示出了适于用来实现本公开实施例的电子设备(例如执行图1或图3所示方法的终端设备或服务器)600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

电子设备包括:存储器以及处理器,其中,这里的处理器可以称为下文所述的处理装置601,存储器可以包括下文中的只读存储器(ROM)602、随机访问存储器(RAM)603以及存储装置608中的至少一项,具体如下所示:

如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。

通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。

需要说明的是,本公开上述的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。

在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:

基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点;基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,得到至少一个新的变动节点;重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,直至网络图中不存在变动节点,得到目标网络图;基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

或者,获取路由组网对应的网络图;基于网络图中的路径获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块或单元的名称在某种情况下并不构成对该单元本身的限定,例如,网络图获取模块还可以被描述为“获取网络图的模块”。

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

根据本公开的一个或多个实施例,本公开实施例提供了一种网络图中的路径获取方法,包括:

基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点;

基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,得到至少一个新的变动节点;

重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,直至网络图中不存在变动节点,得到目标网络图;

基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

根据本公开的一个或多个实施例,基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,包括:

基于每个变动节点的路径数组中变动的路径信息对应的连接路径、以及该变动节点与每个直连节点之间的直连路径,组合得到对应的组合路径;

基于组合路径,更新该直连节点的路径数组的路径信息。

根据本公开的一个或多个实施例,基于组合路径,更新该直连节点的路径数组的路径信息,包括:

若每个直连节点的路径数组中的路径信息的条数少于预设数值,则将该直连节点对应的组合路径的路径信息存储至该直连节点的路径数组中;

若每个直连节点的路径数组中的路径信息的条数等于预设数值,则用该直连节点对应的组合路径的路径信息,替换该直连节点的路径数组中的对应于最长路径的路径信息。

根据本公开的一个或多个实施例,基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径,包括:

将任一节点的路径数组中存储的路径信息对应的连接路径,作为目标节点与任一节点之间的目标路径。

根据本公开的一个或多个实施例,该方法还包括:

在基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组之前,为网络图中的每个节点初始化对应的长度为预设数值的路径数组。

根据本公开的一个或多个实施例,本公开实施例提供了一种路由组网的维护方法,包括:

获取路由组网对应的网络图;

基于网络图中的路径获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;

将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

根据本公开的一个或多个实施例,本公开实施例提供了一种网络图中目标路径的获取装置,包括:

第一路径数组更新模块,用于基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组的路径信息,得到至少一个变动节点,其中,路径数组用于存储对应的节点与目标节点之间的至少一条路径,变动节点为对应的路径数组中存储的路径发生变化的节点为正整数;

第二路径数组更新模块,用于基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息,更新该直连节点的路径数组,得到至少一个新的变动节点;

循环模块,用于重复执行基于每个变动节点的路径数组中变动的路径信息对应的连接路径,更新该变动节点的每个直连节点的路径数组的路径信息的步骤,得到目标网络图;

目标路径获取模块,用于基于目标网络图中任一节点的路径数组,获取目标节点与任一节点之间的至少一条目标路径。

根据本公开的一个或多个实施例,第二路径数组更新模块具体用于:

基于每个变动节点的路径数组中变动的路径信息对应的连接路径、以及该变动节点与每个直连节点之间的直连路径,组合得到对应的组合路径;

基于组合路径,更新该直连节点的路径数组的路径信息。

根据本公开的一个或多个实施例,第二路径数组更新模块进一步用于:

若每个直连节点的路径数组中的路径信息的条数少于预设数值,则将该直连节点对应的组合路径的路径信息存储至该直连节点的路径数组中;

若每个直连节点的路径数组中的路径信息的条数等于预设数值,则用该直连节点对应的组合路径的路径信息,替换该直连节点的路径数组中的对应于最长路径的路径信息。

根据本公开的一个或多个实施例,目标路径获取模块具体用于:

将任一节点的路径数组中存储的路径信息对应的连接路径,作为目标节点与任一节点之间的目标路径。

根据本公开的一个或多个实施例,该装置还可以包括路径数组设置模块,用于:

在基于网络图中目标节点的每个直连节点与目标节点之间的直连路径,更新该直连节点的路径数组之前,为网络图中的每个节点初始化对应的长度为预设数值的路径数组。

根据本公开的一个或多个实施例,本公开实施例提供了一种路由组网的维护装置,包括:

网络图获取模块,用于获取路由组网对应的网络图;

目标通信路径获取模块,用于基于网络图中的路径获取方法,获取网络图中任意两个中心路由节点之间的至少一条目标通信路径;

通信路径切换模块,用于将至少一条目标通信路径中的任一条通信路径作为任意两个中心路由节点之间的通信路径,并在任一条通信路径发生故障时,将至少一条目标通信路径中另一条通信路径作为任意两个中心路由节点之间的通信路径。

根据本公开的一个或多个实施例,本公开提供了一种电子设备,包括存储器和处理器;

存储器中存储有计算机程序;

处理器,用于执行计算机程序以实现上述一个或多个实施例中的方法。

根据本公开的一个或多个实施例,本公开提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述一个或多个实施例中的方法。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

相关技术
  • 网络图中的路径获取方法及路由组网的维护方法
  • 网络图中的路径获取方法及路由组网的维护方法
技术分类

06120112407145