CN100433696C - 一种转发控制分离系统中选择转发路径的方法 - Google Patents

一种转发控制分离系统中选择转发路径的方法 Download PDF

Info

Publication number
CN100433696C
CN100433696C CNB2005101081721A CN200510108172A CN100433696C CN 100433696 C CN100433696 C CN 100433696C CN B2005101081721 A CNB2005101081721 A CN B2005101081721A CN 200510108172 A CN200510108172 A CN 200510108172A CN 100433696 C CN100433696 C CN 100433696C
Authority
CN
China
Prior art keywords
path
retransmission unit
unit
control unit
available forward
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005101081721A
Other languages
English (en)
Other versions
CN1946051A (zh
Inventor
郭小艺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2005101081721A priority Critical patent/CN100433696C/zh
Publication of CN1946051A publication Critical patent/CN1946051A/zh
Application granted granted Critical
Publication of CN100433696C publication Critical patent/CN100433696C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种转发控制分离(ForCES)系统中选择转发路径的方法,该系统包括转发单元以及控制单元,该方法包括:转发单元之间执行邻居发现,以生成转发单元的邻居表,并且将生成的邻居表发送给控制单元;控制单元根据转发单元的邻居表,获取整个转发单元的拓扑;控制单元根据拓扑确定转发单元之间的可用转发路径,并且当转发单元之间的可用转发路径多于一条时,控制单元计算出其中每条可用转发路径的数据通路值;在具有多于一条可用转发路径的转发单元之间,利用数据通路值最小的可用转发路径实现数据转发。应用本发明以后,能够选择较优的转发路径,从而提高转发效率。

Description

一种转发控制分离系统中选择转发路径的方法
技术领域
本发明涉及转发控制分离(ForCES)技术,更具体地说,本发明涉及一种ForCES系统中选择转发路径的方法。
背景技术
随着互联网技术的发展,路由器日益需要实现硬件与软件的分离,并且硬件与软件需要制定各自相关标准。硬件与软件的分离,称为转发与控制的分离,其中转发器主要由硬件组成,控制器主要由软件组成,两者之间通过ForCES技术相连接。
ForCES技术的目标是定义出标准化控制平面和转发平面之间信息交互的框架。ForCES技术使得控制平面和转发平面在保持可相互操作的前提下能够快速地得到技术进步,并且还使得设备的可伸缩性非常容易实现,而且转发和控制能力可以被灵活地增加到网络单元中,而并不需要对硬件和软件进行大幅度地升级。显然,如果对硬件和软件进行大幅度的升级,必然会对业务造成影响。
通常,ForCES系统包括控制单元以及不少于一个的转发单元,控制单元在ForCES系统中管理转发单元。ForCES技术的邻居发现体制使得控制单元能够了解所有转发单元的情况,并且控制单元根据转发单元上报的各个邻居的拓扑,在控制单元上汇总形成全局拓扑表,并且根据全局拓扑表来选择转发单元之间的转发路径。
目前,在关于ForCES的现有技术中,有一种选择转发单元之间的转发路径的方法。图1是根据现有技术在Forces系统中选择转发路径的方法流程示意图。
如图1所示,该方法包括以下步骤:
步骤101:转发单元之间互相发送Hello报文以执行邻居发现,然后将发现的邻居记载在自己的邻居表里面,并且只记录一跳的邻居;
步骤102:全部转发单元将邻居发现所产生的邻居表上报控制单元,控制单元根据所有上报的邻居表计算出整个转发单元的拓扑结构,根据该拓扑结构确定转发单元之间的转发路径,从而实现数据从转发单元之间互相转发。
当转发单元较少时,上述现有技术可以确定转发单元之间的转发路径。不过,当转发单元之间的拓扑比较复杂,从而造成转发单元之间有多条可供选择的转发路径时,在现有技术中无法选择较优的转发路径,这就降低了转发效率。
发明内容
有鉴于此,本发明的主要目的是提出一种ForCES系统中选择转发路径的方法,从而提高转发效率。
为达到上述目的,本发明的技术方案是这样实现的:
一种ForCES系统中选择转发路径的方法,该系统包括转发单元以及控制单元,该方法包括以下步骤:
A、转发单元之间执行邻居发现,以生成转发单元的邻居表,并且将所述转发单元的邻居表发送给控制单元;
B、控制单元根据所述转发单元的邻居表,获取整个转发单元的拓扑;
C、控制单元根据所述拓扑确定转发单元之间的可用转发路径,并且当转发单元之间的可用转发路径多于一条时,控制单元计算出其中每条可用转发路径的数据通路值;
D、在所述具有多于一条可用转发路径的转发单元之间,利用数据通路值最小的可用转发路径实现数据转发。
步骤A所述转发单元执行邻居发现为:转发单元之间互相发送Hello报文以实现邻居发现。
步骤C所述当转发单元之间的可用转发路径多于一条时,计算每条可用转发路径的数据通路值包括:
预先设定预定值M,并且利用该预定值M除以所述每条可用转发路径的链路带宽,并且将所得到的值作为所述数据通路值。
所述M的值为10600。
步骤C所述当转发单元之间的可用转发路径多于一条时,计算每条可用转发路径的数据通路值包括:
对于跨越转发单元的可用转发路径,计算所跨越的各个转发单元之间的各个链路的链路数据通路值,其中所述各个链路数据通路值与各个相应转发单元之间的链路带宽成反比;
计算所述各个链路数据通路值的总和,以得到所述数据通路值。
该方法进一步包括:预先将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
所述将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元为:在所述ForCES系统的初始化过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
所述将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元为:在所述ForCES系统的正常工作过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
所述转发单元为特定用途集成电路(ASIC)、网络处理器或者通用处理器。
从以上的技术方案中可以看出,本发明提出了一种在ForCES系统中选择转发路径的方法,该系统包括转发单元以及控制单元。首先,转发单元之间执行邻居发现,以各自生成转发单元的邻居表,并且将生成的邻居表发送给控制单元;然后控制单元根据各自转发单元的所述邻居表,计算出整个转发单元的拓扑;控制单元根据拓扑确定出转发单元之间的可用转发路径,并且当转发单元之间的可用转发路径多于一条时,控制单元计算出其中每条可用转发路径的数据通路值;具有多于一条可用转发路径的转发单元之间利用数据通路值最小的转发路径实现数据转发。因此,应用本发明后,本发明考虑了数据通路状况来选择转发路径,所以当转发单元之间的拓扑比较复杂而造成转发单元之间有多条转发路径时,本发明能够选择较优的转发路径,从而极大地提高了转发效率。
附图说明
图1根据现有技术在Forces系统中选择转发路径的方法流程示意图。
图2为根据本发明一实施例在Forces系统中选择转发路径的方法流程示意图。
图3根据本发明一实施例的Forces系统的示意结构图。
具体实施方式
为使本发明的目的、技术方案和优点表达得更加清楚明白,下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明的主要思想是:当转发单元执行完邻居发现,并且上报邻居表后,控制单元首先根据转发单元所上报的邻居表计算出整个转发单元的拓扑结构,并且当转发单元之间具有多于一条的可用转发路径时,控制单元计算出所述多于一条的可用转发路径中的每条可用转发路径的数据通路值,并且利用数据通路值最小的转发路径来执行转发单元之间的数据转发,从而实现选择较优的转发路径,进而提高在转发单元之间转发数据的转发效率。
图2为根据本发明一实施例在Forces系统中选择转发路径的方法流程示意图。如图2所示,该方法包括以下步骤:
步骤201:转发单元之间执行邻居发现,以各自生成转发单元的邻居表,并且将生成的邻居表发送给控制单元。
在这里,转发单元之间可以首先相互发送Hello报文,然后转发单元根据对Hello报文的接收情况发现自己的邻居,并且转发单元各自生成相应的邻居表,然后各个转发单元分别将自己的邻居表发送给控制单元。
步骤202:控制单元根据转发单元所上报的邻居表,计算出整个转发单元的拓扑;
在这里,控制单元在接收到各个转发单元上报的邻居表后,计算出整个转发单元的拓扑结构。对于本领域技术人员而言,根据转发单元上报的邻居表计算整个转发单元的拓扑结构是明显的。例如,根据工程任务组(IETF)的draft-ietf-forces-discovery-001.txt,即可获知计算转发单元的拓扑结构的方式。
步骤203:控制单元根据拓扑确定出转发单元之间的可用转发路径,并且当转发单元之间具有多于一条的可用转发路径时,控制单元计算出每条可用转发路径的数据通路值;
在这里,在计算出整个转发单元的拓扑结构后,控制单元根据拓扑结构确定出转发单元之间的可用转发路径。当某两个转发单元之间具有多于一条的转发路径时,也就是说,对于从一个转发单元到另一个转发单元进行数据转发,有两条或者多条转发路径可供选择的时候,控制单元计算出其中每条可供选择的转发路径的数据通路值。数据通路值为路径树中的转发单元之间的距离。
在这里,优选根据每条可用转发路径的链路带宽来计算每条可用转发路径的数据通路值,其中每条可用转发路径的数据通路值与该条可用转发路径的链路带宽成反比。优选方式是,首先确定出一个常数M,然后用该常数M除以每条可用转发路径的链路带宽,从而计算出每条可用转发路径的数据通路值。此处,优选地,M的值为10600。
对于转发路径的链路带宽,控制单元可以通过多种途径获知。例如,对于每个转发单元的端口而言,链路带宽是已知的,因此转发单元可以向控制单元上报自身的属性,并且上报的属性中就包括该链路带宽,所以控制单元能够知道每一段链路的链路带宽,从而可以根据数据通路值与链路带宽的反比关系确定出数据通路值的相对关系。
对于可用转发路径跨越转发单元的情况,首先计算各个转发单元之间的每一段链路的链路带宽,从而得到该段链路的链路数据通路值,然后计算各自链路数据通路值的总和,以得到该条可用转发路径的数据通路值。同样,优选方式是,首先确定出一个常数M,然后用该常数M分别除以每条可用转发路径中各段链路的链路带宽,从而分别得到各段链路的链路数据通路值,然后计算各自链路数据通路值的总和,以得到该条可用转发路径的数据通路值。此处,优选地,M的值为10600。
以上虽然列出了计算数据通路值的具体方式,但是本发明并不局限于这种方式。例如,可以在ForCES系统的初始化过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元;或者在ForCES系统的正常工作过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
步骤204:在具有多于一条可用转发路径的转发单元之间,利用数据通路值最小的可用转发路径实现数据转发。
在这里,在具有多于一条可用转发路径的转发单元之间利用数据通路值最小的可用转发路径实现数据转发,从而实现选择较优的转发路径,进而提高转发单元之间转发数据的转发效率。
图3为本发明一实施例的Forces系统的示意结构图。如图3所示,该系统包括控制单元301、第一转发单元302、第二转发单元303、第三转发单元304。控制单元301具有端口A、端口B和端口C;第一转发单元302具有端口A、端口B、端口C、端口D和端口E;第二转发单元303具有端口A、端口B、端口C、端口D和端口E;第三转发单元具有端口A、端口B和端口C。其中,转发单元可以是ASIC、网络处理器或者通用处理器
下面根据图3以及图2所示流程,详细说明如何在ForCES系统中选择转发路径。
首先,各个转发单元之间互相发送Hello报文执行邻居发现,以各自生成转发单元的邻居表,并且各个转发单元将生成的邻居表发送给控制单元301。
表1为第一转发单元302的邻居关系表;表2为第二转发单元303的邻居关系表;表3为第三转发单元304的邻居关系表。其中,<local intf>表示本地的接口编号,<nbr_FEID>表示邻居转发单元的ID,<nbr_port>表示邻居的端口号,其中第一转发单元的ID为FE1、第二转发单元的ID为FE2、第三转发单元的ID为FE3。
第一转发单元的邻居关系表
------------------------------------------
<locl intf>   <nbr_FEID>  <nbr_port>
C             FE2         D
B             FE3         C
表1
由表1可知,第一转发单元301的C端口和第二转发单元303的D端口连接,第一转发单元302的B端口和第三转发单元304的C端口连接。
第二转发单元的邻居关系表
------------------------------------------
<locl intf>    <nbr_FEID>    <nbr_port>
E              FE3           B
D              FE1           C
表2
由表2可知,第二转发单元303的E端口和第三转发单元304的B端口连接,第二转发单元303的D端口和第一转发单元302的C端口连接。
第三转发单元的邻居关系表
------------------------------------------
<locl intf>   <nbr_FEID>    <nbr_port>
C             FE1           B
B             FE2           E
表3
由表3可知,第三转发单元304的C端口和第一转发单元302的B端口连接,第三转发单元304的B端口和第二转发单元303的E端口连接。
控制单元301在收到各个转发单元上报的邻居表后,便可以确定转发单元的整体拓扑结构,并且根据该拓扑确定出转发单元之间的转发路径。当转发单元之间具有多于一条转发路径时,控制单元计算出多于一条转发路径中的每条转发路径的数据通路值。
例如,控制单元301确定转发单元的整体拓扑结构后,可以发现在第一转发单元302和第二转发单元303之间有两条转发路径,第一条转发路径是第一转发单元302的端口C和第二转发单元303的端口D连接;第二条转发路径是第一转发单元302的端口B通过第三转发单元304与第二转发单元303的端口E连接。
对于这两条转发路径,控制单元301分别计算出其数据通路值。对于第一条转发路径,其数据通路值与第一转发单元302的端口C和第二转发单元303的端口D之间的链路带宽成反比;对于第二条转发路径,其数据通路值与第一转发单元302的端口B和第三转发单元304的端口C之间的链路带宽以及第三转发单元304的端口B和第二转发单元303的端口E的链路带宽之和成反比。控制单元301可以根据这些转发单元所上报的属性而得到这些链路的链路带宽,对于上报属性的方式和时间本发明并无限定。其中,在计算数据通路值时,可以用常数M除以第一转发单元302的端口C和第二转发单元303的端口D之间的链路带宽,得到第一条转发路径的数据通路值cost1,可以用常数M除以第一转发单元302的端口B和第三转发单元304的端口C之间的链路带宽以及第三转发单元304的端口B和第二转发单元303的端口E的链路带宽之和,得到第二条转发路径的数据通路值cost2。在这里,优选地,M的值为10600。
在确定了两条转发路径的数据通路值cost1和cost2后,当需要在第一转发单元302和第二转发单元303之间执行数据转发时,选择cost1和cost2中值较小的转发路径进行数据转发。
以上举例说明了三个转发单元以及一个控制单元的ForCES系统。显然,本发明对转发单元和控制单元的数目并不进行限制。
应用本发明后,当转发单元之间的拓扑比较复杂,或者转发单元之间有多条转发路径时,利用本发明能够选择较优的转发路径,从而极大地提高了转发效率。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1、一种转发控制分离ForCES系统中选择转发路径的方法,该系统包括转发单元以及控制单元,其特征在于,该方法包括以下步骤:
A、转发单元之间执行邻居发现,以生成转发单元的邻居表,并且将所述转发单元的邻居表发送给控制单元;
B、控制单元根据所述转发单元的邻居表,获取整个转发单元的拓扑;
C、控制单元根据所述拓扑确定转发单元之间的可用转发路径,并且当转发单元之间的可用转发路径多于一条时,控制单元计算出其中每条可用转发路径的数据通路值;
D、在所述具有多于一条可用转发路径的转发单元之间,利用数据通路值最小的可用转发路径实现数据转发。
2、根据权利要求1所述的方法,其特征在于,步骤A所述转发单元执行邻居发现为:转发单元之间互相发送Hello报文以实现邻居发现。
3、根据权利要求1所述的方法,其特征在于,步骤C所述当转发单元之间的可用转发路径多于一条时,计算每条可用转发路径的数据通路值包括:
预先设定预定值M,并且利用该预定值M除以所述每条可用转发路径的链路带宽,并且将所得到的值作为所述数据通路值。
4、根据权利要求3所述的方法,其特征在于,所述M的值为10600。
5、根据权利要求1所述的方法,其特征在于,步骤C所述当转发单元之间的可用转发路径多于一条时,计算每条可用转发路径的数据通路值包括:
对于跨越转发单元的可用转发路径,计算所跨越的各个转发单元之间的各个链路的链路数据通路值,其中所述各个链路数据通路值与各个相应转发单元之间的链路带宽成反比;
计算所述各个链路数据通路值的总和,以得到所述数据通路值。
6、根据权利要求3所述的方法,其特征在于,该方法进一步包括:预先将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
7、根据权利要求6所述的方法,其特征在于,所述将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元为:在所述ForCES系统的初始化过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
8、根据权利要求6所述的方法,其特征在于,所述将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元为:在所述ForCES系统的正常工作过程中,将每条可用转发路径的链路带宽作为转发单元的属性发送给控制单元。
9、根据权利要求1所述的方法,其特征在于,所述转发单元为特定用途集成电路ASIC、网络处理器或者通用处理器。
CNB2005101081721A 2005-10-09 2005-10-09 一种转发控制分离系统中选择转发路径的方法 Expired - Fee Related CN100433696C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101081721A CN100433696C (zh) 2005-10-09 2005-10-09 一种转发控制分离系统中选择转发路径的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101081721A CN100433696C (zh) 2005-10-09 2005-10-09 一种转发控制分离系统中选择转发路径的方法

Publications (2)

Publication Number Publication Date
CN1946051A CN1946051A (zh) 2007-04-11
CN100433696C true CN100433696C (zh) 2008-11-12

Family

ID=38045269

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101081721A Expired - Fee Related CN100433696C (zh) 2005-10-09 2005-10-09 一种转发控制分离系统中选择转发路径的方法

Country Status (1)

Country Link
CN (1) CN100433696C (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101075914B (zh) * 2007-04-29 2011-05-11 中兴通讯股份有限公司 Ngn中具备动态发现功能的racf系统及设备
CN101997752B (zh) * 2009-08-31 2015-06-03 中兴通讯股份有限公司 一种控制网元及其路由控制方法
CN102638409B (zh) * 2012-04-27 2014-10-15 浙江工商大学 基于转发和控制分离网络件架构内通道间的流量控制方法
CN103152201B (zh) * 2013-03-12 2015-06-17 浙江工商大学 ForCES系统中逻辑功能块拓扑正确性的验证方法
CN108075980A (zh) * 2016-11-17 2018-05-25 中兴通讯股份有限公司 一种转发路径的控制方法、装置及控制设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1599357A (zh) * 2004-07-26 2005-03-23 南京邮电学院 自组网环境下协同能量保护和服务质量保证的模糊选路方法
US20050169276A1 (en) * 2004-02-02 2005-08-04 Sylvain Monette Adaptive router architecture enabling efficient internal communication

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169276A1 (en) * 2004-02-02 2005-08-04 Sylvain Monette Adaptive router architecture enabling efficient internal communication
CN1599357A (zh) * 2004-07-26 2005-03-23 南京邮电学院 自组网环境下协同能量保护和服务质量保证的模糊选路方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Forwarding and Control Element Separation(ForCES)Framework. L. Yang,R. Dantu,T.Anderson,R.Gopal.RFC 3746. 2004
Forwarding and Control Element Separation(ForCES)Framework. L. Yang,R. Dantu,T.Anderson,R.Gopal.RFC 3746. 2004 *
支持ForCEs的IP路由器技术研究与实现. 高明,王伟明.计算机应用,第2005 年第25卷第4期. 2005
支持ForCEs的IP路由器技术研究与实现. 高明,王伟明.计算机应用,第2005 年第25卷第4期. 2005 *

Also Published As

Publication number Publication date
CN1946051A (zh) 2007-04-11

Similar Documents

Publication Publication Date Title
EP3297231B1 (en) Data transmission method, switch using same, and network control system
EP2493116B1 (en) Topology management method of ether multi-ring network, and system thereof
JP5140151B2 (ja) 重複セルを発見する方法
CN100433696C (zh) 一种转发控制分离系统中选择转发路径的方法
CN101599898B (zh) 多链路故障环境下采用lfa方式的路由器避免环路的方法
CN104753828A (zh) 一种sdn控制器、数据中心系统和路由连接方法
EP2764728A1 (en) Route prefix aggregation using reachable and non-reachable addresses in a computer network
CN101299707A (zh) 一种路由扩散方法
CN101656630A (zh) 一种业务保护方法和系统
CN105072194B (zh) 一种分布式文件系统中的存储数据修复结构及修复方法
CN112866103B (zh) 一种面向边缘计算的时间敏感移动前传网络保护方法
CN103117957A (zh) 机会网络中基于消息副本数与综合效能的缓存管理方法
CN110100479A (zh) 一种利用修改的无路径dao信令优化路由失效的装置和方法
Thiagarajan et al. Efficient routing protocols for mobile ad hoc network
CN111132236B (zh) 基于改进olsr协议的多无人机自组织网络mpr节点选择方法
CN105791113A (zh) 一种基于sdn的多链路时延均衡方法和系统
CN1787475B (zh) 接入网络系统及移动内部网络中继设备的方法
CN115865761A (zh) 一种考虑阻塞反馈的网络实体任务活动代价评估方法
Xin Introduction of centralized and distributed routing protocols
CN115883444A (zh) 基于最优路径的网络数据传输方法、系统、介质及设备
CN102006301A (zh) 一种多终端之间流控传输协议偶联的移动控制方法
Ajibesin et al. Cost-efficient multicast over coded packet wireless networks using data envelopment analysis
CN102055664B (zh) 一种基于覆盖网络环境的快速备选路由分配方法
Fan et al. Failure resilient routing via IoT networks
CN114448876A (zh) 面向选择性转发攻击的无标度网络分布式自适应路由方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081112

Termination date: 20151009

EXPY Termination of patent right or utility model