首页> 中国专利> 路径设置服务器、路径设置方法和路径设置程序

路径设置服务器、路径设置方法和路径设置程序

摘要

一种路径设置服务器,具有存储单元和路径计算单元。指示每个节点的下一跳候选的下一跳信息被存储在存储单元中。响应于指示流的源节点和目的地节点的路由设置请求,路径计算单元设计其间的通信路径。更具体地,路径设计单元包括下一跳确定单元,其在参考下一跳信息的同时执行“下一跳确定处理”。在下一跳确定处理中,下一跳确定单元为目标节点随机地选择下一跳候选节点之一,并且将目标节点更新为所选择的候选。在将目标节点初始化为源节点之后,下一跳确定单元通过重复下一跳确定处理直到目标节点变为目的地节点而每次一跳地确定通信路径。

著录项

  • 公开/公告号CN102362470A

    专利类型发明专利

  • 公开/公告日2012-02-22

    原文格式PDF

  • 申请/专利权人 日本电气株式会社;

    申请/专利号CN201080013592.0

  • 发明设计人 下西英之;

    申请日2010-03-23

  • 分类号H04L12/56;

  • 代理机构北京市金杜律师事务所;

  • 代理人王茂华

  • 地址 日本东京都

  • 入库时间 2023-12-18 04:38:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-04-10

    未缴年费专利权终止 IPC(主分类):H04L12/701 授权公告日:20150128 终止日期:20170323 申请日:20100323

    专利权的终止

  • 2015-01-28

    授权

    授权

  • 2012-04-04

    实质审查的生效 IPC(主分类):H04L12/56 申请日:20100323

    实质审查的生效

  • 2012-02-22

    公开

    公开

说明书

技术领域

本发明涉及通过使用路由设置服务器来确定通信网络中的流的 通信路由的技术。

背景技术

已知一种通信网络系统,在该系统中,管理服务器执行对包括 多个节点的通信网络的集中式管理。当接收到关于流的路由设置请 求时,管理服务器确定该通信网络中的流的通信路由。此后也将确 定流的通信路由的此类管理服务器称为“路由设置服务器”。

作为用于计算从源节点到目的地节点的最短路由的算法, “Dijkstra算法”是公知的。然而,在源节点与目的地节点之间执行 多个流的通信的情况中,简单地使用Dijkstra算法导致相同的通信路 由(最短路由)被用于多个流。这使得施加在通信路由上的负载增 加并且因此降低通信效率。

为了对负载进行分布,优选的是为同一对源节点和目的地节点 之间的不同流设置不同的通信路由。为此,考虑不仅提取最短路由 还提取源节点与目的地节点之间的其他通信路由。以下称作用于计 算从源节点到目的地节点的多个通信路由的技术。

专利文献1(日本专利公开JP-2003-233768)描述了一种通过使 用双Dijkstra算法来计算从起点到终点的多个通信路由。更具体地, 关于所有中间节点,Dijkstra算法从起点创建各个最短路由树。而且, 关于所有中间节点,Dijkstra算法从终点创建各个最短路由树。然后, 组合两种最短路由树来计算从起点到终点通过各个不同中间节点的 多个通信路由。此外,在专利文献2(日本专利公开JP-2003-23446) 中还描述了通过组合多次Dijkstra算法来计算多个路由的方法。

非专利文献1(Jun Inagaki等的“A method of Determining Various  Solutions for Routing Application with a Genetic Algorithm”,The  Transactions of the Institute of Electronics,Information and  Communication Engineers,D-I,Vol.J82-D-I,No.8(19990825),pp. 1102-1111。)描述了通过使用通用算法来同时计算多个通信路由的 方法。

专利文献3(日本专利公开JP-2007-515906)描述了多跳通信网 络中的代价确定方法。该代价确定方法包括关于网络中从源节点到 目的地节点的多个节点中的至少一个来确定多个同时的可能下一跳 的步骤。多个同时可能的多个节点优化预定的代价函数。此外,该 代价确定方法包括确定多个节点中至少一个的最佳代价,从而等于 预定代价函数的上述最佳值。

引用列表

[专利文献1]日本专利公开JP-2003-233768

[专利文献2]日本专利公开JP-2003-23446

[专利文献3]日本专利公开JP-2007-515906

非专利文献

[非专利文献1]Jun Inagaki等的“A method of Determining  Various Solutions for Routing Application with a Genetic Algorithm”, The Transactions of the Institute of Electronics,Information and  Communication Engineers,D-I,Vol.J82-D-I,No.8(19990825),pp. 1102-1111。

发明内容

为了分发施加在通信网络上的负载,期望针对相同的源节点和 目的地节点对之间的不同流设置不同的通信路由。为此,考虑计算 从源节点到目的地节点的多个通信路由,如上述相关技术中描述的。 当新的流出现时,可以这样来分发负载:从多个通信路由中选择合 适的一个,并且继而向新的流分配所选择的通信路由。

