《计算机网络-自顶向下方法》7.5 移动性管理原理 读书笔记
目录
导语
大家好呀~前面几节我们学习了无线链路和WiFi/蜂窝网络的接入技术。这一节我们从网络层的视角来看一个核心问题:当一个移动设备(手机、笔记本)从一个网络移动到另一个网络时,因特网怎么知道它现在在哪?数据包怎么路由到它的当前位置?
这个问题看似简单,但实际上很有挑战性。因为IP地址既是身份标识(你是谁)又是位置标识(你在哪)——当设备移动时,位置变了,但IP地址如果不变,数据包就会路由到旧位置;如果IP地址变了,正在进行的TCP连接就会断开。移动性管理就是要解决这个矛盾。准备好了吗?让我们深入移动性的世界~

一、7.5.1 设备移动性:网络层视角
1. 移动性的定义
从网络层的视角,**移动性(Mobility)**是指设备在不同网络之间移动时,保持网络连接和正在进行的通信不中断的能力。
移动性有不同的层次:
- 链路层移动性:在同一个IP子网内,从一个AP/基站切换到另一个(如WiFi同子网切换、蜂窝小区切换)。IP地址不变,网络层不需要感知。
- 网络层移动性:在不同IP子网之间移动(如从家里WiFi到公司WiFi,从中国到日本漫游)。IP地址可能变化,需要网络层移动性管理。
- 完全移动性:设备在全球任意网络间移动,始终保持同一个IP地址和连接不中断(这是移动IP的目标)。
2. 移动性带来的挑战
移动设备的核心挑战是IP地址的双重角色:
- IP地址既是身份标识(标识设备本身,TCP连接用IP+端口标识端点)
- 又是位置标识(路由系统用IP地址决定数据包转发到哪里)
当设备移动时:
- 如果IP地址不变 → 路由系统不知道设备的新位置,数据包会发到旧网络
- 如果IP地址变了 → TCP连接的端点变了,连接断开(需要重新建立)
移动性管理的目标就是:让设备在移动时保持同一个IP地址(身份不变),同时数据包能路由到新位置(位置可追踪)。
3. 移动性的基本要素
一个完整的移动性管理系统需要以下要素:
- 位置注册(Location Registration):移动设备到了新网络后,通知网络"我现在在这里"
- 位置查询(Location Query):通信对端要给移动设备发数据时,查询它当前的位置
- 数据转发(Data Forwarding):把数据包从旧位置转发到新位置,或者直接路由到新位置
- 切换(Handover):设备从一个接入点切换到另一个时,保持连接不中断
二、7.5.2 归属网络和在被访网络漫游
1. 归属网络和被访网络

移动性管理的核心概念是归属网络(Home Network)和被访网络(Visited Network):
- 归属网络(Home Network):移动设备的"永久家",设备的永久IP地址(归属地址,home address)在这里分配。归属网络中有一个归属代理(Home Agent,HA),负责跟踪移动设备的当前位置。
- 被访网络(Visited Network):移动设备当前所在的外部网络。设备在这里获得一个临时地址(转交地址,care-of address,CoA)。被访网络中可能有一个外部代理(Foreign Agent,FA),协助移动设备注册和接收数据。
通俗类比:归属网络就像你的老家,你的永久住址(home address)在那里;被访网络就像你出差住的酒店,你在酒店有一个临时房间号(care-of address)。老家的邮局(home agent)知道你现在住哪个酒店,会把寄到你老家的信转寄到酒店。
2. 归属地址和转交地址
- 归属地址(Home Address):移动设备的永久IP地址,在归属网络分配。通信对端始终用这个地址和移动设备通信,不管设备在哪。
- 转交地址(Care-of Address,CoA):移动设备在被访网络获得的临时IP地址,标识设备当前的位置。归属代理用这个地址把数据转发给移动设备。
关键:通信对端只知道移动设备的归属地址,不知道也不需要知道转交地址。转交地址只在归属代理和移动设备之间使用。
3. 注册过程
当移动设备到达被访网络时:
- 设备通过DHCP或手动配置获得转交地址(CoA)
- 设备向归属代理发送注册请求(Registration Request),告知自己当前的CoA
- 归属代理回复注册应答(Registration Reply),确认注册
- 归属代理更新绑定缓存(binding cache):home address → care-of address
- 注册有生命周期,到期前需要重新注册(防止设备关机后绑定永久有效)
三、7.5.3 去往/来自移动设备的直接和间接路由
1. 间接路由(Indirect Routing)

