一种评估Clos网络路径拥塞的方法与流程

文档序号:16309843发布日期:2018-12-19 05:14阅读:268来源:国知局
一种评估Clos网络路径拥塞的方法与流程

本发明涉及clos网络数据传输技术领域;具体地,涉及一种评估clos网络路径拥塞的方法,以及在上述方法评估获得的路径状态指导下的负载均衡方法。

背景技术

在以太网络通信中,为了降低路径故障对数据流量传输业务的影响,通常将多个路径互做备份;当主路径出现故障时,流量重路由到备用路径上,以保证业务的质量和可靠性。在该思想指导下的技术演进过程中,发展出了无阻塞网络的概念。

广义的无阻塞网络,是指一个给定的网络存在着固有的阻塞可能,但又可能存在着一种精巧的选路方法,使得所有的阻塞均可避免,而不必重新安排网络中已建立起来的连接。作为一种无阻碍网络,clos网络在网络通信等领域被广泛应用。严格来说,这样的网络结构,无论是胖树拓扑结构(fattree)还是叶脊拓扑结构(leaf-spine,如图1所示),也只是在带宽上的无阻碍,并不能避免现实中在个别路径上发生的拥塞、故障等。那么,如何将流量负载分布在合适的路径上呢?一个技术路线的指导思想是,及时获知路径的状态,并根据路径状态做出合理的路由策略(包括重路由,即重新调整路径)。

在多级clos网络中,拥塞是不可避免的;由于流量是动态传输的,拥塞可能出现在网络的任何地方(如图2所示)。在简单的网络中,通常通过拥塞控制机制减少拥塞对单一路径下流量传输的影响;其中,显式拥塞通知(explicitcongestionnotification,ecn),通常被用来捕捉单跳(hop)的拥塞,它通过商用交换机支持实现,被广泛用于拥塞控制算法。

但是,在clos这种高负载网络下,ecn对此是无能为力;ecn信号只能反映路径中最拥塞一跳的拥塞情况。而在如clos网络等的高负载网络下,拥塞可能从多跳积累起来。因此,一个低的ecn值也并非一定表示没有发生拥塞,特别是在ecn采样不足的情况下,其尤为明显。

现有技术中,cn106911584a公开了基于源叶设备发出的探测获知路径拥塞,但其仅限于叶脊拓扑结构网络下;另,探测还将引入额外开销的问题;同样是以探测为手段,cn108063732a则公开了以包生存时间(timetolive,ttl)信号为指标、基于当前路径(以处于拥塞中)评估探测路径拥塞,虽然其探测更具针对性和目的性,但其也存在开销问题,且评估的路径越多,需要探测的路径越多,额外开销也越大;而cn104767826a提供的基于端的故障容忍的分布式数据中心负载均衡方法公开了利用ack到达时间和ack确认号等信息评估路径拥塞程度,但是ack信号也不能充分和很准确地反映路径的拥塞程度。



技术实现要素:

有鉴于此,本发明提供一种评估clos网络路径拥塞的方法,其通过利用rtt和ecn信号,并结合二者,评估clos网络中路径的拥塞程度。基于上述方法获得的路径状态,本申请提供一种避免拥塞的负载均衡方法。

一方面,本发明提供一种利用rtt和ecn信号评估clos网络路径拥塞的方法。该方法包括:

在源主机端,

获取自所述源主机端出发可达的所有路径上的rtt值和ecn标记率;

设定用于判断各路径拥塞程度的rtt门限值和ecn标记率门限值;其中,所述的rtt门限值,用于衡量各路径的rtt值高低,从一方面反映路径的拥塞程度;所述的ecn标记率门限值,用于衡量各路径的ecn标记包比率(即标记率)的高低,从另一方面反映路径的拥塞程度;

根据各路径的rtt值和ecn标记率,评估路径拥塞程度,

若一条路径的rtt值高于所述rtt门限值且ecn标记率高于所述ecn标记率门限值,则评估该路径处于拥塞状态(即为拥塞路径congestedpath);否则,该路径处于非拥塞状态(即为非拥塞路径non-congestedpath)。

结合所述的第一方面,在其所述方法中,为提高判断的准确性和进一步细化区分路径状态,优选的,设定高、低rtt门限值;其具体评估如下,

若一条路径的rtt值高于所述的高rtt门限值且ecn标记率高于所述ecn标记率门限值,则评估该路径处于拥塞状态(即为拥塞路径congestedpath);