然而,根据上文描述的有关技术,确定通信路由的路由设置服 务器中的计算量变得巨大。在采用Dijkstra算法的情况中,计算量与 节点的总数成比例地指数增加。例如,在8维超立方体网络的情况 中,源节点与目的地节点之间的通信路由具有约四万种模式,并且 预先计算所有它们实际上是不可能的。而且,在采用通用算法的情 况中,问题在于计算需要长的收敛时间并且计算量仍旧巨大。

本发明的目的是当通过使用路由设置服务器来确定流的通信路 由时减少路由设置服务器中的计算量。

在本发明的一个方面中,提供了一种路由设置服务器,该路由 设置服务器确定包括多个节点的通信网络中的流的通信路由。路由 设置服务器具有存储单元和路由设计单元。在存储单元中存储下一 跳信息,其中对于所述多个节点中的每一个,所述下一跳信息指示 作为数据转发目的地的下一跳节点的候选。响应于指定流的源节点 和目的地节点的路由设置请求,路由设计单元设计从源节点到目的 地节点的通信路由。更具体地,路由设计单元具有:下一跳确定单 元,被配置为参考下一跳信息执行“下一跳确定处理”;环检测单 元;以及环删除单元。在下一跳确定处理中,下一跳确定单元从关 于目标节点的下一跳节点的候选随机地选择一个下一跳节点,并且 将目标节点更新为上述选择的一个下一跳节点。下一跳确定单元通 过如下方式来逐跳地确定通信路由:将目标节点初始化为源节点, 继而重复下一跳确定处理直到目标节点成为目的地节点。环检测单 元检查当前目标节点是否与过去的目标节点重叠,以检测到那时为 止确定的通信路由上的环。如果检测到环,则环删除单元通过将目 标节点转回到任何过去的目标节点来删除环。在删除环之后,下一 跳确定单元从上述任何过去的目标节点重新开始下一跳确定处理。

在本发明的另一方面中,提供一种通信网络系统。该通信网络 系统具有:通信网络,包括多个节点;以及路由设置服务器,确定 通信网络中的流的通信路由。路由设置服务器具有存储单元和路由 设计单元。下一跳信息存储在存储单元中,其中对于多个节点中的 每一个,下一跳信息指示作为数据转发目的地的下一跳节点的候选。 响应于指定流的源节点和目的地节点的路由设置请求,路由设计单 元设计从源节点到目的地节点的通信路由。更具体地,该路由设计 单元具有:下一跳确定单元,被配置为参考下一跳信息来执行“下 一跳确定处理”;环检测单元;以及环删除单元。在下一跳确定处 理中,下一跳确定单元从关于目标节点的下一跳节点的候选随机地 选择一个下一跳节点,并且将目标节点更新为上述选择的一个下一 跳节点。下一跳确定单元通过如下方式逐跳地确定通信路由:将目 标节点初始化为源节点,继而重复下一跳确定处理直到目标节点成 为目的地节点。环检测单元检查当前目标节点是否与过去的目标节 点重叠,以检测到那时为止确定的通信路由上的环。如果检测到环, 则环删除单元通过将目标节点转回到任何过去的目标节点来删除 环。在删除环之后,下一跳确定单元从上述任何过去的目标节点重 新开始下一跳确定处理。

在本发明的又一方面中,提供一种路由设置方法,该方法确定 包括多个节点的通信网络中的流的通信路由。该路由设置方法包括 (A):在存储设备中存储下一跳信息,其中对于多个节点中的每一 个,下一跳信息指示作为数据转发目的地的下一跳节点的候选;以 及(B)响应于指定流的源节点和目的地节点的路由设置请求来设计 从源节点到目的地节点的通信路由。上述(B)步骤包括:(B1): 参考下一跳信息执行“下一跳确定处理”。这里,下一跳确定处理 包括:从关于目标节点的下一跳节点的候选随机地选择一个下一跳 节点。上述(B)步骤还包括:(B2)通过将目标节点初始化为源节 点并且继而重复下一跳确定处理直到目标节点成为目的地节点来逐 跳地确定通信路由;(B3)检查当前目标节点是否与过去的目标节 点重叠以检测到那时为止确定的通信路由上的环;(B4)如果检测 到环,则通过将目标节点转回到任何过去的目标节点来删除环;以 及(B5)在删除环之后,从任何过去的目标节点重新开始下一跳确 定处理。

在本发明的又一方面中,提供一种路由设置程序,其使得计算 机执行路由设置处理,该路由设置处理确定包括多个节点的通信网 络中的流的通信路由。该路由设置处理包括:(A)在存储设备中存 储下一跳信息,其中对于多个节点中的每一个,下一跳信息指示作 为数据转发目的地的下一跳节点的候选;以及(B)响应于指定流的 源节点和目的地节点的路由设置请求来设计从源节点到目的地节点 的通信路由。上述(B)步骤包括:(B1)参考下一跳信息执行“下 一跳确定处理”。这里,下一跳确定处理包括:从关于目标节点的 下一跳节点的候选随机地选择一个下一跳节点;以及将目标节点更 新为选择的一个下一跳节点。上述(B)步骤还包括:(B2)通过将 目标节点初始化为源节点并且继而重复下一跳确定处理直到目标节 点成为目的地节点来逐跳地确定通信路由;(B3)检查当前目标节 点是否与过去的目标节点重叠以检测到那时为止确定的通信路由上 的环;(B4)如果检测到环,则通过将目标节点转回到任何过去的 目标节点来删除环;以及(B5)在删除环之后,从所述任何过去的 目标节点重新开始下一跳确定处理。

