CN116346726B - 一种自适应突发流量的主机端负载均衡方法 - Google Patents
一种自适应突发流量的主机端负载均衡方法 Download PDFInfo
- Publication number
- CN116346726B CN116346726B CN202310614435.4A CN202310614435A CN116346726B CN 116346726 B CN116346726 B CN 116346726B CN 202310614435 A CN202310614435 A CN 202310614435A CN 116346726 B CN116346726 B CN 116346726B
- Authority
- CN
- China
- Prior art keywords
- data
- data flow
- flow
- path
- state
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims abstract description 136
- 238000013507 mapping Methods 0.000 claims abstract description 50
- 238000012544 monitoring process Methods 0.000 claims abstract description 44
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 230000008859 change Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 2
- 230000003044 adaptive effect Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000007418 data mining Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 238000000691 measurement method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241000246123 Retama raetam Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例中提供了一种自适应突发流量的主机端负载均衡方法,属于电通信技术领域,具体包括:步骤1,当上层应用发出的TCP数据包经过Hypervisor层并进入主机端负载均衡系统时,流量监控模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号并将其作为主键建立数据流映射表;步骤2,流量监控模块根据预设公式计算每条传输路径的拥塞程度并为每条传输路径分配路径编号,并结合单向传输延迟构建路径拥塞映射表;步骤3,流量监控模块查询数据流映射表得到当前数据流的状态;步骤4,重路由模块根据当前数据流的状态对其进行路由决策。通过本发明的方案,提高了调度自适应性和传输性能。
Description
技术领域
本发明实施例涉及电通信技术领域,尤其涉及一种自适应突发流量的主机端负载均衡方法。
背景技术
数据中心为海量传统与新型应用提供基础设施服务,包括网页搜索、在线推荐系统、即时通信等延迟敏感型服务以及高性能计算、分布式机器学习等计算密集型服务。近年来,随着大规模分布式系统的发展与部署,数据中心网络趋于成为系统性能瓶颈,主要来自以下两方面原因:1)以分布式机器学习为代表的人工智能技术模型越来越复杂,模型参数越来越多,且分布式系统规模不断增大,而不同节点间需要频繁同步模型参数,导致节点间通信成为限制大规模分布式机器学习系统扩展效率的主要瓶颈,甚至出现随着节点数量增加,模型训练速度反而下降的情况;2)新型存储介质及GPU等计算设备的性能提升速度快于网络设备的发展升级,使服务器单位时间内处理的数据逐渐需要更长时间完成网络传输。因此,数据中心网络为跨机架的不同节点提供多条传输路径,通过网络负载均衡机制为数据流动态分配传输路径,从而大幅提升网络传输性能,降低应用响应延迟。然而,不同应用或不同负载强度下,流量突发性不同,即流量可能是高度突发,也可能非常平稳,现有数据中心负载均衡机制无法感知流量突发性变化调整调度策略,导致严重的性能损失。具体地,基于flowlet的方案在流量平稳时重路由机会过少,而其它方案没有像基于flowlet的方案那样充分利用流量突发进行调度,现有方案仍存在性能损失或设计过于复杂的缺点。另外,在突发流量下,基于flowlet的方案调度数据流时未考虑数据流的传输状态,可能频繁调度短流,极大损害了短流的传输完成时间。最后,频繁切换数据流路径还导致拥塞不匹配问题,同样损害数据流传输完成时间。为解决上述问题,部分方案监测数据流状态(包括剩余流量大小、发送速率、流的拥塞状态等)进行主动负载均衡,但没有利用flowlet捕获突发流量调度,损失了部分调度机会,存在性能缺陷。
可见,亟需一种能提升数据中心内部网络传输性能,降低应用响应延迟的自适应突发流量的主机端负载均衡方法。
发明内容
有鉴于此,本发明实施例提供一种自适应突发流量的主机端负载均衡方法,至少部分解决现有技术中存在调度自适应性和传输性能较差的问题。
本发明实施例提供了一种自适应突发流量的主机端负载均衡方法,所述方法应用于主机端负载均衡系统,所述主机端负载均衡系统包括流量监控模块和重路由模块,所述方法包括:
步骤1,当上层应用发出的TCP数据包经过Hypervisor层并进入主机端负载均衡系统时,流量监控模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号并将其作为主键建立数据流映射表;
步骤2,流量监控模块根据预设公式计算每条传输路径的拥塞程度并为每条传输路径分配路径编号,并结合单向传输延迟构建路径拥塞映射表;
步骤3,流量监控模块查询数据流映射表得到当前数据流的状态;
步骤4,重路由模块根据当前数据流的状态对其进行路由决策。
根据本发明实施例的一种具体实现方式,所述数据流映射表包括数据流编号、数据流的发送速率、已发送数据量大小、数据包到达监测模块的时间、单位时间内数据包重传次数、该数据流的单向传输延迟和数据流当前传输路径。
根据本发明实施例的一种具体实现方式,所述预设公式为
其中,为链路带宽,/>为单向传输延迟,/>为单向传输延迟的变化梯度。
根据本发明实施例的一种具体实现方式,所述数据流的状态为故障状态、拥塞状态、良好状态和中间状态中的任一种。
根据本发明实施例的一种具体实现方式,所述步骤3具体包括:
若数据流在单位时间内数据包重传次数超过重传阈值,则判定该数据流为故障状态,并通过记录数据包TCP序号确认重传数据包;
若数据流的单向传输延迟超过阈值,且已发送数据量大小超过阈值/>、数据流的发送速率小于阈值/>,则判定该数据流为拥塞状态;
若数据流的单向传输延迟小于,且已发送数据量大小小于阈值/>,则判定该数据流为良好状态;
若数据流不属于故障状态、拥塞状态和良好状态,则判定该数据流为中间状态。
根据本发明实施例的一种具体实现方式,所述步骤4具体包括:
当数据流为故障状态,在其它传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath1,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为拥塞状态,在全部传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath2,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为良好状态,根据该数据流编号选择数据流映射表中其对应传输路径进行传输;
当数据流为中间状态,判断当前数据包是否触发数据流的flowlet超时,若是,则重新选择所有路径中拥塞程度最低的路径进行传输,更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath3,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段,若否,则禁止执行重路由操作。
根据本发明实施例的一种具体实现方式,所述判断当前数据包是否触发数据流的flowlet超时的步骤,包括:
判断数据流映射表中的数据包到达监测模块的时间是否大于flowlet超时阈值;
若是,则判定当前数据包触发数据流的flowlet超时;
若否,则判定当前数据包未触发数据流的flowlet超时。
根据本发明实施例的一种具体实现方式,所述步骤4之后,所述方法还包括:
当发送端监测到新的单向传输延迟时,结合路径拥塞映射表中该路径编号对应的单向传输延迟,计算出变化梯度值,从而计算出新的拥塞程度,并用最新的单向传输延迟和拥塞程度更新到路径拥塞映射表。
本发明实施例中的自适应突发流量的主机端负载均衡方案,包括:步骤1,当上层应用发出的TCP数据包经过Hypervisor层并进入主机端负载均衡系统时,流量监控模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号并将其作为主键建立数据流映射表;步骤2,流量监控模块根据预设公式计算每条传输路径的拥塞程度并为每条传输路径分配路径编号,并结合单向传输延迟构建路径拥塞映射表;步骤3,流量监控模块查询数据流映射表得到当前数据流的状态;步骤4,重路由模块根据当前数据流的状态对其进行路由决策。
本发明实施例的有益效果为:通过本发明的方案,基于数据流状态和流量突发特征综合考虑作出是否切换路径的决策,在突发性强弱不同的负载下具有更优的性能表现,能进一步降低总体流量完成时间、延迟敏感短流的完成时间,为数据中心海量、多类型应用提供了更强的服务质量保障。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种自适应突发流量的主机端负载均衡方法的流程示意图;
图2为本发明实施例提供的一种自适应突发流量的主机端负载均衡方法的具体实施框架示意图;
图3为本发明实施例提供的一种web search负载下的流量完成时间对比示意图;
图4为本发明实施例提供的一种data mining负载下的流量完成时间对比示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本发明,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
本发明实施例提供一种自适应突发流量的主机端负载均衡方法,所述方法可以应用于网页搜索、在线推荐系统或即时通信等场景的数据中心传输调度过程中。
参见图1,为本发明实施例提供的一种自适应突发流量的主机端负载均衡方法的流程示意图。如图1所示,所述方法应用于主机端负载均衡系统,所述主机端负载均衡系统包括流量监控模块和重路由模块,所述方法主要包括以下步骤:
步骤1,当上层应用发出的TCP数据包经过Hypervisor层并进入主机端负载均衡系统时,流量监控模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号并将其作为主键建立数据流映射表;
可选的,所述数据流映射表包括数据流编号、数据流的发送速率、已发送数据量大小、数据包到达监测模块的时间、单位时间内数据包重传次数、该数据流的单向传输延迟和数据流当前传输路径。
具体实施时,如图2所示,图2为本发明实施提供的一种自适应突发流量的主机端负载均衡系统的架构图,本系统部署在典型云数据中心主机端的Hypervisor层,虚拟机(Virtual Machine,VM)内应用流量将经过Hypervisor层被本系统处理,系统包含两个模块:流量监控模块和重路由模块。其中,流量监控模块负责监控数据流状态,检测路径的拥塞程度,并为数据流分配不同的状态;重路由模块负责综合考虑数据流状态和流量突发程度决定是否进行负载均衡,以及选择传输路径。
在流量监控模块,本发明通过在发送端监测每个流经Hypervisor层的数据流传输信息来分析判断该流属于哪种状态,主要监测数据流的发送速率、剩余数据量的大小(可以通过已发送数据量大小来估计)、数据流的超时重传事件、单向传输延迟等信息。
例如,当上层应用发出的TCP数据包经过Hypervisor层并进入本系统时,首先监测模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号,记为flowlet ID,并以flowlet ID为主键建立flowlet映射表(flowlet ID,sendRate,sendBytes,updateTime,reTimes,delay,cuPath),其中sendRate为数据流的发送速率,sendBytes为已发送数据量大小,updateTime为数据包到达监测模块的时间,reTimes为单位时间内数据包重传次数,delay为该数据流的单向传输延迟,cuPath为数据流当前传输路径。
步骤2,流量监控模块根据预设公式计算每条传输路径的拥塞程度并为每条传输路径分配路径编号,并结合单向传输延迟构建路径拥塞映射表;
进一步的,所述预设公式为
其中,为链路带宽,/>为单向传输延迟,/>为单向传输延迟的变化梯度。
具体实施时,流量监测模块还需监测所有传输路径的拥塞程度,并使用现有成熟的xPath技术为所有传输路径分配路径编号,并且可以控制数据流传输路径。
在流量监控模块,本发明在Hypervisor层动态评估路径拥塞程度。通过硬件网卡或高效数据处理框架(如DPDK)测量不同服务器之间的单向传输延迟,由于相关测量方法已经被应用到多项数据中心拥塞控制、负载均衡方案,因此不再详细描述。但是反馈到发送端的单向传输延迟或排队延迟仍难以准确评估当前路径拥塞程度,例如两条相同物理配置的传输链路在各网卡设备、交换机的排队长度相同,但其中一条拥塞正在加剧,另外一条拥塞正在缓解,当前排队延迟或排队长度数据无法评判哪条路径更适合放置新的数据流(显然需要选择拥塞正在缓解的路径)。因此,为了更精确地评估各个路径的拥塞程度,本发明将路径拥塞程度定义为当前路径网络中数据包数量及其变化梯度的乘积,表示为:
其中为当前路径所有网络设备转发端口数据包排队长度之和,/>为链路带宽,/>为基准往返时延,/>为排队长度变化梯度。由于无法精确获取排队长度/>,所以在公式(2)式计算/>:
然后,利用(单向传输延迟)和/>(单向传输延迟变化梯度)这一事实,将公式(2)重新整理如下:
因此,可以通过监测单向传输延迟及其变化梯度/>来更新公式(3)中的/>,本发明采用/>来定义路径拥塞程度。
本发明根据公式(3)计算所有传输路径的拥塞程度,并构建路径拥塞映射表(pathID,onewayDelay,/>),其中pathID为路径编号,onewayDelay为单向传输延迟。由于计算/>需要利用单向传输延迟及其变化梯度进行计算,因此路径拥塞映射表中onewayDelay用于记录当前传输路径的单向传输延迟。本发明通过硬件网卡或高效数据处理框架(如DPDK)测量不同服务器之间的单向传输延迟,由于相关测量方法已经被应用到多项数据中心拥塞控制、负载均衡方案,因此不再详细描述。
步骤3,流量监控模块查询数据流映射表得到当前数据流的状态;
在上述实施例的基础上,所述数据流的状态为故障状态、拥塞状态、良好状态和中间状态中的任一种。
进一步的,所述步骤3具体包括:
若数据流在单位时间内数据包重传次数超过重传阈值,则判定该数据流为故障状态,并通过记录数据包TCP序号确认重传数据包;
若数据流的单向传输延迟超过阈值,且已发送数据量大小超过阈值/>、数据流的发送速率小于阈值/>,则判定该数据流为拥塞状态;
若数据流的单向传输延迟小于,且已发送数据量大小小于阈值/>,则判定该数据流为良好状态;
若数据流不属于故障状态、拥塞状态和良好状态,则判定该数据流为中间状态。
具体实施时,本方法将数据流的状态分为四种状态:(1)故障状态:数据流的TCP重传率较高或连续多次超时;(2)拥塞状态:数据流单向传输延迟很高,且为发送速率较低的长流;(3)良好状态:数据流发送速率高且属于短流;(4)中间状态:不属于上述任何一种状态的数据流属于此状态。
例如,在流量监测模块,本发明首先计算当前数据流的状态,通过查询flowlet映射表有:
(1)故障状态:若数据流的TCP重传率较高或连续多次超时,即单位时间内reTimes超过3次,通过记录数据包TCP序号确认重传数据包;
(2)拥塞状态:数据流单向传输延迟很高,且为发送速率较低的长流,即单向传输延迟delay超过阈值,且sendBytes超过阈值/>、sendRate小于阈值/>,其中/>为空闲路径RTT(Round-Trip Time,往返时延)与1.5倍单跳延迟(One Hop Delay)之和,/>为600KB,/>为链路带宽的30%;
(3)良好状态:数据流发送速率高且属于短流,即flowlet映射表对应数据流的delay小于,且sendBytes小于阈值/>;
(4)中间状态:不属于上述任何一种状态的数据流属于此状态。
步骤4,重路由模块根据当前数据流的状态对其进行路由决策。
在上述实施例的基础上,所述步骤4具体包括:
当数据流为故障状态,在其它传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath1,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为拥塞状态,在全部传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath2,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为良好状态,根据该数据流编号选择数据流映射表中其对应传输路径进行传输;
当数据流为中间状态,判断当前数据包是否触发数据流的flowlet超时,若是,则重新选择所有路径中拥塞程度最低的路径进行传输,更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath3,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段,若否,则禁止执行重路由操作。
进一步的,所述判断当前数据包是否触发数据流flowlet超时的步骤,包括:
判断数据流映射表中的数据包到达监测模块的时间是否大于flowlet超时阈值;
若是,则判定当前数据包触发数据流的flowlet超时;
若否,则判定当前数据包未触发数据流的flowlet超时。
进一步的,所述步骤4之后,所述方法还包括:
当发送端监测到新的单向传输延迟时,结合路径拥塞映射表中该路径编号对应的单向传输延迟,计算出变化梯度值,从而计算出新的拥塞程度,并用最新的单向传输延迟和拥塞程度更新到路径拥塞映射表。
具体实施时,在重路由模块,本发明继续根据数据流状态、路径拥塞程度,以及本模块的flowlet监测进行重路由:
(1)对于处于故障状态的数据流,说明该数据流在当前传输路径存在网络故障或严重网络拥塞的概率较高,因此必须切换传输路径,即在其它传输路径中选择拥塞程度最低的路径进行传输(其它传输路径中最小的路径,记为minPath1),更新flowlet映射表中该数据流对应表项的cuPath字段为minPath1,以及sendRate、sendBytes、updateTime字段;
(2)对于处于拥塞状态的数据流,重新选择所有路径中拥塞程度最低的路径进行传输(所有传输路径中最小的路径,记为minPath2),更新flowlet映射表中该数据流对应表项的cuPath字段为minPath2,以及sendRate、sendBytes、updateTime字段;
(3)对于处于良好状态的数据流,由于传输速率快且大概率正处于慢启动传输状态,选择不进行重路由,避免频繁切换该类数据流导致数据包乱序和拥塞不匹配问题,更新flowlet映射表中该数据流对应表项的sendRate、sendBytes、updateTime字段;
(4)对于处于中间状态的数据流,检查当前数据包是否触发flowlet超时(设置超时阈值为,配置为RTT的两倍),只有当flowlet映射表中该数据流对应表项的updateTime大于超时阈值/>时,才进行重路由,即重新选择所有路径中拥塞程度最低的路径进行传输(所有传输路径中/>最小的路径,记为minPath3),更新flowlet映射表中该数据流对应表项的cuPath字段为minPath3,以及sendRate、sendBytes、updateTime字段。
同时,在重路由模块根据当前数据流的状态对其进行路由决策之后,当发送端监测到新的单向传输延迟时,结合路径拥塞映射表中该路径编号对应的onewayDelay,计算出变化梯度值,从而计算出新的,并用最新的onewayDelay和/>更新到路径拥塞映射表。
本实施例提供的自适应突发流量的主机端负载均衡方法,通过检查数据流传输状态主动对出现网络故障、超时和严重拥塞的数据流进行重路由,并且避免处于快速传输状态的短流切换路径,有利于在大幅提升长流传输带宽的同时,降低短流完成时间。另外,本发明还结合数据流状态和flowlet超时事件调度数据流,当数据流遇到flowlet超时事件时,只有当数据流不属于快速传输的短流时才进行调度。通过上述调度机制,针对平缓应用负载下突发流量较少,flowlet调度机会少的问题,本发明能根据数据流状态主动、充分地调度数据流;针对突发流量较多的应用负载,flowlet调度机会多,本发明在主动调度数据流的同时,还检查flowlet调度是否有利于提升传输性能,避免调度快速传输状态下的短流。因此,本发明设计的负载均衡方案能自适应突发流量调度数据流,同时适应不同突发程度的应用负载。另外,由于部署在主机端的Hypervisor层,本发明无需定制新型硬件交换机和修改网络传输协议,有利于在大型数据中心下快速部署,提高了调度自适应性和传输性能。
为了进一步说明本发明的方法,下面将通过一个具体实施例进行说明,本发明实施例在NS3仿真环境下实现大规模数据中心网络进行测试,使用8×8的Leaf-Spine网络拓扑,链路带宽设置为10Gbps,共128台服务器。为了模拟不对称网络,随机选择20%的Leaf到Spine交换机的链路,将这些链路的带宽削减到2Gbps。测试负载选择广泛使用的实际负载web search和data mining负载,其中web search负载的突发流量更多,突发性较强,datamining负载的突发流量偏少,流量模式较为平缓。对比测试选择了目前具有代表性的主机端负载均衡方案CLOVE-ECN,以及定制交换机的方案LetFlow。测试观察它们的总体流量平均完成时间、时延敏感短流的平均完成时间和短流尾延迟,完成时间越小则表示性能越好,检测本发明提出的一种自适应突发流量的主机端负载均衡技术是否带来性能提升。
图3和图4分别为web search和data mining负载下的性能对比测试图,在测试中将本发明标记为TBLB(Burst-traffic-adaptive Load Balancing, 自适应突发流量的负载均衡),并将其它方案的平均流量完成时间归一化到TBLB,图中横坐标为负载程度,纵坐标为归一化完成时间。首先,由于TBLB相比其他方案能避免频繁调度快速传输短流,仅在适当的时机调度flowlet,因此在突发性较强的web search负载下,即图3中所示,其中,(a)表示总体平均完成时间,(b)表示短流平均完成时间,相比CLOVE-ECN降低28-48%的总体平均完成时间,相比需修改硬件交换机的LetFlow,在较低负载下(20-60%负载强度下)仍能最多提升24%的传输性能,在高负载下TBLB相比LetFlow具有-9%的性能差距,这是因为负载越高,突发流量越多,LetFlow在交换机能捕获到更多的调度机会。从图3中的(b)可知,TBLB能大幅降低短流完成时间;另外,由于TBLB不仅在适当的时机调度flowlet,还能主动调度处于网络故障、严重拥塞状态的数据流,因此在突发性较弱的data mining负载下,即图4所示,其中,a)表示总体平均完成时间,(b)表示短流平均完成时间,相比CLOVE-ECN、LetFlow分别降低13-34%、15-33%的总体平均完成时间,同时能大幅降低短流完成时间如图4中(b)所示。总之,由大规模仿真测试可证明,本发明提出的一种自适应突发流量的主机端负载均衡技术与系统,相比该领域同类的具有代表性的其他方法,在突发性强弱不同的负载下具有更优的性能表现,能进一步降低总体流量完成时间、延迟敏感短流的完成时间,为数据中心海量、多类型应用提供了更强的服务质量保障。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种自适应突发流量的主机端负载均衡方法,其特征在于,所述方法应用于主机端负载均衡系统,所述主机端负载均衡系统包括流量监控模块和重路由模块,所述方法包括:
步骤1,当上层应用发出的TCP数据包经过Hypervisor层并进入主机端负载均衡系统时,流量监控模块根据TCP头部字段的源目的IP地址、源目的端口号进行哈希计算,得到该数据流编号并将其作为主键建立数据流映射表;
步骤2,流量监控模块根据预设公式计算每条传输路径的拥塞程度并为每条传输路径分配路径编号,并结合单向传输延迟构建路径拥塞映射表;
步骤3,流量监控模块查询数据流映射表得到当前数据流的状态,其中,所述数据流的状态为故障状态、拥塞状态、良好状态和中间状态中的任一种;
步骤4,重路由模块根据当前数据流的状态对其进行路由决策;
所述步骤4具体包括:
当数据流为故障状态,在其它传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath1,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为拥塞状态,在全部传输路径中选择拥塞程度最低的路径进行传输,并更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath2,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段;
当数据流为良好状态,根据该数据流编号选择数据流映射表中其对应传输路径进行传输;
当数据流为中间状态,判断当前数据包是否触发数据流的flowlet超时,若是,则重新选择所有路径中拥塞程度最低的路径进行传输,更新数据流映射表中该数据流对应表项的数据流当前传输路径字段为minPath3,以及数据流的发送速率、已发送数据量大小、数据包到达流量监控模块的时间字段,若否,则禁止执行重路由操作。
2.根据权利要求1所述的方法,其特征在于,所述数据流映射表包括数据流编号、数据流的发送速率、已发送数据量大小、数据包到达监测模块的时间、单位时间内数据包重传次数、该数据流的单向传输延迟和数据流当前传输路径。
3.根据权利要求2所述的方法,其特征在于,所述预设公式为
其中,为链路带宽,/>为单向传输延迟,/>为单向传输延迟的变化梯度。
4.根据权利要求3所述的方法,其特征在于,所述步骤3具体包括:
若数据流在单位时间内数据包重传次数超过重传阈值,则判定该数据流为故障状态,并通过记录数据包TCP序号确认重传数据包;
若数据流的单向传输延迟超过阈值,且已发送数据量大小超过阈值/>、数据流的发送速率小于阈值/>,则判定该数据流为拥塞状态;
若数据流的单向传输延迟小于,且已发送数据量大小小于阈值/>,则判定该数据流为良好状态;
若数据流不属于故障状态、拥塞状态和良好状态,则判定该数据流为中间状态。
5.根据权利要求4所述的方法,其特征在于,所述判断当前数据包是否触发数据流的flowlet超时的步骤,包括:
判断数据流映射表中的数据包到达监测模块的时间是否大于flowlet超时阈值;
若是,则判定当前数据包触发数据流的flowlet超时;
若否,则判定当前数据包未触发数据流的flowlet超时。
6.根据权利要求5所述的方法,其特征在于,所述步骤4之后,所述方法还包括:
当发送端监测到新的单向传输延迟时,结合路径拥塞映射表中该路径编号对应的单向传输延迟,计算出变化梯度值,从而计算出新的拥塞程度,并用最新的单向传输延迟和拥塞程度更新到路径拥塞映射表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310614435.4A CN116346726B (zh) | 2023-05-29 | 2023-05-29 | 一种自适应突发流量的主机端负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310614435.4A CN116346726B (zh) | 2023-05-29 | 2023-05-29 | 一种自适应突发流量的主机端负载均衡方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116346726A CN116346726A (zh) | 2023-06-27 |
CN116346726B true CN116346726B (zh) | 2023-08-15 |
Family
ID=86876224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310614435.4A Active CN116346726B (zh) | 2023-05-29 | 2023-05-29 | 一种自适应突发流量的主机端负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346726B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193151A (en) * | 1989-08-30 | 1993-03-09 | Digital Equipment Corporation | Delay-based congestion avoidance in computer networks |
CN110351196A (zh) * | 2018-04-02 | 2019-10-18 | 华中科技大学 | 云数据中心中基于精确拥塞反馈的负载均衡方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10498654B2 (en) * | 2015-12-28 | 2019-12-03 | Amazon Technologies, Inc. | Multi-path transport design |
-
2023
- 2023-05-29 CN CN202310614435.4A patent/CN116346726B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193151A (en) * | 1989-08-30 | 1993-03-09 | Digital Equipment Corporation | Delay-based congestion avoidance in computer networks |
CN110351196A (zh) * | 2018-04-02 | 2019-10-18 | 华中科技大学 | 云数据中心中基于精确拥塞反馈的负载均衡方法及系统 |
Non-Patent Citations (1)
Title |
---|
史庆宇.数据中心网络流量管理性能优化技术研究.中国博士学位论文全文数据库-信息科技辑.2022,(第2022年第1期期),第3-4章. * |
Also Published As
Publication number | Publication date |
---|---|
CN116346726A (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8427958B2 (en) | Dynamic latency-based rerouting | |
Zats et al. | DeTail: Reducing the flow completion time tail in datacenter networks | |
KR100693058B1 (ko) | 패킷의 유실을 방지하기 위한 라우팅 방법 및 장치 | |
Liu et al. | Ensuring connectivity via data plane mechanisms | |
US9185036B2 (en) | Method and apparatus for flow control of data in a network | |
US9154394B2 (en) | Dynamic latency-based rerouting | |
US10938724B2 (en) | Flow rate based network load balancing | |
US11303586B2 (en) | Switching and load balancing techniques in a communication network | |
Cui et al. | Difs: Distributed flow scheduling for adaptive routing in hierarchical data center networks | |
CN105915467A (zh) | 一种面向软件定义的数据中心网络流量均衡方法及装置 | |
CN112350949A (zh) | 软件定义网络中基于流调度的重路由拥塞控制方法及系统 | |
Park et al. | Efficient routing for traffic offloading in software-defined network | |
CN109039941B (zh) | 数据中心网络中基于路径分类的自适应包散射方法 | |
US10305787B2 (en) | Dropping cells of a same packet sent among multiple paths within a packet switching device | |
CN110324255B (zh) | 一种面向数据中心网络编码的交换机/路由器缓存队列管理方法 | |
CN116346726B (zh) | 一种自适应突发流量的主机端负载均衡方法 | |
Alanazi et al. | CAFT: Congestion-aware fault-tolerant load balancing for three-tier clos data centers | |
US20090046589A1 (en) | Method and apparatus for compensating for performance degradation of an application session | |
CN109257302B (zh) | 一种基于分组排队时间的包散射方法 | |
Poorzare et al. | Optimizing optical networks by using CWN algorithm | |
Zhang et al. | Congestion-aware adaptive forwarding in datacenter networks | |
Wu et al. | Flow-Level Rerouting in RDMA-Enabled Dragonfly Networks | |
Yu et al. | TCP performance over OBS networks with multiple flows input | |
Schwabe et al. | Synrace: Decentralized load-adaptive multi-path routing without collecting statistics | |
US20230269184A1 (en) | Notification-based load balancing in a network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |