bc's club

This is Bc's club

计算机网络:自顶向下方法 - Day 12 | 无线网络与移动网络

📖 Day 12 / 15 · 《计算机网络:自顶向下方法》阅读笔记

每天 30 分钟,15 天读懂计算机网络。今天我们切断网线,聊聊无线网络和移动网络——WiFi(802.11)、蜂窝网络(4G/5G)、移动性管理和切换。

「如果说有线网络是坐地铁——路线固定、速度快;那无线网络就是骑共享单车——灵活自由,但你得自己应对红绿灯、逆行和各种意外。」

前面十一天,我们讨论的所有协议和技术都有一个隐含前提:设备用网线连着。TCP、路由、拥塞控制……它们在有线世界里跑得好好的。

但现实是,你现在大概率正连着 WiFi 刷这篇文章,或者用 5G 信号在外头看。无线网络彻底改变了网络的”最后一跳”——也是最复杂、最容易出问题的一跳。

今天我们来彻底搞懂:WiFi 怎么工作?4G/5G 有什么区别?手机从 WiFi 切到 4G 时通话为什么不断?切换(Handoff)到底在切什么?


一、无线网络的基本挑战——空气当网线,难度有多大?#

1.1 生活类比:在菜市场里打电话#

想象你在菜市场里打电话:

  • 衰减(路径损耗):你离对方越远,声音越小。无线信号也一样,距离翻倍,功率大约掉 6dB(四分之一)。
  • 干扰(Interference):旁边十个摊位同时吆喝,你听到的全是噪音。无线世界里,其他设备、微波炉、蓝牙耳机都在”吆喝”。
  • 多径效应(Multipath):你的声音经过墙壁反射,对方听到的是”你…你…你好…好”,信号也一样——经不同路径到达的副本叠加在一起,造成失真。
  • 隐藏终端(Hidden Terminal):A 和 C 都能听到 B,但 A 和 C 听不到对方。A 说话时 C 觉得”没人在说”也开始说话,B 就被两段声音同时轰炸了。

💡 关键区别:有线链路的 BER(误码率)大约是 10⁻¹²,无线链路的 BER 可能高达 10⁻³。差了 9 个数量级!这就是为什么无线网络需要这么多额外的机制来保证可靠性。

1.2 CDMA——码分多址(选读但有意思)#

在一些 3G 网络中,多个设备同时使用同一频率发送数据,靠的是 CDMA(Code Division Multiple Access)技术。

类比:想象一个国际会议大厅,所有人同时说话,但每个人用不同的语言。只要你专注于”中文”,其他语言就是背景噪音,你的大脑能过滤掉它们。CDMA 给每个设备分配一个唯一的”伪随机码”,接收端用同样的码来”解码”,把其他信号当作噪声处理。

虽然 4G/5G 已经不怎么用 CDMA 了,但理解这个概念对后续学习通信原理很有帮助。


二、WiFi(IEEE 802.11)——你家路由器的前世今生#

2.1 802.11 家族谱#

WiFi 不是一成不变的技术,它经过了几十年的演进:

标准 频段 最大速率 年份 生活中的它
802.11b 2.4GHz 11 Mbps 1999 古董路由器
802.11a 5GHz 54 Mbps 1999 企业级,家用少见
802.11g 2.4GHz 54 Mbps 2003 曾经的主流
802.11n (WiFi 4) 2.4/5GHz 600 Mbps 2009 MIMO 革命
802.11ac (WiFi 5) 5GHz 3.5 Gbps 2013 现在的标配
802.11ax (WiFi 6) 2.4/5/6GHz 9.6 Gbps 2019 OFDMA 来了
802.11be (WiFi 7) 2.4/5/6GHz 46 Gbps 2024 你换不起的那个

🔍 实战检查:打开你手机的 WiFi 设置,看看连的是什么?如果是 5GHz 频段,干扰更少但穿墙能力差;如果是 2.4GHz,穿墙好但邻居家的 WiFi 都在挤你。

2.2 802.11 体系结构——AP、BSS、ESS#

WiFi 的基本结构很简单:

1
2
3
4
5
6
7
8
9
10
11
      ┌──────────────────────────────────┐
│ 互联网(有线) │
└──────────┬───────────────────────┘

┌──────┴──────┐
│ AP(接入点)│ ← 就是你家路由器
└──────┬──────┘
│ 无线
┌─────────┬───┴───┬─────────┐
│ │ │ │
📱 手机 💻 笔记本 📺 电视 🏠 IoT设备
  • AP(Access Point):接入点,就是你家那个一直闪灯的路由器。
  • BSS(Basic Service Set):一个 AP + 若干无线设备,组成一个基本服务集。
  • ESS(Extended Service Set):多个 BSS 通过有线网络连接,形成扩展服务集。比如你公司的多个 AP 组成的大网络。