若一条路径的rtt值低于所述的低rtt门限值且ecn标记率低于所述ecn标记率门限值,则评估该路径未被充分利用(即为良好路径goodpath);

否则,评估该路径处于次于为未被充分利用但优于拥塞的中间状态(即为灰色路径graypath)。

优选的,根据基础rtt设定所述的rtt门限值;所述的基础rtt值由网络环境、设备等因素决定。

进一步,优选的,所述的高rtt门限值,根据基础rtt值与单跳的时延设定。

进一步,优选的,所述的低rtt门限值,被设定的稍高于基础rtt值。一种做法是,在基础rtt值上加上一个极小的调参时间。

优选的,所述的ecn标记率门限值设定为中间水平,如40%左右;这是因为一个过高的ecn标记率门限值,是不能灵敏地反映路径拥塞程度;但一个较低的ecn标记率门限值,则会造成过多的拥塞误判。

另一方面,结合所述第一方面的评估clos网络路径拥塞的方法,本发明提供一种评估路径状态的方法。在所述评估路径拥塞的方法基础上,该方法还包括:

获取各路径超时、重传信息;

若一条路径超时超过三次且没有收到ack包、或重传率超过1%且为非拥塞路径时,则判断该路径为故障路径。

又一方面,结合所述第一方面的评估clos网络路径拥塞的方法,本发明提供一种比较路径拥塞程度的方法,该方法包括:

获取第一路径、及自源主机端出发可达的其他路径的rtt值和ecn标记率;

设定用于比较两条路径间拥塞程度的门限值δrtt和δecn;

若所述第一路径与所述其他路径中的任意一条间的rtt值、ecn标记率之差,均大于δrtt、δecn,则认为该路径拥塞程度明显优于所述第一路径。

当所述的第一路径为拥塞路径,上述的比较则更有意义。

又一方面,结合所述第一方面、第二方面,本发明提供一种负载均衡方法,该方法包括:

根据上述方法获知路径状态,指导负载均衡。

优选的,结合所述第三方面,所述负载均衡,包括所述比较路径拥塞程度的方法指导下的重路由。

相对现有技术,本发明提供的技术方案具有诸多的有益效果,如:

一,全面性,通过其能有效地检测路径拥塞和故障,进而指导负载均衡;

二,准确性,较之仅通过ttl、rtt、ack或其变换趋势判断路径拥塞的方法,本发明提供了更为准确的判断,减少了误判,同时还提供了更为细化的路径状态展示;

三,低开销,相对于以探测为手段的路径评估方法,本发明提供的方法减少了探测的开销。

附图说明

为更加清楚地说明本发明实施例或现有技术中的技术方案,下面将对本发明中一部分实施例或现有技术描述中涉及的附图做简单介绍。

图1展示了现有技术中的一种clos网络架构(叶脊拓扑结构)示意图;

图2揭示了图1中的网络容易发生拥塞的缺陷;

图3为一种利用ecn和rtt评估路径结果的示意图;

图4为本发明一实施例提供了一种评估路径状态的算法。

具体实施方式

下面结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为一种叶脊拓扑结构的clos网络示意图,这种网络结构能够为网络中的每一对主机终端提供多条路径。通过这种多路径网络传输数据流量时,本领域技术人员都会追求严格的流量负载均衡,以最大限度地利用带宽并行传输流量。但是,在数据流量动态传输过程中,特别是在多路径情形下,路由算法导致的流量拥塞就无法根本避免。

针对上述问题,本发明的一部分实施例提供一种利用rtt和ecn信号评估clos网络路径拥塞的方法,以及全面及时地感知路径拥塞状态。该方法包括:

