《1 引言》

1 引言

利用无线局域网 (WLAN, wireless LAN) 技术进行数据传输已在家庭、企业和公共热点地区得到广泛应用。IEEE 802.11系列标准支持从1 Mb/s到11 Mb/s和54 Mb/s的数据接入能力。在有线网络中得到广泛应用的IP语音 (VoIP, voice over IP) 技术必然会拓展到无线局域网。

IP语音是通过将数字编码的语音打包后, 在实时传输协议 (RTP) 的控制下以UDP的模式传送。文献[1]对UDP数据在WLAN上传输进行了深入的分析。IP语音的传输必须满足一定的时延、时延抖动和丢包率等服务质量 (QoS) 要求 [2]。由于WLAN无线媒介是工作在2.4 GHz或5 GHz的开放空间的媒体, 容易受到外界的干扰, 加上无线信道多径衰落及多普勒效应的影响, 使得VoIP在WLAN上传输受到了极大的限制。同时WLAN上分布式协调模式 (DCF) 中采用的载波侦听多路接入/冲突避免 (CSMA/CA) 机制来传输实时媒体时的效率问题也是影响VoIP在WLAN上传输的因素之一。

采用静态估计链路容量的方法或在不同时延约束条件下和不同链路误码率条件下, 对WLAN上VoIP传输的容量问题进行了分析和研究 [3,4]。都是基于静态条件进行的估计过程。在文献[5]提出的基于概率分析马尔可夫链 (Markov chain) 传输模型的基础上, 考虑了接入概率和碰撞概率因素, 得出不同编码方式下IP语音在WLAN上传输的最大容量。

《2 IEEE 802.11 MAC协议》

2 IEEE 802.11 MAC协议

IEEE 802.11 MAC层提供了2种不同功能的接入方法:DCF分散式协调功能和PCF集中式协调功能 [6]。协调功能是指一个用来决定什么时候哪个工作站能收发数据的机制。DCF是 IEEE 802.11 MAC的基本接入方法, 主要是利用CSMA/CA方法来决定站点收发异步数据的过程。PCF 提供工作站收发具有实时性要求的数据, 在使用上属于无竞争方法, 只能应用在基础架构模式的无线局域网中。在一个BSS中, PCF和DCF协调过程交替使用, 形成超级帧的传输过程。无线局域网的DCF接入过程中, CSMA/CA利用载波侦测技术来判断某一信道的忙碌或空闲。如果信道是忙碌的, 工作站必需延迟一个随机的时间直到发现传输媒介是空闲的, 才能传送帧。IEEE 802.11中还有帧间隔概念, 如短帧间隔时间SIFS, PCF帧间隔时间PIFS, DCF帧间隔时间DIFS和扩展帧间隔时间EIFS, 其中SIFS<PIFS<DIFS<EIFS。CSMA/CA规定在等候帧间隔时间后, 再等待一段随机退避时间后才发送帧。

《3 理论分析》

3 理论分析

《图1》

图1 Markov链状态转移图

图1 Markov链状态转移图  

Fig.1 State transferring Markov chain model

分析首先基于一个理想的假设, 即无隐藏站点、无第三方截取的理想信道条件。接入方式考虑基本接入方式、RTS/CTS方式的情况。假设系统中站点数量n不变, 且每个站点总有需要传送的数据, 系统处于饱和状态。用到的参数中p指数据包在信道中传送的碰撞概率;τ为站点在一个随机slot时间内传送数据的概率;c (t) 描述了给定站点在任一时刻t的退避时间计数器值的随机过程;i (t) 描述了给定站点在任一时刻t的退避阶数的随机过程。另外W指竞争时间窗最小值即W = Wmin;m指最大退避阶数;i指取值在[0, m]的退避阶数, 站点每发生一次数据重传则i值加1, 直到最大值m;Wi是退避阶数取i时的竞争时间窗, 即Wi = 2iW。而最大竞争时间窗Wmax为2mW。根据802.11基本接入方式下的CSMA/CA机制, 站点退避时间的二维随机过程{i (t) , c (t) }可定义为一个离散时间的马尔可夫过程, 其状态转移过程如图1所示。

根据包传送概率τ的定义, 由于每一个站点都是在退避时间结束即退避时间计数器为0时才发送数据, 根据文献[5]通过运算得到方程组

