使用 recvfrom() 时如何设置数据包大小?
我正在尝试使用 Raspberry Pi Model B 捕获 tcp 数据包。我有一个 python 程序,它使用 recvfrom 捕获数据包并将它们写入 .dat 文件。为了与我为后处理数据编写的 matlab 代码兼容。我需要文件的大小(字节)除以数据包大小(在本例中为 8568 字节)时产生一个整数值。这可能吗?如果是这样,我该怎么做?
此外,每次运行代码时,我都必须关闭并重新启动 tcp 源,以使 recvfrom 函数正常工作。我想让这个停止,我需要在代码的开头或结尾添加一个命令来清除端口吗?
while t < 5:
time.sleep(1)
t+=1
print t
i=str(t)
f=open('test_' + i ,'wb')
radar=s.recvfrom(8568)
data=str(radar)
f.write(data)
print radar
if radar == 0:
print 'no packets'
if radar != 0:
print radar
f.close() s.close()