基于雾计算的无线网络负载均衡优化研究∗
2020-12-23舒江波唐亦非史永银
肖 明 舒江波 周 伟 唐亦非 史永银
(1.华中师范大学信息化办公室 武汉 430079)(2.华中师范大学教育大数据应用技术国家工程实验室 武汉 430079)(3.华中师范大学国家数字化学习工程技术研究中心 武汉 430079)
1 引言
随着教育信息化的不断发展,高校利用移动设备学习办公越来越普及,高校移动学习办公需要校园无线网络的支持[1]。在当前的实际应用中,校园无线网络普遍采用传统架构部署,即无线控制器(简称AC)+无线接入点(简称AP)的组网模式,AC对AP和用户进行管理。传统架构模式存在如下问题:1)由不同AC 独立承担某一区域无线用户和无线通信管理,无法协同工作;2)如出现两个控制器同时发生故障时无法灾备;3)无线网用户跨控制器漫游时,存在IP 地址更换,原有会话丢失,需要重新认证;4)校园网的无线AP 依据其地理位置被划分到不同控制器,其分担的AP不能均衡分布,且用户容易发生“信息潮汐”的现象,如上课期间承担教学楼的AC接入用户多而负载重,承担宿舍的AC用户少而负载轻,下课期间则反之。当前,高校的无线网络AP布局大多由人工凭经验部署,将教学楼、办公楼和宿舍等地的AP 设备手动与不同AC 关联。人工经验模式无法实时监控无线网络的负载状态和资源利用率,实现无线网络负载均衡和优化实施方案是亟需解决的难点,本文通过对云服务器虚拟化层、雾计算无线控制器层、雾计算AP层和用户终端的架构模型研究,可为全面优化校园无线网络应用体验提供建议与依据。
在无线网络架构方面,已经有很多学者开展了大量的研究。从部署架构角度,文献[2~10]论述了一种将云计算和服务扩展到网络边缘的雾计算技术,讨论了雾计算框架下资源分配和管理面临的挑战。文献[11~16]针对负载均衡问题,分别从负载均衡决策、动态均衡调度算法、改进蚁群算法进行了优化。上述研究主要从链路方面考虑的负载均衡算法,而没有考虑用户漫游和重复认证后,如何提高网络资源利用率和用户体验感以保障高效分配和便于管理。
鉴于此,以高校无线网络为研究对象,利用校园内云服务器虚拟化层、雾计算无线控制器层、雾计算AP 层和用户终端的架构模型,构建基于雾计算的校园无线网络动态负载均衡架构,实现无线网络动态监测与反馈,达到均衡网络资源、改善上网体验的目的。
2 基于雾计算的无线网络架构
校园无线网络由交换网络、云虚拟化管理服务器、无线控制器虚拟池和无线AP 组成。分布在不同校区,不同楼栋和室外区域的校园无线网络设备,需要一个去中心化的无线通信环境。本文为这类应用构建了一个基于雾计算架构的无线网络模型,其体系架构如图1所示。
图1 基于雾计算架构的无线网络模型
基于雾计算架构的校园无线网,通过分布于校园各处的计算资源、管理主机、交换机、控制器和AP,组成一张校园全覆盖的无线网络,其分层结构如下:
1)云服务层:校园云计算中心通过其强大存储和计算服务器虚拟化为雾计算架构下的AC协调工作和优化通信计算提供服务。
2)雾计算层:基于雾计算的无线网络架构包含路由交换虚拟化和无线控制器虚拟化;所有AC 虚拟成一个资源池,协同工作和冗余备份,与无线AP一起,构成雾计算无线网络虚拟化池。其结构如图2所示。
图2 无线网络资源虚拟化池
3)终端层:包括部分无线AP和用户终端设备。
3 基于雾计算的无线网络负载均衡
3.1 雾计算无线AP负载均衡
作为雾计算无线网络的集群AC池负责为每个AP 分配主AC 和备AC。轮巡集群中所有控制器,依据不同型号控制器的硬件能力及当前接入的AP数进行计算,均衡地将AP注册到不同AC。当集群中AC 节点负载变化时,集群系统不断优化负载量。根据节点运行的各种参数计算负载量,依据负载量来均衡AP 的注册。计算AP 在集群中注册某个AC的负载量,如式(1)所示:
其中,ap_maxload 为AP 最大负载量、cpu_load 为CPU 利用率、memory_load 为内存利用率、net_bw_load为网络带宽,其权重分别由w1、w2、w3、w4表示。
集群中AC注册AP总占比如式(2)所示:
注册AP占比达到AP负载均衡阈值时,根据负载均衡调整AP 的注册AC,AP 在AC 控制器集群间实现均衡的负载分布。当主AC失联时,备AC变为主AC,集群控制系统为AP指定一个新的备AC。
3.2 基于雾计算的无线用户负载均衡
在雾计算无线网架构中,AC 集群对用户的负载均衡要求及时准确把握各节点运行状况,并根据各节点当前的资源利用情况动态调整用户的注册分布。AC 集群采用结合HASH 散列函数的负载均衡算法模型,使校园无线用户通信动态均衡最优。当一个用户上线时,集群根据算法给该用户指派一个主AC 和一个备AC,如果主AC 故障,则备AC 会自动升级主AC,并且在集群内再为用户选出一个备AC。
3.2.1 用户负载均衡算法模型
1)用户负载采用动态负载均衡算法模型,先计算出AC 池的散列函数表(Hash table),每个用户首先在主AC 上注册,初始状态时用户在整个系统负载均衡。AC 集群的主AC 实时监控收集各节点用户和AC 负载信息,将任务按照用户负载量进行分配,负载量信息包括AP的负载能力、用户的负载能力、CPU利用率和内存利用率等特征,采用式(3)计算:
对于不同的AC硬件,Wn参数为一个常量权重系数,并且w1+w2+w3+w4=1。
根据每个节点的负载量,生成一有m个桶的散列表,在此设m=256,每个AC 节点桶的个数由式(4)计算:
根据每个ACi节点桶数,生成散列表如下:
static int hashmap[256]={00,01,…0n,00,01,…0n,00,01,…0n,…00};\ 00,01,…0n 分别对应AC1,AC2…ACi
2)基于用户源mac,进行hash 运算得到一个值int P:
int P=HashFunction(mac)
3)对用户源mac的hash 值%m 取余,得到访问下标KEY:
int key=P mod m
4)将key映射到散列表的bucket,如图3所示。
图3 key映射散列表
5)用户user 通过散列表bucket值,找到对应用户的主AC,并将bucket 索引表推向主AC。相同的bucket 索引表最后由集群主AC 推向所有AP,并由集群主AC为每个用户推选一个备AC。
6)节点最大负载(Max_load)是节点node(i)在为m 个用户服务时平均负载值为能够提供的最大平均下载速度。定义下载量为Lm,时长为Rm-Sm,节点node(i)在为m个用户服务时平均负载值为
在为m个用户服务时,此节点与用户端的连接通道所承担的最大负载利用率由式(6)表示:
节点i 在为m 个用户服务时提供的最大负载是:
集群中每个节点的平均最大负载值占比为
结合式(4)和式(10),得出负载均衡后,节点散列表中entry数为
根据节点占比,更新散列表中AC 对应的桶个数,使用户负载均衡。
3.2.2 集群节点动态调整
集群节点的负载增量计算方法为:AC节点i每隔λ时段,就进行一次负载状态查询,如果预测增加用户数R,则AC 节点将增加负载IL(R,i),计算如下:
其中,L(Si)为当前负载,n为当前用户数。
在这里,设节点i 当前在线运行的用户为Pt,Pt+1,…,Pn,利用式(8)和式(9),可以由节点i 当前的负载得出下一时间段(或下一服务序列n+10)负载增量,如式(13)所示:
采用此式(13)可以得出Pn+1的最大负载不能超过IL_Load(i,n+1),以保证节点总的负载不超过MaxLoad,即:
Pn+1≤IL_Load(i,n+1)
负载增量IL_Load(i,n+1)可以看作下一用户负载能够被节点接纳的入口阀值。
例:User1 的MAC:ac:83:f3:a7:f6:67 初次接入由AP 采用索引哈希和求余,得到key 值54,在32~63 索引范围内,查到子项为00,对应主AC 为10.128.15.21。系统即可访问该bucket 里寄存的元素,如图4所示。
图4 用户注册AC映射关系图
3.3 无线网用户智能漫游
当一个用户上线时,AC 集群给该用户指派一个主AC 和一个备AC,如果主AC 故障,则备AC 会自动升级为主AC,并且在集群内再次选出一个AC作为其新的备AC。
基于雾计算的无线网络通常应用于多校区的大规模网络,分布在各个校区的AP 通常连接不同AC,无线用户在校园移动时,将跨越不同AC,频繁切换不同AC 及更新IP 地址,多次认证。基于雾计算架构的无线网络采用AC 虚拟资源池,可解决用户无缝漫游的问题。从而保证VOIP通话等应用程序运行时,减少延时,提升用户体验。
4 无线网络性能分析
为了验证算法的有效性,我们在相同的负载情况下,分析传统架构和雾计算架构下的接入响应时延NAD、通信响应时延NCD和通信速率NCR。
4.1 接入时延
负载高低直接影响到接入响应时延,在相同的负载和相同时间段内测试数据分析和比较如图5所示。传统网络架构NAD 波动较大,在负载轻时NAD 最低接近4.5s,在负载重时NAD 最高接近8s。而基于雾计算架构的无线网络NAD 波动不大,均小于2s,对比测试数据,采用雾计算架构的无线网络,减少了重认证、多次IP 获取和AC 切换,降低了无线用户接入时延。
图5 两种架构下的接入时延
4.2 通信时延
在相同应用环境下,分别以25ms、100ms、200ms、400ms、800ms 重传和不可达几个区间记录对比两种网络架构的通信时延。用户数从9000 到33000 动态变化时两种架构下用户通信时延如图6所示。
图6 两种架构下的通信时延
通过对图6 的分析,基于雾计算架构通信时延,小于100ms占比76.6%,传统架构通信时延小于100ms 仅占比29.5%,两种架构下用户通信时延占比统计如表1 所示。雾计算架构下网络通信时延明显得到优化,即使在用户高峰期,也能合理分配资源,保证网络最佳通信响应时延。
表1 两种架构下用户通信时延占比
4.3 通信速率
通信速率分别以小于等于36Mbps、36Mbps~72Mbps、72Mbps~100Mbps、100Mbps~150Mbps、大于等于150Mbps 这5 个区间记录。用户数从9000到33000 动态变化时两种架构下用户通信速率如图7所示。
图7 两种架构下的用户通信速率
对比两种架构下的用户通信速率,在雾计算结构中,用户通信速率高于150Mbps 和100Mbps~150Mbps 两个区间用户占比95%,可以满足绝大多数用户应用的需求,如表2 所示。比传统架构的整体性能提高了29.5%,提高了无线用户网络通信速率,优化了网络通信。
表2 不同架构下的速率
5 结语
本文的创新有两个方面:一是雾计算架构,充分利用云计算和雾计算的优点,进行校园无线网络架构优化。二是动态负载均衡,校园无线网络AP和用户的负载状态不是静态的,而是动态的、不断调整的。负载均衡算法能动态利用无线网络资源,合理调度无线AP和用户漫游。对比不同架构用户接入时延、通信时延和通信速率,雾计算无线网络架构可以显著改善用户使用体验。
本文的研究实践,有效提高无线网资源的合理利用,无线AP和用户的合理调度和漫游,漫游无需多次更新IP 和重复认证,很大程度上改善用户接入时延、通信时延和通信速率问题。但是,本文仅探究了雾计算架构下的无线网络资源负载均衡问题。下一步,将探索雾计算架构下无线网络认证安全和接入安全,为实现多层次全面的无线网络通信安全提供理论依据和应用实践。