首页> 中国专利> 一种路由实现方法及路由生成装置

一种路由实现方法及路由生成装置

摘要

本发明公开了一种路由实现方法,包括:计算各网络节点到该网络出口节点的路由开销赋值;比较本节点与其相邻节点的路由开销赋值;将开销赋值小于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。根据本发明使所有可行链路都参与到数据转发过程中,可提供更多可达路由,提高网络传输效率。为路由提供了大量可用资源,为实现全网负载均衡提供基础。本发明提出的多下一跳生成算法,简单易行,通信量低。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-07-27

    授权

    授权

  • 2009-09-09

    实质审查的生效

    实质审查的生效

  • 2009-07-15

    公开

    公开

说明书

技术领域

本发明涉及计算机网络及通信领域,具体涉及一种路由实现方法及路由生成装置。

背景技术

当前网络路由多采用单径路由机制,对于到达同一目的地的所有数据分组,每个路由器均将其向由选路算法所确定的同一个下一跳链路进行转发。由于路由协议所采用的路由算法总是计算节点对之间的最优路径,从而导致分组沿最优路径传输,网络流量总是倾向占用处理能力强的节点和链路。网络中不同节点对的最优路径趋向重叠,这使得网络中各节点和链路对于传输信息分组的作用极其不均衡,某些节点和链路被长时间过多地占用,传输负荷过大,时常导致局部网络拥塞,而同时其他的几乎持续闲置。

参见图1,图1中所示网络中的网络节点有A、B1~B3、C1~C3、D1~D3、E1~E3,以节点A作为网络出口节点。

以节点A为出口,采用SPF算法计算得到的单下一跳路由,如图中带有箭头直线所示,带有箭头的直线代表参与路由的链路,箭头表示数据流向,其他直线代表的链路未参与路由。可以看出,网络中的流量集中到E1—>D1—>C1—>B1—>A这条路径上,而此时还有大量可行链路处于闲置。

为了解决这一问题,多径路由技术应运而生。多径路由可以提供传输报文的多条路径,很大程度上改善了单路径传输的拥塞现象。但是,由于多径路由是在单径路由协议基础上进行扩展得到的,本质上仍然遵循单径路由的工作模式,中间节点还是按照固定单下一跳转发报文,使得多径路由具有很大的局限性,只能提供少数几条传输路径,网络还是沿着少数路径进行数据传输,不能使得网络流量整体趋于均衡,不能使得网络资源的利用率趋于均衡。

为此,迫切需要一种新型的路由机制,从根本上消除由于单下一跳路由造成的网络流量不均衡、网络资源利用率不高的问题。

发明内容

有鉴于此,本发明提供一种多下一跳路由的实现方法及路由生成装置,可提供更多可达路由,提高网络传输效率。

本发明实施例提供的一种路由实现方法,包括:

计算各网络节点到该网络出口节点的路由开销赋值;

比较本节点与其相邻节点的路由开销赋值;

将开销赋值小于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;

生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。

本发明实施例还提供一种路由生成装置,包括:

计算单元,用于计算网络节点到该网络出口节点的路由开销赋值;

比较单元,用于比较本节点与其相邻节点的路由开销赋值;

选择单元,选择开销赋值小于和/或等于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;

路由生成单元,用于生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。

综上所述,本发明提出的多下一跳路由实现方法,将开销赋值小于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。根据本发明使所有可行链路都参与到数据转发过程中,可提供更多可达路由,提高网络传输效率。为路由提供了大量可用资源,为实现全网负载均衡提供基础。本发明提出的多下一跳生成算法,简单易行,通信量低;该算法使报文的传输方向得到规范,从根本上避免了网络中环路的产生。

附图说明

图1是现有技术中单下一跳路由的网络架构图;

图2是本发明实施例提供的多下一跳路由实现方法的流程图;

图3是本发明实施例提供的集中式路由赋值算法流程图;

图4是本发明实施例中多下一跳路由的各链路赋值示意图;

图5是本发明实施例中一种多下一跳路由的网络架构图;

图6是本发明实施例中另一种多下一跳路由的网络架构图。

具体实施方式

本发明提供的一种路由实现方法,可提供多下一跳路由,具体包括多下一跳赋值计算和多下一跳路由生成。

在多下一跳赋值算法中,对于每个网络出口,采用集中式赋值算法或者分布式赋值算法计算得到网络其他节点相对于该出口节点的赋值。

为使本发明的原理、特性和优点更加清楚,下面结合具体实施例对本发明进行描述。

参照图2,本发明实施例提供的一种路由实现方法,包括如下步骤:

S01,计算网络节点到网络出口节点的路由开销赋值;

A.采用集中式算法

由网络出口节点完成赋值计算,并将计算结果扩散全网。参见图3,该图为本发明集中式赋值算法流程图,具体实施过程如下:

a1.在网络出口节点,首先由该出口节点为根节点,选择确定路由算法,在此采用最短路径优先算法(SPF,Shortest Path First),基于通用的SPF算法,当前所有的核心路由器均支持SPF算法。计算得到最短路径树,树节点相对于根的最短路径的路由开销值cost,即为该节点的赋值,设定根节点赋值为0;

