基于软件定义网络的WLAN架构及负载均衡切换

2016-11-07 00:43周亚峰
关键词:接入点信号强度局域网

李 云,周亚峰,曹 傧

( 重庆邮电大学 移动通信技术重点实验室,重庆 400065)



基于软件定义网络的WLAN架构及负载均衡切换

李云,周亚峰,曹傧

( 重庆邮电大学 移动通信技术重点实验室,重庆 400065)

软件定义网络将控制平面与数据转发平面进行分离,并提供开放的编程接口,实现网络的可编程化控制,极大地提高了网络管理的灵活性。在传统无线局域网中,终端通常依据信号强度选择接入点,这一机制往往会造成网络资源利用率低及接入点负载不均衡的问题。提出基于软件定义网络技术的无线局域网架构及一种负载均衡切换策略,利用控制器的全局视角与集中管控能力实现对接入点的实时监测,分析其状态信息并计算权值,由控制器根据负载情况向接入点下发流表,完成对网络的管理。硬件和计算机仿真平台实验表明,与传统的无线局域网架构相比,该方案有效提高了网络的资源利用率,平衡了接入点的负载,降低了数据在终端切换过程中的传输时延,提高了网络的性能。

软件定义网络;无线局域网;负载均衡

0 引 言

无线局域网以灵活高效、易于扩展等特点被广泛应用于机场、学校、办公场所等各类场合。传统无线局域网通常有2种组网方式:①Fat AP(access point)架构[1],各接入点独立工作,大量配置信息保存在接入点本地,缺乏统一管理,网络管理者难以拥有全局视角;②AP+AC(access point + access controller)架构[1],该架构可以实现集中管理,但AC的控制能力有限,易成为网络的瓶颈且难以实现细颗粒度的管理策略。随着社会的高速发展,无线终端产品种类及数量不断增加,网络服务也越来越多样化,传统架构越来越难以满足人们对无线资源的需求。面对这些问题,软件定义网络(software defined networking, SDN)[2]作为一种新的网络架构受到研究者的关注,它的核心思想是将网络的控制权分离出来,交给SDN控制器管理,控制器拥有网络的全局视角,管理者可以集中管理底层的物理设备。

OpenFlow[3]是SDN的关键技术之一,基于OpenFlow的软件定义网络架构主要由3部分组成,即OpenFlow交换机,控制器和OpenFlow协议。控制器通过OpenFlow协议对底层的交换机进行管理,掌握全局拓扑及链路信息,交换机根据OpenFlow流表对数据进行转发。同时,控制器具有可编程的特性,允许管理者通过软件灵活地部署管控策略。

近年来,将SDN与无线局域网融合成为研究的热点。OpenRoads[4]是一种基于SDN的移动网络创新平台,提供灵活的控制、虚拟化以及高度的抽象,研究者进行了一系列创新性实验,取得了较好的成效。文献[5]提出一种基于SDN的企业级无线网络架构Odin,该架构中,控制器为每个接入点维护一个“LVAP”进程,通过这些进程管理接入点,该架构使用OpenFlow和私有的Odin协议,而Odin协议存在较多问题,并未实际应用。国防科技大学的Zhao.D等提出SDWLAN架构[6]和“One Big AP”[7]切换机制,将AP的媒体接入控制(media access control,MAC)层功能转移到控制器实现,接入点只对收到的数据包进行封装和转发,由部署在控制器上的策略对数据进行处理,在该架构中,所有的数据包都需要转发到控制器处理,因而控制器负载巨大,易成为网络的性能瓶颈。

本文提出一种基于软件定义网络的无线局域网架构,并提出一种负载均衡切换策略,提高了网络的性能。为验证方案的效果,搭建了硬件和仿真平台,对本文提出的方案进行验证。

1 系统架构

本文提出的基于软件定义网络的无线局域网架构如图1所示,由物理层设备、OpenFlow协议、控制器和各应用模块构成。

图1 系统架构Fig.1 Structure of system

1.1物理层

本文对传统的接入点进行改造,网络中的AP使用OpenWrt[8]操作系统,并安装OpenvSwitch[9]软件实现对OpenFlow协议的支持。AP的无线网卡工作在Monitor模式,该模式下接入点可以侦测所有的802.11帧信号。我们在AP上开发了状态采集模块,对接收的帧进行提取,一方面提取终端信号强度等参数,这些信息是控制器策略部署的依据,另一方面提取数据帧类型、目的地址、源地址和BSSID等参数,这些信息将用于执行流表的匹配和转发动作。

1.2扩展OpenFlow协议

