📚 第三章 数据链路
📄 一句话概括

无线最怕的不是墙,是邻居——同信道的设备会一起排队。 三类干扰要分清:同频(排队)、邻频(误码)、非 WiFi(突发丢包)。

📝 本节和前面几节的关系

3.4.5 讲的是「怎么更快」,这一节讲「为什么实际没那么快」。 这一节的内容在排障时最有用,因为它对应的是「信号满格但很慢」。

一、三类干扰

表现完全不同,处理方式也不同:

类型 来源 表现
同频干扰 另一个 AP 用同一信道 排队,吞吐掉
邻频干扰 相邻信道,部分重叠 误码率上升
非 WiFi 干扰 微波炉、蓝牙、无线鼠标 突发性丢包

第一行最要命,因为它不报错:信号强度满格、连接正常、就是慢。 用户会以为是宽带问题,其实是空口在排队。 判断办法很简单:换个信道再测,如果速度立刻变好,就是同频干扰。 第三行那个微波炉不是玩笑: 2.4 GHz 是国际通用的「工业科学医疗」频段,微波炉正好工作在 2.45 GHz。 它一开机,附近的 2.4 GHz WiFi 就会抖。 同样的事还有:无线摄像头、无绳电话、部分 LED 灯。

二、为什么「信号满格还慢」

因为「信号强度」和「能跑多快」是两件事:

指标 说明什么 不说明什么
信号强度(RSSI) 离 AP 多远、穿了几堵墙 不说明空口忙不忙
信噪比(SNR) 你的信号比噪声强多少 也不说明排队情况
空口利用率 信道上有多忙 这才是吞吐的真凶

第三行那个「空口利用率」在普通路由器里看不到,但它是解释「为什么慢」的唯一正确指标。 一台 AP 的空口利用率到 60% 以上,体验就会明显变差——因为剩下的时间要留给「竞争与退避」。 所以「加一个 AP」不总能解决问题:如果新 AP 用了同一个信道,等于往同一条队里又塞了一个人。 正确的做法是「换信道」或者「换 5 GHz」,而不是「加设备」。

三、工程上的四条建议

按重要性排:

做法 效果 代价
优先用 5 GHz 信道多、干扰少 穿墙差
2.4 GHz 只用 1/6/11 避免自相残杀 要手工配
AP 功率别开最大 减少「都听见但都慢」 覆盖略小
信道错开、位置错开 降低同频概率 要现场勘测

第三条最反直觉:把 AP 功率开到最大,会让「远处的设备也勉强连上」, 而「勉强连上」的设备会用最低速率发数据,占线时间最长。 结果是一个远设备拖慢整个网络。 所以「功率调小一点、让弱设备干脆连不上」反而更好。 第四条是「规划」而不是「买设备」:同样的设备,信道错开和不错开,体验差一倍。 这也是为什么「酒店 WiFi 差」常常不是设备差,是「几十个 AP 全挤在信道 6」。 最后一条必须说清:无线没有「稳定」这回事,只有「概率上够用」。 所以关键业务(如产线控制)不应该依赖 WiFi——这也是为什么工业现场还在用有线,或者专用频段。

四、动手 Demo:无线 LAN 最怕的不是墙,是邻居

算「几个 AP 挤在一个信道」时每个能分到多少,再分清三类干扰。 第一张表说明「同信道就是一起排队」。

for n in (1, 2, 3, 4, 8):
    print('%d 个同信道 AP:每个分到标称的 %.0f%%,单台 300M 实得 %.0f Mbps'
          % (n, 100.0 / n, 300.0 / n))

for name, src, act in (('同频', '同一信道', '排队,吞吐掉'),
                       ('邻频', '相邻信道重叠', '误码率上升'),
                       ('非 WiFi', '微波炉、蓝牙', '突发性丢包')):
    print('%-8s 来源 %-14s 表现 %s' % (name, src, act))

实跑输出:

