基于端的故障容忍的分布式数据中心负载均衡方法

文档序号:8447520阅读:390来源:国知局
基于端的故障容忍的分布式数据中心负载均衡方法
【技术领域】
[0001] 本发明设及数据中屯、中流量负载均衡方法,具体是一种基于端的分布式负载均衡 机制。
【背景技术】
[0002] 对于计算的可扩展性需求和规模效应所带来的巨大收益推动了数据中屯、技术的 发展。当前的数据中屯、典型地包含成千上万级别的主机。通过采用化t-tree,B化be等拓 扑结构,数据中屯、网络为应用通讯提供了丰富的路径冗余。尽管该种路径富余从理论上提 高了数据中屯、的对剖带宽,其实际性能仍然极大地依赖于底层的负载均衡机制。如果不能 提供有效利用路径多样性的机制,数据中屯、网络通讯的整体性能仍会收到很大的影响。当 前典型数据中屯、多借助于Equal-Cost-Multipath巧CMP)的技术来实现流量负载均衡。由 于ECMP技术是一种将数据流和传输路径进行随机映射的方式,其不能有效地感知路径上 的负载情况。该种负载均衡的盲目性可能导致大量的流冲突,从而极大地影响网络的整体 性能。尽管当前已经提出部分适应性的负载均衡策略来改善ECMP的缺点,但其不适用于产 生网络故障的场景,或者需要特定的硬件支持。

【发明内容】