标准OpenFlow[10]协议在制订时并未考虑无线网络的特性,不能用于管理AP设备,因此,本文对OpenFlow1.3协议进行扩展,主要包括以下3个方面。

1)为使控制器可以对数据分组进行匹配和修改,增加新的字段SSID和BSSID。802.11 MAC层数据包具有用于标识AP的一个特定字段“BSSID”。以太网数据包在发送到无线客户端之前,需要添加相应的BSSID字段,并转换为802.11的帧格式。相应地,从终端发送到以太网的分组会首先校验BSSID

字段,再将其发送到对应的AP上,并由AP转换为以太网帧格式。

2)为使控制器操作AP的MAC表,增加新的规则动作“MAC_filter”。控制器通过该动作可以操作AP的MAC表,当AP需要为终端服务时,将终端的MAC地址加入AP的MAC表,反之,则从MAC表中删除。

3)为使控制器获取AP的状态信息,增加AP_Status_Request、AP_Status_Reply消息报文。控制器通过AP_Status_Request消息主动请求AP参数,AP通过AP_Status_Reply报文进行响应。

1.3控制器

控制器是本架构的核心,SDN控制器南向接口通过OpenFlow协议对AP设备进行管理,可以动态地添加、删除、修改AP设备的流表项,从而改变AP的转发规则,实现对整个网络的集中化控制;同时控制器可以获取AP的状态参数,作为部署管理策略的依据。本文使用Ryu控制器,基于Python语言开发了管理组件和策略组件,下面将对各部分功能进行分别介绍。

管理组件是控制器的核心部分,负责物理层设备的管理,是实现策略组件的基础,管理组件主要包括以下4个部分。

1)AP管理模块。发现网络中的AP设备,建立控制器与AP之间的管理隧道,获取AP的状态信息,对AP设备进行配置和管理。

2)用户认证模块。终端在接入网络前需要验证是否具有接入权限,在SDN架构中,由于控制器对用户数据具有统一的管理,用户在首次访问网络时,数据会首先发送到控制器,用户认证模块将验证终端是否具有接入网络的权限。

3)流表安装模块。AP根据流表进行数据转发,该模块根据网络管理者部署的策略生成流表并安装到对应的AP上。

4)策略下发模块。负责管理消息的下发,策略组件的各个模块并不直接与底层的物理设备通信,而是通过管理组件的策略下发模块完成对AP的管理。

策略组件是由网络管理者根据不同需求而开发的各种模块,本文为实现负载均衡切换开发了状态获取、权值维护和切换控制3个模块,各模块功能如下。

1)状态获取模块。该模块通过OpenFlow协议的“AP_Status_Request”消息获取AP的状态信息,包括终端信号强度、已连接的终端数目和可用带宽等,作为计算AP权值的参数。

2)权值计算模块。该模块使用状态获取模块得到的参数计算每个AP的权重,该值是随着网络环境不断变化的,该模块需要不断对权值进行更新以反映实时的网络情况。

3)切换控制模块。该模块负责终端切换,同时保持切换过程中数据连接不中断。本文无缝切换的主要思想是,在无线局域网中,终端的数据帧可以被网络中具有相同SSID与BSSID的多个AP侦测到,但每个终端只能由一台AP服务。将网络中所有的AP设置相同的SSID和BSSID,由控制器选择具体的AP为终端服务,切换时该模块执行如下2个关键步骤。

步骤1更新原AP的流表,停止接收与发送数据,将终端MAC地址从该AP的MAC 服务表中删除,不再向终端发送ACK应答,结束服务。

步骤2更新备选AP的流表,将终端MAC地址加入MAC服务表,由该AP负责数据包的接收与发送,向终端发送ACK应答,开始服务。

2 负载均衡切换策略

负载均衡是提高网络资源利用率的手段之一,也是近年来的研究热点,该技术被广泛应用于数据中心、有线局域网、Web服务等场景中,而由于传统无线局域网架构封闭、非集中化管理、不具有全局视角等缺陷导致各种负载均衡方案难以部署和实施。本文提出的基于SDN的无线局域网架构克服了以上缺点,使负载均衡技术的应用成为现实。

2.1影响接入点性能的参数

在无线局域网中,影响接入点性能的参数主要有信号强度S、接入终端数M和带宽空闲率V。信号强度是判断接入点优劣的基本参数,通常情况下,信号强度越大,数据传输时的抗干扰能力越强;接入终端数可以衡量AP的负载情况,AP服务的终端越多,需要传输的管理及数据帧越多,负载越大;可用带宽也是衡量AP负载的重要参数,可用带宽越多,表明AP越空闲,能为终端提供的带宽资源也就越多。