间接路由是最简单的移动性路由方案,也叫"三角路由"(triangle routing):
- 通信对端(Correspondent Node,CN)把数据包发到移动设备的归属地址
- 数据包到达归属网络,被**归属代理(HA)**截获
- 归属代理查绑定缓存,找到移动设备当前的CoA
- 归属代理把数据包隧道封装(tunneling)——在原始IP包外面再加一个IP头,目的地址是CoA
- 隧道数据包路由到被访网络,到达移动设备(或外部代理)
- 移动设备解封装,得到原始数据包
移动设备给通信对端回包时,直接用归属地址作为源地址,直接发给对端(不需要经过归属代理)。
间接路由的问题:三角路由——CN到HA到MN,而不是CN直接到MN。如果CN在亚洲、HA在欧洲、MN在美洲,数据包要绕一大圈,延迟高、浪费带宽。
2. 直接路由(Direct Routing)

为了解决三角路由问题,直接路由让通信对端直接把数据发给移动设备的当前位置:
- 通信对端要给移动设备发数据时,先向归属代理查询移动设备当前的CoA(位置查询)
- 归属代理返回CoA
- 通信对端把数据包隧道封装,直接发到CoA
- 移动设备解封装,得到原始数据包
直接路由避免了三角路由,数据包走最短路径。但代价是:
- 通信对端需要支持移动性协议(能查询位置、能隧道封装)
- 归属代理需要处理位置查询请求
- 如果移动设备在通信过程中又移动了,需要通知通信对端更新CoA(绑定更新,Binding Update)
3. 间接路由 vs 直接路由对比

| 对比项 | 间接路由 | 直接路由 |
|---|---|---|
| 路径 | CN→HA→MN(三角路由) | CN→MN(直接) |
| 延迟 | 高(绕路) | 低(最短路径) |
| 带宽效率 | 低(HA转发浪费) | 高 |
| 对端要求 | 不需要支持移动性 | 需要支持位置查询和隧道 |
| HA负载 | 高(所有数据经过HA) | 低(只处理信令) |
| 切换复杂度 | 低(只更新HA绑定) | 高(需要通知CN更新) |
| 典型应用 | 移动IPv4(MIPv4) | 移动IPv6(MIPv6)、蜂窝网络 |
4. 平滑切换
不管用哪种路由,移动设备在切换网络时都需要保证数据不丢失。平滑切换的方法:
- 缓存和转发:旧网络的代理在切换期间缓存发往移动设备的数据包,切换完成后转发到新位置
- 双连接:移动设备在断开旧连接前先建立新连接,同时连两个网络(make-before-break)
- 预注册:移动设备在到达新网络前就预注册,减少切换中断时间
本节核心总结(必看)
这一节学习了移动性管理原理,核心要点:
一、网络层视角的移动性
- IP地址双重角色:身份标识 + 位置标识
- 移动时IP不变→路由不到新位置;IP变→TCP连接断开
- 移动性管理目标:保持身份不变,同时数据能路由到新位置
- 基本要素:位置注册、位置查询、数据转发、切换
二、归属网络和被访网络
- 归属网络:设备的"家",分配永久归属地址,有归属代理HA
- 被访网络:设备当前所在网络,分配临时转交地址CoA
- 归属地址(home address):永久IP,对端用这个通信
- 转交地址(CoA):临时IP,标识当前位置
- 注册:设备到新网络后通知HA自己的CoA
三、间接路由 vs 直接路由
- 间接路由:CN→HA→MN,三角路由,延迟高,对端无需支持移动性
- 直接路由:CN查询CoA后直接发,最短路径,对端需要支持移动性
- 隧道封装:在原始IP包外加IP头,发到CoA
- 平滑切换:缓存转发、双连接、预注册
关键概念清单
- 移动性(Mobility):移动中保持连接
- 归属网络(Home Network):设备的永久网络
- 被访网络(Visited Network):设备当前所在网络
- 归属代理(Home Agent,HA):归属网络中跟踪设备位置的路由器
- 外部代理(Foreign Agent,FA):被访网络中的代理
- 归属地址(Home Address):永久IP地址
- 转交地址(Care-of Address,CoA):临时IP地址
- 间接路由:数据经过归属代理转发(三角路由)
- 直接路由:对端直接发到当前位置
- 隧道(Tunnel):IP-in-IP封装
- 绑定缓存(Binding Cache):HA记录home address→CoA的映射
- 平滑切换:切换时不丢数据
结语
这一节我们学习了移动性管理的基本原理——归属网络和被访网络的概念、归属地址和转交地址的分离、以及间接路由和直接路由两种方案。这些原理是理解蜂窝网络漫游和移动IP的基础。
下一节7.6我们将学习实践中的移动性管理——看看这些原理在真实系统中是怎么实现的。我们会学习4G/5G网络中的移动性管理(MME、S-GW锚点、切换流程),以及移动IP(MIPv4和MIPv6)的具体协议。理论结合实践,让我们继续前进吧!
如果你觉得这篇笔记对你有帮助,欢迎点赞收藏~有问题也欢迎留言讨论,我们一起进步!
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)