{τ=i=0mai,0=a0,01-p=2(1-2p)(1+w)(1-2p)+pw(1-(2p)m)p=1-(1-τ)n-1(1)

并用数学方法求解, 得到包传送概率τ的唯一解。

定义 Th为系统吞吐量, 即信道上单位时间里成功传输的比特数。

Th = (一个slot时间内成功传输比特的平均值) /

(一个slot时间时长的平均值) (2)

假设系统由n个站点组成, 则每个slot时间内有n个站点参与竞争信道, 且每个站点均以概率τ发送数据, 则一个任意slot时间内系统中至少有一个站点发送数据的概率Ptr和恰好有一个站点发送数据且成功发送的概率Ps

Ρtr=1-(1-τ)n(3)Ρs=nτ(1-τ)n-1/Ρtr=nτ(1-τ)n-1/(1-(1-τ)n)(4)

E[S]表示发送数据包的平均比特数, 则式 (2) 中的分子部分可以用PsPtrE[S]表达。slot时间占用有3种情况, 没有数据发送即空闲的slot时间、成功发送数据的slot时间和发生碰撞的slot 时间, 由此, 系统的吞吐量可以进一步表达为

Τh=ΡsΡtrE[S]/((1-Ρtr)σ+ΡtrΡsΤs+Ρtr(1-Ρs)Τc)(5)

式中σ为没有数据发送的slot时间, Ts是信道中成功发送数据时占用信道的平均时长, Tc是信道中发生碰撞时占用信道的平均时长, 设置σ, Ts, Tc为同一单位的数值。对不同的接入方式而言, Ts, Tc的不同而得到了不同的饱和吞吐量的值。在基本接入模式中,

Τsbas=Η+E[S]+SΙΡS+2δ+ACΚ+DΙFS,Τcbas=Η+E[S*]+δ+ACΚ+DΙFS(6)

式中δ是传输延迟时间, E[S*]是传送发生碰撞时的最大数据包长度的平均值, H为包括物理帧头和MAC层帧头在内的负载时间, ACK为ACK帧传输占用的时间。在RTS/CTS机制中, 考虑的碰撞只发生在RTS帧的情况, 可得到

Τsrts=RΤS+CΤS+3SΙFS+4δ+Η+E[S]+ACΚ+DΙFSΤcrts=RΤS+DΙFS+δ(7)

式中RTS和CTS分别为RTS帧和CTS帧传输占用的时间。对式 (5) 进一步整理得到

Τh=E[S]/(Τs-Τc+(σ(1-Ρtr)/Ρtr+Τc)/Ρs)(8)

WLAN上VoIP传输的容量上限值N (也即是在无线局域网中可以同时允许接入网络实现语音通话的最多用户数) 的计算公式为

Ν=[(Τh)/2(ΙΡ)]-1(9)

式中成功传送一个IP语音包所需带宽包括IP/UDP和RTP报头带宽。减1是把AP节点减去。

《4 容量结果分析》

4 容量结果分析

VoIP的传输根据不同的语音编码方式而占用不同的带宽。而不同的编码方式中, 不同打包长度的传输占用的带宽也不一样。考虑常用的G.711, G.729, G.723.1 (6.3 kb/s) 编码方式VoIP语音在WLAN中传送的过程, 同时考虑在基础接入模式和RTS/CTS接入模式下的VoIP容量过程。在802.11b中, 主要考虑采用11 Mb/s速率传输时的最大VoIP容量;在802.11a和802.11g中, 则考虑采用54 Mb/s速率传送时的最大VoIP容量。

对式 (8) , 可以证明它的最大值是与接入的站点数无关的 [7]。对于确定的接入数据包长和其他参数, 不同的站点接入时, 可以在不同的接入概率τ上得到最大的饱和吞吐量值, 而这个饱和的吞吐量值大致不变。

图2 和图3画出不同站点接入时3 808 b大小数据包传输的最大吞吐量过程, 可见两图中不同站点接入时的最大吞吐量值大致相等。

根据以上的原理, 对不同编码方式的VoIP语音在WLAN中传输进行分析。IEEE 802.11b/a/g的参数如表1所示。理论分析和仿真实验得到如表2所示的最大容量结果, 其中G.711, G.729和G.723.1 (6.3 kb/s) 不同的打包长度下有不同的容量上限值。 (表2中括号外的值为理论分析值, 括号内的值为从第5节得到的仿真数值)

从表2看到, 随着语音包打包长度的加大, WLAN中能支持的VoIP链路容量也加大。VoIP打包的数据长度影响容量值, 大的数据包能够支持更多VoIP链路的传输。得到这个结果的原因之一是当语音包长度较小时语音净荷数据和其他帧头负载的比例较小;而当数据帧加大时, 这个比例变大, 净荷数据的传输效率增大。另外更主要的原因是当采用小的打包长度时, 单位时间内需要传输的包数量增大, 由此引起数据传输时帧头的开销和MAC层协议的开销变大, 效率变低;而当采用大的打包长度传输时, 相应的开销会变小, 效率增加。当然, 采用长帧传送VoIP语音时需要考虑到传输延时会变大, 而且在WLAN中长帧更容易受外界干扰而产生丢包。

《图2》

图2 基本接入机制下吞吐量随传送概率τ的曲线

图2 基本接入机制下吞吐量随传送概率τ的曲线  

Fig.2 Throughput versus transmissionprobability τ for the basic access mode

《图3》

图3 RTS/CTS下吞吐量随传送概率τ的曲线

图3 RTS/CTS下吞吐量随传送概率τ的曲线  

Fig.3 Throughput versus transmission probability τ for the RTS/CTS transmission mode

表1 IEEE 802.11b/a/g使用的主要参数列表

Table 1 Parameters set in IEEE 802.11b/a/g

 

《表1》


参数
IEEE
802.11b
IEEE
802.11a
IEEE 802.11g
(OFDM)

Physical /μs
192 20 20

SlotTime /μs
20 9 9

SIFSTime /μs
10 16 16

DIFSTime /μs
50 34 34

ShortRetryLimit
7 7 7

LongRetryLimit
4 4 4

Wmin
31 15 15

Wmax
1023 1023 1023

 

 

表2 IEEE 802.11b/a/g标准下VoIP的容量值

Table 2 VoIP capacities in IEEE 802.11b/a/g wireless LANs

 

《表2》


语音包
大小/ms

IEEE 802.11b
(Basic模式)
IEEE 802.11b
(RTS/CTS模式)
IEEE 802.11a (Basic模式)
IEEE 802.11g (DSSS-OFDM模式)

G.711
G.729 G.723.1 G.711 G.729 G.723.1 G.711 G.729 G.723.1

10
6 (6) 6 (6)   3 (3) 4 (3)   30 (30) 31 (31)    

20
12 (11) 14 (14)   7 (7) 8 (8)   56 (56) 64 (64)    

30
17 (17) 22 (22) 22 (21) 11 (11) 13 (13) 13 (13) 79 95 96 (96)  

40
21 (21) 29 (29)   14 (14) 17 (17)   98 126    

50
25 (25) 36 (36)   17 (17) 22 (22)   116 (116) 156 (156)    

60
28 (28) 43 (42) 44 (43) 20 (20) 26 (25) 26 (25) 132 186 188 (187)  

70
31 (31) 50 (49)   23 (23) 30 (29)   146 215    

80
33 (32) 56 (55)   25 (24) 35 (34)   159 (158) 245 (244)    

90
36 (35) 63 (62) 65 (63) 27 (26) 39 (38) 39 (38) 170 271 276  

100
38 (37) 68 (67)   29 (28) 43 (42)   181 299    

 

 

IEEE 802.11a/g采用了54 Mb/s的传送速率得到更高的VoIP容量。其中IEEE 802.11g工作在54 Mb/s的DSSS-OFDM模式, 除工作频段外, 在MAC层上可认为与IEEE 802.11a一样。

在WLAN中, 物理前导码和帧头的大小是额外的负载。减少这个负载可以使WLAN系统支持更多的VoIP用户同时传输。实验表明, 使用G.729编码以10 ms打包发送时, 在一个IEEE 802.11b的接入点覆盖范围内, 使用短帧头模式可以将VoIP容量的值从6个增加到8个。其他的实验也证明了IEEE 802.11b中采用短帧头模式能使支持的VoIP的容量增加30%到40%, 这需要所有通信的站点都支持短帧头传输模式。在802.11g标准中, 支持短帧头的传输模式是强制性的。

《5 仿真分析和验证》

5 仿真分析和验证

选用VINT组织的NS2 (Network Simulator ver. 2) 工具在Linux下进行仿真 [8]。遵循IEEE 802.11b/a/g的标准, 速率选择为11 Mb/s或54 b/s。仿真主要考虑基础接入模式的情况, 同时考虑RTS/CTS的传输模式。仿真使用的无线信道参数如表1所示, 以理论计算值为参考, 选取临近的VoIP节点数目进行时延、时延抖动、丢包率和获得带宽等方面进行仿真。根据VoIP传输的性能要求 [2], 在有回波抵消器的基础上, 获得可接受质量语音的时间延时不能超过300 ms, 时延抖动不超过10 ms, 丢包率不超过1%。以此为基准对图4和图5中的G.711 20 ms的VoIP传输的时延和丢包率性能进行分析, 可以知道n为11是这个实验中的最大容量上限。其他模式下得到的实验结果如表2中括号中所示。在802.11a/g中, 只选择了部分的模式进行仿真验证。

《图4》

图4 G.711 编码语音的仿真时延比较图

图4 G.711 编码语音的仿真时延比较图  

Fig.4 Delay simulation results of G.711 codes

《图5》

图5 G.711 编码语音的仿真丢包率比较图

图5 G.711 编码语音的仿真丢包率比较图  

Fig.5 Drop rate simulation results of G.711 codes

仿真的结果与理论分析数值之间存在小的误差, 一方面是由于最大VoIP容量理论值是根据最大吞吐量来求出的值, 它是一个理论上限, 在实际情况下一般难以达到, 这也是该数据与文献[3]中的数据之间存在小误差的原因。另一方面, 仿真中的多个VoIP节点之间的源的启动时间是人为定义的, 没有达到随机化, 当多个站点都处于同一时刻开始发送和传送时, 必然使碰撞的概率增大。采用随机的源启动时间就能减少这个误差了。

《6 结语》

6 结语

提出了基于概率分析的马尔可夫链传输模型对VoIP在WLAN上传输的容量进行分析, 得出不同编码方式IP语音在WLAN上传输的最大容量值。它为继续研究VoIP技术在WLAN上传输和为公共无线局域网 (Public WLAN) 的布网工作提供有效的帮助。由于VoIP在WLAN上传输的容量受 限和无线媒介的变动性, 需要更多的研究来改进VoIP在WLAN上的传输过程, 包括增加容量方法, 提出有效的WLAN上VoIP接纳控制方法等。