本文提出的负载均衡策略主要思想是控制器实时监测各AP的状态,根据负载情况为每台AP赋予一个权值。信号强、终端接入数量少、带宽空闲率高的AP负载小,设置较大的权值,由控制器根据权值为终端选择接入点。AP的权值随网络情况不断变化,当终端接入的AP不满足要求时,由控制器主动将其切换到其他AP上,从而保证终端接入的总是权值最大,即性能最优的AP,以实现全网范围内的负载均衡。

2.2AP权值计算与维护

控制器获取AP的状态参数后将对AP的权值进行计算,计算公式为

(1)

(1)式中:Wi,j表示APi相对于用户设备UEj的权重;Si,j表示APi接收的UEj信号强度,Si,j通过Beacon帧或Probe Request帧获得;Mi为APi已接入的终端数,因M的值可能为0,故将该参数加1。由于信号强度会随着各种干扰因素发生突变,本文通过(2)式计算终端信号强度值,力求更准确地反映一段时间内终端与AP之间的链路质量。

(2)

(2)式中:Sold为上一次接收的终端信号强度;Snew为当前信号强度。Vi表示APi在一段时间内的平均带宽空闲率,它反映APi带宽的使用情况,计算公式为

(3)

(3)式中:Bimax为APi的最大带宽;Biused为APi的已用带宽。

控制器维护一个AP权重表如表1所示。表1中第1行为网络中所有的AP,第1列为所有的终端,值为终端对应AP的权重,若AP未覆盖终端,则权重值为0,表1每个周期更新一次。

表1 AP权重表Tab.1 AP weight table

同时,我们发现如果终端的备选AP与原AP具有相似的权重,终端会在2台AP间频繁切换,这不仅增加了控制器的工作量,对均衡网络负载也没有帮助,造成系统性能的下降。为避免这一现象,本文增加一个切换因子P*,控制器在切换时首先计算备选AP与原AP的切换因子,仅当该值大于系统切换因子阈值P*时,控制器才执行切换。切换因子的计算公式为

(4)

(4)式中:Pi,j表示APi与APj的切换因子;Wi为备选AP的权值;Wj为原AP的权值。系统切换因子P*可以根据需要进行设置,当希望终端优先选取性能最优的AP而不关注切换的性能损失时,将P*设置为较小的值,反之则设置较大的值。

2.3切换流程及算法

终端首次请求接入无线局域网时,由AP将终端信息发送至控制器,在确认终端的接入权限后,控制器将查询权重表,找到终端对应的权值最大AP,发送管理消息,由该AP为终端服务。权重表随着网络的不断变化而变化,当为终端服务的AP不是最优时,将由控制器重新为终端寻找权值最大的AP,并执行切换动作,切换流程如图2所示。

图2 切换流程图Fig.2 Figure of handoff process

切换算法的伪代码如下。

Input:stations’ RSSIs、quantity of stations connected to APs、bandwidth already used of APs, stations’ old weight W

Output:stations should be handoff or not

1:for each station x in the ESS:

2:if(x’s visible AP list.numbers≠0):

3:Wxmax=W, APk=y

4:for APzin x’s visible list:

5:calculateWz,x

6:if(Wz,x>WxmaxandPz,y>P*):

7:Wxmax=Wz,x

8:k=z

9:end if

10:end for

11:end if

12: end for

13: if(k==y):

14: return stationxnot required handover

15:end if

16:else:

17:return stationxshould switch to APz

3 实验方案

为验证方案效果,本文进行了硬件和仿真平台的实验,与传统架构的无线局域网和SDWLAN架构进行对比分析。

3.1硬件平台

硬件平台实验使用的设备和参数如表2所示,网络拓扑如图3所示。AP发射功率100 mW,实测覆盖半径为87 m,实验部署时,2台AP的直线距离为40 m。初始时,UE1,UE2,UE3接入AP1,UE4接入AP2,AP通过OpenFlow交换机接入控制器,固定终端连接OpenFlow交换机,组建一个局域网。网络中所有终端均设置静态IP,避免由DHCP服务造成的延时。3次实验分别使用传统架构、SDWLAN架构和本文提出的架构。实验中,UE1由AP1向AP2匀速移动,并以80 Mbit/s的速度向固定终端发送传输控制协议(transmission control protocol,TCP)流,窗口设置为64 kByte,使用iperf[11]网络性能测试工具测试传输速率,固定终端作为iperf服务器,移动终端作为iperf客户端,设置iperf每秒报告一次,传输时延测试使用Ping命令工具,记录终端在移动过程中的传输速率与时延,实验结果如图4所示。

