无线网络为什么有时很卡?

一位朋友问我几个问题:为何在人员密集的地方网络信号很不好?5G手机为何长时间打游戏会很卡?
第一个问题:为何在人员密集的地方网络信号很不好?
人员特别密集的地方,比如科技馆,无线信号并不是不好,而是上网巨慢,慢到你怀疑人生。对于很多非专业的读者,会用信号差来描述上网慢这件事。
无论是4G/5G/Wi-Fi,都是共享式网络。而且是半双工的共享网络。在任何时刻,一部手机/电脑只能绑定(association)一个基站/AP。所以图片里的描述有点好笑,一部手机不可能同时连接多个AP。
当前4G/5G/Wi-Fi几乎使用同样的OFDM(正交频分复用技术)。即可以将一个20M频宽细分为N多个sub-carrier channel。每个sub-carrier channel可以分配给多个用户使用。但是这个N值是有上限的。一旦用户急剧增多,这个N个子信道就显得捉襟见肘了。
当然4G/5G/Wi-Fi可以使用多个频段,增加20M频宽到40M、80M、160M,可是所有的这些措施都是有上限的。这个上限就是网络的容量(Capacity)。
一旦用户的数量,超出网络的容量,那么用户就无法体面而优雅地上网。图片里说的比较正确的一点是,不要集中连接在某一个AP上,用户要分散到多个AP上。如果AP的SSID是不一样的,这很容易实现,但是如果SSID是相同的,用户几乎没有办法选择要连接的AP。另外,无线有一个比较容易忽视的点。无线的传输速率不是固定的,而是随着信号噪音比(SNR)的变化而变化的。无线信号和传输距离的平方成反比。如果将这两个要素联系在一起,即使无线业余读者也会得出一个结论:
当某个移动终端距离AP越来越远时,无线信号由于距离衰减而急剧下降,造成SNR也急剧下降,那么这台移动能够发送/接受的速率也会急剧下降。随着速率下降,那么占用该频道的空域时间(Air Time)就会增加。不要忘记,无线网络是一个共享频道的网络。当某台移动终端占用的空域时间增加,那么留给其它终端的时间就大大减少。当然在用户较少时,可能感受不到这种变化。但是当用户越来越多时,用户就会感受到网络巨卡。
第二个问题:5G手机为何长时间打游戏会很卡?
CPU温度过高,本身就影响CPU的计算能力,否则就没有必要给电脑安装散热装置了。长时间打游戏造成手机温度过高,手机机身内的白噪音会随着温度增高而增高。当无线信号固定时,SNR的值会随着噪音的增加而变小。手机无线模块会实时测量SNR,SNR大,手机会选择一个较高速的调制速率。相反,当SNR变小,手机会选择一个低速的调制速率。低速传输同样字节数,所占用的时间就会变大,让用户等待的时间就会变大。
运维的同学应该知道,网络设备不光要监控CPU、内存,还要监控网络设备的温度。当温度上升了,不光会造成CPU计算能力的下降,同时还会造成有线网络噪音的增加,从而影响高可靠性传输。
最后,当无线网络变慢了,可以从以下几点找可能的原因:
  • 网络里有没有802.11b客户端的连接
  • 是否多个AP使用频道重叠的信道
  • 手机终端切换AP的阈值是否太低,以至于距离AP很远,信号很弱,依然腻在AP上,而不知道切换到信号更好的AP上。
无线还有一个比较诡异的一点,一个无线帧(MPDU Frame),它的发送速率,和Preamble、PLCP Header的发送速率竟然大多数时间是不一样的。根据这个事实你能得出什么结论呢?
(0)

相关推荐