在源主机端,获取自所述源主机端出发可达的所有路径上的rtt值和ecn标记率;其中,rtt(roundtriptime),即往返时间,是计算机网络中一个重要的性能指标,表示从发送端发送数据开始,到发送端收到来自接收端的确认经历的时间。rtt对于tcp协议非常重要,在tcp中常被用来作为设置超时时间的依据。由于rtt由路径传输时间、端处理时间及交换机排队和处理时间等决定。因此,rtt的变化在一定程度上反映网络拥塞程度的变化。在一些方案中,rtt通常被直接拿来评估端到端的路径拥塞程度。虽然rtt对拥塞评估有一定信息价值,但是直接用于评估路径拥塞显然得到的rtt值是不够准确的。一个高的rtt值并非一定表示路径拥塞,比如主机终端网络协议栈的延迟也会增加rtt值。但小的rtt值则能明确表示路径未充分利用,这对我们来说是更有信息价值的。而ecn通常被用来捕捉单跳的拥塞,它是通过商用交换机支持实现,被广泛用于拥塞控制算法。但是,在高负载网络(如clos网络)下,拥塞可能从多跳积累起来。ecn信号则只是反映路径中最拥塞一跳的拥塞情况。因此,一个低的ecn值也并非一定表示没有发生拥塞,特别是在ecn采样不足的情况下,其尤为明显。

因此,我们设定rtt门限值和ecn标记率门限值两个门限值,以用于判断各路径拥塞程度。其具体判断过程如下:若一条路径的rtt值高于所述rtt门限值且ecn标记率高于所述ecn标记率门限值,则评估该路径处于拥塞状态(即为拥塞路径congestedpath);否则,该路径处于非拥塞状态(即为非拥塞路径non-congestedpath)。

在上述的实施例中,部分实施例提供一种优选的实现方式,即设定高、低rtt门限值;其具体评估如图3所示,

一条路径的rtt值高于所述的高rtt门限值,虽并不一定路径拥塞造成的,但若其ecn标记率也高于所述ecn标记率门限值,则大概率是路径拥塞造成的,故评估该路径处于拥塞状态(即为拥塞路径);

若一条路径的ecn标记率低于所述ecn标记率门限值,可能是采样低造成的误报,但若其rtt值也低于所述的低rtt门限值,则在很大程度上反映该路径处于未充分利用状态,故评估该路径未被充分利用(即为良好路径);

除上述两种情况外,其他的包括适度负载的几种情况,一般可视为优于拥塞的状态,但又无法确认或次于未充分利用状态,故将处于这种中间状态的路径评估为灰色路径。

在上述任一的实施例中,部分实施例提供一种优选的实现方式,根据基础rtt设定所述的rtt门限值。

进一步,上述的设定高、低rtt门限值的实施例中,优选的,其中的高rtt门限值,根据基础rtt值与跳的时延设定。例如,一个高rtt门限值,可以设定为基础rtt值、单个跳的时延与预设参数乘积之和。其中预设参数可根据网络环境、设备等因素调节。

同样地,低rtt门限值,可设定为稍高于基础rtt值。例如,在基础rtt值上加上一个极小的调参时间(如20-40μs)。

在上述的任一实施例中,部分实施例提供一种优选的实现方式,所述的ecn标记率门限值设定为中间水平,例如40%。这样既可以避免ecn标记率门限值设定过高而不能灵敏地反映路径拥塞程度,又可减少因其设定过低造成过的拥塞误判。

本发明的另一部分实施例提供一种评估路径状态的方法。图4为该评估路径状态方法其中一个实施例的算法示例。在上述评估路径拥塞的方法(详见第1-7行)基础上,该方法还包括:

获取各路径超时、重传信息;

并根据其评估路径故障,具体如下,

若一条路径超时超过三次且没有收到ack包、或重传率超过1%且为非拥塞路径时,则判断该路径为故障路径。(详见第8-9行)

本发明的又一部分实施例提供一种比较路径拥塞程度的方法,该方法包括:

获取某条路径(即视为当前路径)、及自源主机端出发可达的其他路径的rtt值和ecn标记率;

设定用于比较两条路径间拥塞程度的门限值δrtt和δecn;

将该当前路径与所述其他路径中的任意一条间的rtt值、ecn标记率之差,与上述门限值比较,若两值均分别大于δrtt、δecn,则认为这条与当前路径对比的路径的拥塞程度明显优于当前路径。

当前路径为拥塞路径,通过上述路径比较,可以为路径调整给出指导。

本发明的又一部分实施例提供一种负载均衡的方法,该方法包括:

根据上述方法获知路径状态,指导负载均衡。具体的,可以通过上述方法,及时获知路径拥塞、故障等,在流量负载分配时,据此合理地规避拥塞、故障。

在上述的实施例中,部分实施例提供一种优选的实现方式,

结合上述的比较路径拥塞程度方法提供的路径调整指导,所述的负载均衡方法,包括基于上述路径调整指导的重路由。

以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1