域间路由流量工程方法

文档序号:7814534阅读:124来源:国知局
域间路由流量工程方法
【专利摘要】本发明提出一种域间路由流量工程方法,包括:初始化边界路由器;若检测到边界路由器的最佳路径发生拥塞,则选择可选路径,并将可选路径的输出端口信息加入到辅助转发表中,并更新辅助转发表;当前边界路由器接收数据包后,判断该数据包是否为本发明方法的数据包,若是,则解除数据包封装的IP头部,提取目的地址,根据该目的地址查询辅助转发表和普通转发表;若辅助转发表非空,则检查辅助转发表所需封装的IP头部;若该IP头部非空,则对数据包封装新的IP头部后按照对应地辅助转发表所对应的输出端口,将数据包转发。若辅助转发表非空,则按照普通转发表所对应的输出端口转发数据包。本方法具有实时的、快速的、链路利用率高的特点。
【专利说明】域间路由流量工程方法

【技术领域】
[0001]本发明涉及流量工程【技术领域】,尤其涉及一种域间路由流量工程方法。

【背景技术】
[0002]当前互联网上的数据传输量巨大,比如网络服务供应商(Internet ServiceProvider, ISP)每日的数据传输量已经达到拍字节(petabyte,PB)级别。因此,如何在ISP之间如此大数据量传输的情况下,保证网络的传输服务质量,成为了当前的热门研究问题。流量工程(traffic engineering, TE)是自治域(autonomous system, AS)根据用户对于网络的需求和当前网络资源利用率,进行路由动态调整的方法。该方法已经成为当前ISP最常用的流量控制机制。然而,根据域内(AS内部)具有可集中控制以及完整网络拓扑和链路使用率统计信息,大部分流量工程方法都是用于解决域内路由的流量控制。相反,域间路由的流量工程方法非常匮乏。目前,主要的域间(AS之间)路由流量工程方法有:动态宣告路由改变用以改变输入数据量大小,升级网络设备硬件能力以及仅仅依赖域内路由。
[0003]当前互联网的拓扑结构从层次化趋于平面化,即每个AS的邻居数量庞大。因此,任何两个AS之间都有多条路径可达。然而,传统的边界网关协议(border gatewayprotocol,BGP)只使用当前最佳路径(即单一路径)进行数据传输,无论该路径是否拥塞。此时,若其他可用路径(非最佳路径)的链路利用率低下,则产生了负载不均匀。


【发明内容】

[0004]本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
[0005]为达到上述目的,本发明实施例中提出一种域间路由流量工程方法,包括以下步骤:
[0006]SI,初始化边界路由器的边界网关协议路由表、普通转发表、辅助转发表、输出端口队列排队延迟和封装的IP头部的协议号T,其中,所述IP头部包含协议号,源地址和目的地址,所述边界路由器包括当前边界路由器;
[0007]S2,检测所述边界路由器的最佳路径是否发生拥塞,如果检测到拥塞,则转入S3,反之,则转入S7 ;
[0008]S3,根据所述边界网关协议路由表确定的所述输出队列排队延迟最小的路径作为可选路径,将所述可选路径的输出端口信息加入到所述辅助转发表中,并更新所述辅助转发表;
[0009]S4,当前边界路由器接收到数据包后,提取所述数据包中的协议号和目的地址;
[0010]S5,判断所述协议号是否为所述封装的IP头部的协议号T,若否,则按照所述边界路由器默认机制发送数据包,反之,则判断所述目的地址是否为所述当前边界路由器的地址,若是,则转入S6,反之,则丢弃所述数据包;
[0011]S6,解除封装的所述数据包的IP头部,提取所述数据包的目的地址;
[0012]S7,根据所述目的地址查询所述当前边界路由器的所述辅助转发表和所述普通转发表,并返回所述辅助转发表和所述普通转发表的查询结果,分别记为M和N,其中,所述查询结果为所述辅助转发表和所述普通转发表的表项的内容;
[0013]S8,判断M是否为空,若为空,则转入S9,反之,则转入SlO ;
[0014]S9,所述当前边界路由器按照普通转发表所对应的输出端口,将所述数据包转发;
[0015]S10,检查所述当前边界路由器辅助转发表所需封装的IP头部;
[0016]S11,判断所述所需封装的IP头部信息是否为空,若为空,则转入S13,反之,则转人 S12 ;
[0017]S12,从所述所需封装的IP头部中提取目的地址,对数据包封装新的IP头部,其中,所述新的IP头部源地址为所述当前边界路由器地址;以及
[0018]S13,所述当前边界路由器按照辅助转发表所对应的输出端口,将所述数据包转发。
[0019]根据本发明实施例的域间路由流量工程方法,通过检测所述边界路由器的最佳路径是否发生拥塞,从而利用互联网域间多路径的特性,选择输出队列排队延迟最小的路径作为可选路径转发所述数据包,提高了不同域间路由的负载均衡,保证了数据传输的服务质量,提升了数据传输性能。
[0020]在一些示例中,初始化所述边界路由器辅助转发表时,以目的IP地址和掩码长度作为查询条件,对应的查询结果为所述边界路由器的输出端口号和下一跳路由。
[0021]在一些示例中,初始化所述边界路由器的普通转发表时,以目的IP地址和掩码长度作为查询条件,对应的查询结果为路由器的输出端口号。
[0022]在一些示例中,所述边界路由器输出端口队列排队延迟为当前队列中排队的数据包数目与队列满载情况下的排队数据包数目的比值,所述比值介于O与I之间,所述比值越大表示所述最佳路径发生拥塞的概率越大。
[0023]在一些示例中,所述最佳路径发生拥塞是指所述边界路由器的输出端口队列排队延迟大于或等于80%。
[0024]在一些示例中,所述数据包封装的新的IP头部的源地址为当前边界路由器,目的地址为所述可选路径对应的边界路由器,协议号为T。
[0025]本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

