基于NS2的802.11效果异常现象仿真研究

时间:2022-05-07 08:03:42

基于NS2的802.11效果异常现象仿真研究

摘 要: 在802.11 WLAN(Wireless Local Network)中,当一些无线节点的传输速率明显低于其他节点与AP(Access Point)间的传输速率时,将会使区域内所有节点的传输性能降低,这种现象称为效果异常(Performance Anomaly),Hyogon K等人在文献[6-7]中提出用改变封包容量和竞争窗口大小的方式来解决这个问题。文章通过在NS2网络仿真环境下,设计实验拓扑,编写性能分析脚本,对效果异常现象进行仿真并验证了上述两种方案能够有效缓解该现象并保持系统传输性能稳定。

关键词: 802.11; 效果异常; 无线局域网; NS2

中图分类号:TP393 文献标志码:A 文章编号:1006-8228(2013)02-04-03

802.11 performance anomaly study based on NS2

Ma Yuanfei, Wang Shunli

(Computer Department of Jining Normal College, Ulanqab, Neimenggu 012000, China)

Abstract: In 802.11 WLAN, it is found that when a certain number of wireless node communicate with AP used lower transmission rate than other nodes, the transmission performance of all nodes will be decreased in wireless coverage range. This phenomenon is known as the effect of performance anomaly. In order to solve this problem, respectively proposed some solutions are proposed in literature[6-7] through modifying the transmission packet size and contention window size. A network topology is presented, performance analysis script is written, and the effect of performance anomaly is simulated in this paper. Two solutions using NS2 are proposed. Simulation results verify that the above methods alleviate the effect of performance anomaly and also maintain system performance.

Key words: 802.11; performance anomaly; WLAN; NS2

0 引言

无线局域网普遍采用802.1[1]协议族,其中802.11 a/b/g的使用最为普遍,它们分别使用不同的编码方式并支持多种传输速率。低传输速率对于信号的抗干扰性较强,高传输速率对于信号的抗干扰能力较弱。由于实际应用环境千差万别,需要在干扰性与传输速率间进行适当权衡。802.11采用过链路调适(Link Adaptation)方法解决这个问题,其中常用的做法是利用SNR(Signal-to-Noise Ratio)来判断网络状况:当信号不良时,选择低速传输,当信号良好时选择高速传输。

在无线网络环境下,距离与信号强度成反比,因此远距离节点为了改善信号质量,会采用较低的传输速率来保护信号,这样就会造成在一个无线局域网中,多种传输速率节点并存的现象,这种网络环境称为多重传输速度。图1是一个802.11b无线网络拓扑图,A和B要传送数据到远程服务器,A会随着时间慢慢向外移动,传输速度会逐渐从11Mbps调整为1Mbps。假设A、B的封包大小不变,则占用信道的时间与传输速率成反比。因此,A的传输速率降低时,很明显其占用信道的时间会变长,但B占用信道的时间长度并未改变,从而导致在相同时间长度T中,A和B可以传送的封包总数会降低,这样除了影响系统的整体效果外,B因为A传输速度的降低,自己的传输效果也会与A相同,这种现象就称为效果异常[2]。

图1 效果异常图例说明

1 效果异常仿真拓扑

为了仿真效果异常现象,我们按照图1的无线网络拓扑,省略掉其中对于效果异常现象无关的因素,比如:A、B节点与服务器之间的交互过程;用CBR(Constant Bit Rate)简化应用层数据传输模式;通过设置A、B、C节点之间的间距为随机来保证实验的有效性及结果数据的真实性;按照上面三点假设并结合实际情况,得到图2所示的实验拓扑。

该无线拓扑具体场景(如图2所示)描述如下:节点C为固定节点模拟AP;B、C为移动节点,各自以2Mbps的速率传送CBR到C;封包大小固定为1000Byte;整个模拟过程持续约45s,在0~15s时间范围内,节点A、B传输速率固定为11Mbps,在15~30s时间范围内A的速率调整为1Mbps,并缓慢向外移动,30s后A与C的间距超过有效距离,此时只有B传送数据。

图2 NS2中仿真无线场景图

2 效果异常NS2仿真脚本

在NS2[3-4]中,上述场景配置脚本按照如下步骤编写:①配置无线网络环境参数;②设定节点位置及移动参数;③配置高层协议内容。每步关键配置代码与说明如下。

⑴ 无线网络环境参数设置

Channel/WirelessChannel ;# 设定物理信道类型

Propagation/TwoRayGround ;# 设定无线传输模式

Phy/WirelessPhy ;# 网络接口类型

Mac/802_11 ;# MAC层类型

Queue/DropTail/PriQueue ;# 接口队列模型

LL ;# 逻辑链路层模型

Antenna/OmniAntenna ;# 天线模型

set val(ifqlen) 50 ;# 接口队列长度

set val(rp) DSDV ;# 无线路由协议

⑵ 节点位置及移动参数设置

#设定节点B的X坐标

$11m_node_(0) set X_[expr 100+[$RVdistance value]]

# 设定节点B的Y坐标

$11m_node_(0) set Y_[expr 100+[$RVdistance value]]

$11m_node_(0) set Z_0.0 ;# 设定节点B的Z坐标

⑶ 节点高层协议设置

#设定节点A高层通过CBR产生数据流

set 11m_cbr_(0) [new Application/Traffic/CBR]

#节点传输层协议为UDP

$11m_cbr_(0) attach-agent $11m_udp

$11m_cbr_(0) set type_ CBR

#高层数据封包大小

$11m_cbr_(0) set packet_size_ 1000:

