从一个客户端到另一个客户端的 Wi-Fi 流量是否通过接入点传输?

Pet*_*ete 55 networking wifi network-topology

考虑一个具有一个接入点和两个客户端的 Wi-Fi 网络,由于范围等原因在边缘条件下运行。客户端 1 正在与客户端 2 通信。显然接入点(AP) 必须在两者的范围内(假设没有花哨的网格模式等)使网络被视为可用,但数据实际上是否通过它传输?

也就是说,AP 是否从一个客户端接收数据包并重新广播它们以供另一客户端接收,或者客户端 2 的无线电是否直接接收从客户端 1 传输的信号,而 AP 只是提供某种仲裁和元数据来帮助他们找到彼此?

我特别感兴趣的是这个问题的答案将如何影响两个客户端彼此靠近并且具有良好的无线电传播,但接入点相距一定距离的情况。

D34*_*347 68

是的,通信是通过接入点进行的。在这种情况下,AP 的功能与有线网络中的交换机完全相同。

可以让两个设备直接通信,而无需 AP。这称为 Ad Hoc 网络。

  • @Pete C2 不一定能看到 C1 的传输。考虑 C1 靠近 AP 范围的一个边缘,而 C2 靠近相对边缘的情况。C1 和 C2 之间的距离是其中一个到 AP 范围的两倍,因此它们不能直接相互通信。但既然他们没有必要,那就无所谓了。重要的是他们都能够与 AP 通话。 (12认同)
  • 然而,这种情况并不完全类似于有线 (xBASE-T) 网络上的交换机,因为客户端 2 *可以*看到客户端 1 的传输,即使协议忽略它们。在某些方面,它更接近于老式的 10BASE2 或 10BASE5 布线。这就是为什么我有疑问。 (5认同)
  • 我建议您使用“集线器”一词,因为它更接近有线等效项。集线器现在并不真正可用,但它确实有效。 (4认同)
  • 尽管现代交换机不再以这种方式运行,但从技术上讲,所有以太网网络都是多路访问的,因此设备有可能接收到它们不是预期接收者的数据包。 (3认同)

Ani*_*tra 37

显然,接入点 (AP) 必须在两者的范围内(假设没有花哨的网状模式等)才能将网络视为可用,但数据实际上是否通过它传输?

是的,数据实际上流经 AP。为什么?802.11 帧标准定义了 802.11 帧头:

在此处输入图片说明

802.11 主要在数据链路和物理层的 MAC 层上工作,因此,如您所见,帧头中有四个地址(而不是以太网中的两个),并且取决于要转发帧的位置,地址放置在 dot11 标头中确定。

可能的地址是:

  1. 目标地址 -> 最终要到达的帧(DA)
  2. 源地址 -> 帧的原始发送者(SA)
  3. 当前目标地址 -> 帧的当前接收者 (CDA)
  4. 当前源地址 -> 帧的当前源 (CSA)

现在这取决于帧需要转发到哪里,即从哪个分发系统 (DS) 到哪个分发系统(这里假设无线是 DS 0,有线是 DS 1),这些地址的位置在帧头中决定。

情况 1:当一个帧需要从 DS 0 转发到 DS 0 时,从一个无线客户端 (STA) 到另一个客户端(这主要发生在 ad-hoc 网络上)。

以下将是地址:

  • CDA 和 DA 将相同
  • CSA 和 SA 将是相同的

以下将是地址放置:

  • 地址 1 -> CDA 或 DA
  • 地址 2 -> CSA 或 SA
  • 地址 3 -> BSSID(MAC) 或 ff:ff:ff:ff:ff:ff 在探测请求的情况下
  • 地址 4 -> 不适用

情况 2:当一个帧需要从无线客户端转发到 AP 时,即从 DS 0 到 DS 1。

以下将是地址:

  • CDA 和 BSSID 将相同(因为数据包是在 SSID 上转发的)
  • DA 将成为需要转发帧的最终无线客户端(在其 LAN 中)。
  • CSA 和 SA 将是相同的

以下将是地址放置:

  • 地址 1 -> CDA 或 BSSID
  • 地址 2 -> CSA 或 SA
  • 地址 3 -> DA
  • 地址 4 -> 不适用

情况 3:当帧需要从 AP 转发到无线客户端时,即从 DS 1 到 DS 0。

以下将是地址:

  • CDA 和 DA 将是相同的。
  • CSA 和 BSSID 将相同。
  • SA 将是原始源地址

以下将是地址放置:

  • 地址 1 -> CDA 或 DA
  • 地址 2 -> CSA 或 BSSID
  • 地址 3 -> SA
  • 地址 4 -> 不适用

情况 4:当一个帧需要从一个 AP 转发到另一个共享相同 LAN(和两个无线客户端在其上通信)的 AP 时,即从 DS 1 到 DS 1。

以下将是地址:

  • CSA 将成为第一个 AP 的 MAC
  • CDA 将成为第二个 AP 的 MAC
  • SA 将成为源无线客户端的 MAC
  • DA 将成为目标无线客户端的 MAC

以下将是地址放置:

  • 地址 1 -> CDA
  • 地址 2 -> CSA
  • 地址 3 -> DA
  • 地址 4 -> SA

结论:如果您处于基于 AP 的环境(基础设施)中,您必须将 DS 和目标 MAC 从 BSSID 切换到终端客户端 MAC 地址(上面详细解释),这就是 dot11 的编写方式。

与有线类比:将无线介质作为交换机和终端主机之间的一根无形的电线。在这种情况下,交换机是 AP,终端主机是无线客户端。您仍然需要无线中的源 MAC 和目标 MAC,但是现在在多 AP 环境中,您不知道谁是您的 AP(交换机),因为没有您(通过)连接的电缆(不可见)因此进来还有两个地址(上面解释了 CSA 和 CDA)。

我希望这有帮助!