我家有一个比较大的区域需要WiFi覆盖。单个接入点的范围很可能是不够的,因为它是由大块混凝土和钢筋制成的。因此,我在各处安装了多个接入点以获得足够的覆盖范围。
我试图在这里勾勒出相关网络的逻辑/拓扑结构:
显然,纯基于电缆的连接是没有问题的。所有接入点都使用相同的 SSID 以允许快速切换而无需更改 IP 等。然而,这具有当接入点足够近时(取决于本地设置的可能性)的效果,它们可以接收其伙伴的数据包。
因此,这些无线连接可以被视为额外的连接(从网络拓扑的角度来看),可能会导致拓扑中的环路。据我所知,以太网中的环路并不是最好的主意。STP(生成树协议)在这里发挥作用。根据这个答案, STP 很麻烦,在小型安装中应尽可能避免。
现在我有几个问题:
- 普通交换机/接入点(客户设备)是否能够应对这种情况?
- 是否有必要以专门的方式处理这种情况?
- 有时,我的 WiFi 网络会遇到很大的问题。在网络中,我得到的延迟(用 ping 测量)高达 5000 毫秒。情况并非总是如此(零星行为)。这可能是由如此弱、不稳定的连接引起的吗?
不,它们不会导致循环,因为Wi-Fi 帧的真实链路层标头1有一个标志位,指示该帧是从 AP 到客户端,还是从客户端到 AP。因此,即使 AP 都在同一个频道上(如果它们确实足够近可以听到彼此的话,它们不应该是这样)也不会出现循环,因为它们只会忽略所有带有“来自 DS”的帧“ 旗帜。
此外,来自客户端的所有 Wi-Fi 帧都被寻址到特定的 BSSID。在底层,它们有两个目标 MAC 地址——以太网中的“最终”目标,以及客户端当前关联的 AP 的 BSSID。
(类似地,从 AP 到客户端的帧被解释为具有两个源MAC 地址——原始源和传输 BSSID。)请注意,这与 ESSID 不同,ESSID是文本“网络名称”——BSSID 是特定的AP 的 MAC 地址。
这也意味着漫游是在 Wi-Fi 中明确完成的——即使客户端在多个 AP 的范围内,它也只会向其中一个 AP 发送帧,直到它决定与其解除关联并与另一个 AP 关联。
1 Wi-Fi 接口的标准数据包捕获只会向您显示模拟的以太网标头(这是由设计完成的;802.11 旨在提供与 802.2 兼容的链路层)。如果您在监控模式下捕获数据包,那么您将看到真正的 802.11 标头,如这些示例中所示。