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

无线的核心权衡是「频率换距离」:频率越高,带宽越大、传得越近。 自由空间损耗公式里频率和距离都是平方项,所以各有一个 20 dB 的斜率。

📝 本节和前面几节的关系

3.3 讲完了有线,3.4 进入无线。 这一节先把「有哪些无线技术、它们各自站在权衡线的哪一点」铺开。

一、一条权衡线

所有无线技术都在同一条线上选位置:

技术 频段 距离 速率
蓝牙 2.4 GHz 10 m 1~3 Mbps
WiFi 2.4/5 GHz 50~100 m 百 Mbps 级
ZigBee 2.4 GHz 10~100 m 250 kbps
WiMAX 2~11 GHz 几公里 几十 Mbps
蜂窝(4G/5G) 0.7~3.5 GHz 几公里 百 Mbps 级

第一行和第四行用的是同一个频段,距离差三个数量级: 所以「频率决定距离」这句话要加个前提——「同样的发射功率和天线」。 WiMAX 的基站有几十瓦功率和高增益天线,蓝牙只有毫瓦级。 第二行和第三行同为 2.4 GHz、距离相近,速率差四百倍: 因为 ZigBee 要的是「一颗电池用两年」,WiFi 要的是「看视频不卡」。 所以「同一频段」不代表「同一类技术」——设计目标不同,取舍就完全不同。

二、损耗怎么算

自由空间损耗公式:

损耗(dB) = 20·lg(d) + 20·lg(f) − 147.55(d 用米、f 用赫兹)

频段 1 米 10 米 100 米
2.4 GHz 40.1 dB 60.1 dB 80.1 dB
5 GHz 46.4 dB 66.4 dB 86.4 dB
60 GHz 68.0 dB 88.0 dB 108.0 dB

每一行内,距离翻 10 倍损耗加 20 dB;同一列内,频率翻 10 倍损耗也加 20 dB。 两个 20 都来自公式里的平方项——所以「翻十倍」这个动作在这个公式里永远是「加 20 dB」。 第三行那个 60 GHz 是毫米波:同样功率下只能传几十米,还怕一张纸挡住。 但它换来的是巨大的可用带宽(57~71 GHz 有好几个 GHz 连续频段)。 所以 60 GHz 只做「同一房间内的高速短距」,比如无线投屏。

三、公式之外的两个现实

真实环境比公式残酷得多:

因素 典型衰减 说明
穿一堵承重墙 10~20 dB 等于把距离除以 3~10
人体遮挡 3~10 dB 所以「站在路由器前面」真的有用
同频干扰 无法预算 邻居的路由器不在公式里

第一行是最容易被低估的:20 dB 折回距离就是「除以 10」, 所以「标称 100 米」的路由器,隔一堵墙就只剩十几米。 这不是虚标,是「标称值按自由空间算」。 第三行是「算不出来的那部分」:公式假设「只有你和基站」,真实环境里还有几十个邻居。 所以无线网络的性能,「住在哪里」比「买什么设备」影响更大。 这也是为什么「同款路由器在两家表现完全不同」。 所以看无线指标要养成一个习惯:先问「这个数是在什么环境下测的」, 再看数值——「实验室 1000 Mbps」和「你家客厅 1000 Mbps」是两回事。

四、动手 Demo:无线通信的种类,本质是「频率换距离」

套自由空间损耗公式,算三个频段在 1/10/100 米上的损耗。 再按 100 dB 预算反推「理论能传多远」。

import math

def fspl(f_mhz, d_m):
    return 20 * math.log10(d_m) + 20 * math.log10(f_mhz * 1e6) - 147.55

for name, f in (('2.4 GHz', 2400), ('5 GHz', 5000), ('60 GHz', 60000)):
    print('%-9s 1m %.1f dB  10m %.1f dB  100m %.1f dB'
          % (name, fspl(f, 1), fspl(f, 10), fspl(f, 100)))

for name, f in (('2.4 GHz', 2400), ('5 GHz', 5000), ('60 GHz', 60000)):
    d = 10 ** ((100.0 - 20 * math.log10(f * 1e6) + 147.55) / 20.0)
    print('%-9s 100 dB 预算下理论 %.0f 米' % (name, d))