根据本发明,当通过使用路由设置服务器来确定通信网络中的 流的通信路由时,降低路由设置服务器中的计算量是可能的。

附图说明

结合附图,根据某些示例性实施方式的以下描述,本发明的上 述和其他目的、优势和特征将更明显。

图1是示出了根据本发明一个示例性实施方式的通信网络系统 的示意图。

图2是示出了从源节点到目的地节点的多个通信路由的概念图。

图3是示出了根据本发明第一示例性实施方式的、路由设置服 务器的配置的框图。

图4是示出了目标节点、目的地节点与下一跳节点之间的关系 的概念图。

图5是示出了路由表的概念图。

图6是示出了根据第一示例性实施方式的路由设置方法的流程 图。

图7是示出了路由节点列表的概念图。

图8是示出了第一示例性实施方式中下一跳确定处理的流程图。

图9是示出了根据本发明第二示例性实施方式的、路由设置服 务器的配置的框图。

图10是示出了路由高速缓存信息的概念图。

图11是示出了根据第二示例性实施方式的、路由设置方法的流 程图。

图12是示出了根据本发明第三示例性实施方式的、路由设置服 务器的配置的框图。

图13是示出了链路代价表的概念图。

图14是示出了路由代价表的概念图。

图15是示出了第三示例性实施例中下一跳确定处理的流程图。

具体实施方式

将参考附图来描述本发明的示例性实施方式。

1.通信网络系统

图1是示出了根据本发明一个示例性实施方式的通信网络系统1 的示意图。通信网络系统1具有包括多个节点5的通信网络NET。 在本示例性实施方式中,通信网络NET包括n个节点5-1到5-n(n 是等于或大于2的整数)。

该通信网络系统1还具有路由设置服务器10。路由设置服务器 10是管理服务器(管理计算机),该管理服务器执行通信网络NET 的集中式管理并且能够与多个节点5-1到5-n进行双向通信。特别地, 路由设置服务器10确定在通信网络NET中流的通信路由。更具体 地,当流出现时,路由设置服务器10从通信网络NET接收关于流 的路由设置请求。该路由设置请求指定流的源节点和目的地节点。 响应于路由设置请求,路由设置服务器10确定从源节点到目的地节 点的通信路由。

当通信路由被确定时,路由设置服务器10指示确定通信路由上 的每个节点5沿确定的通信路由转发流的数据(分组、帧)。每个 节点5根据该指令执行自身的设置。

例如,每个节点5配备有“转发表”。转发表是指示流数据(分 组、帧)的输入源与转发目的地之间对应关系的表。每个节点5可 以通过参考转发表向指定转发目的地转发从输入源接收的流数据。 在该情况中,路由设置服务器10指示每个节点5设置转发表,使得 流数据沿着所确定的通信路被转发。每个节点5根据来自于路由设 置服务器10的指令来设置其自己的转发表的内容。