#高层数据传输速率

$11m_cbr_(0) set rate_ 2Mb;

3 效果异常性能分析脚本

为了观测效果异常现象以及验证解决方案的有效性,需要编写性能分析脚本来测量仿真实验中吞吐量[5]的变化情况。NS2在模拟过程中会产生仿真过程记录文件,里面详细记录了封包的类型、大小、源节点、目的节点、时间等参数,性能分析脚本只需逐项读入该记录并进行计算即可完成吞吐量的测算,脚本部分代码及简要说明如下。

性能分析脚本:

if ($x[2]-$clock

{ #计算单位时间内累积的封包的大小,

$sum=$sum+$x[4];

#计算累计的总封包大小

$sum_total=$sum_total+$x[4];

}

else

{ #计算吞吐量,将字节转化为位

$throughput=$sum*8.0/$granularity;

#记录最大吞吐量

if ($throughput > $maxrate)

$maxrate=$throughput;

#输出结果:时间 吞吐量(bps)

print STDOUT "$x[2]: $throughput bps\n";

#设置下次要计算吞吐量的时间

$clock=$clock+$granularity;

#计算全部累计封包大小

$sum_total=$sum_total+$x[4];

……

}

4 效果异常仿真模拟

在NS2中模拟执行第二部分所述网络配置脚本并对产生的实验数据进行性能分析,得到结果如图3所示。从图3中可以发现,在0~15s时间内,A、B节点的速率均为11Mbps,传输数据量分别约为2Mbps左右,在15~30s这段时间内,节点A的速率降至1Mbps,但是节点B仍保持11Mbps速率不变,但是其效果已降至750Kbps左右,与A接近,而系统整体的效果从4Mbps降至1.5Mbps,此现象即为效果异常。30s之后,由于节点A移动出通信范围,节点B又恢复正常传输速率。

图3 效果异常仿真结果

5 效果异常解决方案及效果验证

针对效果异常,文献[6]中提出通过改变封包大小的方式来提升系统性能,避免效果异常。其中传输速度快的节点使用较长的帧,传输速度慢的节点使用较短的帧,降低慢速节点的信道使用权,以此提高系统性能。

文献[7]提出通过改变竞争窗口的大小,让传输速度快的节点较容易得到信道使用权,增加传输速度较慢节点信道使用权的获取难度,以此保证系统性能。具体做法如下:CW=CWmin*11/(data_rate),CWmin为初始竞争窗口大小(NS2中默认为32),速率与竞争窗口大小成反比。

为了验证上述两种方案的有效性,需要对无线场景配置脚本进行相应更改并模拟执行,然后对实验数据进行性能分析,根据吞吐量的变化情况分析方案能否抑制效果异常并维持系统性能。

为了模拟封包大小的改变,我们在模型原有设定的基础上,将节点A速率为1Mbps时的CBR封包大小改为256Bytes,这样与原来11Mbps时封包为1000Bytes相比,帧长明显降低,信道占用率随之下降。模拟结果如图4所示。从图4中可以看到,高速节点B(11Mbps)的曲线相对低速节点(1Mbps)的曲线明显拉开,整体吞吐量提升很多,传输效果异常问题得到缓解。

图4 封包大小对效果异常的影响

为了模拟竞争窗口的大小变化,将11Mbps时A节点的竞争窗口大小设置为32,将1Mbps时的A窗口大小设置为352,并假设所有节点的封包大小相同,均为1000Bytes。模拟结果如图5所示。从图5中可以看到,B节点速率在A节点吞吐量降低时,基本维持不变,A、B吞吐量差距明显,B节点并未出现效果异常,系统整体性能基本保持稳定。

图5 竞争窗口大小对效果异常的影响

6 结束语

本文通过在NS2网络仿真环境下,搭建无线实验拓扑、配置实验脚本、编写性能分析代码,在虚拟环境下再现了效果异常现象;并根据文献中描述的解决方案,更改配置脚本,收集并分析结果数据,证明了通过改变封包容量及竞争窗口大小可以有效缓解效果异常,保持802.11无线系统传输性能。

参考文献:

[1] IEEE 802.11.[EB/OL].(2012-12-17)[2012-12-20].http:///zh/IEEE_802.11.

[2] Heusee H, Rouusseu F, berger-Sabbatel G, and Duda A. PerformanceAnomaly of 802.11b[C]//Pro.IEEE INFOCOM CoNF.ol.2,2003.3:836-843

[3] 徐雷鸣,庞博,赵耀.NS2与网络模拟[M].人民邮电出版社,2003.

[4] 柯志亨,程荣祥,邓德隽.NS2仿真实验-多媒体和无线网络通信[M].电子工业出版社,2009.

[5] 柯志亨.NS2使用手册.[EB/OL].(2011-11-27)[2012-12-10].hpds.ee.ncku.edu.tw/~smallko/NS2/.

[6] Hyogon K,Sanki Y, Inhye K, and Saewoong B. Resolving 802.11 Performance Anomalies through QoS Differentiation[C]// CommunicatioNS Letters IEEE.Volume 9,Issue 7, July2005 Page(s):655-657

[7] Abu-Sharkh O, Twefik A H. Throughout Evaluation and Enhancement in 802.11 WLANS with Access Point[C]//IEEE Vehicular Technology 2005 Vehicular Technology Conference,2005.VTC 2005-Spring Volume 2,30 May-1 June 2005 Page(s):1338-1341 Vol.2.

上一篇:摄影,不过是光和影的游戏 下一篇:星客特:缔造奢华出行