针对干扰邻居数(INX)路由度量不能正确反映网络负载分布信息这一关键问题,在INX的基础上提出无线Mesh网络干扰与区域负载感知(IRLA)路由度量. IRLA通过平均竞争度描述干扰链路对同一信道的竞争程度和干扰链路负载的离散程度来衡量网络负载分布状况,使网络在路径选择时避开重负载区域,有效地实现了网络负载均衡.理论分析和NS-2仿真结果表明,所提路由度量能显著提高网络吞吐量,降低网络端到端时延和丢包率,在高负载网络环境下,仍具有提升网络性能的优势.
Aiming at solving the problem that information about the distribution of network traffic load cannot be correctly captured by interferer neighbors count (INX) routing metric, an interference and regional load aware (IRLA) routing metric for wireless mesh networks was proposed. Average competition degree was used to describe the competition degree for the same channel among interferer links and the dispersion degree of traffic load on interferer links. The information was utilized to guide the routing selection for avoiding heavy traffic load regions and achieving network load balance effectively. Analysis and NS-2 simulation show that the proposed routing metric can not only improve network throughput dramatically, but also reduce end to end delay and packet loss ratio, and it can even enhance the network performance in heavy load environment.
无线Mesh网络(WMN, wireless Mesh networks)流量的突发性容易造成网络负载分布不均,引起网络拥塞,影响网络通信性能.与WMN中先拥塞后解决的拥塞控制算法[1]相比,具有负载感知的路由选择方法能更有效地均衡网络负载分布,提高资源利用率,因此,研究负载感知的路由技术对提升WMN性能具有重要意义.
Rami Langar[2]等提出了INX路由度量,INX在期望传输时间(ETT, expected transmission time)[3]的基础上,对节点干扰范围内使用相同信道的链路速率进行了捕捉,通过选择一条带宽竞争最小的路径降低了数据流干扰.但INX度量缺乏对网络负载状况的感知,忽略了网内流量分布对路径选择的影响.
笔者在INX的基础上提出了IRLA路由度量. IRLA采用平均竞争度(ADC, average degree of competition)描述干扰链路对同一信道的竞争程度及干扰链路负载的离散程度,能更准确地衡量干扰链路负载对选路的影响.通过理论分析和NS-2仿真,验证了IRLA度量提升网络通信性能的有效性.
1 INX路由度量INX路由度量通过ETT考虑了无线链路质量,通过链路的干扰邻居总数捕捉了数据流干扰.干扰链路的定义为[2]
(1) |
其中:d(v, m)为节点v和m之间的欧氏距离,d(v, n)、d(m, u)、d(u, m)、d(u, n)、d(m, v)的含义与d(v, m)类似;Rh(v)为节点v的干扰范围,Rh(m)、Rh(u)的含义与Rh(v)类似.如果使用同一信道的链路(v, u)和(m, n)满足式(1),则链路(m, n)是链路(v, u)的干扰链路[2].在计算链路的INX值之前,需要得出链路的ETT值.链路的ETT度量值T为
(2) |
其中:X为通过前向和反向递交率计算得到的链路期望传输次数值,S为固定包大小(如1 024 B),B为链路带宽.链路(v, u)的INX度量值I(v, u)为
(3) |
其中:T(v, u)为链路(v, u)的ETT值;S(v, u)为链路(v, u)的干扰链路集合;rm, n为链路(m, n)的传输速率,文献[2]规定所有链路都使用相同的标称数据速率.因此,从本质上来说INX在选路时考虑的是通信链路的干扰邻居总数,用该链路的干扰邻居总数捕捉流间干扰的影响,整条路径p的INX度量值为
(4) |
其中:N为网络中所有的有向链路数,p为数据包经过的路由路径. INX考虑了数据流干扰和链路质量,忽略了节点自身及干扰链路的负载等因素,选择的路径可能无法避免重负载区域,造成拥塞.笔者针对INX度量上述问题,通过ADC衡量网络负载分布状况,提出了IRLA路由度量.
2 IRLA路由度量2.1 区域负载感知模型为了更准确地描述区域负载对选路的影响,在路由度量中考虑区域负载,用链路缓存队列长度和链路速率描述链路负载强度.采用ADC描述链路l干扰范围内各链路对信道i的竞争程度. ADC采用干扰链路负载方差对负载强度进行平滑,以衡量区域负载的离散程度. ADC的度量值A(li)为
(5) |
其中:Nl, i为链路l干扰范围内所有使用信道i的干扰邻居总数,S(li)为链路l使用信道i时的干扰链路集合,Q(ki)为干扰链路k使用信道i时的缓存队列长度,bk, i为干扰链路k使用信道i时的速率.
2.2 IRLA路由度量的构建IRLA在INX路由度量衡量数据流干扰的基础上,采用本链路负载强度值和ADC作为度量的负载均衡部分.负载均衡部分的度量值L(li)为
(6) |
其中:Q(li)为链路l使用信道i时的缓存队列长度,bl, i为链路l使用信道i时的速率.链路l使用信道i的IRLA度量值R(li)为
(7) |
其中rk为干扰链路k的传输速率.整条路径的IRLA度量值R(p)为
(8) |
Ad hoc按需距离矢量(AODV, Ad hoc on-demand distance vector) [4]是一种按需路由协议.为了计算链路的IRLA度量值,需要确定链路传输速率、链路ETT值、干扰链路集合和链路负载强度值.其中链路传输速率可以通过包对方法获得,即链路发送端周期性发送大小探测包(分别为1 137 B和137 B),在接收端用大探测包除以两包的接收时间差作为链路传输速率的估计值[3],进而计算出链路投递率和链路传输速率得到链路的ETT值[3].利用式(1) 确定干扰链路集合.在衡量链路负载强度方面,在MAC层增加队列长度字段,并与路由层关联;在路由层通过跨层获取相应信道的队列长度,结合链路传输速率计算链路的负载强度值.将获得的本链路与干扰链路负载信息作为负载均衡部分纳入到IRLA路由度量中,在AODV处理路由请求和路由应答时依据IRLA路由度量进行路由更新,即可为数据流选择最优路径.
3 仿真实验与结果分析以Linux上的网络模拟软件NS-2.35为仿真平台.仿真条件:在1 000 m×1 000 m区域内部署5×5方格形的WMN场景[5],节点传输距离为250 m,干扰范围为550 m,每个节点配置3个网络接口,网络有3条可用正交信道.采用恒定比特率(CBR, constant bit rate)流作为数据源,每个分组长度为512 B.从数据流数和节点发包速率2个角度来加大网络负载程度,对比IRLA和INX度量下的网络性能.
3.1 不同流数下的IRLA与INX性能对比在固定的节点发包速率下逐渐增加网络数据流个数,观察IRLA和INX路由度量在网络吞吐量、平均丢包率、平均端到端时延方面的性能.仿真结果如图 1~图 3所示.
图 1表明网络吞吐量随着数据流个数增加而增大,IRLA的吞吐量性能一直优于INX,在7条流时吞吐量提高18.4%.图 2显示IRLA的平均丢包率低于INX.图 1和图 2表明IRLA通过感知网络负载分布信息,降低了网络平均丢包率.
图 3为2种度量的平均端到端时延对比图,IRLA相比INX在7条流时平均端到端时延降低34.2%,可见,加入负载感知功能的IRLA度量能显著降低端到端时延,达到了负载均衡的目的.
3.2 不同发包速率下的IRLA与INX性能对比在固定数据流个数的场景下,逐渐增大节点的发包速率,观察IRLA和INX路由度量在网络吞吐量、平均丢包率、平均端到端时延方面的性能.仿真结果如图 4~图 6所示.
由图 4可以看出,2种路由度量的网络吞吐量随着网络流量不断变大而提升,IRLA的网络吞吐量一直优于INX,在384 kbit/s速率下网络吞吐量提升高达20.5%,甚至在1 Mbit/s速率时,网络吞吐量仍有4.8%的提高.图 5显示IRLA的平均丢包率一直低于INX.
网络的平均端到端时延如图 6所示,2种路由度量下网络的平均端到端时延随着发包速率不断变大而不断增加. IRLA的平均端到端时延始终低于INX的平均端到端时延,这表明IRLA具有较好的负载感知功能,减少了数据包因网络拥塞造成的排队时长,降低了端到端时延.
4 结束语笔者提出了一种IRLA路由度量. IRLA在INX考虑链路质量和数据流干扰的基础上,通过ADC对干扰邻居负载进行有效衡量,反映了网络负载分布对通信质量的影响.仿真结果表明,IRLA相比INX能显著提高网络吞吐量、降低网络时延和丢包率;在高负载环境下,仍能增加网络吞吐量,提高端到端通信性能,实现网络负载均衡.
考虑到主动探测方法带来的开销影响了对负载信息的处理,笔者下一步拟研究使用被动监测方法获取网络负载信息,并在试验网中对IRLA路由度量验证完善,以期进一步提升网络性能.
[1] |
李陶深, 韦燕霞, 葛志辉. 跨层负载感知的无线Mesh网络拥塞控制[J]. 北京邮电大学学报, 2011, 34(1): 50–54.
Li Taoshen, Wei Yanxia, Ge Zhihui. Congestion control algorithm based on cross-layer load-aware in wireless mesh network[J].Journal of Beijing University of Posts and Telecommunications, 2011, 34(1): 50–54. |
[2] | Langar R, Bouabdallah N, Boutaba R, et al. Interferer link-aware routing in wireless mesh networks[C]//2010 IEEE International Conference on Communications, Cape Town, South Africa, May 23-27, 2010: 1-6. |
[3] | Draves R, Padhye J, Zill B. Routing in multi-radio, multi-hop wireless mesh networks[C]//Proceedings of the Tenth Annual International Conference on Mobile Computing and Networking, Philadelphia, PA, United states, September 26-October 1, 2004: 114-128. |
[4] | Perkins C E, Royer E B. Ad hoc on-demand distance vector routing. IEEE workshop on mobile computing and systems and applications[C]//Mobile Computing Systems and Applications, New Orleans, LA, Febraury25-26, 1999: 90-100. http://www.oalib.com/references/9299711 |
[5] | Hatti S, Kamakshi M B. Performance analysis of ETX and ETT routing metrics over AODV routing protocol in WMNs[C]//4th International Conference on Networks and Communications. Chennai, India December 22-24, 2012: 817-826. |