实跑输出:

--------------------------------------------------------------------
无线通信的种类,本质是「频率换距离」
--------------------------------------------------------------------
**无线没有「线」这个约束,换成了另一个约束:频率越高,传得越近。**这条规律可以算——
自由空间损耗的公式里,频率是平方项,距离也是平方项。

公式:`损耗 = 20·lg(d) + 20·lg(f) − 147.55`(d 用米,f 用赫兹,结果单位 dB)。

  频段                      1 米损耗 dB     10 米损耗 dB     100 米损耗 dB
  -------------------------------------------------------------------------
  2.4 GHz(WiFi/蓝牙)     40.1            60.1             80.1
  5 GHz(WiFi)             46.4            66.4             86.4
  60 GHz(毫米波)          68.0            88.0             108.0

**同一频段内,距离每翻 10 倍,损耗多 20 dB**;**同一距离上,频率每翻 10 倍,损耗也多 20 dB。**
**这两个 20 都来自公式里的平方项,不是巧合。**
**把这张表翻译成「能传多远」**:
  频段        同样预算下的理论距离
  ---------------------------------
  2.4 GHz     994 米
  5 GHz       477 米
  60 GHz      40 米

**第三行那个数字小得离谱,这就是毫米波的处境**:**同样功率下只能传几十米,还怕一张纸挡住。**
**所以 60 GHz 只能做「同一房间内的高速短距」**(比如无线投屏),
**它换来的是巨大的带宽——频率高,可用频段就宽。**
**但上面这两行数字要打个大折扣再看**:
**算的是「自由空间」——没有墙、没有家具、没有邻居的理想环境。**
**真实室内每穿过一堵承重墙,信号要掉 10~20 dB。**
**20 dB 折回距离,等于把距离再除以 10。**
**所以 2.4 GHz 那个九百多米,落到家里就是几十米**——
**不是算法错了,是「自由空间」这个前提不成立。**
**这就是无线通信的第一条权衡:频率越高,带宽越大、距离越短**。
**下面几节的 WiFi、蓝牙、WiMAX、ZigBee,全部是在这条权衡线上选不同的点。**

表里每一行都是「加 20 dB 距离翻十倍」:2.4 GHz 从 1 米到 100 米,损耗从 40.1 到 80.1。 频率那一栏也一样:2.4 到 60 GHz 是 25 倍,损耗多了 28 dB。 第二张表的「994 米」看着离谱,但它是照公式算出来的:自由空间、100 dB 预算、没有墙。 真实室内每穿一堵墙掉 10~20 dB,20 dB 折回距离就是除以 10, 所以实际是几十米——不是算错了,是「自由空间」这个前提不成立。 60 GHz 只有 40 米,这个数决定了它的用途:它只能做「同一房间内」的高速链路, 比如 4K 无线投屏——距离短没关系,反正就在一个屋子里。 而它换来的带宽是 2.4 GHz 的几十倍。

30 秒实验

  1. 把预算改成 110 dB,看 2.4 GHz 的理论距离变成多少。
  2. 算一下:60 GHz 的损耗比 2.4 GHz 多多少 dB?折回距离是几倍?
  3. 想一下:为什么 5 GHz 的穿墙能力比 2.4 GHz 差?

常见误区

  1. 以为「频率越高传得越远」。 正好相反,频率越高损耗越大、距离越短。
  2. 以为「标称 100 米」是室内实测值。 是自由空间的理论值,穿墙要打折。
  3. 以为「同频段的技术差不多」。 蓝牙和 WiFi 都在 2.4 GHz,但设计目标完全不同。
自测三问(点开对答案) 1. 无线通信的核心权衡是什么? —— **频率换距离**:频率越高,可用带宽越大,但传得越近。 2. 距离翻十倍,损耗增加多少?为什么? —— **20 dB。** 因为公式里距离是对数平方项,lg(10d) − lg(d) = 1,乘 20 就是 20 dB。 3. 为什么标称 100 米的路由器,隔一堵墙就只剩十几米? —— **因为标称值按自由空间算。** 穿一堵承重墙要掉 10~20 dB,20 dB 折回距离就是除以 10。

下一节具体看 WiFi:它和以太网的规矩差在哪。

相关笔记