图3 实验网络拓扑

设备型号配置操作系统数量APTP-LinkTL-WR1043NDCPU:AtherorsAR9132RAM128MByteFlash16MOpenWrt2OpenFlow交换机NETGEARWNDR3700V1CPU:AtherorsAR7161RAM64MByteFlash8MOpenWrt1控制器主机Dell工作站酷睿i5,32GByte内存,固态硬盘Ubuntu14.041固定终端LenovoE46A酷睿i3,4GByte内存,固态硬盘Ubuntu14.041移动终端移动设备4

对实验结果进行分析,传统WLAN架构下,由终端依据信号强度进行切换,本次实验中,时间t=26 s时,对UE1而言,AP2的信号强度大于AP1,而UE1在t=28 s时才执行切换动作,原因是这种切换具有一定的延时,且这种切换不是无缝的,终端必须先断开与原AP的连接,并与新AP重新认证,切换过程中会有数据丢失,因此,t在28~30 s时,终端的传输速率为0。SDWLAN架构下终端切换是无缝的,但该方案切换时的依据只有信号强度,故在t=26 s时执行切换。而本文方案中,切换使用了负载均衡机制,在t=20 s时进行切换,原因是虽然此时对UE1而言,AP2的信号强度小于AP1,但由于AP2负载较轻,因此,权值较大,故控制器将UE1切换到AP2。分析可知,采用本文方案,网络在切换过程中的综合性能优于其他2种方案。

图4 不同架构下终端传输速率与时延对比Fig.4 Transmission rate and delay in different architecture

3.2仿真平台

为进一步验证方案的性能,本文在Mininet[12]平台上进行仿真实验,与同样基于软件定义网络架构的SDWLAN进行对比,仿真平台中部署50台AP和500台终端。由于Mininet平台并未提供可用于无线环境仿真的API,本文通过编写Python脚本为Mininet平台中的交换机节点和终端进行以下扩展,模拟它们的行为。

1)为AP增加4个属性,即信号强度、接入终端数、可用带宽及覆盖范围。50台AP部署在半径为500 m的范围内,每台AP的覆盖半径为50 m,每台AP的最大传输速率为100 Mbit/s。

2)模拟终端在AP的覆盖区域内移动,在移动过程中,信号强度随终端距AP距离的增大而衰减。

3)不同的终端之间相互发送1~100 MByte随机大小的数据包。

统计不同方案下AP的负载情况和系统实时吞吐量,结果如图5和图6所示。

从图5可以看出,采用SDWLAN方案时,各AP的传输速率波动较大,主要分布在30~100 Mbit/s,且不同AP间的传输速率相差较大;而采用本文方案时,各AP的传输速率分布在50~80 Mbit/s,不同AP的传输速率相差较小。图6是对系统总吞吐量的统计,采用SDWLAN的系统总吞吐量为178 GByte,且传输速率波动较大;采用本文方案的系统总吞吐量为215 GByte,且传输速率的波动较小,系统总吞吐量提高了17.2%。造成这些差异的原因是本文所提出的架构使用了负载均衡的切换策略,该策略会依据每个AP的负载情况进行选择,不会使网络中的某个AP负载过重,每个AP都具有相似大小的负载,故AP的负载分布比较集中,网络实时吞吐量曲线也更为平滑。综合分析可知,本文的方案更加合理。

图5 AP负载对比Fig.5 AP load comparison

图6 网络实时吞吐量对比Fig.6 Real-time network throughput comparison

4 结束语

本文提出一种基于软件定义网络的无线局域网架构,并基于该架构提出一种负载均衡的切换策略。硬件和仿真平台的实验表明,该方案有效提高了网络的整体性能。

[1]刘志宏.802.11 无线局域网接入式负载均衡技术研究[D].长沙;国防科学技术大学, 2011.

LIU Zhihong.A Study of Association Control Load Balanceing in 802.11 Wireless Lans[D]. Changsha:National University of Defense Technology,2011.

[2]MCKEOWN N. Software-defined networking[J]. INFOCOM keynote talk, 2009, 17(2): 30-32.

[3]SHERWOOD R, CHAN M, Covington A, et al. Carving research slices out of your production networks with OpenFlow[J].ACM SIGCOMM Computer Communication Review, 2010, 40(1): 129-130.

[4]YAP K K, KOBAYASHI M, SHERWOOD R, et al. OpenRoads: Empowering research in mobile networks[J]. ACM SIGCOMM Computer Communication Review, 2010, 40(1): 125-126.