各种接口作为路由设置服务器10和节点5之间用于实现上述处 理的接口都是可能的。例如,openflow(参考 http://ww.openflowswith.org)是适用的。在该情况中,“Openflow 控制器”服务器作为路由设置服务器10并且“Openflow交换机”服 务器作为每个节点5。通过使用Openflow的“源信道”设置转发表 是可能的。

2.路由设置处理的概述

图2是示出了从源节点5-S到目的地节点5-D的多个通信路由的 概念图。在很多情况中,存在从源节点5-S到目的地节点5-D的多 个通信路由,如图2所示。每个通信路由包括某些中继节点5-r,并 且不同的通信路由通过中继节点5-r的不同组合来配置。为了分布施 加在通信网络NET上的负载,期望针对同一对源节点5-S与目的地 节点5-D之间的不同流设置不同的通信路由。

根据本示例性实施方式的路由设置服务器10确定流的通信路 由,使得施加在通信网络NET上的负载被分布。即,路由设置服务 器10可以针对同一对源节点5-S与目的地节点5-D之间的不同流确 定了不同的通信路由。为此,当“随机”地确定流的通信路由时, 路由设置服务器10逐跳地确定从流的源节点5-S朝向目的地节点 5-D的中继节点5-r。即,在确定路由时,针对每跳引入随机性。结 果,非常可能为不同的流确定不同的通信路由。因此,施加在通信 网络NET上的负载被分布并且因此改进了通信效率。

根据本示例性实施方式,当确定流的通信路由时,不需要计算 从源节点5-S到目的地节点5-D的多个通信路由。相反,针对每跳 选择中继节点5-r的候选中随机的一个。在该情况中,在路由设置服 务器10中的计算次数最多是通信路由上的总跳数。因此,路由设置 服务器10中的计算量被大大降低。即,根据本示例性实施方式,可 以分布施加在通信网络NET上的负载并且降低路由设置服务器10 中的计算量。

应该注意,如上所述的路由设置处理可以由执行路由设置程序 的路由设置服务器10实现。路由设置程序是由路由设置服务器10 执行的计算机程序。路由设置程序可以记录在有形计算机可读记录 介质上。

3.路由设置服务器的各种示例

3-1.第一示例性实施方式

图3是示出了根据本发明第一示例性实施方式的路由设置服务 器10的配置的框图。路由设置服务器10具有网络信息收集管理单 元100、存储单元200和路由设计单元300。

网络信息收集管理单元100收集网络信息INF。网络信息INF 是关于通信网络NET的信息并且包括关于节点5之间的连接状态以 及链路代价的信息。基于收集的网络信息INF,网络信息收集管理单 元100创建并且更新存储在存储单元200中的各种信息和表。应该 注意,网络信息收集管理单元100由执行路由设置程序的路由设置 服务器10实现。

存储单元200是诸如RAM和HDD的存储设备。拓扑信息210、 路由表220-1到220-n、路由节点列表230等存储在存储单元200中。

拓扑信息210指示节点5之间的连接状态,即通信网络NET的 物理拓扑。拓扑信息210由网络信息收集管理单元100创建并且更 新。

接下来,为了阐释路由表220,将参考图4描述“目标节点”和 “下一跳节点”。目标节点5-i是5-1到5-n(i=1到n)中的任意一 个。目的地节点5-j是节点5-1到5-n中的任意一个并且不同于目标 节点5-i(j=1到n,j≠i)。考虑从目标节点5-i向目的地节点5-j传 送流数据的情况。在该情况中,作为来自于目标节点5-i的流数据的 转发目的地下一节点是“下一跳节点5-ij”。即,下一跳节点5-ij是 数据流将要通过的、从目标节点5-i的下一跳的节点。关于目标节点 5-i,可以存在下一跳节点5-ij的多个候选。当存在m个候选(m是 自然数)时,各候选表示为5-ij(1)到5-ij(m)。一般而言,对于 目标节点5-i,存在下一跳节点候选5-ij(k);k=1到m。应该注意, 下一跳节点候选5-ij(k)可以从目的地节点5-j后退。

路由表220充当指示上述下一跳节点候选的“下一跳信息”。 更具体地,路由表220-1到220-n分别为节点5-1到5-n而准备。即, 目标节点5-i和路由表220-i相互关联。路由表220-i指示关于目标 节点5-i的下一跳节点候选5-ij(k)。

图5示出了关于目标节点5-i的路由表220-i的示例。如图5所 示,路由表220-i指示关于每个目的地节点5-j(j=1到n,j≠i)的 下一跳节点候选5-ij(k)。此外,路由表220-i指示针对每个下一跳 节点候选5-ij(k)定义的“选择概率Pij(k)”。选择概率Pij(k) 是从m个下一跳节点候选5-ij(1)到5-ij(m)中选择下一跳节点 5-ij(k)的概率。m个选择概率Pij(k)的和是1。

[公式1]

Σk=1mPij(k)=1···(1)

可以采用各种方法作为用于计算选择概率Pij(k)的方法。例如, 计算通过下一跳节点候选5-ij(k)从目标节点5-i到目的地节点5-j 的最短路由的代价(路由代价)。路由代价是组成路由的各个链路 的链路代价的和。当带宽较低、可用容量较小、延迟时间较长以及 分组丢失数量较大时,链路代价将会增加。然后,将与计算出的路 由代价成反比例的值用作选择概率Pij(k)。通过使用上述网络信 息INF和拓扑信息210,网络信息收集管理单元100计算每个选择概 率Pij(k)并且创建和更新每个路由表220-i。

再次参考图3,存储在存储单元200中的路由节点列表230是指 示由下文描述的路由设计单元300设计的通信路由的信息。

路由设计单元300由执行路由设置程序的路由设置服务器10实 现。路由设计单元300包括下一跳确定单元330、环检测单元350、 环删除单元370和节点设置单元390。这些功能块参考存储在存储单 元200中的信息和表以执行根据本示例性实施方式的路由设置处理。 图6是示出了根据第一示例性实施方式的路由设置处理的流程图。 图7概念性地示出了路由节点列表230。此后,将更详细地描述根据 本示例性实施方式的路由设置处理。

步骤S10:

当流出现时,路由设计单元300接收关于来自于通信网络NET 的流的路由设置请求REQ。路由设置请求REQ指定流的源节点5-S 和目的地节点5-D。

步骤S320:

下一跳确定单元330接收路由设置请求REQ并且识别源节点 5-S和目的地节点5-D。然后,下一跳确定单元330将目标节点5-i 初始化为源节点5-S。下一跳确定单元330将源节点5-S写作路由节 点列表230的第一条目(参见图7)。

步骤S330:

下一跳确定单元330关于当前目标节点5-i执行“下一跳确定处 理”。在下一跳确定处理中,下一跳确定单元330通过参考与目标 节点5-i相关联的路由表220-i(下一跳信息)而“随机地”选择下 一跳节点。图8是示出了本示例性实施方式中下一跳确定处理的流 程图。

步骤S331:

下一跳确定单元330参考当前目标节点5-i的路由表220-i。然 后,下一跳确定单元330提取朝向目的地节点5-j(=节点5-D)的下 一跳节点候选5-ij(1)。

步骤S335:

随后,下一跳确定单元330从提取的下一跳节点候选5-ij(1) 到5-ij(m)随机地选择一个下一跳节点5-ij。例如,下一跳确定单 元330利用随机数和选择概率Pij(k)。从路由表220-i读出下一跳 节点候选5-ij(k)的选择概率Pij(k)。

作为示例,考虑m=3并且下一跳节点候选5-ij(1)到5-ij(3) 的选择概率Pij(1)到Pij(3)分别是0.2、0.3和0.5的情况。在该 情况中,关于下一跳节点候选5-ij(1)到5-ij(3)的数值范围根据 各个选择概率Pij(1)到Pij(3)来定义。例如,下一跳确定单元 330将不小于0.0并且小于0.2的范围与下一跳节点候选5-ij(1)相 关联,将不小于0.2并且小于0.5的范围与下一跳节点候选5-ij(2) 相关联,以及将不小于0.5并且小于1.0的范围与下一跳节点候选5-ij (3)相关联。然后,下一跳确定单元330生成不小于0.0并且小于 0.2的范围内的随机数X。下一跳确定单元330选择与包括生成随机 数X的数值范围相关联的下一跳节点候选。例如,如果随机数X是 0.3,则下一跳确定单元330选择下一跳节点候选5-ij(2)。这样, 一个下一跳节点5-ij可以根据上述选择概率Pij(k)来随机地选择。

步骤S336:

当选择下一跳节点5-ij时,下一跳确定单元330将所选的下一跳 节点5-ij作为中继节点5-r添加到路由节点列表230(参见图7)。 而且,下一跳确定单元330将目标节点5-i更新为所选的下一跳节点 5-ij。

步骤S340:

返回到图6,在完成了下一跳确定处理(步骤330)之后,下一 跳确定单元330检查过去更新的目标节点5-i(选择的下一跳节点) 是否变为目的地节点5-D。换言之,下一跳确定单元330检查目标节 点5-i是否达到目的地节点5-D。

步骤S350:

如果目标节点5-i仍旧没有达到目的地节点5-D(步骤S340;否), 则环检测单元350确定到那时为止确定的路由上是否出现环。更具 体地,环检测单元350参考路由节点列表230以检查当前的目标节 点5-i(路由节点列表230中底部的条目)是否与过去的目标节点(除 底部条目之外的条目)重叠。如果当前的目标节点5-i与任意过去的 目标节点重叠,则环检测单元350检查到那时为止确定的路由上是 否出现环。

如果没有出现环(步骤S350;否),则处理返回到步骤S330, 并且下一跳确定单元330关于新的目标节点5-i执行下一跳确定处 理。另一方面,如果检测到环(步骤S350;是),则处理前进到步 骤S370。

步骤S370:

环删除单元370删除检测到的环。为此,环删除单元370从底 部删除路由节点列表230上记录的某些条目。即,环删除单元370 将目标节点5-i转回到任何过去的目标节点。换言之,环删除单元 370使得到那时为止确定的路由退化。

考虑用于条目删除的某些策略。例如,环删除单元370删除路 由节点列表230中的最后条目。这等于将目标节点5-i只转回一跳。 备选地,环删除单元370可以删除直到起始位置(重叠节点首次出 现的位置)的条目。这等于将目标节点5-i从当前节点转回到与当前 节点重叠的过去的节点。备选地,环删除单元370可以通过参考具 有逐条返回的路由表220-i以删除直到选择概率Pij(k)开始减小的 位置。

步骤S330’:

在环删除单元370删除环之后,下一跳确定单元330从新目标 节点5-i重新开始下一跳确定处理(步骤S330)。在该重新确定处 理中,下一跳确定单元330可以排除先前从候选选择的下一跳节点 5-ij。在该情况中,下一跳确定单元330随机地选择除先前从下一跳 节点候选5-ij(1)到5-ij(m)中选择的节点之外的一个下一跳节点。 如果下一跳节点候选仅包括先前选择的节点,则下一跳确定单元330 进一步删除路由节点列表230中的最后条目以将目标节点5-i仅转回 一跳,并且继而重新开始下一跳确定处理。在下一跳确定处理之后, 处理返回到步骤S340。

重复上述处理,并且下一跳确定单元330从源节点5-S朝向目的 地节点5-D逐跳地随机确定中继节点5-r。最终,目标节点5-i达到 目的地节点5-D(步骤S340;是)。即,确定了从源节点5-S到目 的地节点5-D的通信路由。这样,根据本示例性实施方式的下一跳 确定单元330通过重复下一跳确定处理而随机地并且逐跳地确定了 从源节点5-S到目的地节点5-D的通信路由。

步骤S390:

在确定了通信路由之后,节点设置单元390指示所确定的通信 路由上的每个节点5沿确定的通信路由转发流数据(分组、帧)。 更具体地,节点设置单元390向路由节点列表230上注册的每个节 点5传输转发表设置命令CMD。该转发表设置命令CMD是用以指 示设置转发表从而沿上述确定的通信路由转发流数据的指令。

确定的通信路由上的每个节点5从路由设置服务器10接收转发 表设置命令CMD并且根据该命令设置其自己的转发表内容。结果, 从源节点5-D向目的地节点5-D传输流数据。

3-2.第二示例性实施方式

图9是示出了根据本发明第二示例性实施方式的、路由设置服 务器10的配置的框图。将适当省略与第一示例性实施方式重复的描 述。根据第二示例性实施方式,路由高速缓存信息240进一步存储 在存储单元200中。而且,路由设计单元300还包括高速缓存搜索 单元310。

图10概念性地示出了路由高速缓存信息240。路由高速缓存信 息240指示关于源节点5-S和目的地节点5-D的组合的通信路由的 候选(此后称作“路由候选”)。这里,路由候选是过去确定的通 信路由(路由节点列表230)。多个路由候选可以已经针对源节点 5-S和目的地节点5-D的组合而存在。

如图10所示,还关于每个路由候选定义选择概率。针对在确定 路由候选(路由节点列表230)时选择的所有下一跳节点5-ij(k) 的选择概率Pij(k)的乘积来获得路由候选的概率。

图11是示出了根据本示例性实施方式的、路由设置处理的流程 图。步骤S10与第一示例性实施方式的情况相同。根据第二示例性 实施方式,高速缓存搜索单元310首先接收路由设置请求REQ。

步骤S310:

响应于路由设置请求REQ,高速缓存搜索单元310搜索路由高 速缓存信息240。即,高速缓存搜索单元310检查路由高速缓存信息 240是否包括关于路由设置请求REQ所指定的源节点5-S和目的地 节点5-D的组合的路由候选(过去的路由节点列表230)。

步骤S312:

在高速缓存命中的情况下,即,在路由高速缓存信息240包括 与路由设置请求REQ相关联的路由候选的情况下(步骤S311;是), 高速缓存搜索单元310从路由高速缓存信息240提取所有路由候选。 存在多个路由候选的情况也是存在的。因此,高速缓存搜索单元310 从提取的路由候选中随机地选择通信路由。更具体地,如同在上述 下一跳节点候选选择处理(步骤S335)的情况一样,随机数和路由 候选的选择概率被使用。应该注意,对于路由候选,选择概率的和 不一定是1。因此,即使存在某些路由候选,但根据生成的随机数, 可以不选择一个路由候选。在这个意义上,从路由候选中对通信路 由的选择是随机的。

步骤S314:

如果从路由候选选择了一个通信路由(步骤S313;是),高速 缓存搜索单元310采用选择的通信路由(路由节点列表230)作为此 次的通信路由。此后,略过上述步骤S320到S370并且处理前进到 步骤S390。

如果路由高速缓存信息240不包括与路由设置请求REQ相关联 的任何路由候选(步骤S311;否)或没有从路由候选选择通信路由 (步骤S313;否),则高速缓存搜索单元310向下一跳确定单元330 转发路由设置请求REQ。此后,如在第一示例性实施方式的情况中, 执行步骤S320到S370,并且根据路由设置请求REQ确定通信路由。

S380:

下一跳确定单元330向路由高速缓存信息240添加所确定的新 通信路由(路由节点列表230)。对于路由设置请求REQ此次所指 定的源节点5-S和目的地节点5-D的组合而言,所添加的通信路由 称为新路由候选。此后,处理前进到步骤S390。

根据本示例性实施方式,在高速缓存命中的情况下,可以缩短 确定通信路由的时间。

3-3.第三示例性实施方式

图12是示出了根据本发明第三示例性实施方式的、路由设置服 务器10的配置的框图。与第一示例性实施方式的重复描述将适当省 略。根据第三示例性实施方式,链路代价表250和路由代价表260 代替路由表220-1到220-n存储在存储单元200中。

图13概念性地示出了链路代价表250。链路代价表250指示关 于每个链路的代价。一个链路由链路起点节点和作为相邻节点的链 路终点节点定义。链路起点节点和链路终点节点彼此距离一跳。因 此,链路代价表250也充当指示关于每个节点5的下一跳节点候选 的“下一跳信息”。

图14概念性地示出了路由代价表260。路由代价表260指示针 对源节点5-1到5-n和目的地节点5-1到5-n的所有组合的路由代价。 路由代价是构成从源节点到目的地节点的最短路由的各个链路的链 路代价的和。任意两个节点之间的路由代价可以通过参考路由代价 表260获得。

链路代价表250和路由代价表260也由网络信息收集管理单元 100创建和更新。

根据第三示例性实施方式,在下一跳确定处理中参考链路代价 表250和路由代价表260而非路由表220(步骤S330)。其他方面 与第一示例性实施方式中的情况相同。图15是示出了本示例性实 施例中下一跳确定处理(步骤S330)的流程图。

步骤S332:

下一跳确定单元330参考链路代价表250以提取关于目标节点 5-i的下一跳节点候选5-ij(k)。更具体地,下一跳确定单元330提 取其链路起点节点与链路代价表250中的目标节点5-i相同的条目。 包括在所提取条目中的链路终点节点是下一跳节点候选5-ij(k)。

步骤S333:

随后,下一跳确定单元330计算通过下一跳节点候选5-ij(k) 从目标节点5-i到目的地节点5-j的路由的路由代价。从目标节点5-i (链路起点节点)到下一跳节点候选(链路终点节点)的路由代价 是链路代价表250所指示的链路代价。可以从路由代价表260获得 从下一跳节点候选5-ij(k)到目的地节点5-j的路由代价。两个路由 代价的和是要计算的路由代价。而且,下一跳确定单元330基于计 算的路由代价来计算下一跳节点候选5-ij(k)的选择概率Pij(k)。 路由代价与选择概率Pij(k)直接的关系与第一示例性实施方式情 况中的相同。

以此方式,下一跳确定单元330可以提取下一跳节点候选5-ij (k)并计算选择概率Pij(k)。即,可以获得如由第一示例性实施 方式中的路由表220-i(参见图5)给出的相同信息。此后,如第一 示例性实施方式的情况中那样执行步骤S335和S336。

应该注意,还可以组合第二示例性实施方式与第三示例性实施 方式。

虽然已经参考附图在上面描述了本发明的示例性实施方式,但 是本发明不限于这些示例性实施方式并且可以本领域技术人员可以 在不脱离本发明的精神和范围的情况下进行适当修改。

虽然可以将上述示例性实施方式的部分或整体描述为以下补充 注释,但是其不限于此。

(补充注释1)

一种路由设置服务器,所述路由设置服务器确定包括多个节点 的通信网络中的流的通信路由,

所述路由设置服务器包括:

存储单元,其中存储有关于所述多个节点中每一个的下一跳信 息,其中所述下一跳信息指示作为数据转发目的地的下一跳节点的 候选;以及

路由设计单元,被配置为响应于指定流的源节点和目的地节点的 路由设置请求而设计从所述源节点到所述目的地节点的通信路由,

其中所述路由设计单元包括:

下一跳确定单元,被配置为参考所述下一跳信息执行下一跳确定 处理;

环检测单元;以及

环删除单元,

其中在所述下一跳确定处理中,所述下一跳确定单元从关于目标 节点的所述下一跳节点的所述候选中随机地选择一个下一跳节点并 且将所述目标节点更新为所述选择的一个下一跳节点,

其中所述下一跳确定单元通过将所述目标节点初始化为所述源 节点并且继而重复所述下一跳确定处理直到所述目标节点成为所述 目的地节点来逐跳地确定所述通信路由,

其中所述环检测单元检查当前目标节点是否与过去的目标节点 重叠以检测到那时为止确定的所述通信路由上的环,

其中如果检测到所述环,则所述环删除单元通过将所述目标节点 转回到任何过去的目标节点来删除所述环,以及

其中在删除所述环之后,所述下一跳确定单元从所述任何过去的 目标节点重新开始下一跳确定处理。

(补充注释2)

根据补充注释1所述的路由设置服务器,

其中所述环删除单元通过将所述目标节点只转回一跳来删除所 述环。

(补充注释3)

根据补充注释1所述的路由设置服务器,

其中所述环删除单元通过将所述目标节点转回到与所述当前目 标节点重叠的节点来删除所述环。

(补充注释4)

根据补充注释1至3中任一项所述的路由设置服务器,

其中当重新开始所述下一跳确定处理时,所述下一跳确定单元从 所述候选排除先前选择的下一跳节点。

(补充注释5)

根据补充注释4所述的路由设置服务器,

其中如果所述候选仅包括先前选择的下一跳节点,则所述下一跳 确定单元进一步将所述目标节点只转回一跳并且继而重新开始所述 下一跳确定处理。

(补充注释6)

根据补充注释1至5中任一项所述的路由设置服务器,

其中关于所述目标节点的所述候选包括第一候选和第二候选,

其中在所述下一跳确定处理中,所述下一跳确定单元生成预定范 围内的随机数,

其中如果所述生成的随机数处于所述预定范围内包括的第一范 围内,则所述下一跳确定单元选择所述第一候选,以及

其中如果所述生成的随机数处于所述预定范围内包括的第二范 围内,则所述下一跳确定单元选择所述第二候选。

(补充注释7)

根据补充注释6所述的路由设置服务器,

其中根据所述第一候选被选择的第一选择概率来确定所述第一 范围,以及

根据所述第二候选被选择的第二选择概率来确定所述第二范围。

(补充注释8)

根据补充注释7所述的路由设置服务器,

其中所述第一选择概率与通过所述第一候选从所述目标节点到 所述目的地节点的路由的代价成反比,以及

所述第二选择概率与通过所述第二候选从所述目标节点到所述 目的地节点的路由的代价成反比。

(补充注释9)

根据补充注释1至8中任一项所述的路由设置服务器,

其中路由高速缓存信息被进一步存储在所述存储单元中,

其中所述路由高速缓存信息指示过去确定的、关于所述源节点和 所述目的地节点的组合的所述通信路由作为路由候选,以及

其中所述下一跳确定单元向所述路由高速缓存信息添加所述确 定的通信路由,以作为关于所述路由设置请求所指定的所述源节点 和所述目的地节点的组合的所述路由候选。

(补充注释10)

根据补充注释9所述的路由设置服务器,

其中所述路由设计单元还包括高速缓存搜索单元,

其中所述高速缓存搜索单元响应于所述路由设置请求来搜索所 述路由高速缓存信息,以及

其中如果所述路由高速缓存信息包括与所述路由设置请求相关 联的所述路由候选,则所述高速缓存所述单元随机地从所述路由候 选选择所述通信路由。

(补充注释11)

根据补充注释1至10中任一项所述的路由设置服务器,

其中所述路由设计单元还包括节点设置单元,

其中所述节点设置单元指示所述确定的通信路由上的每个节点 沿所述确定的通信路由转发所述流的数据。

(补充注释12)

一种通信网络系统包括:

通信网络,包括多个节点;以及

路由设置服务器,被配置为确定所述通信网络中的流的通信路 由,

其中所述路由设置服务器包括:

存储单元,其中存储有关于所述多个节点中的每一个的下一跳信 息,其中所述下一跳信息指示作为数据转发目的地的下一跳节点的 候选;以及

路由设计单元,被配置为响应于指定流的源节点和目的地节点的 路由设置请求而设计从所述源节点到所述目的地节点的通信路由,

其中所述路由设计单元包括:

下一跳确定单元,被配置为参考所述下一跳信息执行下一跳确定 处理;

环检测单元;以及

环删除单元,

其中在所述下一跳确定处理中,所述下一跳确定单元从关于目标 节点的所述下一跳节点的所述候选随机地选择一个下一跳节点并且 将所述目标节点更新为所述选择的一个下一跳节点,

其中所述下一跳确定单元通过将所述目标节点初始化为所述源 节点并且继而重复所述下一跳确定处理直到所述目标节点成为所述 目的地节点来逐跳地确定所述通信路由,

其中所述环检测单元检查当前目标节点是否与过去目标节点重 叠以检测到那时为止确定的所述通信路由上的环,

其中如果检测到所述环,则所述环删除单元通过将所述目标节点 转回到任何过去目标节点来删除所述环,以及

其中在删除所述环之后,所述下一跳确定单元从所述任何过去目 标节点重新开始下一跳确定处理。

(补充注释13)

一种路由设置方法,用于确定包括多个节点的通信网络中的流的 通信路由,

所述路由设置方法包括:

在存储设备中存储关于所述多个节点中的每一个的下一跳信息, 所述下一跳信息指示作为数据转发目的地的下一跳节点的候选;以 及

响应于指定流的源节点和目的地节点的路由设置请求,设计从所 述源节点到所述目的地节点的通信路由,

其中所述设计所述通信路由包括:

参考所述下一跳信息执行下一跳确定处理;

其中所述下一跳确定处理包括:

从关于目标节点的所述下一跳节点的所述候选随机地选择一个 下一跳节点;以及

将所述目标节点更新为所述选择的一个下一跳节点;

通过将所述目标节点初始化为所述源节点并且继而重复所述下 一跳确定处理直到所述目标节点成为所述目的地节点来逐跳地确定 所述通信路由,

检查当前目标节点是否与过去目标节点重叠以检测到那时为止 确定的所述通信路由上的环,

如果检测到所述环,则通过将所述目标节点转回到任何过去目标 节点来删除所述环;以及

在删除所述环之后,从所述任何过去目标节点重新开始下一跳确 定处理。

(补充注释14)

一种其上记录路由设置程序的记录介质,

其中所述路由设置程序使得计算机执行路由设置处理,所述路由 设置处理确定包括多个节点的通信网络中的流的通信路由,

所述路由设置处理包括:

在存储设备中存储关于所述多个节点中的每一个的下一跳信息, 所述下一跳信息指示作为数据转发目的地的下一跳节点的候选;以 及

响应于指定流的源节点和目的地节点的路由设置请求来设计从 所述源节点到所述目的地节点的通信路由,

其中所述设计所述通信路由包括:

参考所述下一跳信息执行下一跳确定处理;

其中所述下一跳确定处理包括:

从关于目标节点的所述下一跳节点的所述候选随机地选择一个 下一跳节点;以及

将所述目标节点更新为所述选择的一个下一跳节点;

通过将所述目标节点初始化为所述源节点并且继而重复所述下 一跳确定处理直到所述目标节点成为所述目的地节点来逐跳地确定 所述通信路由,

检查当前目标节点是否与过去目标节点重叠以检测到那时为止 确定的所述通信路由上的环,

如果检测到所述环,则通过将所述目标节点转回到任何过去目标 节点来删除所述环;以及

在删除所述环之后,从所述任何过去目标节点重新开始下一跳 确定处理。

本申请基于并且要求2009年3月23日提交的日本专利申请No. 2009-069794的优先权,通过引用将其全文公开合并于此。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号