高通平台WiFi学习--IPv6 邻居发现卸载:Wi-Fi 固件助力移动设备功耗优化
一、引言
在移动设备的网络通信领域,功耗控制始终是核心挑战之一。IPv6 邻居发现(Neighbor Discovery,ND)作为 IPv6 网络中至关重要的功能,其常规处理方式往往会因频繁唤醒平台系统而导致功耗过高。为解决这一问题,IPv6 邻居发现卸载技术应运而生,借助 Wi-Fi 固件在底层处理相关数据包,减少平台系统的唤醒次数,从而实现功耗优化。本文将深入剖析 IPv6 邻居发现卸载的技术细节、工作行为以及地址处理机制。
二、IPv6 邻居发现卸载概述
(一)IPv6 邻居发现的基础
IPv6 邻居发现由 RFC 4861 提出,且在多个平台上得到支持。一般来说,IPv6 邻居发现中使用的多播邻居请求(Neighbor Solicitation,NS)数据包由上层系统处理并回复。
(二)传统处理的功耗问题
然而,频繁的 NS 数据包会频繁唤醒平台系统来处理这些入站数据包,这会导致极大的功耗消耗,因为平台系统需要反复从挂起模式恢复。为了尽可能降低功耗,如果这些 NS 数据包能够由底层链路层(而非唤醒平台系统)来处理和回复,将会有很大帮助。从 Wi-Fi 技术的角度来看,Wi-Fi 固件有助于卸载这项任务,这样系统平台就可以保持挂起模式以节省电力。
三、IPv6 ND 卸载工作行为
(一)卸载激活时的行为
当 IPv6 ND 卸载处于激活状态时,Wi-Fi 固件会执行以下操作:
- 不会将任何入站的多播邻居请求(NS)数据包传递给运行在应用处理器上的主机平台;
- 自主回复接口上 IPv6 地址的多播 NS 数据包。