- 数据帧
- QoS数据帧
- 确认帧(Acknowledgement frames)
- RTS和CTS帧
- 块确认帧(Block Acknowledgement frames)
捕获数据帧
数据帧的类型字段(Type)为10,子类型字段(Subtype)为0000。协议分析工具通常会解码并标注其为“数据帧”。由于数据帧的传输速率通常远高于信标帧、确认帧及其他管理/控制帧,因此需要尽可能靠近发送或接收数据帧的设备进行捕获。 例如,若尝试从位于接入点(AP)另一侧的客户端捕获数据帧,可能无法正确解调这些帧,因为它们以较高的速率发送,而您所在位置的信号噪声比(SNR)不足以支持解调。您可能会看到从AP发送至远端客户端的数据帧,但无法正确解调从远端客户端返回至AP的数据帧。 下图展示了一个典型的数据帧,其中标明了类型和子类型字段。 (注:以下内容对CWAP考试并非重点)Airtool工具可简化Macbook上的帧捕获流程。安装Airtool工具(截至本文撰写时版本为2)和Wireshark后,您便具备了捕获帧所需的所有工具。下图展示了Airtool的基本操作界面。 这款简单且免费的工具虽然界面简洁,但背后隐藏着强大的功能。您可快速启动捕获任务,并将结果保存至指定路径的Wireshark捕获文件(默认保存到桌面)。随后只需打开捕获文件即可查看结果。若希望使用比Wireshark更专业的Wi-Fi分析工具,可直接在这些工具中打开PCAP文件。如需在MacBook上下载安装该工具(暂不支持Windows用户),请访问 cvmp.link/airtool。捕获QoS数据帧
QoS数据帧的类型字段(Type)为10,子类型字段(Subtype)为1000。大多数协议分析工具除显示类型/子类型值外,还会解码并标注该帧为“QoS数据帧”。QoS控制元素(QoS Control)将指示帧的优先级。下图展示了一个“尽力而为”(Best Effort)QoS数据帧,下下图则展示了一个“语音”(Voice)QoS数据帧。 捕获QoS数据帧与捕获标准数据帧的方法完全一致。需靠近目标设备以捕获其发送和接收的数据帧。QoS数据帧在介质上的传输方式与标准数据帧相同,因此捕获过程并无差异。QoS数据帧的核心区别在于其优先级设置,该设置决定了帧的发送顺序(优先或延后)。捕获确认帧与块确认帧
标准确认帧(Standard Acknowledgements)是简短的帧,用于表示“我已收到你的通信”。这类似于对话时点头示意。确认帧(Ack)意味着接收方已成功接收数据帧;若无确认帧,发送方将认为需要确认的帧未被接收,从而触发重传机制。 有趣的是,如下图所示,确认帧也用于建立块确认(Block Ack)协议。 站点(STA)在接收到需要确认的非CRC错误帧后,应立即发送确认帧。若未发送,原帧将进行重传。重传帧可通过帧控制字段(Frame Control fields)中的重试位(Retry bit)是否为1来识别。 块确认(Block Acknowledgements)可能包含以下流程:- 数据交换前发送添加块确认请求(Add Block Ack Request)与添加块确认响应(Add Block Ack Response)。
- 块确认策略(Block Ack Policy):指示采用“立即块确认”(Immediate Block Ack)或“延迟块确认”(Delayed Block Ack)。立即块确认是最常用的策略。
- 块确认超时值(Block Ack Timeout Value):以时间单位(TUs)指定协议有效时长,若超时未传输帧,则块确认协议终止。
捕获RTS/CTS交换
最后一种与数据传输相关的捕获操作是RTS/CTS交换。该机制用于以下场景:- BSS中存在低性能站点时作为保护机制;
- 解决“隐藏节点问题”(即两个客户端均可与AP通信,但彼此无法直接感知)。
- QoS数据帧传输后需等待一个短帧间间隔(SIFS,16微秒);
- 从QoS数据帧的持续时间值48微秒中减去16微秒,剩余32微秒即为块确认帧的传输时长。
Wireshark的持续时间计算原理
需要了解的是,Wireshark并非通过无线电测量,而是基于以下已知参数计算持续时间:- 使用的物理层协议(PHY)
- 前导码结构(长度与发送速率)
- PLCP头结构(长度与发送速率,至少可近似)
- MPDU大小与发送速率Wireshark通过以下公式(或类似逻辑)进行计算:前导码时间 + (帧长度 × 8) / 数据速率
- 数据帧
- QoS数据帧
- 确认帧(Acknowledgement frames)
- RTS和CTS帧
- 块确认帧(Block Acknowledgement frames)
捕获数据帧
数据帧的类型字段(Type)为10,子类型字段(Subtype)为0000。协议分析工具通常会解码并标注其为“数据帧”。由于数据帧的传输速率通常远高于信标帧、确认帧及其他管理/控制帧,因此需要尽可能靠近发送或接收数据帧的设备进行捕获。 例如,若尝试从位于接入点(AP)另一侧的客户端捕获数据帧,可能无法正确解调这些帧,因为它们以较高的速率发送,而您所在位置的信号噪声比(SNR)不足以支持解调。您可能会看到从AP发送至远端客户端的数据帧,但无法正确解调从远端客户端返回至AP的数据帧。 下图展示了一个典型的数据帧,其中标明了类型和子类型字段。 (注:以下内容对CWAP考试并非重点)Airtool工具可简化Macbook上的帧捕获流程。安装Airtool工具(截至本文撰写时版本为2)和Wireshark后,您便具备了捕获帧所需的所有工具。下图展示了Airtool的基本操作界面。 这款简单且免费的工具虽然界面简洁,但背后隐藏着强大的功能。您可快速启动捕获任务,并将结果保存至指定路径的Wireshark捕获文件(默认保存到桌面)。随后只需打开捕获文件即可查看结果。若希望使用比Wireshark更专业的Wi-Fi分析工具,可直接在这些工具中打开PCAP文件。如需在MacBook上下载安装该工具(暂不支持Windows用户),请访问 cvmp.link/airtool。捕获QoS数据帧
QoS数据帧的类型字段(Type)为10,子类型字段(Subtype)为1000。大多数协议分析工具除显示类型/子类型值外,还会解码并标注该帧为“QoS数据帧”。QoS控制元素(QoS Control)将指示帧的优先级。下图展示了一个“尽力而为”(Best Effort)QoS数据帧,下下图则展示了一个“语音”(Voice)QoS数据帧。 捕获QoS数据帧与捕获标准数据帧的方法完全一致。需靠近目标设备以捕获其发送和接收的数据帧。QoS数据帧在介质上的传输方式与标准数据帧相同,因此捕获过程并无差异。QoS数据帧的核心区别在于其优先级设置,该设置决定了帧的发送顺序(优先或延后)。捕获确认帧与块确认帧
标准确认帧(Standard Acknowledgements)是简短的帧,用于表示“我已收到你的通信”。这类似于对话时点头示意。确认帧(Ack)意味着接收方已成功接收数据帧;若无确认帧,发送方将认为需要确认的帧未被接收,从而触发重传机制。 有趣的是,如下图所示,确认帧也用于建立块确认(Block Ack)协议。 站点(STA)在接收到需要确认的非CRC错误帧后,应立即发送确认帧。若未发送,原帧将进行重传。重传帧可通过帧控制字段(Frame Control fields)中的重试位(Retry bit)是否为1来识别。 块确认(Block Acknowledgements)可能包含以下流程:- 数据交换前发送添加块确认请求(Add Block Ack Request)与添加块确认响应(Add Block Ack Response)。
- 块确认策略(Block Ack Policy):指示采用“立即块确认”(Immediate Block Ack)或“延迟块确认”(Delayed Block Ack)。立即块确认是最常用的策略。
- 块确认超时值(Block Ack Timeout Value):以时间单位(TUs)指定协议有效时长,若超时未传输帧,则块确认协议终止。
捕获RTS/CTS交换
最后一种与数据传输相关的捕获操作是RTS/CTS交换。该机制用于以下场景:- BSS中存在低性能站点时作为保护机制;
- 解决“隐藏节点问题”(即两个客户端均可与AP通信,但彼此无法直接感知)。
- QoS数据帧传输后需等待一个短帧间间隔(SIFS,16微秒);
- 从QoS数据帧的持续时间值48微秒中减去16微秒,剩余32微秒即为块确认帧的传输时长。
Wireshark的持续时间计算原理
需要了解的是,Wireshark并非通过无线电测量,而是基于以下已知参数计算持续时间:- 使用的物理层协议(PHY)
- 前导码结构(长度与发送速率)
- PLCP头结构(长度与发送速率,至少可近似)
- MPDU大小与发送速率Wireshark通过以下公式(或类似逻辑)进行计算:前导码时间 + (帧长度 × 8) / 数据速率