类比:AP 就像一个咖啡店的 WiFi 热点,BSS 就是你和咖啡店里其他客人连着同一个热点的集合,ESS 就是整条街上所有连锁咖啡店的热点连在一起——你在任何一家都能上网。

2.3 CSMA/CA——WiFi 的”先听后说”#

有线以太网用的是 CSMA/CD(冲突检测),但无线世界做不到”检测冲突”——因为:

  1. 发送时自己的信号太强,听不到别人
  2. 隐藏终端问题

所以 WiFi 用的是 CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)——冲突避免。

CSMA/CA 的工作流程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
设备想发数据


监听信道空闲 ≥ DIFS?──No──→ 等待退避(随机时间)
│ │
Yes ←────┘


发送数据帧


等待 ACK ──── 收到 ACK ──→ 完成!

没收到 ACK(超时)


退避时间翻倍,重试

类比:CSMA/CD 像是两个人同时开口说话,发现撞了就都停下来道歉重来。CSMA/CA 像是一个谨慎的人——开口前先听 3 秒确认安静(DIFS),说话前还先咳嗽一声提醒大家(RTS),等对方点头(CTS)了才正式开讲。

2.4 RTS/CTS——解决隐藏终端的”预约制”#

为了解决隐藏终端问题,802.11 引入了 RTS/CTS 机制:

  1. 发送方 先发一个 RTS(Request To Send)给 AP
  2. AP 回复 CTS(Clear To Send),广播给所有人
  3. 隐藏的终端听到 CTS 后,知道有人要说话了,自觉闭嘴

类比:这就像开会时,你想发言先举手(RTS),主持人说”好,你说”(CTS),其他人听到主持人的话就暂时不插嘴。虽然额外开销,但避免了”撞车”。

不过实际中,大多数家用 WiFi 并不开启 RTS/CTS——因为开销太大。现代 WiFi 更多靠 OFDMA(WiFi 6)等技术在物理层解决多路接入问题。

2.5 你的 WiFi 为什么这么慢?——实战诊断#

打开你电脑的终端:

1
2
3
4
5
# macOS 查看 WiFi 信号强度和信道
system_profiler SPAirPortDataType | grep -E "Signal|Noise|Channel|PHY Mode"

# 或者用更专业的工具
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I

你会看到类似这样的输出:

1
2
3
4
5
6
7
SSID: MyHomeWiFi
BSSID: aa:bb:cc:dd:ee:ff
CHANNEL: [6, 6]
RSSI: -55 dBm # 信号强度,越接近0越好
NOISE: -88 dBm # 底噪
SNR: 33 dB # 信噪比 = RSSI - NOISE,>25dB 算良好
TX RATE: 866 Mbps # 当前发送速率

诊断要点

  • RSSI < -70 dBm:信号弱,考虑靠近 AP 或加个中继
  • 信道拥挤:如果你和邻居都在用信道 6,互相干扰。2.4GHz 只有 1/6/11 三个不重叠信道
  • SNR < 20 dB:信噪比太低,速率会大幅下降

🎯 实用建议:5GHz 频段信道多、干扰少,优先连 5GHz。只有穿墙需求大时才用 2.4GHz。WiFi 6 的 6GHz 频段更是”私家高速公路”,如果你设备支持的话。


三、蜂窝网络——4G LTE 和 5G 到底强在哪?#

3.1 蜂窝架构:为什么叫”蜂窝”?#

把一块区域划分成很多六边形小区,每个小区有一个基站(Base Station),相邻小区用不同频率避免干扰。多个六边形拼起来就像蜂巢——这就是”蜂窝”名字的由来。

1
2
3
4
5
6
7
┌───┬───┬───┬───┐
│ A │ B │ C │ A │ 字母代表频率组
├───┼───┼───┼───┤ 相邻小区不同频率
│ B │ C │ A │ B │ 不相邻可以复用
├───┼───┼───┼───┤ → 频率复用!
│ C │ A │ B │ C │
└───┴───┴───┴───┘

核心组件

  • BS(Base Station):基站,就是路边的信号塔
  • MSC(Mobile Switching Center):移动交换中心,管理一堆基站
  • HLR/VLR:归属位置寄存器/访问位置寄存器,记录你在哪个小区

3.2 从 3G 到 4G:从”打电话”到”跑数据”#

