Mininet/Wifi:模拟站点移动时,Radiotap 捕获的 RSSI 不变

Mininet/Wifi: Radiotap captured RSSI not varying when station mobility is simulated

使用Mininet for Wifi的Python API我正在模拟一个AP和两个 站。 AP 位于“0,0,0”,sta1 位于“0,10,0”。我正在移动sta2 在“0,50,0”到“0,150,0”之间来回移动。另外,我还有一个额外的 创建 Mininet 时配置的无线电。然后在另一个 window 我把 在监控模式下额外无线电的 wlan 接口,并捕获 wifi 流量 使用 tcpdump/Wireshark.

我期待看到 Radiotap headers 中的 RSSI 会随着 sta2 的变化而变化 在 50 到 150 米之间移动。但我看到每个站的 RSSI 固定在 30 和 36dBm。 我错过了什么,为什么SSI没有改变 正如我认为的那样? 是因为 mac80211_hwsim 的一些限制吗? 或 Mininet 本身,还是我的预期不正确?

测试Python程序是here,捕获的tcpdump/Wireshark 因为 ping 是 here。请注意,在捕获中我已经过滤掉了 信标以保持最少的数据包检查。鉴于较大的文件大小 我已经提供了指向您可以下载这两个相关文件的位置。

虽然你可以通过 py staX.params['rssi'] 获取 rssi,但 mac80211_hwsim 只考虑了 power_level(或 tx 功率)公式,如您在 https://github.com/torvalds/linux/blob/master/drivers/net/wireless/mac80211_hwsim.c 中第 1211 行所见。这就是信标中 RSSI 没有改变的原因。