面向数据中心广域网的低带宽开销的流量调度方法与流程

文档序号:15979546发布日期:2018-11-17 00:09阅读:202来源:国知局

本发明属于互联网技术领域,涉及流量调度技术,特别涉及一种面向数据中心广域网的低带宽开销的流量调度方法。

背景技术

许多网络服务供应商和云服务商维护着多个数据中心以支持其业务,如微软,谷歌。这些数据中心上运行着各种全局分布式的应用程序,并且它们分布在不同的地理区域,这决定了它们有跨地理区域相互通信的需求,广域网在保障这些数据中心能在不同地理位置之间相互通信中发挥了关键的作用。数据中心之间大量数据传输流导致了高昂的带宽开销,数据中心拥有者每年都要向互联网服务供应商租用广域网带宽,费用高达数亿。更严峻的是,不合理的流量调度导致了数据中心间的低下的带宽利用率,绝大多数链路的带宽利用率不超过60%,这意味着高昂的带宽开销中存在很大比例的浪费。如何合理有效地进行流量调度,减少带宽开销,同时保证数据流按时完成,成为了数据中心间流量调度领域的一个重要问题。

大流被定义为在数据中心间广域网流量中占比重大,数据量大并且持续时间长的一类流。通常大流在数据中心间流量中占了85%到95%的比重,数据量为几tb到几pb,持续时间长达若干小时。它的两个典型例子是:金融机构在交易日远端备份交易记录,搜索引擎在数据中心间周期性地同步索引项等。数据中心间的另一类流是交互式小流,它们的持续时间较短,时延敏感性较强。大流相比之下对时延的要求并不高,可以容忍使用集中控制器进行调度带来的时延。综上,对大流进行合理地调度具有重要的意义。在某些场景下,一段时间内所有大流的参数都是不可预知的,一个大流的到达时间,截止时间,数据量仅在它产生之后才可以得知,这些场景统称为在线场景。在在线场景下对大块数据流的合理调度,不仅是网络服务质量的重大保障,更可以节省大量的带宽租用开销的有效途径。

近年来涌现出了许多围绕着合理调度大流展开的研究工作。一种主要思路是,在数据中心上增加存储设备,在数据到达时选择是否存储或转发,也就是存储转发策略。在这种思路下展开的研究工作有两种,第一种工作提出在链路繁忙的时候暂存到达的数据,在链路空闲的时候传输数据,最终在时间维度上提高了带宽的利用率。另一种工作通过存储转发策略平衡各个链路上的带宽利用率,从而实现了负载均衡。因为需要暂存通过各个数据中心的流量,这种思路下的设备部署需要在每个数据中心增加额外的存储设备,这样不仅额外增加了存储开销,也使得流量调度变得更加复杂。因此,我们希望寻求一种更合理的调度方案,进行带宽开销的优化,同时在不增加额外存储开销的前提下保障各个大流按时完成。



技术实现要素:

为了克服上述现有技术的缺点,本发明的目的在于提供一种面向数据中心的在线场景低带宽开销流量调度方法,在保证所有大流都可以按时完成的前提下,通过合理的调度,最小化数每条大流带来的额外带宽租用开销,从而最小化总的带宽开销;本发明在每个传输时隙内为每个大流合理地分配带宽,设置发送路径,在保证所有大流按时完成的基础上,最小化带宽租用开销。

为了实现上述目的,本发明采用的技术方案是:

面向数据中心广域网的在线场景低带宽开销的流量调度系统,其特征主要在于,在数据中心间广域网中下按照以下步骤实现:

步骤(1),将一个租用周期分为若干个传输时隙,即1,...,t,用一个有向图g=(v,e)来表示数据中心和数据中心之间的链路,其中v是有向图的节点集合,表示所有的数据中心的集合,e是有向图的链路集,表示所有的链路的集合,用五元组ri=(si,ti,di,ai,τi)来代表一个大流,其中si,ti,di,ai,τi分别代表第i个大流的源节点、目的节点、数据量、到达时间以及截止时间;运行数据中心代理服务器,每隔一个时隙周期性地获得流量请求的源节点、目的节点、数据量、到达时间和截止时间;

步骤(2),数据中心代理服务器将流量请求信息发送给中央控制器,供其调度。

步骤(3),中央调调度系统运行pda算法,pda算法输入是各个数据中心代理服务器发送流请求信息,算法初始化时,令所有带宽值ce=0,通过pda算法计算最小的额外带宽开销并考虑小流对带宽开销的影响,具体步骤如下:

步骤(3a),对原整数规划问题松弛,将整数变量变为连续变量,然后求解松弛后模型的线性规划的解,连续解的每条链路收费带宽值为因为实际上是按照整数带宽收取费用,因此其对应的整数带宽值为ce;根据线性规划的解初始化根据ce初始化最小花费m←∑e∈eceue,其中ue表示链路e的单位带宽价格;

步骤(3b),选取最小,且ce不等于的k条链路,固定ce;

步骤(3c),若不能找到ce不等于的链路,则跳转执行步骤(4);

步骤(3d),求解固定k条链路后的线性规划,根据线性规划的解计算花费obj←∑e∈eceue;

步骤(3e),若本次迭代结果obj小于已知的最小花费m,更新最小花费m←obj,保存每条链路的收费带宽ce;

步骤(3e),迭代次数是否超过阈值j,若超过则跳出迭代,执行步骤(4),否则迭代次数加一,跳转执行步骤(3b);

步骤(4),生成调度方案,并将调度结果发送个各个数据中心代理服务器;

本发明用p0表示在流量约束、容量约束和整数约束共三个约束下,使目标函数:

最小化的最优化问题,即最小化传输流量时网络带宽花费;

其中,流量约束有两个,第一个流量约束为:

且t∈n+

