基于数据中心广域网的数据传输方法及系统与流程

文档序号:11959905阅读:357来源:国知局
本发明涉及广域网通信领域,特别是涉及基于数据中心广域网的数据传输方法及系统。
背景技术
:随着云计算的发展,大型互联网公司,比如:谷歌、微软、亚马逊等,都需要运行大量分散在全球各地的数据中心,以较低的成本提供更好的用户体验。通常,链接异地数据中心的广域网、租用运营商的骨干线路,或者自建专用链路的投资成本都非常高昂。传统的广域网技术通过高度冗余的带宽来换取传输的绝对可靠,导致链路带宽资源利用率很低,并不适合成本极高的数据中心广域网。数据中心广域网的大多数流量来自异地中心之间的数据同步应用、备份,这些应用希望吞吐量越大越好,并且可以容忍偶尔的拥塞丢包、乱序到达、链路不通以及高传输延时。可行的解决方案之一是:利用数据中心之间的空闲带宽以及数据中心的存储能力,实现数据备份通过中继数据中心进行存储和转发,经过多跳多路径最终发往目标数据中心。然而,上述问题的难点在于:广域网链路的空闲带宽资源是动态变化的,并且数据中心存储转发容量也有限。常见的解决方法之一是:基于预测空闲带宽的大小对存储在数据中心的数据事后进行路由调度。但是,当面对链路空闲带宽大小随着时间和空间改变时,传统的带宽预测技术并不是那么精确。不确定的用户需求、昼夜用户行为、不同数据中心之间的时区差将导致链路的网络负载不断发生变化,数据中心之间的链路空闲带宽大小也随着发生改变。因此,基于链路空闲带宽这一假设设计路由调度,从而提高网络带宽利用率这一方法未必能取得良好的效果。N.Laoutaris及M.Sirivianos等人在2011年发表的“Inter-datacenterbulktransferswithnetstitcher”文章中设计、安装、验证了NetSwitcher,通过预测变化的数据中心广域网空闲带宽,提高数据中心间网络带宽的利用率。其收集空闲资源的相关信息,使用存储和转发算法调度数据传输,并适应资源波动。Y.Wang等人2014年发表的“Multiplebulkdatatransfersschedulingamongdatacenters”一文,以及中国专利“一种实现大规模数据传输的多任务调度方法”(申请号:201210521584.8)在此基础上,同样输入数据中心网络拓扑信息和数据中心网间带宽资源开销的预测信息,并将具有动态空闲带宽资源的网络转换为静态流网络。基于所述静态流网络,对多个大规模数据传输请求建立最大化最小公平多商品流线性规划模型,得出各大规模数据传输请求的最大传输流量以及对应的数据传输路径。尽管现阶段网络流量建模和流量预测的相关工作较为成熟,但是网络流量预测依然存在以下问题:第一,其经常估计流量的期望和方差,而且估计的方差也较大,由于流量预测技术通常只提供非常宽泛的估计值,所以不足以精确提高空闲带宽的利用率。第二,由于采用预测技术估计下一时刻的链路空闲带宽,再设计路由策略,当预测调度时隙比较大时,一旦链路带宽变化频繁,预测往往不准确;当预测调度时隙比较小时,调度太频繁,整体效率也不高。技术实现要素:鉴于以上所述现有技术的缺点,本发明的目的在于提供基于数据中心广域网的数据传输方法及系统,面对不同时间不同链路空间带宽的随机变化,依据链路开销,提出一类不需要提前知道空闲带宽预测值的带宽分配以及高效的数据包路由调度算法,提高单位时间链路带宽的利用率,降低数据中心广域网链路成本。为实现上述目的及其他相关目的,本发明提供一种基于数据中心广域网的数据传输方法,所述数据中心广域网由双向链路e(s)互相连接的多个数据中心组成,其中,数据中心传输会话s的传输起点作为源节点u(s),各所述源节点u(s)设置有通过各单向伪链路e对应连接的各伪源节点所述方法包括:分别在各源节点u(s)建立需要传输数据的各会话s,并以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中;分别计算当前时间所述数据中心广域网中针对各会话s的各双向链路e(s)两端的缓存队列的队列长度差值Δs(e)(t)、及各单向伪链路两端的缓存队列的队列长度差值根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),各所述会话s根据被分配到的带宽fe,s(t)向对应的下一跳数据中心推送数据;各单向伪链路则将的缓存数据全部推送;排除所述数据中心广域网中已经到达目的数据中心的数据包;将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中。于本发明一实施例中,所述根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),包括:建立含有目标函数和约束条件的优化模型计算得到fe,s(t),所述优化模型为:maxΣs∈Sfe,s(Δs(e)(t)-fe,s)λs-2]]>∑s∈Sfe,s≤ce(t)fe,s≥0其中,λs=E[As(t)|x(t)],E[As(t)|x(t)]为在时隙t的系统状态x(t)下,进入单向伪源节点的会话s的数据包数量As(t)的期望值;ce(t)为双向链路e(s)在时隙t的空闲带宽量。于本发明一实施例中,所述在时隙t的系统状态x(t)下,进入单向伪源节点的会话s的数据包数量As(t)满足泊松分布。于本发明一实施例中,所述双向链路e(s)在时隙t的空闲带宽量ce(t)满足正态分布。于本发明一实施例中,将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中,根据:qs(head(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈I(v)]]>qs(tail(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈O(v)]]>计算得到,其中,qs,v(t)表示时隙t内节点v的会话s的数据包总数;qs(head(e))(t)为会话s的头队列,qs(tail(e))(t)为会话s的尾队列;O(v)和I(v)分别表示节点v的出边的集合和入边的集合;we为双向链路e(s)在时隙t的空闲带宽的期望。于本发明一实施例中,会话s时隙t存储的数据包总数qs,v(t)为:所述入边的集合中各双向链路e(s)的头队列与所述出边的集合中各双向链路e(s)的尾队列之和。于本发明一实施例中,所述以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中包括:所述时隙t为1秒,所述需要发送的数据量为As(t),其中,As(t)为源节点u(s)与对应的伪源节点相连的单向伪链路当前时间的链路带宽大小。为实现上述目的及其他相关目的,本发明提供基于数据中心广域网的数据传输系统,所述数据中心广域网由双向链路e(s)互相连接的多个数据中心组成,其中,数据中心传输会话s的传输起点作为源节点u(s),各所述源节点u(s)设置有通过各单向伪链路对应连接的各伪源节点所述系统包括:数据导入模块,用于分别在各源节点u(s)建立需要传输数据的各会话s,并以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中;数据计算模块,用于分别计算当前时间所述数据中心广域网中针对各会话s的各双向链路e(s)两端的缓存队列的队列长度差值Δs(e)(t)、及各单向伪链路两端的缓存队列的队列长度差值带宽分配模块,用于根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),各所述会话s根据被分配到的带宽fe,s(t)向对应的下一跳数据中心推送数据;各单向伪链路则将的缓存数据全部推送;数据排除模块,用于排除所述数据中心广域网中已经到达目的数据中心的数据包;数据分配模块,用于将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中。于本发明一实施例中,所述根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),包括:建立含有目标函数和约束条件的优化模型计算得到fe,s(t),所述优化模型为:maxΣs∈Sfe,s(Δs(e)(t)-fe,s)λs-2]]>∑s∈Sfe,s≤ce(t)fe,s≥0其中,λs=E[As(t)|x(t)],E[As(t)|x(t)]为在时隙t的系统状态x(t)下,进入单向伪源节点的会话s的数据包数量As(t)的期望值;ce(t)为双向链路e(s)在时隙t的空闲带宽量。于本发明一实施例中,所述在时隙t的系统状态x(t)下,进入单向伪源节点的会话s的数据包数量As(t)满足泊松分布。于本发明一实施例中,所述双向链路e(s)在时隙t的空闲带宽量ce(t)满足正态分布。于本发明一实施例中,将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中,根据:qs(head(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈I(v)]]>qs(tail(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈O(v)]]>计算得到,其中,qs,v(t)表示时隙t内节点v的会话s的数据包总数;qs(head(e))(t)为会话s的头队列,qs(tail(e))(t)为会话s的尾队列;O(v)和I(v)分别表示节点v的出边的集合和入边的集合;we为双向链路e(s)在时隙t的空闲带宽的期望。于本发明一实施例中,会话s时隙t存储的数据包总数qs,v(t)为:所述入边的集合中各双向链路e(s)的头队列与所述出边的集合中各双向链路e(s)的尾队列之和。于本发明一实施例中,所述以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中包括:所述时隙t为1秒,所述需要发送的数据量为As(t),其中,As(t)为源节点u(s)与对应的伪源节点相连的单向伪链路当前时间的链路带宽大小。为实现上述目的及其他相关目的,本发明提供一种数据中心,包括如上任一所述的基于数据中心广域网的数据传输系统。为实现上述目的及其他相关目的,本发明提供一种服务器,包括如上任一所述的基于数据中心广域网的数据传输系统。如上所述,本发明的基于数据中心广域网的数据传输方法及系统,有利于提高单位时间链路带宽的利用率,降低数据中心广域网链路成本。附图说明图1显示为本发明一实施例的数据中心广域网的网络拓扑结构示意图。图2显示为本发明一实施例的数据中心广域网的数据传输方法流程图。图3显示为本申请一比对实验中不同λs对应的数据中心总的缓存总量随时间变化图。图4显示为图3对比实验中数据包传输延迟的累积分布函数图。图5显示为图3对比实验中本发明的方法与BitTorrent算法的吞吐量比较图。图6显示为图3对比实验中本发明的方法与简单的存储-转发策略算法的吞吐量比较图。图7显示为本发明一实施例的数据中心广域网的数据传输系统模块图。元件标号说明7数据中心广域网的数据传输系统701数据导入模块702运算处理模块703数据传输模块S201~S205步骤具体实施方式以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本发明提出不依赖于空闲带宽预测技术的基于数据中心广域网的数据传输方法及系统,利用数据中心存储的临时数据量差值,对临时数据进行转发调度。本发明只需获取数据中心广域网空闲带宽的数学期望值,并利用数据中心允许在后台空间中存储大容量临时转发数据来应对短时间内传输峰值和极其昂贵的链路成本。本发明无需事先预测链路空闲带宽的精确值,并且具备李雅普诺夫意义下的稳定性。G(V,E)代表数据中心广域网。每个数据中心用顶点v表示,从一个数据中心到另一个数据中心的传输链路用边e表示。V={v}表示数据中心集合,E={e}表示有向链路的集合。I(v)和O(v)分别代表与数据中心节点v相连的入边和出边。t代表时隙。ce(t)表示时隙t内有向边e可使用空闲带宽大小。fe(t)表示时间t内有向链路总的传输速率。S为会话(session)的集合,session表示数据传输信息,包括所需要传输数据包的数量、起点和终点。s∈S表示集合中的一个session。u(s)和w(s)则分别定义为session传输数据的起点和终点。As(t)则表示在时间t内从session的起点有多少数据包到达。每个数据中心为每个session都准备了一个存储buffer。每个数据包到达数据中心之后先进入不同session的buffer,然后等待在下一个时隙t内调度转发。数据包进行调度时,数据中心只根据与数据中心相连链路的当前时刻的局部信息来决定哪些数据包需要被转发以及要发往的下一跳数据中心。本申请在每个sessions的源节点u(s)都附加有伪源节点并分别通过一条单向伪链路将u(s)与相连,在t时刻链路带宽设为As(t)。每个时隙t内,伪源节点通过这条单向伪链路向源节点u(s)注入As(t)个数据包,优选的,As(t)满足泊松分布。对每条链路e和每个sessions,则分别用qs(head(e))(t)和qs(tail(e))(t)表示相连节点中的头队列和尾队列。例如,如图1所示,数据中心广域网由四个数据中心v1-v4、4条双向链路(即8条单向链路E(1,2)、E(2,1)、E(1,3)、E(3,1)、E(2,4)、E(4,2)、E(3,4)、E(4,3))组成。其中,设有两个会话sessions1和s2,分别是以v1为起点和以v4为起点,伪源节点和单向伪链路例如:在节点vl,拥有sessions1,其两个头队列为两个尾队列为我们对上述数据中心网络拓扑模型的系统参数作如下设定和假设:1)对每个sessions∈S,假设E[As(t)|x(t)]=λs,并且E[(As(t))2|x(t)]≤K2(0<K2<∞),其中,x(t)表示在时隙t时的系统状态,E[As(t)|x(t)]=λs表示在时隙t时的系统状态下,进入会话s数据量的期望。2)任意链路e∈E,假设E[ce(t)]=we,E[ce(t)2]≤M2(0<M2<∞),ce(t)为链路e在时隙t时的空闲带宽,we则为空闲带宽的期望。3)任意链路e∈E,存在∈1>0,M1>0,使得M1≥ce(t)≥1,即M1≥we≥1。请参阅图2,本实施例提供一种基于数据中心广域网的数据传输方法,包括带宽分配和路由调度,具体步骤如下:初始化时隙t,这里t可以任意取值,例如:t=1s。S201:分别在各源节点u(s)建立需要传输数据的各会话s,并以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中。S202:在每个链路e(s)上尽可能推送数据包,以便平衡链路e(s)两边的缓存队列。具体的,分别计算当前时间所述数据中心广域网中针对各会话s的各双向链路e(s)两端的缓存队列的队列长度差值Δs(e)(t)、及各单向伪链路两端的缓存队列的队列长度差值例如:定义链路e(s)两边sessions的缓存队列的队列长度差值为Δs(e)(t):Δs(e)(t)=qs(tail(e))(t)-qs(head(e))(t)(1)S203:根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),各所述会话s根据被分配到的带宽fe,s(t)向对应的下一跳数据中心推送数据;各单向伪链路则将的缓存数据全部推送。具体的,在每条链路e(s)上,对每个经过的sessions,为了平衡链路e(s)两边所有会话的缓存队列,定义如公式(2)和(3)所构成的优化模型,满足此目标函数与约束条件的链路带宽分配策略fe,s(t)被认为是既公平又高效的。fe,s(t)表示链路带宽e(s)上某个会话s分配的传输带宽,即推送fe,s(t)个数据包通过链路e(s)。λs-2用于做归一化处理,确保传输带宽分配时对每个会话都做到公平。优化函数的目标是:当会话s中的Δs(e)(t)/λs2越大时,可以占用更大的传输带宽fe,s(t),以此确保大部分数据总是往Δs(e)(t)/λs2势差大的链路流经。该优化将确保对数据的调度逐渐从高势的地方向低势的地方传输,即调度数据会往Destination的数据中心传输,从而确保获得较大的数据吞吐量。优化模型如下:maxΣs∈Sfe,s(Δs(e)(t)-fe,s)λs-2---(2)]]>∑s∈Sfe,s≤ce(t)fe,s≥0(3)其中,约束条件(3)表明链路e(s)上的所有session传输数据的总大小不超过此时链路带宽,优选的,ce(t)满足正态分布。S204:排除所述数据中心广域网中已经到达目的数据中心的数据包。S205:将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中。令qs,v(t)表示t时隙节点v中s会话的数据包总数,则:qs,v(t)=∑e∈I(v)qs(head(e))+∑e∈O(v)qs(tail(e))(4)其中,O(v)和[(v)分别表示节点v的出边和入边集合。缓存队列重新分配数据包的算法如下:qs(head(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈I(v)---(5)]]>qs(tail(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈O(v)---(6)]]>随后,可以返回步骤S202循环执行上述方法,直到数据传输终止。举个例子,数据中心包括27个节点,编号为1至27,通过98条单向链路相连,从而组成数据中心广域网。假设每个数据中心缓存容量无限。数据中心调度1次的时间间隔为1秒。假设将洛杉矶作为sessions1的起点,新加坡作为s1的终点,表1显示了t=1时,与洛杉矶数据中心直连链路的信息,可见,sessions1的数据从编号为3的节点进入,编号为22的节点流出。每隔1秒,从节点3处就有满足均值为42Gbps且满足珀松分布的随机数据量流入。数据包大小为1MB,链路变化区间为[1,95],链路每5分钟变化1次。表1(1)t=1时●5.25GB数据进入虚节点中的tail(e)缓存队列。●遍历所有节点,将节点中各个链路中处于tail(e)缓存队列中的数据通过链路转发到下一个数据中心。此时,只有节点有数据,且虚拟链路大小等于As(t),所以中所有数据推送到v3(LosAngles)的数据中心。●没有数据包到达终点,跳过。●遍历所有节点,根据链路空闲带宽期望值重新分配缓存队列。即,通过公式(4)-(6)计算得到每个队列缓存数据如下所示:Tail(e3,2)=Tail(e3,4)=Tail(e3,6)=420MBHead(e2,3)=Head(e4,3)=Head(e6,3)=420MBTail(e3,15)=Tail(e3,22)=Tail(e3,25)=Tail(e3,26)=357MBHead(e15,3)=Head(e22,3)=Head(e25,3)=Head(e26,3)=357MB●t=t+1。(2)t=2时●7.375GB数据进入虚节点中的tail(e)缓存队列。●遍历所有节点,将节点中各个链路中处于尾队列缓存中的数据通过链路转发到下一个数据中心。此时v3有数据。将中缓存的数据推送到v3,将与v3直连链路中tail(e)缓存中的数据推送到相邻数据中心节点。根据公式(2)和(3)的优化目标函数,分别求得以下数据量传输:v3=>v2(SanJose):210MBv3=>v22(Singapore):179MBv3=>v25(Sydney):179MBv3=>v26(Melbourne):128MBv3=>v15(SaintPaul):179MBv3=>v4(Queretaro):128MBv3=>v6(Dallas):210MB从v3=>v22(Singapore):179MB可以看出,有数据包到达终点,则从系统中除去179MB,再通过公式(4)-(6)重新分配缓存队列。以此循环。需要说明的是,本发明的方法与BitTorrent技术、简单的存储-转发(store-and-forward)策略相比,可以获得较好的吞吐率。以下实验分别将本发明与BitTorrent技术、简单的存储-转发算法进行性能比较。实验配置如下:实验使用的拓扑是IBM为支持商业环境下的云服务而建立的全球数据中心,由27个数据中心和98条链路组成。每条链路的空闲带宽变化范围为1~95Gbps。仿真设定空闲带宽每五分钟变化一次,变化满足正太分布N(μ,σ^2)中[1,95]这个区间,其中,μ被设置为5Gbps或者10Gbps,σ=30Gbps。因此,经过重新计算,正太分布N被截取之后的期望是14Gbps或者是16.5Gbps。仿真中,调度时隙长度为1秒。另外,设定每个调度时隙内进入系统的数据包数量满足珀松分布,且不同时隙,到达的数据包满足独立同分布。每个数据包的大小选择为1MB。为了降低仿真时间,本发明跟踪、调度一组数据包来代替单个数据包。1.系统稳定性表现和吞吐量使用一个传输session,将数据从西雅图传输到东京。令数据到达率分别服从均值为40Gbps,42Gbps,44Gbps的泊松分布。图3表示当平均数据到达率λs不超过42Gbps时,所有数据中心总的缓存总量基本保持平衡。当λs=44Gbp时,缓存总量不断上升,系统出现不平衡。图4表示数据包传输延迟的累计概率分布(CDF)图。当数据包到达率λs在系统承载容量之内,80%的数据包传输延迟少于30分钟。2.与BitTorrent、简单的存储-转发算法进行对比BitTorrent(BT)是一种非常高效、基于点对点共享技术的内容分发协议,能够应用于数据中心网络间的批量传输。实验中的BitTorrent经过改进支持一般的物理网络拓扑和随机的链路带宽变化,并对链路带宽分配采用max-min公平方法原则。在仿真中,除了遵循常规BitTorrent的运行机制,还使用以下规则:1.每个peer都打开5个上传链接,并且开发检测(optimisticunchoking)规则被执行。2.加入网络的所有peers一直在网络中,直到所有的peers下载完成。3.seed在仿真开始的时候就具有文件所有的数据。为了加快BitTorrent的仿真速度,此处仿真将带宽缩小128倍。另外,对比实验中,为了更好体现出BitTorrent的性能,此处sessions1起始地址定为西雅图,目的地定为伦敦。为了取得BitTorrent的最佳性能,选取一些帮助节点,来提高s1在伦敦的吞吐量。图5表示了吞吐量随着帮助节点的增多先上升,后下降。但是无论如何,最大吞吐量都远小于本发明的方法Algorithm1。图6表示简单的存储-转发策略(SnF)与本发明的对比。SnF采取的策略,主要是为缓存中的每个数据包按相等概率随机选择一条出去的链路来将数据转发到下一个数据中心。SnF策略是非常初级的简单转发,它的性能与本发明的Algorithm1相比是非常差的。与上述实施例原理相似的是,本发明提供基于数据中心广域网的数据传输系统7,可以为搭载在数据中心硬件设备的软件实现,或是搭载在管理数据中心广域网的服务器上的软件实现。由于前述实施例中的技术特征可以应用于本实施例,因而不再重复赘述。所述数据中心广域网由双向链路e(s)互相连接的多个数据中心组成,其中,数据中心传输会话s的传输起点作为源节点u(s),各所述源节点u(s)设置有通过各单向伪链路对应连接的各伪源节点所述系统7包括:数据导入模块701、数据计算模块702、带宽分配模块703、数据排除模块704、数据分配模块705。数据导入模块701分别在各源节点u(s)建立需要传输数据的各会话s,并以时隙t将需要发送的数据量导入与各所述源节点u(s)一一对应的各伪源节点的缓存队列中。数据计算模块702分别计算当前时间所述数据中心广域网中针对各会话s的各双向链路e(s)两端的缓存队列的队列长度差值Δs(e)(t)、及各单向伪链路两端的缓存队列的队列长度差值带宽分配模块703根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),各所述会话s根据被分配到的带宽fe,s(t)向对应的下一跳数据中心推送数据;各单向伪链路则将的缓存数据全部推送。数据排除模块704排除所述数据中心广域网中已经到达目的数据中心的数据包。数据分配模块705将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中。在一实施例中,所述根据各所述队列长度差值Δs(e)(t)决定各所述双向链路e(s)在当前时间的空闲带宽分配策略,依据所述策略为当前时间的各所述双向链路e(s)上的各所述会话s分配带宽fe,s(t),包括:建立含有目标函数和约束条件的优化模型计算得到fe,s(t),所述优化模型为:maxΣs∈Sfe,s(Δs(e)(t)-fe,s)λs-2]]>∑s∈Sfe,s≤ce(t)fe,s≥0其中,λs=E[As(t)|x(t)],E[As(t)|x(t)]为在时隙t的系统状态x(t)下,进入伪源节点的会话s的数据包数量As(t)的期望值;ce(t)为链路e(s)在时隙t的空闲带宽量。需要说明的是,所述在时隙t的系统状态x(t)下,进入伪源节点的会话s的数据包数量As(t)满足泊松分布。可选的,所述链路e(s)在时隙t的空闲带宽量ce(t)满足泊松分布。在一实施例中,将各所述数据中心中会话s时隙t存储的数据包依据与数据中心直连链路空闲带宽的期望重新按比例分配到各直连链路相对应的缓存队列中,根据:qs(head(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈I(v)]]>qs(tail(e))(t)=qs,v(t)1weΣe∈O(v)∪I(v)1we,∀e∈O(v)]]>计算得到,其中,qs,v(t)表示时隙t内节点v的会话s的数据包总数,具体为所述入边的集合中各链路e(s)的头队列与所述出边的集合中各链路e(s)的尾队列之和;qs(head(e))(t)为会话s的头队列,qs(tail(e))(t)为会话s的尾队列;O(v)和I(v)分别表示节点v的出边的集合和入边的集合;we为链路e(s)在时隙t的空闲带宽的期望。与上述实施例原理相似的是,本发明提供一种数据中心,包括如上任一所述的基于数据中心广域网的数据传输系统7。由于前述实施例中的技术特征可以应用于本实施例,因而不再重复赘述。与上述实施例原理相似的是,本发明还提供一种服务器,包括如上任一所述的基于数据中心广域网的数据传输系统7。由于前述实施例中的技术特征可以应用于本实施例,因而不再重复赘述。综上所述,本发明的基于数据中心广域网的数据传输方法及系统,有效克服了现有技术中的种种缺点而具高度产业利用价值。上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属
技术领域
中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1