这些main操作卸载类别是可配置的。
- MSDU 级别的接收操作
- 帧转发 (转发决策和执行)
- 协议/任务卸载
下面是 RX 操作和卸载的列表。
函数 | 说明 | 所有权 | 备注 |
---|---|---|---|
解密 |
使用为发送方指定的安全类型和安全密钥解密帧内容。 |
目标 |
在主机实现的 FIPS 模式下,解密是在主机软件中完成的。 绕过目标的解密。 |
A-MPDU deaggregation |
将 RX A-MPDU 分解为单个 MPDU。 |
目标 |
|
A-MSDU 取消聚合 |
将 RX A-MSDU 分解为单个 MSDU。 |
目标/TAL |
每个 RX MSDU 都放置在单独的缓冲区中。 |
MSDU 安全性解包和解除 MIC |
对于涉及 MSDU 级别 MIC 的安全类型,请验证收到的 MIC。 解封安全标头和页脚。 |
目标/TAL |
操作系统会根据需要执行对策。 |
Rx decap |
将非初始 A-MSDU 子帧标头替换为 802.11 标头,并根据需要使用初始 A-MSDU 子帧中的 802.11 标头字段。 |
目标/TAL |
在 A-MSDU 取消聚合期间,A-MSDU 的非初始 MSDU 需要将其 802.3 标头替换为泛型 802.11 标头。 WDI 始终需要 802.11 标头。 |
Rx 重新排序逻辑 |
对于每个 RX MPDU,确定它进入 Rx 重新排序数组的哪个槽。 确定何时存在一系列按顺序帧。 确定何时释放挂起的帧,即使其前面的帧尚未到达。 |
目标/TAL |
|
Rx 放弃逻辑 |
确定需要丢弃哪些 Rx 帧:
|
Target/TAL 做出所有放弃决策。 |
|
Rx PN/重播检查 |
确认每个 MPDU 都有一个不同于先前的PN 的数据包编号。 |
这是必需且始终启用的卸载,但与重新排序队列关联的流除外,并且重新排序队列管理不会完全卸载到目标。 |
|
Chatter 卸载 |
避免为每个可延迟的“噪音”Rx 帧中断主机。 相反,对 Rx 干扰帧进行分组,并使用单个中断来传递所有此类帧。 |
目标 |
|
碎片整理 |
将 802.11 片段重新组合到其原始 MSDU 中。 |
目标/TAL |
|
Rx 重新排序队列 |
存储无序的 Rx MPTU,直到流中缺少的先前 MPTU 到达。 |
目标/TAL |
|
Rx 放弃执行 |
根据目标上运行的 Rx 放弃逻辑标记的规范放弃 Rx 帧。 |
目标/TAL |
|
更高级别的协议 (任务) 卸载 |
校验和 |
校验和:如果需要,可在启动时卸载。 |
校验和:目标在启动期间将其校验和卸载功能作为设备上限的一部分传递给 WDI。 有关功能的信息,请参阅 NDIS_TCP_IP_ CHECKSUM_OFFLOAD。 |
Host-Implemented FIPS 模式下的接收操作
在此模式下,目标可能使用 802.11 标头或 802.3 标头指示收到的帧。 不得在指示之前解密帧。
如果放弃逻辑卸载到目标,则如果收到的帧满足以下任一条件,则必须将接收的帧标记为放弃。
- 具有错误 CRC 的帧。
- 重复帧。
- 与配置的数据包筛选器不匹配的帧。
对于已成功接收或被端口丢弃的数据包,目标必须递增相应的 MAC 和 PHY 统计信息。
此外,如果卸载,目标必须执行放弃执行。
在主机实现的 FIPS 模式下运行时,目标不应从 RX 路径上的 802.11 标头中去除 QoS 标志。 目标应在不修改 QoS 标头的情况下指示帧。
对于分段数据包,当主机执行碎片整理过程时,LE 报告的 FIPS 模式的有效负载类型始终 WDI_FRAME_MSDU_FRAGMENT 。 但是,在非 FIPS 模式下,当 Target/TAL 执行碎片整理时,应 WDI_FRAME_MSDU 报告的有效负载类型。