特性 3G 4G LTE 5G
核心业务 语音+数据 全 IP 数据 万物互联
峰值速率 ~2 Mbps ~100 Mbps ~10-20 Gbps
架构 电路交换+分组交换 全 IP 全 IP+网络切片
接入技术 CDMA OFDMA OFDMA+mmWave

4G LTE 的革命性在于:一切皆 IP。以前打电话走电路交换(专门开一条线路),4G 之后语音也变成了 VoLTE(Voice over LTE)——本质上跟微信语音通话一样,都是 IP 数据包。

📞 生活体验:你有没有注意到,有些手机打电话时 4G 信号会变成 3G?那就是因为运营商没开 VoLTE,打电话回落到 3G 的电路交换网络。现在大部分运营商都支持 VoLTE 了,打电话时 4G 不掉。

3.3 5G 的”三板斧”#

5G 相比 4G,主要提升了三个方面(ITU 定义的三种场景):

  1. eMBB(增强移动宽带):速度更快。下载一部 4K 电影从 4G 的几分钟变成几秒。
  2. URLLC(超可靠低延迟):延迟从 4G 的 30-50ms 降到 1-10ms。自动驾驶、远程手术就靠这个。
  3. mMTC(海量机器通信):每平方公里 100 万设备连接。IoT 的终极梦想。

类比:4G 像是高速公路——快但单向。5G 像是立体交通系统——有高速公路(eMBB)、有专用紧急车道(URLLC)、还有毛细血管般的自行车道(mMTC)。

3.4 5G 的频段:Sub-6 和 mmWave#

  • Sub-6GHz(亚 6GHz):和 4G 差不多的频率范围,但用了更大的带宽和更先进的天线技术。穿墙还行,覆盖较广。
  • mmWave(毫米波,24-100GHz):速度爆炸快(Gbps 级),但穿墙能力约等于零。你在 mmWave 基站旁边就是飞,走远了就断。

类比:Sub-6 像是手电筒——照得远但不太亮。mmWave 像是激光——极其亮但稍微挡一下就没了。

⚠️ 现实:大部分国家的 5G 部署以 Sub-6 为主,mmWave 只在体育场、CBD 等密集区域部署。所以你的 5G 手机大多数时候跑的其实是”加强版 4G 速率”——别太失望。


四、移动性管理——你走着走着,IP 怎么变?#

4.1 问题:移动设备的 IP 地址困境#

TCP 连接是靠 (源IP, 源端口, 目的IP, 目的端口) 四元组维持的。如果你的手机从一个基站移动到另一个基站,IP 地址变了——恭喜,TCP 连接断了,视频卡了,游戏掉线了。

这就是移动性管理的核心挑战:如何在设备移动时保持上层连接不断

4.2 间接路由——归属网络的”转寄邮件”方案#

移动 IP(Mobile IP)的经典方案是间接路由

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
┌─────────────────────────┐
│ 对应节点(CN) │
│ 你在跟谁通信 │
└────────┬────────────────┘
│ ① 发给归属地址

┌─────────────────────────┐
│ 归属网络(HN) │
│ 你"户口"所在地 │
│ HA:归属代理 │
└────────┬────────────────┘
│ ② 隧道转发到转交地址

┌─────────────────────────┐
│ 拜访网络(FN) │
│ 你现在所在的地方 │
│ FA:外地代理 │
└────────┬────────────────┘
│ ③ 本地交付

📱 你的手机

核心概念

  • 永久地址(Home Address):你的”户口地址”,永远不变
  • 转交地址(Care-of Address):你当前的”临时住址”
  • 归属代理(Home Agent, HA):帮你转发数据的”邮政局”
  • 外地代理(Foreign Agent, FA):你到了外地找的”当地邮局”

类比:就像你搬家了,但你的所有信件还是寄到老地址(户口),然后老地址那边的邮局(HA)帮你转寄到新地址(转交地址)。虽然绕了远路,但发信的人完全不用知道你搬哪去了。

三角形路由问题:数据要从 CN → HA → FA → 手机,即使 CN 和手机在同一个房间旁边,也得绕一大圈到归属网络再回来。这就是”三角形路由”——效率不高,但简单可行。

4.3 直接路由——砍掉三角#

为了解决三角形路由的效率问题,可以采用直接路由

  1. CN 先问 HA:”这家伙现在在哪?”
  2. HA 回答:”他在 FA 那儿,转交地址是 XXX”
  3. CN 直接把数据发给 FA,再由 FA 转交给手机