δ+(v)表示以节点v为起点的所有有向边的集合,δ-(v)表示以节点v为终点的所有有向边的集合,xi,e(t)表示第i个请求在连接e上的第t个时刻的传输数据量,n+表示正整数

另一个流量约束为:

其中,δ+(si)表示以节点si为起点的所有有向边的集合,δ-(si)表示以节点si为终点的所有有向边的集合

所述容量约束为:

其中,ce为边e上租用的带宽值,表示数据中心拥有者在链路e上租用的带宽的单位数,δc表示单位带宽的大小,δt表示每个时间片的大小;

所述整数约束为:

其中n表示整数。

与现有技术相比,本发明的有益效果是:

1)在保证所有大流可以在规定时间内传输完成的前提下,最小化了带宽租用的开销。

2)本发明提出的方案考虑了isp按一定粒度收费,实用性更强。

3)本发明中提出的方案不需要引入额外的存储设备,节省了总的调度开销。

附图说明

图1为面向数据中心的在线场景示意图。

图2为面向数据中心的在线场景低带宽开销流量调度方案的具体流程图。其中ce为边e上租用的带宽值。

具体实施方式

下面结合附图和实施例详细说明本发明的实施方式。

如图1所示,本发明考虑一个租用周期内的大流的调度问题,将周期分为若干个传输时隙,即1,...,t。用一个有向图g=(v,e)来表示数据中心和数据中心之间的链路,其中v是有向图的节点集合,表示所有的数据中心的集合,e是有向图的边集,表示所有的链路的集合。用五元组ri=(si,ti,di,ai,τi)来代表一个大流,其中si,ti,di,ai,τi分别代表第i个大流的源节点,目的节点,数据量,到达时间,以及截止时间。

对于一个大流ri,它传输数据的时间被限制在时间区间[ai,τi]之内的时间片上。此外,一个请求的源目节点si和ti之间可能存在多条可行的路径,每条路径由e中的一个或多个链路e串联而成,根据以上描述,使用xi,e(t)来表示第i个请求在连接e上的第t个时刻的传输数据量,可以得到流量约束:

且t∈n+

该约束的含义是,任意一个大流在所有它的源目的节点之外的节点上的所有时刻上必须满足流量守恒,即从该节点流出的属于该大流的流量之和必须等于流入该节点的属于该大流的流量之和。其中,δ+(v)表示以节点v为起点的所有有向边的集合,δ-(v)表示以节点v为终点的所有有向边的集合。

另一个流量约束是:

该约束保证任意一个大流的源节点流出的属于该大流的流量之和减去流入源节点的属于该大流的流量之和在所有时刻上求和等于该大流的总数据传输量,其作用是保证所有大流可以在规定时间内完成。

为了保证任意一条链路在任意传输时隙内传输流量的总速率不超过租用的链路带宽大小,xi,e(t)必须满足容量约束:

其中,其中ce表示数据中心拥有者在链路e上租用的带宽的单位数,δc表示单位带宽的大小,δt代表了每个时间片的大小。

由于数据中心拥有者租用带宽时必须租用整数单位的带宽,ce为整数变量,因此ce需要满足整数约束:

为了实现本发明最小化带宽租用开销的目标,本方案用p0表示在流量约束,容量约束和整数约束共三个约束下,使目标函数:

最小化的最优化问题。其中ue表示e这条链路的单位带宽价格。

中央调度器利用该模型,对流量请求进行规划,参照图2,该算法流程为:

步骤(1),将一个租用周期分为若干个传输时隙,即1,...,t,用一个有向图g=(v,e)来表示数据中心和数据中心之间的链路,其中v是有向图的节点集合,表示所有的数据中心的集合,e是有向图的链路集,表示所有的链路的集合,用五元组ri=(si,ti,di,ai,τi)来代表一个大流,其中si,ti,di,ai,τi分别代表第i个大流的源节点、目的节点、数据量、到达时间以及截止时间;运行数据中心代理服务器,每隔一个时隙周期性地获得流量请求的源节点、目的节点、数据量、到达时间和截止时间;

步骤(2),数据中心代理服务器将流量请求信息发送给中央控制器,供其调度。

步骤(3),中央调调度系统运行pda算法,pda算法输入是各个数据中心代理服务器发送流请求信息,算法初始化时,令所有带宽值ce=0,通过pda算法计算最小的额外带宽开销并考虑小流对带宽开销的影响,具体步骤如下:

步骤(3a),对原整数规划问题松弛,将整数变量变为连续变量,然后求解松弛后模型的线性规划的解,连续解的每条链路收费带宽值为因为实际上是按照整数带宽收取费用,因此其对应的整数带宽值为ce;根据线性规划的解初始化根据ce初始化最小花费m←∑e∈eceue,其中ue表示链路e的单位带宽价格;

步骤(3b),选取最小,且ce不等于的k条链路,固定ce;

步骤(3c),若不能找到ce不等于的链路,则跳转执行步骤(4)

步骤(3d),求解固定k条链路后的线性规划,根据线性规划的解计算花费obj←∑e∈eceue;

步骤(3e),若本次迭代结果obj小于已知的最小花费m,更新最小花费m←obj,保存每条链路的收费带宽ce;

步骤(3e),迭代次数是否超过阈值j,若超过则跳出迭代,执行步骤(4),否则迭代次数加一,跳转执行步骤(3b);

步骤(4),生成调度方案,并将调度结果发送个各个数据中心代理服务器;

综上所述,本发明提出了一种面向数据中心广域网的低带宽开销的流量调度方案。该方案能够保障所有的大流按时完成,同时不引入额外的存储开销。在此前提下,该方案大幅提升了链路利用率,最小化了每条流带来的额外带宽租用开销,从而节省了数据中心的运营成本。

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