[0003] 发明目的;本发明为了解决现有的数据中屯、负载均衡技术的不足,提供了一种基 于端的故障容忍的分布式数据中屯、负载均衡方法。
[0004] 技术方案;为解决上述技术问题,本发明提供的基于端的故障容忍的分布式数据 中屯、负载均衡方法,该方法在源主机端维护具有自衰老机制的路径拥塞表,所述路径拥塞 表记录了从该源主机出发可达的所有路径的拥塞程度;该方法包括基于端的路径状态评估 和自适应的负载均衡,所述基于端的路径状态评估通过路径拥塞表为自适应的负载均衡为 提供实时选路指导,所述基于端的路径状态评估调用自适应的负载均衡为每个基本负载单 元选路;
[0005] 所述基于端的路径状态评估包括;利用至少包含TCP数据流中的ACK到达时间和 ACK确认的数据量的信息来评估当前路径的拥塞程度;利用TCP中的快重传和RT0超时事 件来及时地获取故障路径的信息;将获取到的路径拥塞程度和故障信息插入到当前主机的 拥塞表中;
[0006] 所述自适应的负载均衡包括;WTCP流中的拥塞窗口作为基本负载单元,利用主 机拥塞表中的路径状态执行双向的细粒度负载均衡机制,包括防止路径震荡的正向数据段 路由机制,W及反向ACK路由机制。
[0007] 优选的,所述自适应的负载均衡包括W下步骤:
[0008] 在TCP层检测当前的TCP拥塞窗口,使用源路由技术控制每个基本负载单元的发 送路径的步骤;
[0009] 在发送数据段之前,记录当前发送的拥塞窗口的起始序列号SeQbeg、终止序列号 SeQend及其发送路径pid为元组(Seqbeg,SeQend,pid)的步骤;
[0010] 当发送ACK报文时,从当前的主机拥塞表中选取具有最小拥塞程度的路径作为其 发送路径的步骤。
[0011] 优选的,所述基于端的路径状态评估包括W下步骤:
[0012] 1)在源主机发送每个拥塞窗口前,调用自适应的负载均衡为当前的负载单元选 路,并记录当前发送的拥塞窗口为元组(Seqbeg,Seqend,Pid);
[0013] 2)目的主机接收到数据段之后,回复ACK对当前接收到的数据段进行确认;
[0014] 3)如果源主机未接收到新的ACK从而产生RT0超时或者触发快重传,则进入步骤 7);否则进入步骤4);
[0015]4)源主机接受到ACK报文后,根据其确认号ackno查找满足SeQbeg《ackno《Seqend 的元组,得到当前ACK确认的数据的发送路径pid,并同时在缓存中删除所有满足条件 Seqend《ackno的元组;
[0016] 5)源主机根据接收到的ACK的到达时间和所确认的数据评估路径pid上的拥塞程 度CL(pid);
[0017] 6)将源主机针对路径pid的评估结果化(pid)插入到其自身所维护的路径拥塞表 中,结束;
[0018] 7)从TCP层获取当前最高的数据确认号acknOhigh,在主机端缓存的元组中查找满 足条件Seqbeg《ackn〇Mgh《Deq。。,的元组,并根据该元组获取当前发生故障的路径ID为 pid ;
[0019] 8)将故障路径的拥塞值设为CLm,并将其插入到该主机的拥塞表中,其中CLm表示 当前该路径正发生严重拥塞或者发生链路错误,结束。
[0020] 优选的,所述路径拥塞表具有的自衰老机制为;一旦拥塞表中的某条路径的拥塞 信息超过预设时间段未被更新,该路径的拥塞程度将会逐渐的降为0。
[0021] 具体的,所述在TCP层检测当前的TCP拥塞窗口,使用源路由技术控制每个基本负 载单元的发送路径的步骤包括:在TCP层检测当前的TCP拥塞窗口,并将每个拥塞窗口内的 数据作为一个基本的负载单元,针对每个基本的负载单元,首先从当前主机的拥塞表中随 机的选取一半路径放入备选路径集,然后从备选路径集中选取具有最小拥塞程度的路径作 为当前负载单元的发送路径。
[0022] 优选的,所述源主机根据接收到的ACK的到达时间和所确认的数据评估路径pid 上的拥塞程度的步骤中,所述评估方法为:
[0023]
【主权项】
1. 一种基于端的故障容忍的分布式数据中心负载均衡方法,其特征在于: 该方法在源主机端维护具有自衰老机制的路径拥塞表,所述路径拥塞表记录了从该源 主机出发可达的所有路径的拥塞程度;该方法包括基于端的路径状态评估和自适应的负载 均衡,所述基于端的路径状态评估通过路径拥塞表为自适应的负载均衡为提供实时选路指 导,所述基于端的路径状态评估调用自适应的负载均衡为每个基本负载单元选路; 所述基于端的路径状态评估包括:利用至少包含TCP数据流中的ACK到达时间和ACK 确认的数据量的信息来评估当前路径的拥塞程度;利用TCP中的快重传和RTO超时事件来 及时地获取故障路径的信息;将获取到的路径拥塞程度和故障信息插入到当前主机的拥塞 表中; 所述自适应的负载均衡包括:以TCP流中的拥塞窗口作为基本负载单元,利用主机拥 塞表中的路径状态执行双向的细粒度负载均衡机制,包括防止路径震荡的正向数据段路由 机制和反向ACK路由机制。
2. 根据权利要求1所述的基于端的故障容忍的分布式数据中心负载均衡方法,其特征 在于: 所述自适应的负载均衡包括以下步骤: 在TCP层检测当前的TCP拥塞窗口,使用源路由技术控制每个基本负载单元的发送路 径的步骤; 在发送数据段之前,记录当前发送的拥塞窗口的起始序列号Seqbeg、终止序列号Seqmd 及其发送路径pid为元组(Seqbeg, Seqmd, pid)的步骤; 当发送ACK报文时,从当前的主机拥塞表中选取具有最小拥塞程度的路径作为其发送 路径的步骤; 所述基于端的路径状态评估包括以下步骤: 1) 在源主机发送每个拥塞窗口前,调用自适应的负载均衡为当前的负载单元选路,并 记录当前发送的拥塞窗口为元组(Seqbeg, Seqend, pid); 2) 目的主机接收到数据段之后,回复ACK对当前接收到的数据段进行确认; 3) 如果源主机未接收到新的ACK从而产生RTO超时或者触发快重传,则进入步骤7); 否则进入步骤4); 4) 源主机接受到ACK报文后,根据其确认号ackno查找满足SeqbegS ackno彡Seq end 的元组,得到当前ACK确认的数据的发送路径pid,并同时在缓存中删除所有满足条件 SeqendS ackno 的元组; 5) 源主机根据接收到的ACK的到达时间和所确认的数据评估路径pid上的拥塞程度 CL (pid); 6) 将源主机针对路径pid的评估结果CL(pid)插入到其自身所维护的路径拥塞表中, 结束; 7) 从TCP层获取当前最高的数据确认号ackn〇high,在主机端缓存的元组中查找满足条 件Seq begS ackno high< Seq end的元组,并根据该元组获取当前发生故障的路径ID为pid ; 8) 将故障路径的拥塞值设为CLm,并将其插入到该主机的拥塞表中,其中0^表示当前 该路径正发生严重拥塞或者发生链路错误,结束。
3. 根据权利要求1所述的基于端的故障容忍的分布式数据中心负载均衡方法,其特征 在于:所述路径拥塞表具有的自衰老机制为:一旦拥塞表中的某条路径的拥塞信息超过预 设时间段未被更新,该路径的拥塞程度将会逐渐的降为0。
4. 根据权利要求2所述的基于端的故障容忍的分布式数据中心负载均衡方法,其特征 在于:所述在TCP层检测当前的TCP拥塞窗口,使用源路由技术控制每个基本负载单元的发 送路径的步骤包括:在TCP层检测当前的TCP拥塞窗口,并将每个拥塞窗口内的数据作为一 个基本的负载单元,针对每个基本的负载单元,首先从当前主机的拥塞表中随机的选取一 半路径放入备选路径集,然后从备选路径集中选取具有最小拥塞程度的路径作为当前负载 单元的发送路径。
5. 根据权利要求2所述的基于端的故障容忍的分布式数据中心负载均衡方法,其特征 在于:所述源主机根据接收到的ACK的到达时间和所确认的数据评估路径pid上的拥塞程 度的步骤中,所述评估方法为:
其中,CL (pid)为路径pid上的拥塞值,tSi表示接收到第i个ACK的时间戳,ackno 1表 示接收到的第i个ACK报文的确认号。
【专利摘要】本发明公开了基于端的故障容忍的分布式数据中心负载均衡方法,在源主机端维护具有自衰老机制的路径拥塞表;该方法包括基于端的路径状态评估和自适应的负载均衡;基于端的路径状态评估利用至少包含TCP数据流中的ACK到达时间和ACK确认的数据量的信息来评估当前路径的拥塞程度,利用TCP中的快重传和RTO超时事件来及时地获取故障路径的信息,将获取到的路径拥塞程度和故障信息插入到主机的拥塞表中;自适应负载均衡以TCP流中拥塞窗口为基本负载单元,利用主机拥塞表中的路径状态执行双向细粒度负载均衡机制。本发明无需特殊硬件支持,能够在大规模的数据中心中快速有效地部署,低开销、易部署,有效提高了数据中心中的通讯性能。
【IPC分类】H04L1-18, H04L12-803, H04L29-08
【公开号】CN104767826
【申请号】CN201510198276
【发明人】钱柱中, 温开源, 陆桑璐
【申请人】南京大学
【公开日】2015年7月8日
【申请日】2015年4月23日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1