[5]SURESH L, SCHULZ Z J, MERZ R, et al. Towards programmable enterprise WLANS with Odin[C]// ACM.Proceedings of the first workshop on Hot topics in software defined networks.New York:ACM, 2012: 115-120.

[6]ZHAO D, ZHU M, XU M. SDWLAN: A flexible architecture of enterprise WLAN for client-unaware fast AP handoff[C]//IEEE.Computing, Communication and Networking Technologies (ICCCNT), 2014 International Conference on. New York:IEEE,2014: 1-6.

[7]ZHAO D, ZHU M, XU M. Supporting “One Big AP” illusion in enterprise WLAN: An SDN-based solution[C]// IEEE.Wireless Communications and Signal Processing (WCSP), 2014 Sixth International Conference on.New York:IEEE, 2014: 1-6.

[8]FAINELLI F.The OpenWrt embedded development framework[C]//openwrt org.Proceedings of the Free and Open Source Software Developers European Meeting. Brussels:[s.n.],2008:1-31.

[9]PFAFF B, PETTIT J, AMIDON K, et al. Extending Networking into the Virtualization Laye[EB/OL].(2009-05-01)[2015-08-27].http://openvswitch.github.io/papers/hotnets2009.pdf.

[10] MCKEOWN N, ANDERSON T, BALAKRISHNAN H, et al. OpenFlow: enabling innovation in campus networks (OpenFlow White Paper)[EB/OL].(2008-07-12)[2015-08-15].http://www.openflowswitch.org.

[11] TIRUMALA A, QIN F, DUGAN J, et al.The TCP/UDP bandwidth measurement tool[EB/OL].(2005-08-06)[2015-08-29].http://dast.nlanr. net/Projects.

[12] LANTZ B, HELLER B, MCKEOWN N. A network in a laptop: rapid prototyping for software-defined networks[C]//ACM. Proceedings of the 9th ACM SIGCOMM Workshop on Hot Topics in Networks. New York:ACM, 2010: 19.

李云(1974-),男,教授,博士,博士生导师,主要研究方向为无线局域网,无线Ad hoc/Mesh/传感器网络。E-mail: liyun@cqupt.edu.cn。

周亚峰(1989-),男,河南商丘人,硕士研究生,主要研究方向为软件定义网络。E-mail:zhouyafeng2013@gmail.com。

曹傧(1983-),男,重庆人,讲师,博士,主要研究方向为软件定义网络,无线移动通信技术。E-mail:caobin@cqupt.edu.cn。

(编辑:王敏琦)

s:The Program for Changjiang Scholars and Innovative Research Team in University (IRT1299);The National HighTechnology Research and Development Program(“863” Program) of China (2015AA01C303)

Wireless LAN and load balance strategy based on software defined network structure

LI Yun, ZHOU Yafeng, CAO Bin

(Key laboratory of Mobile Communication Technology, Chongqing University of Posts and Telecommunication, Chongqing 400065,P.R.China)

Software-defined network separates control plane and data forwarding plane, providing open programming interfaces, which greatly increases the flexibility of network management. In traditional wireless LAN, terminals usually select the access point based on signal strength, and this mechanism often causes low resource utilization and access point load imbalance. In order to solve these problems, this paper proposes a wireless LAN architecture and a load balance handover strategy based on software defined network. The main idea is to use the SDN controller’s global view of network and the capability of centralized management, monitor and analysis of the status of each access point in the network, compute their weight, and manage them based on load. Hardware and computer simulation platform experimental results show that, compared with traditional wireless LAN, the scheme effectively improves the utilization of network resources, balances the load between access point, reduces the data transmission delay during the terminal handover process and improves the performance of network.

software defined network;wireless LAN;load balance

10.3979/j.issn.1673-825X.2016.05.002

2015-09-11

2016-03-14通讯作者:李云liyun@cqupt.edu.cn

长江学者和创新团队发展计划资助(IRT1299);国家高技术研究发展计划(863计划)(2015AA01C303)

TN926; TP393.1

A

1673-825X(2016)05-0613-07

猜你喜欢
接入点信号强度局域网
光学相干断层成像不同扫描信号强度对视盘RNFL厚度分析的影响
电子自旋共振波谱法检测60Co-γ射线辐照中药材
轨道交通车-地通信无线局域网技术应用
基于无线通信的信号系统AP接入点改造方案
基于VPN的机房局域网远程控制系统
室内定位信号强度—距离关系模型构建与分析
基于802.1Q协议的虚拟局域网技术研究与实现
局域网性能的优化
WiFi信号强度空间分辨率的研究分析
关于综合业务接入点选点方案的探讨