1. 3GPP 协议栈的设计哲学
移动网络的 IP 配置是 PDP Context(2G/3G)/ EPS Bearer(4G)/ PDU Session(5G) 的一部分,在建立数据连接时就完成了:
plain text
Apply
┌─────────────────────────────────────────────────────┐
│ 1. UE 发送 PDP Context Activation Request │
│ (包含 APN、QoS 等参数) │
└──────────────┬──────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ 2. 核心网 (GGSN/PGW/UPF) 分配 IP 地址 │
│ - 从 IP 地址池中分配一个 IP │
│ - 配置 DNS、MTU、QoS 参数 │
└──────────────┬──────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ 3. Modem 接收 PDP Context Accept 响应 │
│ - 包含完整的 IP 配置信息 │
│ - 直接配置到网络接口(如 rmnet0) │
└──────────────┬──────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ 4. Android Framework 从 DataCallResponse 读取配置 │
│ - 无需运行 DHCP Client │
│ - 直接创建 LinkProperties 并上报给 ConnectivityService │
└─────────────────────────────────────────────────────┘
展开
2. 点对点(Point-to-Point)连接
移动数据接口(如 rmnet0)本质上是 点对点链路,而非以太网:
- 没有 ARP 请求/响应
- 没有广播域
- 不需要 DHCP Discover/Offer/Request/Ack 四次握手
3. 性能考虑
跳过 DHCP 流程可以:
- 加快连接建立速度(少 2-4 秒)
- 减少信令开销(DHCP 需要额外的 UDP 包)
- 简化状态管理(不需要 DHCP 租约续期)