高通平台WiFi学习--Android 数据包过滤器(APF):硬件级网络流量管控

一 Android 数据包过滤器

1.1 概述

硬件中的数据包过滤对于实现可接受的功耗至关重要。唤醒应用处理器(AP)的成本比在 Wi-Fi 固件中丢弃数据包的成本高 1 到 2 个数量级。

之前 Android 上的数据包过滤支持复杂且不灵活。它由多个不同的过滤器组成(例如,内核多播过滤器、驱动程序接收过滤器)。这意味着如果不修改固件,过滤逻辑就无法更改;难以轻松适应网络条件;在不同设备上存在差异,并且无法进行代码审查。

因此,谷歌 Android N 引入了 Android 数据包过滤器功能(APF),这是一种硬件数据包过滤架构。该架构的工作原理如下:

  1. 谷歌框架(或应用程序)生成数据包过滤程序。
  2. 谷歌框架通过框架数据包过滤功能和 Wi-Fi 驱动程序支持,将数据包过滤程序传递给 Wi-Fi 固件。
  3. Wi-Fi 固件支持用于传入数据包的数据包过滤程序解释器。
  4. 在 Wi-Fi 固件中运行的数据包过滤程序会检查传入的数据包,并据此做出判断。

后续章节将对此进行更详细的说明。

1.2 考量因素

APF 支持以下特性:

  • APF 具备在运行时控制数据包过滤的框架。
  • 将所有现有数据包过滤器(可能除了 L2 多播过滤器)统一为一种机制。
  • 利用该机制实现增强的节能效果,例如在休眠模式下丢弃传入的数据包。
  • 该 API 应能适用于所有链路类型(例如,Wi-Fi、电话网络)。

由于目标之一是尽可能通用,最简单的方法是提供两种类型的过滤器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

专业开发者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值