任何人都知道为什么802.11 Acknowledgment Frames没有源MAC地址?当我使用监控模式和混杂模式驱动程序从Linux捕获来自TCPDUMP或Wireshark的数据包时,我看不到它.如果帧中没有源MAC地址,接入点如何区分来自不同802.11客户端的ACK帧?
我可以从所有捕获中看到ACK在帧发送后立即出现(大约10到30微秒),但仅凭这一点还不足以区分它的来源吗?也许每个帧都有某种唯一标识符,而ACK帧里面有这个ID?由于WLAN使用WPA-PSK模式,因此加密有效载荷中可能存在识别信息?
不,802.11 MAC ACK帧中没有任何内容.
802.11是一种基于竞争的协议.即媒体由不同的STA和AP共享,他们都在时间上在相同的频道[频率]工作.那些想要传输的人正在争夺媒体,获得媒体的获胜者开始传播.
根据802.11规范.一旦一帧播出,下一个"SIFS"期间媒体应该是免费的.即没有人被允许传播.在SIFS结束时,单播帧的接收者应该发送ACK.这是规则.
基于OFDM的802.11实现[802.11 G,A],802.11中的SIFS [短帧间间隔]约为10微秒.对于802.11b,如果我的内存是正确的,它约为20微秒.这就是你在TX和ACK之间看到10或30微秒的原因
因此,每个人都知道谁在发送ACK以及ACK是谁.所以不需要包含源地址,它的实现.
为什么源地址不包括在内?减小框架尺寸,以达到相同的功率.
希望能帮助到你.如果您对此有更多疑问,请随意
与所有 802.11 管理帧一样,ACK 帧在其 MAC 标头中具有 DA(目标地址)和 SA(源地址)(两者不要与“MAC 地址”完全混淆,见下文),这就是本例中所需要的全部内容。语境。
TLD;DR:在 802.11 上下文中,“MAC 地址”、SA(源地址)、TA(发送器地址)、DA(目标地址)、BSSID 或其他类似的东西都类似于我们熟悉的 6 字节“MAC 地址”与其他技术不同,但不应将它们混淆。
现在我们来拆除 802.11 背景下的“MAC 地址”概念。
802.11 确认帧是 802.11 管理帧的一部分,802.11 是“一组媒体访问控制 (MAC) 和物理层 (PHY) 规范”(来源)。
这意味着 -这是使用 Wi-Fi 时需要掌握的一个非常重要的概念- 802.11 本身(包括其管理框架)与“传统”(例如 802.3,又名以太网)PHY(第 1 层)无关) 也不是 MAC(第 2 层)层 - 它们是一种自己的层。
802.3/以太网,继续这个类比 - 或者更确切地说是反例 - 没有诸如 ACK 帧、信标、探测请求、RTS/CTS、auth/deauth、关联等之类的东西,这些都是 802.11 管理帧的类型。802.3 根本不需要这些,主要是因为有线以太网不是共享媒体(这是 IEEE 术语),这可能会导致不可靠/冲突,就像 802.11/Wi-Fi 的空气一样。
这样做的重要后果是,您不应期望先验地满足其他更熟悉的概念或来自其他第 1/2 层技术的数据。忘记这件事,一劳永逸。
当然,Wi-Fi 看起来像是携带一些 MAC 和 IP 以及 TCP 和/或 UDP 或诸如此类的东西,而且它们大多数时候都是这样做的,但对于诸如 ACK 之类的管理帧来说,那是一个不同的世界——它自己的世界。事实上,802.11 可以完美地用于承载除 TCP/IP 之外的其他更高级别的协议,并且可能在某些利基用例中使用。它的 MAC 概念虽然看起来很熟悉它的 6 个字节,但不应在形式上混淆,也不应用于 802.3/以太网的 MAC。再举个例子,802.15 又名蓝牙也有一个 6 字节的 MAC,但这又是另一回事了。
以 802.11为例,802.11 第 1/2 层信标帧携带一些有关 SSID、支持的速率、跳频 (FH)、参数集等的信息,这些信息在其他 L1/2 技术中没有对应的信息。
现在,接受 802.11 中“MAC 地址”的复杂性……
这就是为什么,以日常使用为例,pcap/tcpdump有如此奇怪的过滤器,例如wlan ra、wlan ta、wlan addr1、wlan addr2、wlan addr3、wlan addr4- 等用于wireshark捕获和显示过滤器。
| 归档时间: |
|
| 查看次数: |
2613 次 |
| 最近记录: |