--------------------------------------------------------------------
无线 LAN 最怕的不是墙,是邻居
--------------------------------------------------------------------
**无线是共享介质,但共享的范围不是「一根线」,而是「一片空口」。**
**只要两台设备用同一个信道、彼此能听见,它们就得排队。**下面把「几个 AP 挤在一个信道」的账算清楚。

  同信道 AP 数     每个分到标称的百分比     若单台 300 Mbps 实得
  ---------------------------------------------------------------
  1                100.00                   300.00
  2                50.00                    150.00
  3                33.33                    100.00
  4                25.00                    75.00
  8                12.50                    37.50

**第一行是一台的理想值,第二行开始就腰斩**:
**因为 CSMA/CA 的「先听后说」是跨设备的**——
**你的路由器和邻居的路由器在空口上是平等的,谁也不能插队。**
**这就解释了三个日常现象**:**一是「晚上八点网速掉一半」**(整栋楼同时在线);
**二是「换个信道就好了」**(换到了没人用的那个);
**三是「买更贵的路由器没用」**(天线再多,也得排队)。
**除了同频干扰,还有两类干扰要分清**:
  类型             来源                       表现
  -------------------------------------------------------------
  **同频干扰**     同信道,彼此能听见         **排队,吞吐掉**
  邻频干扰         相邻信道,部分重叠         **误码率上升**
  非 WiFi 干扰     微波炉、蓝牙、无线鼠标     **突发性丢包**

**第一行最要命,因为它不报错**:
**信号强度满格、连接正常、就是慢**——**用户会以为是宽带问题,其实是空口在排队。**
**判断办法很简单:换个信道再测,如果速度立刻变好,就是同频干扰。**
**第三行那个微波炉不是玩笑**:
**2.4 GHz 是国际通用的「工业科学医疗」频段,微波炉正好工作在 2.45 GHz**,
**它一开机,附近的 2.4 GHz WiFi 就会抖。**
**这也是 5 GHz 的另一个好处:那个频段上没什么家用电器。**

一台 AP 是理想值,两台开始就腰斩: 因为 CSMA/CA 的「先听后说」是跨设备的—— 你的路由器和邻居的路由器在空口上是平等的,谁也不能插队。 「8 个 AP 同信道,每个只剩 12.5%」这个数,解释了三个日常现象: 一是「晚上八点网速掉一半」,整栋楼同时在线; 二是「换个信道就好了」,换到了没人用的那个; 三是「买更贵的路由器没用」,天线再多也得排队。 注意这张表是「理想均分」:实际还会更差,因为「谁抢到算谁的」, 离得近的设备更容易抢到,远的设备会饿死。 这个现象叫「捕获效应」,它解释了「为什么同一个 WiFi,靠窗的工位比靠里的快」。

30 秒实验

  1. 算一下:如果 4 个 AP 分在信道 1/6/11/1,信道 1 上实际有几个在抢?
  2. 想一下:为什么「把 AP 功率开到最大」反而可能让网络更慢?
  3. 用手机装一个 WiFi 分析 App,看看你家周围有多少个 AP 挤在信道 6。

常见误区

  1. 以为「信号满格就不会慢」。 空口忙才是慢的原因,信号强度只说明距离。
  2. 以为「加 AP 就能扩容」。 同信道加 AP 等于加人排队,要先错开信道。
  3. 以为「功率开到最大覆盖最好」。 会拖慢全网,因为弱设备会用最低速率长时间占线。
自测三问(点开对答案) 1. 三类干扰各有什么表现? —— **同频:排队、吞吐掉;邻频:误码率上升;非 WiFi:突发性丢包。**同频最隐蔽,因为它不报错。 2. 为什么「信号满格但很慢」? —— **信号强度只说明距离,不说明空口忙不忙。**真正的指标是「空口利用率」。 3. 为什么「AP 功率开最大」可能更糟? —— **弱设备会被勉强连上,而它们用最低速率发数据、占线最久**,结果拖慢整个网络。

下一节换个话题:蓝牙为什么不抢信道,它跳着走。

相关笔记