【专利附图】

【附图说明】
[0026]图1是根据本发明实施例的域间路由流量工程方法的流程图;
[0027]图2是本发明一个实施例的边界路由器的辅助转发表的示意图;和
[0028]图3是本发明一个实施例的IP头部结构示意图。

【具体实施方式】
[0029]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0030]在本发明的描述中,在步骤或者动作前面的标识,例如“步骤SI”?“步骤S13”或
(1)-(4)仅用于描述本发明实施例的域间路由流量工程方法的目的,而不能理解为指示或暗示相对顺序关系,因此不能理解为对本发明的限制。
[0031]请参阅图1,本发明实施例中提出一种域间路由流量工程方法,包括以下步骤:
[0032]1、一种域间路由流量工程方法,其特征在于,包括以下步骤:
[0033]SI,初始化边界路由器的边界网关协议路由表、普通转发表、辅助转发表、输出端口队列排队延迟和封装的IP头部的协议号T,其中,所述IP头部包含协议号,源地址和目的地址,所述边界路由器包括当前边界路由器;
[0034]S2,检测所述边界路由器的最佳路径是否发生拥塞,如果检测到拥塞,则转入S3,反之,则转入S7 ;
[0035]S3,根据所述边界网关协议路由表确定的所述输出队列排队延迟最小的路径作为可选路径,将所述可选路径的输出端口信息加入到所述辅助转发表中,并更新所述辅助转发表;
[0036]S4,所述当前边界路由器接收到数据包后,提取数据包中的协议号和目的地址;
[0037]S5,判断所述协议号是否为所述封装的IP头部的协议号T,若否,则按照所述边界路由器默认机制发送数据包,反之,则判断所述目的地址是否为所述当前边界路由器的地址,若是,则转入S6,反之,则丢弃所述数据包;
[0038]S6,解除封装的所述数据包的IP头部,提取解所述数据包的目的地址;S7,根据所述目的地址查询所述当前边界路由器的所述辅助转发表和所述普通转发表,并返回所述辅助转发表和所述普通转发表的查询结果,分别记为M和N,其中,所述查询结果为所述辅助转发表和所述普通转发表的表项的内容;
[0039]S8,判断M是否为空,若为空,则转入S9,反之,则转入SlO ;
[0040]S9,所述当前边界路由器按照对应的普通转发表所对应的输出端口,将所述数据包转发;
[0041]S10,检查所述当前边界路由器的辅助转发表所需封装的IP头部;
[0042]S11,判断所述所需封装的IP头部是否为空,若为空,则转入S13,反之,则转入S12 ;
[0043]S12,从所述所需封装的IP头部中提取目的地址,对所述数据包封装新的IP头部,其中,所述新的IP头部源地址为所述当前边界路由器地址;以及
[0044]S13,所述当前边界路由器按照对应的辅助转发表所对应的输出端口,将所述数据包转发。
[0045]根据本发明实施例的域间路由流量工程方法,通过检测所述边界路由器的最佳路径是否发生拥塞,从而利用互联网域间多路径的特性,选择输出队列排队延迟最小的路径作为可选路径转发所述数据包,提高了不同域间路由的负载均衡,保证了数据传输的服务质量,提升了数据传输性能。
[0046]具体地,在本发明的一个实施例中,在步骤SI中,
[0047](I)设定边界路由器的边界网关协议路由表(Border Gateway Protocol RoutingInformat1n Base, BGP RIB),该边界路由器BGP RIB包含目的IP地址,目的IP地址对应的AS号,路径对应的AS号序列,路径状态(最佳路径或可选路径),对应的输出端口号,初始状态下BGP RIB根据BGP的广播通信协议自动建立完毕。
[0048](2)设定边界路由器的普通转发表(Forwarding Informat1n Base,FIB),该边界路由器FIB为边界路由器传统的路由转发表,以目的IP地址和掩码长度作为查询条件,对应的查询结果为边界路由器的输出端口号,初始条件下边界路由器FIB经过网络拓扑发现协议自动建立完毕。
[0049](3)设定边界路由器的辅助转发表(auxiliary forwarding informat1n Base,AFIB),如图2所示,边界路由器的AFIB在初始条件(默认路径)下为空。该边界路由器AFIB的域间BGP对等体和域内BGP对等体的可选路径的查询以目的IP地址和掩码长度,即前缀,作为查询条件,对应的查询结果为边界路由器的输出端口号和下一跳路由。
[0050](4)设定边界路由器的输出端口队列排队延迟,该边界路由器输出端口队列排队延迟为当前队列中排队的数据包数目,与队列满载情况下的排队数据包数目的比值,该比值介于O与I之间,在初始情况下为0,比值越大说明最佳路径拥塞发生的概率越高。
[0051](5)设定所需封装的IP头部(IP-1n-1P)所用协议号为T,如图3所示,其中,P为数据包,IP头部包含214 (协议号T)、Rl (源地址)和R2 (目的地址)。
[0052]此外,还需设定边界路由器周期性监测最佳路径是否发生拥塞的查询周期,通过定时地查询以确定最佳路径是否发生或即将发生拥塞,在本发明的一个实施例中,查询周期为1ms。
[0053]在本发明的一个实施例中,在步骤S2中,最佳路径发生拥塞或即将发生拥塞为边界路由器的输出端口队列排队延迟设定为大于或等于80%。
[0054]在本发明的一个实施例中,在步骤S3中,若发现最佳路径发生拥塞或即将发生拥塞,则从BGP RIB中选择输出端口队列排队延迟最小的可选路径,插入到辅助转发表中。在实际过程中,辅助转发表的更新本发明实施例的域间路由流量工程方法的守护进程完成,该进程周期性的探测各输出端口排队延迟情况,并相应的更新辅助转发表的表项内容,从而避免数据层与控制层频繁的切换带来的庞大的时间开销,进而降低了转发速率。
[0055]在本发明的一个实施例中,在步骤S4中,当前边界路由器接收到数据包P后,提取数据包中的协议号和目的地址D。
[0056]步骤S5,判断协议号是否为所述封装的IP头部的协议号T,若否,则按照边界路由器默认机制发送数据包,反之,则判断目的地址D是否为所述当前边界路由器的地址,若是,则转入S6,反之,则丢弃所述数据包
[0057]步骤S6,解除封装的数据包的IP头部,提取数据包的目的地址。
[0058]具体地,解除封装的数据包P的IP头部,提取解封装后的数据包的目的地址并赋值给D。
[0059]步骤S7,根据解封装后的数据包的目的地址查询当前边界路由器的辅助转发表和普通转发表,并返回辅助转发表和普通转发表的查询结果,分别记为M和N,其中,所述查询结果为所述辅助转发表和所述普通转发表的表项的内容。
[0060]步骤S8,判断M是否为空,若为空,则转入S9,反之,则转入SlO。
[0061]步骤S9,当前边界路由器按照对应的普通转发表所对应的输出端口,将数据包转发。
[0062]具体地,当检测到M为空时,当前边界路由器按照对应的普通转发表所对应的输出端口,将数据包转发,即按照当前边界路由器默认的机制处理数据包。
[0063]步骤S10,检查当前边界路由器的辅助转发表所需封装的IP头部。
[0064]具体地,当检测到M为非空时,则检查当前边界路由器的辅助转发表所需封装的IP 头部(IP-1n-1P)信息。
[0065]步骤S11,判断所需封装的IP头部是否为空,若为空,则转入S13,反之,则转入S12。
[0066]步骤S12,从所需封装的IP头部中提取目的地址,对数据包封装新的IP头部,其中,新的IP头部源地址为当前边界路由器地址。
[0067]具体地,根据步骤SlO所需封装的IP头部(IP-1n-1P)信息,提取目的地址K,对数据包封装新的IP头部,新的IP头部源地址为当前边界路由器地址,目的地址为K,协议号为τ。
[0068]步骤S13,当前边界路由器按照对应的辅助转发表所对应的输出端口,将数据包转发。
[0069]具体地,当数据包封装新的IP头部后,当前边界路由器按照对应的辅助转发表所对应的输出端口,将数据包转发。
[0070]根据本发明实施例的域间路由流量工程方法,通过检测边界路由器的最佳路径是否发生拥塞,从而利用互联网域间多路径的特性,选择输出队列排队延迟最小的路径作为可选路径转发数据包,提高了不同域间路由的负载均衡,保证了数据传输的服务质量,提升了数据传输性能。
[0071]在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0072]尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
【权利要求】
1.一种域间路由流量工程方法,其特征在于,包括以下步骤: Si,初始化边界路由器的边界网关协议路由表、普通转发表、辅助转发表、输出端口队列排队延迟和封装的IP头部的协议号T,其中,所述IP头部包含协议号,源地址和目的地址,所述边界路由器包括当前边界路由器; S2,检测所述边界路由器的最佳路径是否发生拥塞,如果检测到拥塞,则转入S3,反之,则转入S7 ; S3,根据所述边界网关协议路由表确定的所述输出队列排队延迟最小的路径作为可选路径,将所述可选路径的输出端口信息加入到所述辅助转发表中,并更新所述辅助转发表; S4,所述当前边界路由器接收到数据包后,提取数据包中的协议号和目的地址; S5,判断所述协议号是否为所述封装的IP头部的协议号T,若否,则按照所述边界路由器默认机制发送数据包,反之,则判断所述目的地址是否为所述当前边界路由器的地址,若是,则转入S6,反之,则丢弃所述数据包; S6,解除封装的所述数据包的IP头部,提取解所述数据包的目的地址;S7,根据所述目的地址查询所述当前边界路由器的所述辅助转发表和所述普通转发表,并返回所述辅助转发表和所述普通转发表的查询结果,分别记为M和N,其中,所述查询结果为所述辅助转发表和所述普通转发表的表项的内容; S8,判断M是否为空,若为空,则转入S9,反之,则转入SlO ; S9,所述当前边界路由器按照对应的普通转发表所对应的输出端口,将所述数据包转发; S10,检查所述当前边界路由器的辅助转发表所需封装的IP头部; SI I,判断所述所需封装的IP头部是否为空,若为空,则转入S13,反之,则转入S12 ;S12,从所述所需封装的IP头部中提取目的地址,对所述数据包封装新的IP头部,其中,所述新的IP头部源地址为所述当前边界路由器地址;以及 S13,所述当前边界路由器按照对应的辅助转发表所对应的输出端口,将所述数据包转发。
2.根据权利要求1所述的方法,其特征在于,初始化所述边界路由器的辅助转发表时,以目的IP地址和掩码长度作为查询条件,对应的查询结果为所述边界路由器的输出端口号和下一跳路由。
3.根据权利要求1-2任意一项所述的方法,其特征在于,初始化所述边界路由器的普通转发表时,以目的IP地址和掩码长度作为查询条件,对应的查询结果为路由器的输出端口号。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述边界路由器输出端口队列排队延迟为当前队列中排队的数据包数目与队列满载情况下的排队数据包数目的比值,所述比值介于O与I之间,所述比值越大表示所述最佳路径发生拥塞的概率越大。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述最佳路径发生拥塞是指所述边界路由器的输出端口队列排队延迟大于或等于80%。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述数据包封装的新的IP头部的源地址为所述当前边界路由器,所述目的地址为所述可选路径对应的边界路由器,协议号为T。
【文档编号】H04L12/861GK104243313SQ201410475449
【公开日】2014年12月24日 申请日期:2014年9月17日 优先权日:2014年9月17日
【发明者】李丹, 祝铭, 吴建平 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1