关于基于ODFM技术的网络传输产品理论速率和实际速率的关系

2017-07-29 14:32:19 视立方数字 358

该文主要讨论基于OFDM的无线WIFI、同轴网络传输器、电力载波等传输设备的理论速率(物理层速率)和实际速率(吞吐量)之间的关系,由于这个问题的确较为复杂,且有些偏向理论,笔者尽量以最简单的方式表述清楚,若有错误或不清楚的地方,还请见谅。

1.物理层速率

802.11协议中,一共定义过四种物理层的工作模式,包含目前普遍的OFDM模式,以及802.11b的DSSS/FHSS两种模式,还有就是最初的802.11定义的红外线工作模式。由于当前最主流的802.11a/g/n/ac都是工作在OFDM模式,故我们仅讨论OFDM模式下的速率。

首先OFDM是采用正交子载波进行工作的一种模式,即将整个数据信道分解成很多个子载波,这些子载波在数学上是正交的,比如在802.11a中,有用的数据子载波就是48个(详细的是64个子载波,其中48个是数据子载波,4个导频子载波,1个DC子载波不使用,其余的都是用来做保护的虚拟子载波)。在OFDM机制下,发送方发送的实际上是一个个symbol,比如一个帧就是由 [ symbol_1 symbol_2 symbol_3 ... symbol_xx],这样组成的,当子载波给定的情况下(比如802.11a就是固定48个有效子载波),那么其symbol的周期就是固定的,不会随着速率变化而变化,在802.11a中,该symbol周期就是4us。在给定symbol周期的情况下,发送速率实际上是由这个symbol上所能够携带的信息量决定的,而这个信息量又是又调制方式和编码速率决定的。

ODFM物理速率

如上图,这里的调制就是对应的调制方式,FEC速率就是对应的编码速率。故我们总结OFDM物理层的速率即为,网络速率 = (数据子载波数目*调制阶数*编码效率) / (symbol周期)。以上图的802.11a为例,数据子载波数目为48个,调制阶数是16QAM即为4,编码速率为1/2,故 [ 48*4*(1/2) ] / 4us = 24Mbps。有关调制方式和编码速率的具体内容我们不加以详述,我们需要理解的是,若速率越高,那么对信号质量的要求越高(即灵敏度要求越高)。

2.jpg

其余802.11n/ac的情况大致也差不多,细节上会有些变化。我们最直观看到之后的协议速率增加主要还是由于信道带宽的增加,比如802.11n中新增加了40M带宽,802.11ac中的80M/160M带宽,带宽增加,即子载波数增加,最终导致速率增加。而关于多空间流的部分,我们这里不加以讨论。

2.实际速率(吞吐量)

我们首先要对网络吞吐量,也就是实际网络速率加一个定义,即真实传输数据内容相应的速率,即真实数据不包含一些协议接入过程的附加时间,比如竞争开销,物理层头部,MAC层头部,ACK反馈时间,重传开销等等,如下图

ODFM网速实际利用率

在上图中,Payload transmission即真实数据部分(即绿色的部分),该绿色部分只占整个传输时间的大约12%,是很少的一个部分。真实数据部分受到较高的物理层速率影响最大,故我们这里也可以知道,网速理论上可能有300M,但是实际上可能只能到50M左右,就是大致这个原因。上图这里的12%仅仅是一个参考,实际利用率当前一般在30%~50%左右。

以下,我们大致简单分析以上其他不同的时间使用情况:

  1. Physical layer wait times,这里实际上是指802.11协议定义的接入前需要等待的一段时间,包含DIFS和backoff时间。由于无线信道只有一个,好比一个教室一样,如果有两个同学同时说话,那么老师就无法听清楚两者的说话,故在802.11协议中,就让两个同学随机等待一会再开始说话,避免两者同时说话。同时如果一个同学只要发现另外一个同学已经说话了,那么就不能说。通过这样的方式来完成避免两个同时发送避免冲突的问题,同时,在我们的叙述中也可以发现,如果人越多,那么冲突概率就越大,从而这里所需要的时间也就越长。PS:很多简述上都仅是说,由于无线信道只有一个,所以人越多,那么每一个人速率就越低这个说法,该说法不完善。在我们上面的叙述中可以发现,在无线网络中,不仅仅是平分导致速率低下这个问题存在,同时,为了避免冲突,这里的等待开销也会增加,我们假设初始的无线信道比如说是100%,N个人,那么在这个情况下,每一个人的资源不是100%/N,而可能只有40%/N,人越多,信道的总的资源反而越小,从而更加难以接入。

  2. Physical layer frame,由于这一幅图具体的背景我们没有描述,所以这个值实际上感觉是有点多了,仅仅从理论上理解一些吧。在无线传输中,我们需要知道一个帧在最下层传输的时候,是由物理层头部和上层数据包体组成的,其中上层数据包体包含了(MAC头部和数据包体)。协议中,一般物理层头部都是采用最低速率进行发送,而上层数据才是以最高速率进行发送的。换言之,很有可能出现,真实数据是以54M进行发送的,而物理层头部以6M进行发送,虽然大小不同,但是花费的时间物理层头部还会花费更多。

  3. Mac layer overhead,这里如同前面说的一样,由于MAC头部是以高速率进行发送的,所以占时较少。

  4. Retransmission frame,由于信号质量差或者我们前面所述的冲突问题,节点是需要对数据进行重传,从而也会浪费更多的时间。重传的过程和一次初始接入几乎差不多,所以这里并不加以细述。

综上所述,结论是虽然无线网络的物理层速率越来越高,但是由于802.11协议具体的工作方式影响,其肯定是无法达到最高速率的。而且在我们描述吞吐量的叙述中发现,如果物理层速率越高,那么实际数据的传输时间就会越少,从而效率反而会更低。换言之,网速的增加并没有方法得到实际提高。

故我们需要关注802.11协议中,不仅仅是理论速率的增加,同时协议的效率也在引入新的机制,进行增加,比如在802.11n中引入的帧聚合技术,前面所述,我们希望传输数据的时间越长,那么实际上网络的吞吐量就越大,从而我们只需要在一次接入过程中,尽可能的增加传输的内容,那么效果越好。下图就是引入帧聚合后的性能:

ODFM帔聚合后网速实际利用率

可以发现,效率得到了不少的提高,在802.11n,802.11ac中还有一些其他的设计,也目的是提高效率,这里也不加以细述了。

故总结是首先物理层速率是不等价与实际的传输速率的,且单单增加物理层速率对网络整体速率的提升是有限的,我们需要启用协议一些更新的特性才可以最大化物理层速率提升所带来的好处,其中大部分特性实际上是路由或者网卡默认就帮我们启用好的,故除非是对整个配置很熟,否则在家用环境下,有一些无线特性保持默认的会好一些,以免对性能造成影响。

【文章来源:智能帮】如侵犯了您的权利,请联系我们移除相关内容,谢谢!