计算 IEEE 802.11 中单个 UDP 数据包传输的重新传输次数

计算 IEEE 802.11 中单个 UDP 数据包传输的重新传输次数

我正在开发一个基于 UDP 和 802.11 作为链路层和物理层的客户端-服务器项目。在那里,客户端试图探测无线信道中的一些数据包以测量信道状况。此功能是在我的客户端应用程序中设置传输速度和估计数据包丢失率所必需的。

为了执行该功能,需要测量 IEEE 802.11 中发生的重新传输次数(拓扑为客户端 -----ap ------服务器:其中 ----- 是无线信道)。

在传输层,由于使用的是 UDP,因此不会有任何重新传输,但如果无线信道不好(没有来自接收器 MAC 的确认),IEEE802.11 Wi-Fi NIC 将重新传输。到目前为止,我可以从 ~/proc/net/wireless 访问 RSSI,这可以了解接收信号强度,但不能了解无线信道状况。

可以根据重传次数来估计无线信道状况。我应该如何测量 IEEE 802.11 层中的重传次数?假设来自应用程序的 1 个数据包在 IEEE 802.11 层中需要多少次重传(来自客户端)?

是否有任何进程可以访问wifi驱动程序并获取重传次数?

相关内容