通过蓝牙将文件传输到智能手机并接收丢失/重新传输数据包的信息

通过蓝牙将文件传输到智能手机并接收丢失/重新传输数据包的信息

我对监控从 PC 到智能手机传输文件时丢失/重新传输/其他数据感兴趣。

操作系统:Ubuntu 20.04.1 LTS

智能手机:小米 pocophone f1

我知道如何传输文件(使用 Blueman),但我真正需要的是某种软件,类似于hcitool可以帮助发送数据的软件 +检测数据包丢失/重新传输

任何可能有帮助的软件都会非常有用。

答案1

为了传输数据,我简单地在 Ubuntu 上使用了 Blueman。然后,我从 WireShark 嗅探蓝牙 0 接口,使用过滤器btl2cap.retransmittimeout。为了自动化,我编写了一个使用 的 Python 脚本pyshark

import pyshark

class SniffPacket(object):
    def sniff(self):
        capture = pyshark.LiveCapture(interface='bluetooth0', display_filter='btl2cap.retransmittimeout')
        try:
            capture.sniff(timeout=20)
        except:
            pass
        return capture

if __name__ == '__main__':
    print(f'Initiate sniffer...')
    capture = SniffPacket().sniff()
    print('Sniffer complete, parse data...')
    ct = 0
    try:
        while True:
            res = str(capture.next_packet())
            ct += 1
    except:
        pass
    print('Retransmitted packets: ' + str(ct))

相关内容