面向数据中心的在线场景低带宽开销流量调度方案的制作方法

文档序号:13212768阅读:184来源:国知局
面向数据中心的在线场景低带宽开销流量调度方案的制作方法

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



背景技术:

许多网络服务供应商和云服务商维护着多个数据中心以支持其业务,如微软,谷歌。这些数据中心上运行着各种全局分布式的应用程序,并且它们分布在不同的地理区域,这决定了它们有跨地理区域相互通信的需求,广域网在保障这些数据中心能在不同地理位置之间相互通信中发挥了关键的作用。数据中心之间大量数据传输流导致了高昂的带宽开销,数据中心拥有者每年都要向互联网服务供应商租用广域网带宽,费用高达数亿。更严峻的是,不合理的流量调度导致了数据中心间的低下的带宽利用率,绝大多数链路的带宽利用率不超过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),运行oppg算法,在每条大块传输流到达时计算它的调度方案,算法初始化时,令所有带宽值ce=0;

步骤(3),每个大块传输流到达时,通过oppg算法计算最小的额外带宽开销,具体步骤如下:

步骤(3a),通过深度优先搜索算法遍历该流的全部可行路径,找出在该流的持续时间[ai,ti]内带宽值ce未被完全利用的路径,使用这些有剩余带宽的路径传输该流的数据;如果ri传输完成,则算法终止,转到步骤(3e),否则,转到步骤(3b);

步骤(3b),先令所有ve=0,ve为链路e的租用价值;

步骤(3c),通过深度优先搜索算法遍历该流的全部可行路径,因为步骤2中已经利用了所有剩余带宽,所以所有可行路径在任意时刻必有一个拥塞边,即该时刻在拥塞边上使用的带宽值为ce;在遍历过程中,找出所有路径上所有时刻的拥塞边,对于某时刻某条路径上的一个拥塞边e,计算该边的带宽值ce增大一个单位后,该时刻该路径上能额外传输的数据量d,令

其中,ue表示边e的单位带宽价格;

步骤(3d),之后,选择ve最大的边e,令ce=ce←1,以此引入新的剩余带宽,再跳转到步骤(3a),利用剩余带宽传输剩余的流量;

步骤(3e),算法终止,得到该流的调度方案;

步骤(4),根据算法结果生成流量调度方案,进行流量调度。

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

最小化的最优化问题;

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

且v≠si,v≠ti,

t∈[ai,τi]且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上租用的带宽值,ve为边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个时刻的传输数据量,可以得到流量约束:

且v≠si,v≠ti,

t∈[ai,τi]且t∈n+

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

另一个流量约束是:

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

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

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

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

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

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

因为p0中的各个大块传输流是分时产生而不是提前预知的,p0不是标准的整数线性规划问题,本方案包括了求解该问题的在线租用方案生成算法(oppg)。该算法的思想是,在每个大块传输流到达时,最小化为了调度新到达的大块传输流所增加的额外开销,算法的流程为:

1、令所有的带宽值ce等于零。

2、每当新的大块传输流ri到达时,通过深度优先搜索算法遍历该流的全部可行路径,找出在该流的持续时间[ai,ti]内带宽值ce未被完全利用的路径,使用这些有剩余带宽的路径传输该流的数据。如果ri传输完成,则算法结束。

3、如果该流的数据还有剩余,则需要根据链路的价值来额外租用新的带宽。定义ve为e这条边的租用价值,ve的计算方式如下:

先令所有ve等于零。之后,通过深度优先搜索算法遍历该流的全部可行路径,因为步骤2中已经利用了所有剩余带宽,所以所有可行路径在任意时刻必有一个拥塞边,即该时刻在拥塞边上使用的带宽值为ce。在遍历过程中,找出所有路径上所有时刻的拥塞边,对于某时刻某条路径上一个拥塞边e,计算该边的带宽值ce增大一个单位后,该时刻该路径上能额外传输的数据量d,令

之后,选择ve最大的边,令ce←ce+1,以此引入新的剩余带宽,再跳转到步骤2,利用剩余带宽传输剩余的流量。

因此,参照图2,本发明面向数据中心的在线场景低带宽开销流量调度方案,在数据中心间广域网络下按照以下步骤实现:

步骤(1)运行集中控制器,动态地获得每个大块传输流的源节点,目的节点,数据量,到达时间和截止时间。同时运行oppg算法,在每条大块传输流到达时计算它的调度方案。

步骤(2)算法初始化时,令所有ce=0。

步骤(3)每个大块传输流到达时,通过oppg算法计算最小的额外带宽开销,具体步骤如下:

步骤(3a)通过深度优先搜索算法遍历该流的全部可行路径,找出在该流的持续时间[ai,ti]内带宽值ce未被完全利用的路径,使用这些有剩余带宽的路径传输该流的数据。如果ri传输完成,则算法终止,转到步骤(3e),否则,转到步骤(3b)。

步骤(3b)先令所有ve=0。

步骤(3c)通过深度优先搜索算法遍历该流的全部可行路径,因为步骤2中已经利用了所有剩余带宽,所以所有可行路径在任意时刻必有一个拥塞边,即该时刻在拥塞边上使用的带宽值为ce。在遍历过程中,找出所有路径上所有时刻的拥塞边,对于某时刻某条路径上的一个拥塞边e,计算该边的带宽值ce增大一个单位后,该时刻该路径上能额外传输的数据量d,令

步骤(3d)之后,选择ve最大的边e,令ce←ce+1,以此引入新的剩余带宽,再跳转到步骤(3a),利用剩余带宽传输剩余的流量。

步骤(3e)算法终止,得到该流的调度方案。

步骤(4)根据算法结果生成流量调度方案,进行流量调度。

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

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