类比:你给同事寄快递,先问前台”张三现在坐哪?”,前台告诉你座位号后,你直接走过去给他。不用每次都经过前台转交了。

代价是:CN 需要额外的逻辑来查询和管理移动设备的当前位置。


五、切换(Handoff)——从 WiFi 到 4G 你为什么不断线?#

5.1 什么是切换?#

当移动设备从一个 AP/基站移动到另一个 AP/基站时,需要将正在进行的连接从一个接入点转移到另一个——这就是切换(Handoff),也叫 Handover

类比:接力赛跑中,接力棒从一个人手里交到另一个人手里。棒不能掉,人不能停。

5.2 802.11 WiFi 切换三阶段#

你拿着手机从客厅走到卧室,从客厅 AP 切换到卧室 AP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
阶段 1:发现(Discovery)
├── 手机扫描周围 AP 的 Beacon 帧
├── 或者主动发 Probe Request
└── 列出所有候选 AP 及其信号强度

阶段 2:认证(Authentication)
├── 手机向新 AP 发 Authentication Request
├── 新 AP 验证身份(WPA2/WPA3 握手)
└── 认证通过

阶段 3:重关联(Reassociation)
├── 手机向新 AP 发 Reassociation Request
├── 新 AP 与旧 AP 之间通过分布式系统协调
├── 旧 AP 把缓存的帧转发给新 AP
└── 手机正式连上新 AP,旧连接断开

切换期间的延迟

  • 扫描延迟:30-1000ms(取决于扫描多少信道)
  • 认证延迟:50-200ms
  • 重关联延迟:50-200ms
  • 总延迟:通常 100-1500ms

🎮 实战体验:你打王者时从客厅走到卧室,如果 WiFi 切换花了 500ms——你的人物原地卡了半秒然后瞬移,队友骂你送人头。这就是为什么很多人打团前先找个信号好的地方蹲着。

5.3 蜂窝网络切换——软切换 vs 硬切换#

蜂窝网络中切换更关键,因为你可能坐在高铁上以 300km/h 狂飙,基站一个接一个地换。

硬切换(Hard Handoff)

  • “先断后连”——先断开旧基站,再连接新基站
  • 切换瞬间有短暂中断(几十毫秒)
  • 优点:简单,不浪费频谱
  • 旧式系统常用

软切换(Soft Handoff)

  • “先连后断”——先连上新基站,再断开旧的
  • 切换期间同时和两个基站通信
  • 优点:零中断,通话不断
  • 代价:占用双倍资源
  • CDMA 系统的看家本领

类比

  • 硬切换 = 换工作:先辞职,再入职新公司。中间有”空窗期”
  • 软切换 = 跳槽达人:先拿到新 offer,再提离职。无缝衔接

5.4 你的手机在切换时到底发生了什么?#

以你从 WiFi 切到 4G 为例(比如走出家门):

  1. 手机检测到 WiFi 信号持续减弱(RSSI 下降)
  2. WiFi 信号低于阈值,手机开始评估替代网络
  3. 发现 4G 信号良好
  4. 操作系统触发”WiFi → 蜂窝”切换
  5. 如果用 MPTCP(Multipath TCP):新的 TCP 子流通过 4G 建立,旧子流慢慢退场,应用层完全感知不到
  6. 如果用普通 TCP:旧连接断开,应用需要重新建立连接(你会看到”网络连接中断,正在重连…”)

💡 新技术:MPTCP(多路径 TCP)允许一个 TCP 连接同时走多条路径(WiFi + 4G),切换时自动把流量从一条路挪到另一条。Siri 就是用 MPTCP 来保证响应速度的——这也是为什么你在 WiFi 和 4G 之间切换时 Siri 几乎不卡。


六、无线网络的安全——为什么公共 WiFi 很危险?#

6.1 WEP → WPA → WPA2 → WPA3 演进#

协议 加密算法 安全性 破解难度
WEP RC4(40/104位) ❌ 极差 几秒钟
WPA TKIP + RC4 ⚠️ 一般 几小时
WPA2 AES-CCMP ✅ 良好 理论可行但很难
WPA3 AES-GCMP + SAE ✅ 很好 目前无法破解

WPA3 的改进

  • SAE(Simultaneous Authentication of Equals):替代 WPA2 的 PSK(预共享密钥),即使密码简单也能抵抗离线暴力破解
  • 前向保密:即使密码泄露,之前捕获的流量也无法解密
  • 192 位安全套件:企业级更安全

🔐 实战建议:你家路由器还在用 WEP 或 WPA?赶紧改成 WPA2 或 WPA3!WEP 加密的 WiFi 密码,别人用手机 App 几秒就能破解。

