本文的主要内容,就是带领大家一起探讨一下WLAN协商速率的计算方法。掌握了这项技能,你就能立即在众人心中树立起无线专家的形象。
基本概念大家在研究协商速率之前有必要回顾几个非常重要的概念:
WLAN协商速率计算的核心公式关于速度的计算方法,大家在小时候就学过一个公式:速度等于路程除以时间。后来大家知道物理学中的速度是矢量,通过这个公式计算出来的值其实是速率。
而AP的协商速率也是一种速率,自然而然地,大家也能推导出一个类似的公式:
协商速率=一次调制传输的数据量/传输时间
有了这个公式,大家就能计算出WLAN的协商速率。现在的问题是,要如何获得公式中的这两个参数值。
在回答这个问题前,大家先来了解几个相关的重要概念。
WLAN与无线电技术WLAN是一种无线电技术,手机通话、蓝牙传输、以及WIFI通讯,本质都是一样的:数据遵循一定的协议,采用不同的封装和调制方式,转变成无线电波以特定的编解码方式进行传送和接收。
OFDM的先容从802.11a时代开始,WLAN就已经支撑OFDM,这是一种高利用效率的调制技术。
OFDM的全称是Orthogonal(正交)Frequency(频率)Division(分割)Multiplexing(复用),即正交频分复用技术。
说到OFDM大家有必要先了解一下FDM是什么,简单来说,就是把一段固定频段的信道,分成许多子信道,子信道之间预留一定的间隔,防止相互干扰。 在每个子信道上使用一个子载波进行调制。而OFDM的核心是在频域内将给定信道分成许多相互正交的子信道。
注意,正交是在数学中的正交。正交的好处在于:即使子信道之间频谱相互重叠,也不会互相干扰,因此,在相同的频宽下,OFDM 比普通的FDM调制方式可有更多的子信道,因而可以提供更多的带宽。
这种并行传输的方式提高了频谱利用率,成为了日后一种主流的WLAN调制技术。
图1 FDM与OFDM
802.11a/g 中作业频道的频宽最高为20MHz,802.11n最高为40MHz,802.11ac最高为160MHz。作业频道使用多少频宽,纯粹是设计上的决定。
在802.11a协议中,OFDM物理层将频谱区分为作业频道,每个频宽20MHz 的频道由52个子载波所组成。其中有4 个子载波充当导频载波(Pilot Carrier),用以监控路径偏移与ICI,其余48 个子载波则是用来传递数据。子载波之间彼此相距0.3125MHz 频道编号从-26 至26。
图2 OFDM频道结构
QAM的先容OFDM将固定宽度的信道分成若干子信道,在每个子信道上使用一个子载波进行调制 ,那么在每个子信道上,采用什么技术调制数据呢?其中有一种叫做QAM。QAM的全称是Quadrature(正交)Amplitude(振幅)Modulation(调制),即正交调幅。
QAM 是在单一载波上编码数据,该载波最终的体现是电磁波的振幅和相位。
越高等级的QAM所承载的数据量就越高,其原因是系统可以识别更精细的振幅和相位,比如说BPSK 能识别两种方式的振幅和相位的排列组合,QPSK能识别4种,16QAM能识别16种即2的4次幂,可以对应2进制的4bit编码位。再比如说802.11a的64QAM,相位调幅的排列组合有64种, 即2的6次幂,可以对应2进制的6bit编码位。
不过有一点需要注意:更高等级的调制,要求更高的信噪比,即接收端需要更清晰的信号来识别更精细的调制。如果信号不好,就需要降低调制水平。
图3 BPSK、QPSK与QAM
Symbol的先容通过前面说过的OFDM和子信道的QAM,802.11协议最终把在每个子信道调制出的数据一起传递出去,而一次传递出的数据就叫做一个Symbol,也称一个符号。
Symbol Time的先容传递一个符号所需要的时间,通常称为符号时间。
协议的设计者在设计协议的时候,认为办公大楼通常的迟延范围(Delay Spread)为40至70ns,不过在某些环境里,迟延范围可能高达200 ns。防护时间应该为平均迟延时间的2-4倍,因此,设计人员选用800ns做为防护时间。而整个符号,应该为5倍的防护时间,那么一个符号时间被设置成4000ns。
图4 Symbol Time
Coding Rate的先容Coding Rate即编码率,简写为R,按照无线通信的基本原理,为了使信息适合在无线信道这样不可靠的媒介中传递,发射端将把信息进行编码并携带冗余信息,以提高系统的纠错能力,使接收端能够恢复原始信息。
编码率的大小可以理解为:编码位元到数据位元的转化率。R=1/2 的编码率代表每两个编码位元传递一个数据位元,其中一个位元是冗余位元;3/4 的编码率,即每4个编码位元可以代表3个数据位元,有1个是冗余位元。同样,编码率的提升,意味着纠错能力的降低,此时接收端需要更清晰的信号。
大家在平时也会发现接收端信号差的时候就会降速,原因就是其降低了编码率以及调制方式。
Spatial Streams的先容Spatial Streams即空间流数,指的是一个系统采用几条天线进行无线信号的收发。在802.11体系中,802.11a/g还没有这个概念,空间流是从802.11n时代开始引入的技术。为了后面公式讲解的统一,大家在802.11a/g协商速率的计算中也加入这个概念。
图5 Spatial Streams
WLAN协商速率计算公式的推导有了前面的公式和相关的概念,大家可以进行进一步的推导,即把相关概念代入公式中:
首先第一步,协商速率=一次调制传输的数据量/传输时间,
而一次调制传输的数据量是一个符号携带的数据bit数,
一个符号携带的数据bit数是一个符号携带的编码bit数 x编码率(R),
一个符号携带的编码bit数是子载波数x每子载波编码bit数x空间流数。
再看时间,在这个算式中传输时间即为一个符号的传输时间,即符号时间。
最后大家得出这样一个公式:
协商速率= 子载波数x每子载波编码bit数x空间流数x编码率/符号时间
可以说,这个公式是本文的最核心内容。
图6 协商速率计算公式的推导
802.11a/g协商速率的计算
有了前面的推导和铺垫,大家先看一下11a/g的协商速率的计算,下面这张图是802.11a在一定速率时的相关参数,比如说协商速率是54Mbps时,采用64QAM,3/4编码率,每个符号216bit:
表1 调制方式、编码率与协商速率的关系
那么54Mbps具体是怎么算出来的呢?大家一起来看一下:
OFDM的物理层每20MHz频宽有52个有效子载波。
其中48个数据子载波和4个导频子载波
每个子载波6bit
编码率3/4
符号时间是4us
把这些数据代入公式:
协商速率
=子载波数x每子载波编码bit数x (空间流数)x编码率/符号时间
=(48*6*3/4)/4
=216bit/4us
=54bit/us
=54Kbit/ms
=54Mbit/s
802.11n协商速率的计算说完了802.11a的协商速率,下面大家来看一下802.11n协商速率的计算。
802.11n协商速率的方法和802.11a原理相同。不过到了802.11n时代,802.11n协议里引入了一些新的概念和技术,对于提高WLAN的协商速率起到了关键作用。在后面的讲解中,大家分别讲解这些技术对于速率提升的原理。
MIMO-OFDM对协商速率的提升原理及其计算公式MIMO-OFDM是MIMO和OFDM相结合的技术。由于MIMO-OFDM调制技术的进步,使得相同频宽条件下支撑更多的子载波(支撑56个,而大家前面说道的802.11a支撑52个),可以实现20MHz下,单个流速率的提升。
图7 MIMO-OFDM对协商速率的提升
MIMO-OFDM支撑了更高的编码率,由802.11a时代的最大3/4,提升到了5/6,使得速率进一步提升。
图8 编码率提升对协商速率的提升
下面大家看一下在MIMO-OFDM调制方式下 802.11n协商速率是怎么提升的:
20MHz情况下:
802.11n采用MIMO-OFDM 的方式将信道调制成56个有效子载波
其中52个数据载波 4个导频子载波
每个子载波6bit
编码率5/6
符号时间是4us
把这些数据代入公式:
协商速率
=子载波数x每子载波编码bit数x 空间流数x编码率/符号时间
=(52*6*1*5/6)/4
=260bit/4us
=65bit/us
=65Mbit/s
Short-GI对协商速率的提升原理及其计算公式前面大家说过,802.11a/g标准要求在发送信息符号时,必须要保证在信息符号之间存在800ns的时间间隔,这个间隔被称为Guard Interval (GI防护时间)。802.11n仍然使用缺省使用800ns的GI。当多径效应的影响不是很严重时,可以将该间隔配置为400ns,从而把符号时由4us缩小到3.6us
图9 Short-GI对符号时间的减少
关于多径效应和保护间隔之间的关系,为方便读者的理解,给大家举一个例子。
大家可以脑补一下电视剧里的情景,比如说在两个相隔很远的山头站着两个人,他们之间通过喊话沟通。两个人互相喊话的时候会产生大量的回声。
回声是怎么产生的呢?大家知道,声音可以通过不同的方向和路径到达另一端。因为距离足够远,声音通过不同的路径到达接收者那一端所用的时间是不同的,于是产生了回声。回声就是多径效应的一种体现。
大家回到脑海中电视剧里的画面,在回声大,也就是多径效应严重的时候,山两边的人喊话会很慢,基本上是一字一断。断句的原因在于留出足够的时间让每一个字,即使通过不同的方向和路径达到产生回声,对方也能听清。每个字之间的间隔就叫做保护间隔。缩短保护间隔,减少字与字之间的间隔,可以加快语速,传递更多的信息,面对面说话就可以说得很快。增加保护间隔,比如说隔着山说话的例子,需要增大保护间隔,保证每个字对方都能听清。
可见,在不同的说话场景需要不同断字时间,也就是需要不同的保护间隔。
如果保护间隔过短,在这个例子中语速过快,就会令对方听不清自己说的话,甚至会产生误解,这就产生了数据的失真。
对于说话来说,回声严重,词之间的间隔长一些;回声不严重,词之间的间隔小一些;对于无线报文的传输来说,多径效应严重,保护间隔长一些,多径效应不严重,保护间隔小一些,也就是说可以开启Short-GI。
设备开启Short-GI后,每个载波的传输时间由4us变成3.6us,代入前面的公式:
协商速率
=子载波数x每子载波编码bit数x 空间流数x编码率/符号时间
=52*6*1*5/6 /3.6us
=260bit/3.6us
=72.2bit/s
=72.2Mbit/s
Spatial Multiplexing对协商速率的提升原理及其计算公式基于MIMO技术, 实现了在多条路径上并发地通信,这称为Spatial Multiplexing,即空间复用技术,简单理解就是多条并发空间流同时传输数据。
一般来说,支撑多少并发流,就可以提高多少倍的吞吐。
802.11n协议规定,其最大支撑空间流的数量是4。在WLAN系统中,空间流的数量取决于发送天线和接收天线的最小值。如发送天线数量为3,而接收天线数量为2,则支撑空间流的数量为2,一般用“发射天线数量×接收天线数量”表示,例如3X2。
图10 Spatial Multiplexing对协商速率的提升
大家接下来看一下多条流对于协商速率的影响。
这个计算很简单,多条流和单条流在协商速率的差别是空间流的倍数。
在下面的公式中,2条空间流的协商速率在不开启和开启Short-GI情况下的速度分别是130Mbps和144.4Mbps,是单条流相同情况下65Mbps和72.2Mbps的2倍。
协商速率(双流,不开Short-GI)
=子载波数x每子载波编码bit数x空间流数 x编码率/符号时间
= 52*6*2*5/6 /4us
= 130bit/us
= 130Mbit/s
协商速率(双流,开启Short-GI)
=子载波数x每子载波编码bit数x空间流数 x编码率/符号时间
= 52*6*2*5/6 /3.6us
= 144bit/us
= 144Mbit/s
Channel Bonding对协商速率的提升原理及其计算公式在802.11n时代以前,802.11a/b/g使用20MHz的频带宽度进行通讯。802.11n支撑将两个20MHz的频带捆绑为一个通讯频带(称为Channel Bonding), 可以将吞吐提高一倍。准确地讲,应该是不止一倍。对于802.11a/b/g,为了防止相邻信道干扰,20MHz带宽的信道在其两侧预留了一小部分的带宽边界。而在802.11n采用40MHz频宽时,这些预留的带宽也可以用来通讯,从而进一步提高了吞吐。这样的话,子载波 carriers可以达到108个,大于52X2个。
图11 Channel Bounding对协商速率的提升
比如说大家常说的300Mbps,他的前提条件除了40MHz频宽,还需要2条流,开启Short-GI。其余的几个数据道理相同,也是根据前面几个参数得出的.
802.11n速率(一条空间流,不开启Short-GI,40MHz)
=(108*6*1*5/6)/4us
=540bit/4us
=135bit/us
=135Mbit/s
802.11n速率(一条空间流,开启Short-GI,40MHz)
=(108*6*1*5/6)/3.6us
=540/3.6us
=150bit/us
=150Mbit/s
802.11n速率(两条空间流,不开启Short-GI,40MHz)
=(108*6*2*5/6)/4us
=1080bit/4us
=150bit/us
=270Mbit/s
802.11n速率(两条空间流,开启Short-GI,40MHz)
=(108*6*2*5/6)/3.6us
=1080bit/3.6us
=300bit/us
=300Mbit/s
关于常见802.11n设备协商速率的个人理解802.11n的协商速率还能更高吗?当然能,协议规定802.11n最大支撑4条空间流最高能到600Mbps,但目前业界常见的802.11n的设备只有3条流的450Mbps的设备,这是为什么?802.11n的最大空间流的确是4,不过技术发展到3条流的时候,大约是2012年,此时,802.11ac技术就已经出现。在这以后,只有少数厂家做出了4条流的802.11n设备。而更多的厂家,则把精力投入到802.11ac的技术和设备的研发中去了。
802.11ac协商速率的计算对于802.11ac来说, 其更高的协商速率来源于刚才对于802.11n几种技术的延伸:信道更宽,调制更高,空间流更多。
图12 802.11ac对比802.11n性能提升的各个维度
频宽的提升频宽由40MHz升级80MHz乃至160MHz,其子载波由802.11n的108个变成了234个和468个。
图13 802.11ac子载波数的提升
调制方式的提升调制方式由802.11n的64QAM升级为802.11ac的256QAM,其每个子载波携带的bit数由原来的6变成了8。
图14 11AC调试方式的提升
空间流数的提升空间流由原来802.11n的最大4变成了802.11ac的最大8。
802.11ac设备协商速率的计算方法1条流802.11ac设备协商速率的计算方法根据前面的先容 ,大家来看一下常见的一条流802.11ac终端协商速率是怎么得来的:
80MHz频宽支撑250个有效子载波,其中234个数据子载波
每个子载波携带8bit
编码率5/6
开启Short-GI,符号时间为3.6us
把这些参数代入公式:
协商速率
=子载波数x每子载波编码bit数x 空间流数x编码率/符号时间
=(234*8*1*5/6)/3.6
=1560bit/3.6us
=433.33bit/us
=433.33Mbit/s
2条流及3条流802.11ac设备协商速率的计算方法对于2条流和3条流设备来说,其协商速率就是1条流设备的协商速率乘以2和3,
得出866Mbps和1300Mbps。
802.11ac速率(MCS=9,开启Short-GI,80MHz,2条流)
=(234*8*2*5/6)/3.6us
=3120bit/3.6us
=866.67bit/us
=866.67Mbit/s
802.11ac速率(MCS=9,开启Short-GI,80MHz,3条流)
=(234*8*3*5/6)/3.6us
=4680bit/3.6us
=1300bit/us
=1300Mbit/s
802.11ac设备最高协商速率的计算方法最后大家看一下802.11ac协议最大理论协商速率是怎么得来的:
802.11ac最大支撑160MHz频宽,可调制出468个数据子载波,
每个子载波8bit,
8条空间流,
编码率5/6,
开启Short-GI,符号时间为3.6us
将以上参数代入公式,大家得出:
协商速率
=子载波数x每子载波编码bit数x 空间流数x编码率/符号时间
=(468*8*8*5/6)/3.6
=24960bit/3.6us
=6933.33bit/us
=6933Mbit/s
=6.9Gbit/s
附录在802.11n时代以后,由于物理速率依赖于调制方法、编码率、空间流数量、是否40MHz绑定等多个因素,于是提出了MCS(Modulation and Coding Scheme)的概念,MCS可以理解为这些速率影响因素的完整组合,且每种组合用整数来进行唯一标示,数越大代表速率越高。802.11n以及802.11ac的协商速率具体可以参考文末的图表。