基于主动队列管理算法的绿色云模型
2021-10-22乔红宇
姜 彬 乔红宇
基于主动队列管理算法的绿色云模型
姜 彬1乔红宇2
(1.江苏航运职业技术学院 智能制造与信息学院,江苏 南通 226000;2.江苏航运职业技术学院 轮机工程学院,江苏 南通 226000)
针对5G网络低能耗和低延迟的要求,提出一种基于主动队列管理(Active Queue Management,AQM)算法的绿色云模型,该模型利用增强的随机早期检测算法并结合链接虚拟列表来实现数据包的智能优先排序,通过降低重传次数和减少排队延迟来减轻聚合层队列中的拥塞,在无需修改现有基础设施的基础上实现系统的低延迟和低能耗,达到节能环保的目的。研究结果表明:提出的模型与传统的Cloud模型、Femtolet模型相比,在吞吐量、延迟以及能耗等三个方面效果更好,本文的方法是有效的。
绿色云计算;主动队列管理;拥塞;能耗
随着云计算在物联网系统、智能城市、电子医疗以及多媒体等众多领域的快速扩展,其高能耗与环境的影响问题越来越引起重视。绿色计算是本着对环境负责的原则使用计算机及相关资源的行为,绿色计算可以更加合理协调地利用计算资源,以低耗方式满足日益多样的计算需求[1]。绿色云计算是指在云计算环境中,通过有效地管理云计算,在满足服务质量(Quality of Service,QoS)的同时,解决云计算带来的环境、能耗及运营成本问题。因此,绿色云计算的重点不在于重新研制低能耗的基础设备,而是高效地整合利用现有资源,达到降低能耗、节能环保的目的[2-3]。
近年来,绿色云计算领域已经引起全球研究人员的广泛关注。针对云计算的能耗和资源利用问题,国内外学者在绿色云计算技术方面取得了一系列重要的研究和应用成果。金顺福等[4]对比了绿色云调度算法与其他任务调度算法的能耗大小,绿色云调度算法通过采用多租户方式和虚拟机实时迁移技术,使得程序调度的功耗更低。Rao等[5]针对绿色云计算中的能耗问题,提出了一种基于任务调度的资源感知负载均衡克隆算法。该算法在负载均衡策略中引入克隆选择原理,解决了节能资源感知调度问题。Lu等[6]提出了一种用于异构云环境的自适应任务分配算法,该算法通过最小化云系统的完工时间来降低能耗,促进绿色云计算。Mukherjee等[7]指出移动边缘计算可以将移动计算、网络控制和存储推送到网络边缘,以便在资源有限的移动设备上实现计算密集型和延迟要求高的应用,移动边缘计算能够大幅降低延迟和移动能耗。Sun等[8]提出了一种绿色云网络体系结构,旨在用户设备与其云中的软件克隆之间提供无缝且端到端的低延迟。
目前,大多数方法都侧重于云架构和开发新的边缘解决方案来实现降低能耗的目标,这些研究均是在移动设备(Mobile Device,MD)附近建立云体系。但是,这种方式为运营商带来额外的成本,以及由于部署新的边缘解决方案产生更多的能耗。针对上述问题,本文提出一种基于主动队列管理算法降低能耗的绿色云模型,通过对数据包进行智能优先排序,降低重传次数来减轻聚合层队列中的拥塞,在无需修改现有基础设施的基础上实现系统的低延迟和高能效。
1 主动队列管理
主动队列管理(Active Queue Management,AQM)是实现拥塞控制的重要手段,一直受到广大研究人员的关注。目前,存在几种基于不同理论的AQM算法,这些算法在一定程度上能够实现网络拥塞控制的任务,但是在公平性和复杂度上有不同程度的缺陷。
1.1 随机早期检测算法
随机早期检测(Random Early Detection,RED)算法作为一个重要的AQM算法,通过检测路由器缓冲区队列的平均长度来判断拥塞。当拥塞出现时,该算法采取随机选择连接来通知拥塞,在队列溢出导致丢包之前减小拥塞窗口,降低发送数据速度,从而缓解网络拥塞。
RED算法大致可以分为计算平均队列长度avg和丢包概率b两部分。平均队列长度采用指数加权移动平均值进行估计,该估计类似带权值的低通滤波器计算公式为
丢包概率的计算是根据队列平均长度计算的,算法将平均队列保持在一定长度,当平均队列长度增加时,丢包概率也随之增加。丢包概率b的分段函数可表示为
其中:min和max分别表示队列长度的最小阈值和最大阈值,max表示最大丢包概率。
丢包概率还与队列中数据包的数量有关,为了避免连续丢包,丢包概率b修正为
其中:b表示上一次丢包到进入当前队列的数据包的数量,a为丢包概率的修正值。其值的增加,会导致后序数据包丢失的可能性逐渐升高。丢包概率修正的目的是为了避免连续丢包,防止突发流偏见及全局同步现象的产生。
RED算法利用平均队列长度来判断数据包的丢弃概率,这种方式无法对突然暴增的流量做出立即响应。
1.2 增强RED
增强随机早期检测(Enhanced Random Early Detection,ENRED)算法是一种AQM算法,旨在保留RED优点的同时,提供更好的网络拥塞控制。该算法依靠对平均队列大小的增强来限制队列大小,在保证队列更稳定的同时,将延迟和数据包丢失率降到最低。当前平均队列大小为
丢包概率表示为
其中:C表示缓冲区溢出前的临界队列长度。由于ENRED算法具有更多的拥塞窗口,因此可以实现稳定的队列长度,有效降低延迟和丢包率。
2 基于主动队列管理的绿色云模型
本文提出一种基于主动队列管理的绿色云模型设计方法,该方法采用增强随机早期检测算法来控制网络拥塞和减少排队延迟,在保证系统稳定可靠的基础上,通过减少重传次数的方式实现云端和移动设备的低能耗、低延迟和高吞吐量。
2.1 模型设计和部署
重传过程对于发射机和整个系统来说是消耗能量的,尤其是在异构网络中。此外,重传会造成额外的信令开销。因此,本文提出一种控制拥塞的新模型,作为减少重传的方法,以最大限度地减少浪费的能量,减少延迟并提高系统吞吐量。该模型通过实施ENRED算法来处理拥塞问题,以便管理由数据通信网络(Data Communication Network,DCN)汇聚层内的移动节点传入的数据包。通过减少拥塞导致的延迟和分组丢失来降低服务时间和重传率,达到能量消耗最小化的目的。提出的方法在移动分组调度中采用标记概率来增加分组成功率,保证在连接期间延迟最小。同时,为核心层内的每个POD(容器组)开发了可链接的虚拟列表(Virtual List,VL),该列表作为所有节点传入数据包的缓存,可以保留所有数据包的类型、源IP、目标IP和数据包长度。VL可以根据数据包的类型和到达时间对其进行优先级排序。
本文模型设计示意图如图1所示,本文提出的方法通过拥塞控制算法和链接虚拟列表来减少服务时间,以及更好地控制队列大小和丢弃率。降低拥塞可以在相同的时间内增加服务分组的速率,增加系统吞吐量,同时云中的服务时间减少,导致负载功率降低,移动设备能够体现更多的节能。
图1 本文模型设计示意图
本文模型由于设计为在云网络核心层和汇聚层内实现,因此可以部署在动态网络环境中。该方法可以单独使用,也可以与任何移动边缘计算场景(如Cloudlet、Femtocloud、Femtolet)配合使用,以进一步提高能源效率,减少延迟,同时保持较高的系统吞吐量。在单独使用场景中,MD通过移动基站(base station,BS)将其请求发送到云,当遇到BS没有任何云计算或存储功能时,模型接收请求,利用提出的算法减少汇聚层中的拥塞和服务器之间多层交换的流路径,并在处理后将其响应发送给MD。在移动边缘计算场景中,如果边缘层具有执行请求的能力,则MD通过BS将其请求首先发送到边缘设备或中间层(Cloudlet,Femtocloud或Femtolet),处理请求并将响应发送回MD,而无需本文模型的干预。但是,如果中间层不具有处理请求的能力,则边缘设备将请求转发到提出的模型上,经过处理后发送回MD。
整个移动系统的核心是数据中心基础设施,所有流量都通过该基础设施,因此基础设施设计需要综合考虑其弹性、性能和可扩展性。本文提出的云模型涉及三层DCN架构(接入层、汇聚层和核心层)如图2所示。具体情况如下:接入层是允许服务器连接到网络,因此接入层交换机具有低成本和高端口密度特性;汇聚层是多台接入层交换机的汇聚点,处理来自接入层设备的所有通信量,并将流量转发到核心层,故汇聚层交换机需要更高的性能、更少的接口和更高的交换速率;核心层将多个汇聚模块连接到互联网,并为通过数据中心的所有流量提供高速分组交换网关,所以核心层交换机应该拥有更高的可靠性、性能和吞吐量。本文提出的模型是在汇聚层和核心层内实现。
图2 本文模型在DCN架构中部署示意图
2.2 模型算法
本文提出的模型算法包括拥塞检测算法、增强随机早期检测算法和链接虚拟列表算法三部分组成。表1~3分别给出了三种算法的伪码。
表1 拥塞检测算法
整个算法操作如下:在初始阶段,表1所列的“算法1”在每个移动数据包到达之后检查队列拥塞,如果检测到拥塞,则开始执行表2所列的“算法2”。其中ENRED算法的ar值是根据最大和最小阈值获得,数据包丢失率由式(6)和(7)计算得到。表3所列的“算法3”创建虚拟列表用来存储接收的数据包信息,以便当核心层访问数据包时可以根据这些信息对其进行优先级排序。当未检测到拥塞时,执行表3所列的“算法3”。
表2 增强随机早期检测算法
表2(续)
表3 链接虚拟列表算法
3 实验结果及分析
为了验证本文模型的性能,采用NS2网络模拟软件进行仿真,仿真参数由表4给出。在仿真过程中,MD向移动基站发送不同数量的请求,然后BS通过移动网络核心将请求转发到因特网网关和处理请求的云,最后将其发送回MD。采用吞吐量、延迟、能耗三个指标来评估模型的性能,并将结果与传统Cloud模型、Femtolet模型[7]作对比。
表4 仿真参数
表4(续)
3.1 吞吐量
对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量称为吞吐量。当考虑若干协议开销时,有效速率则明显低于最大吞吐量。为了定义网络或连接的实际数据传输速率,可以采用实际吞吐量作为度量。其中,实际吞吐量的计算不包括数据包丢失、数据包重传以及协议开销。此外,吞吐量还受到数据包丢失率和调度算法的影响。利用NS2网络模拟软件在无线网络中进行仿真的吞吐量测试结果如图3所示。与传统Cloud模型相比,本文模型在吞吐量方面具有明显的改进效果;与作为多接入边缘计算(Multi-access Edge Computing,MEC)解决方案之一的Femtolet模型相比,本文模型通过增强中间MEC层,以较少的边缘计算实现了更高的吞吐量。
图3 不同模型的吞吐量测试结果示意图
3.2 延迟
在分组交换网络中,延迟的测量方式有两种:一是指从发送器发送数据包到接收数据包的接收器的时间;二是指包括从发送器到接收器的延迟以及从接收器返回发送器的延迟的往返延迟时间。一般而言,往返延迟更常用,因为该延迟可以从单个点位置进行测量。
当网关接收到多个来自不同源却具有相同目的地的数据包时,就会发生排队延迟。由于一次只能对一个数据包进行重新路由,因此许多数据包必须排队等待传送,从而产生额外的延迟。考虑到延迟限制了双向通信系统中的总吞吐量并且被视为拥塞最准确的度量,因此将其作为评估所提出的主动队列管理机制和链接的虚拟列表的性能指标。本文模型的延迟测量结果如图4中所示,从图4可见:同传统的Cloud模型和Femtolet模型相比,本文的模型在不同数量的数据包传输中的延迟最低,表明队列中移动分组调度的成功率明显增强。
图4 不同模型的延迟量测试结果图
3.3 能耗
由于云服务中的数据在数据中心进行处理和存储,因此分布式控制系统是降低云计算应用程序和服务能耗的焦点。为了提高分布式控制系统的能源效率,人们采用了几种策略,包括能量比例计算、动态供应、冷却方法以及虚拟化。在绝大多数云服务能耗研究中,能耗被认为是云应用和服务的总能耗。然而,传输网络和最终用户设备是云的基本组件。因此,云的能量消耗应从三个方面进行考虑,即访问云的移动设备能耗、连接移动设备到云的传输网络能耗以及数据中心的能耗。
本文提出的算法通过减轻数据中心的拥塞和数据包过载,减少数据包丢失率和重传率,从而减少服务时间,最终降低能耗。因此,本文模型在云端和移动设备端实现了较低的能耗。考虑到云中服务时间的缩短会导致负载功率的降低,移动设备的节能效果更佳。能量消耗反映了吞吐量和延迟之间的相关性。使用不同数量数据包时三个模型的能耗值如图5所示。
图5 不同模型的总能耗测试结果图
从图5可见:本文提出的模型在总能耗方面优于其他两类模型。
4 结 语
本文针对5G网络低能耗和低延迟的要求,提出了一种基于主动队列管理算法的绿色云模型,该模型通过利用主动队列管理(AQM)机制来减少云聚合层的拥塞,在核心层实现链接虚拟列表,进一步增强响应时间,降低丢包率和减少延迟,从而节省重传浪费的能量,最终降低云和移动设备的能耗。研究结果表明:提出的模型在吞吐量、延迟以及能耗等三个方面的性能突出,优于其他两类模型。
[1]过敏意.绿色计算:内涵及趋势[J].计算机工程,2010,36(10): 1-7.
[2]ZHOU R T, LI Z P, WU C. A truthful online mechanism for location-aware tasks in mobile crowd sensing[J]. IEEE Transactions on Mobile Computing, 2018, 17(8): 1737-1749.
[3]MORE N S, INGLE R B. Challenges in Green Computing for Energy Saving Techniques[C] //2017 International Conference on Emerging Trends & Innovation in ICT (ICEI). February 3-5, 2017, Pune, India. IEEE, 2017: 73-76.
[4]金顺福,王宝帅,郝闪闪,等.基于备用虚拟机同步休眠的云数据中心节能策略及性能[J].吉林大学学报(工学版), 2018,48(6):1859-1866.
[5]RAO G J, BABU G S. Energy analysis of task scheduling algorithms in green cloud[C]//2017 International Conference on Innovative Mechanisms for Industry Applications (ICIMIA). February 21-23, 2017, Bengaluru, India. IEEE, 2017:302-305.
[6]LU Y, SUN N. An effective task scheduling algorithm based on dynamic energy management and efficient resource utilization in green cloud computing environment[J]. Cluster Computing, 2019, 22(1): 513-520.
[7]MUKHERJEE A, DE D. Femtolet: A novel fifth generation network device for green mobile cloud computing[J]. Simulation Modelling Practice and Theory,2016, 62:68-87.
[8]SUN X, ANSARI N. Green Cloudlet Network: A Distrib- uted Green Mobile Cloud Network[J]. IEEE Network, 2017, 31(1): 64-70.
TP393
A
1673-2219(2021)03-0053-05
2020-05-03
江苏省教育厅苏教科﹝2017﹞5号,省高校自然科学研究面上项目“基于滑模模糊控制器的不确定随机非线性系统鲁棒性研究”(项目编号17KJD413001)。
姜彬(1980-),男,江苏如皋人,副教授,研究方向为人工智能与智能系统。乔红宇(1982-),男,江苏淮安人,副教授,研究方向为轮机自动化。
(责任编校:宫彦军)