欢迎来到天天文库
浏览记录
ID:20157533
大小:51.50 KB
页数:5页
时间:2018-10-09
《软件定义网络架构下基于流调度代价的数据中心》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、软件定义网络架构下基于流调度代价的数据中心针对传统数据中心X络极易发生拥塞的问题,提出了在软件定义X络(SDN)的架构下设计基于流调度代价的拥塞控制路由算法加以解决。首先,进行拥塞链路上的大小流区分,并对所有大流的各条等价路径进行路径开销权重的计算,选择权重最小的路径作为可用调度路径;然后,使用调度后路径开销变化量和流占用带宽比例来共同定义流调度代价;最终选择调度代价最小的流进行调度。仿真结果表明,所提算法能在X络发生拥塞时降低了拥塞链路上的负荷,并且与仅进行流路径选择的拥塞控制算法相比,提高了链路利用率,减
2、少了流传输时间,使得计算机X络链路资源得到更好的利用。0引言传统的数据中心X络属于访问式X络,其业务流量大部分都是客户端与数据中心内部的被请求服务器之间的“南北流量”[1]。然而,随着MapReduce应用、虚拟机迁移以及其他带宽密集型应用等的发展,数据中心服务器内部通信增多,一对多、多对一、多对多等集群通信模式[2]带来了服务器间横向流量的显著增长。随之而来的问题是,数据中心X络内部原有带宽已不能满足横向流量的传输需求,相应链路面临极高的拥塞风险。加之传统X络结构复杂,路由算法大多采用分布式部署,造成拥塞控
3、制算法的设计极为困难。不过,随着软件定义X络(Softini+Ryu的仿真平台。Mini是一款基于LinuxContainer架构开发的功能强大的轻量级软件定义X络仿真及测试平台,利用它可以模拟出包括主机、链路和交换机在内的完整数据中心X络[13]。而Ryu则是SDN中常用的开源控制器模块[14]。此外,X络中的交换机选用OpenvSwitch交换机。本文利用Python自定义编写了如图2所示的数据中心X络中广泛使用的FatTree拓扑,拓扑包括两台核心层交换机(交换机1和交换机2),8台的聚合层交换机和边缘
4、层交换机(交换机3,交换机4,…,交换机10),而每4个聚合层交换机或边缘层交换机组成一个Pod。为实现控制器的路由及拥塞控制动态路由,在Ryu中添加了拓扑发现模块、流量监测模块、路由模块、拥塞控制重路由模块及流表项管理模块来完成算法功能,所需模块结构如图3所示。其中,拓扑发现模块获取算法中路由及流量监控所需的X络拓扑结构和链路连接接口信息。监控模块主要是对控制器控制下的交换机进行流量监控,统计并存储;同时对链路状态进行判断,当发生链路拥塞时,触发拥塞控制重路由机制,并将X络信息传给重路由模块(Rerouti
5、ngEngine)进行路径计算和选流判断。路由模块在流刚进入X络时用于初始路径的计算,动态路由模块周期性地检测所用链路的拥塞情况,当任何一条链路的负载超过拥塞门限值时,将会对该链路上的一条或多条链路进行重路由。实验环境搭建中,流量的设置模拟了数据中心高动态流量特性下发生拥塞后的情况,设置为Pod1和Pod2之间互相发送流,数据包数量、大小、发包间隔相同,流的目的端随机。实验搭建平台为笔记本一台(InterCorei74710、8GB),受条件限制,X络运行规模较小,但两个Pod之间的通信链路数量与具有4个核心
6、交换机的情况下是一致的,仍然具有4条可用链路,拥塞发生时依旧可利用其多路径的特性实施算法。同时由于数据包的发包速率受限,本文未按一般数据中心链路容量进行链路设置,而保持交换机端口速率为160Kb/s。所以在算法仿真验证中,取20Kb/s作为大小流区分的阈值。另外,为了在流调度时优先考虑链路的使用效率,取α=0.5,β=1。2.2仿真结果及分析首先,为了验证算法实施后缓解链路拥塞的有效性,本文对两条链路的链路使用情况进行了考察:一条是比较繁忙的链路1(即图2中交换机1到交换机3的链路);另一条是负载相对较轻的链
7、路2(即图2中交换机1到交换机4的链路)。如图4所示,链路1在X络运行刚开始时链路利用率不断上涨,到达峰值97%,超过90%的门限值,处于拥塞的状态,之后算法开始作用。链路2在30s左右才逐渐有负载,但链路1的拥塞并没有得到立刻缓解,原因是拥塞链路上转移的流的数目和大小没有能使链路1上的负载降低到门限值以下。随着链路1上的流不断转移到包括链路2在内的其他链路上,链路1到了60s以后拥塞情况得到缓解,一直低于门限值,处于平稳状态。为观察算法在数据中心X络高动态流量模式下缓解链路拥塞的同时提高X络链路利用率的性能
8、,将本文提出的拥塞控制路由算法和仅对流的路径进行选择的非拥塞控制路由算法在X络链路利用率和流量传输时间上进行了对比,链路利用率对比如图5所示,传输时间如图6所示。由于流的数量较少,在实验中整个X络的链路利用率并不高,最大只有45%左右。由图5可以看出,在各个主机开始发送数据包时,链路利用率逐渐上升,而且刚开始时利用率增长速度非常快,在30s左右增速放缓,X络发生拥塞。到70s左右,拥塞解决后链路利用
此文档下载收益归作者所有