6.2 公共 WiFi 的风险#

在咖啡店连免费 WiFi 时:

  • 同一网络的其他人可以抓到你的包(开放网络无加密)
  • 可能遇到”恶意 AP”——黑客伪造一个名叫”Starbucks_Free_WiFi”的热点
  • 你的 HTTP 请求(明文)一览无余

防护措施

  • ✅ 使用 HTTPS 网站(HTTP + TLS 加密)
  • ✅ 开启 VPN
  • ✅ 避免在公共 WiFi 上登录银行
  • ❌ 不要关闭防火墙

七、实战:分析你家的无线网络#

7.1 绘制你的 WiFi 覆盖图#

用以下方法了解你家的 WiFi 覆盖情况:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# macOS:快速查看当前 WiFi 信息
wdutil info # 需要 macOS Sonoma+

# 或者用 airport 命令
airport -I

# 扫描周围所有 WiFi 网络
airport -s

# 输出示例(简化的):
# SSID BSSID RSSI CHANNEL HT CC SECURITY
# MyHomeWiFi aa:bb:cc:dd:ee:ff -55 6,+1 Y -- WPA2(PSK/AES/AES)
# Neighbor_1 11:22:33:44:55:66 -72 11 Y -- WPA2(PSK/AES/AES)
# Neighbor_2 22:33:44:55:66:77 -80 1 Y -- WPA2(PSK/AES/AES)

分析要点

  1. 你的 RSSI 是多少? -55dBm 以上算优秀,-70dBm 以下要考虑优化
  2. 你和邻居的信道冲突? 都在信道 6 的话,互相干扰
  3. 有多少个邻居网络? 密集住宅区 2.4GHz 几乎不可用,必须上 5GHz

7.2 优化建议#

  • 信道选择:用 WiFi 分析 App 扫描,选一个最少人用的信道(2.4GHz 选 1/6/11 之一)
  • 频段策略:5GHz 主力覆盖常用区域,2.4GHz 作为穿墙备用
  • AP 位置:放在房屋中心,远离微波炉、金属柜、鱼缸(水吸收电磁波)
  • Mesh 组网:大户型考虑 Mesh 路由器,多个节点自动切换比单个强力路由器靠谱

关键知识点回顾#

📌 WiFi(802.11)#

  • 802.11 使用 CSMA/CA(冲突避免),不是 CSMA/CD(冲突检测)
  • RTS/CTS 机制解决隐藏终端问题,但实际中很少开启
  • WiFi 6 引入 OFDMA,将信道分成多个子载波,多设备并行传输
  • WiFi 7 支持 MLO(多链路操作),可同时使用 2.4/5/6GHz

📌 蜂窝网络#

  • 4G LTE = 全 IP 架构,语音变数据(VoLTE)
  • 5G 三大场景:eMBB(高带宽)、URLLC(低延迟)、mMTC(海量连接)
  • 蜂窝小区用频率复用提高频谱利用率

📌 移动性管理#

  • 间接路由:CN → HA → FA → 手机(简单但效率低,三角形路由)
  • 直接路由:CN 先问 HA 获取位置,然后直接发给 FA(高效但复杂)
  • 关键概念:永久地址 vs 转交地址

📌 切换(Handoff)#

  • 硬切换:先断后连(简单,有中断)
  • 软切换:先连后断(无缝,双倍资源)
  • WiFi 切换三阶段:发现 → 认证 → 重关联
  • MPTCP 可实现 WiFi/4G 之间无缝切换

📌 无线安全#

  • WPA3 是当前最佳选择,用 SAE 替代 PSK
  • 公共 WiFi 风险高,务必用 HTTPS + VPN

Day 13 预告:多媒体网络——流媒体、CDN、视频会议#

明天我们进入多媒体网络的世界:

  • 🎬 流媒体:Netflix/B站是怎么做到点开就播的?DASH 协议是什么?
  • 🌐 CDN:内容分发网络如何让你的视频不卡?边缘服务器是怎么部署的?
  • 📹 视频会议:Zoom/腾讯会议背后的技术——WebRTC、UDP、自适应码率
  • 🔊 语音编码:为什么电话音质和真人不一样?

「如果说前十二天我们学的是网络的骨架,Day 13 就是给骨架加上血肉——毕竟,现在互联网上 80% 的流量都是视频。」

下期见! 🎥🍿


📚 系列导航:这是《计算机网络:自顶向下方法》15 天阅读笔记的第 12 天。关注本博客,一路通关计网。