a2.该根节点得到其他所有可达节点到本节点的开销赋值后,向全网发送赋值扩散报文,扩散这些赋值;

a3.各网络节点收到赋值扩散报文后,依据报文内容确定本节点到特定目的节点的赋值。

B.采用分布式算法

由各个网络节点独立完成赋值计算,具体实施过程如下:

网络中的每个节点以其自身为根,采用SPF算法计算得到最短路径树,树中网络出口节点相对于根节点的最短路径的路由开销值cost,即为该根节点相对于这个网络出口节点的赋值,同样地,可将网络出口节点赋值设为0。

本发明提出的赋值算法不会产生额外的计算量。集中式赋值算法和分布式赋值算法的提出,也为用户提供了更适合其网络规划的可选方案。

仍然基于图1中所示的网络架构。图4所示为采用本发明的多下一跳赋值算法得到的赋值图。各直线旁边的数值为该直线所表示链路的路由开销值,圆圈中路由器标识(A、B1~B3、C1~C3、D1~D3、E1~E3)下面的数值为该节点到出口节点A的网络开销(即赋值)。

设定出口节点A的赋值为0,采用集中式算法或分布式算法计算各节点到出口节点A的赋值,如图中所示。

可以看出,采用集中式算法和分布式算法所得结果一致。

S02,比较本节点与其相邻节点的路由开销赋值,以根据路由开销赋值确定下一跳路由节点;

具体实施过程如下:

邻居节点间交互赋值通告报文,将本节点到网络出口节点的赋值通告给邻居;

收到邻居节点的赋值通告报文后,节点针对不同的网络出口,进行赋值比较;

S03,将开销赋值小于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;

完成赋值比较后,剔除赋值高于本节点赋值的邻居节点,记录赋值低于本节点赋值的邻居节点,并将这些节点作为到某个特定网络出口的多个下一跳,记录在转发表中,以确定生成多下一跳路由。

图5为采用本发明的多下一跳路由生成算法得到的路由图,执行完赋值比较后,确定各节点的下一跳路由节点。如,节点E3的下一跳节点为D3、D1和E1;节点D3的下一跳节点为D1、C1和C3;节点C3的下一跳节点为C1、B1和B2等等。

S04,生成由本节点经开销赋值低于本节点赋值的邻居节点到网络出口节点之间的路由。

在多下一跳路由生成算法中,规定相邻节点的链路上,其数据转发的流向是从赋值高的节点流向赋值低的节点。

具体地,根据上述路由生成原则建立相邻节点间的链路,图中箭头表明数据链路中数据流向,即从赋值高的节点流向赋值低的节点,如E3→D3,E3→D1,E3→E1;D3→D1、D3→C1和D3→C3;C3→C1、C3→B1和C3→B2。由这些相邻节点间的链路形成多条到达出口节点A的路由。

假定网络中还存在赋值相同的邻居节点,如图5中的E1—D3、E1—D2等,此时,执行进一步决策。

进一步地,可将与本节点开销赋值相等的邻居节点作为本节点的下一跳路由节点;

具体地,对于两个邻居节点到某一网络出口的赋值相同的情况,此时,通过比较该两个节点的度以及网络ID来确定它们之间的链路流向,具体实施过程如下:

比较两个节点的入度,入度低的节点为入度高的节点的下一跳;如果入度相等,比较两个节点的出度,出度高的节点为出度低的节点的下一跳;如果两个节点入度、出度都相等,网络ID(节点IP地址)小的节点为网络ID大的节点的下一跳。

参照图6,采用本发明的多下一跳路由实现方案,在赋值相同的邻居节点之间建立链路,生成由本节点经所述与本节点开销赋值相等的邻居节点到所述网络出口节点之间的路由,得到的最终路由图。有若干节点都具有多下一跳路由节点,这样,从各节点到出口节点A有多条可达路由,图中标有箭头的直线表示可行路由。

本发明实施例还提供一种路由生成装置,包括:

计算单元,用于计算网络节点到该网络出口节点的路由开销赋值;

比较单元,用于比较本节点与其相邻节点的路由开销赋值;

选择单元,选择开销赋值小于和/或等于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;

路由生成单元,用于生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。

更适宜地,所述计算单元设置在所述网络出口节点;

所述计算单元采用预定的路由算法计算到其他可达节点的路由开销赋值;

优选地,所述预定的路由算法采用最短路径优先SPF算法。

路由生成装置,还包括:

发送单元,用于将计算得到的所述其他可达节点到所述网络出口节点的路由开销赋值发送给相应的节点。

存储单元,用于保存所述路由生成单元生成的多下一跳路由。

综上所述,本发明提出的多下一跳路由实现方法,将开销赋值小于本节点开销赋值的邻居节点作为本节点的下一跳路由节点;生成由本节点经所述开销赋值低于本节点赋值的邻居节点到所述网络出口节点之间的路由。根据本发明,可使所有可行链路都参与到数据转发过程中,为路由提供了大量可用资源,为实现全网负载均衡提供基础。本发明提出的多下一跳生成算法,简单易行,通信量低;该算法使报文的传输方向得到规范,从根本上避免了网络中环路的产生。

显然,本领域的技术人员应该明白,上述的本发明的各单元或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个单元或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号