我在重新传输延迟计算中没有得到预期的结果。我在下面包含了 python 代码片段,
s.send(base64.b64encode(ciphertext))
try:
s.settimeout(0.01)
t = perf_counter()
print(s.recv(1024).decode('ascii'))
t2 = perf_counter()
tt = round((t2-t)*1000,2)
print('Delay is:' ,tt)
except socket.timeout as e:
print(e)
从理论上讲,tt 必须为 <=10ms(+1ms 用于打印和解码(,否则 s.recv(( 必须抛出异常。但是在 debian 操作系统中获取值直到 25 毫秒。其他方法如 time((、process_time(( 也没有给出预期的结果。
提前感谢!!
您不是单独计时 recv,而是计时加上打印操作,这将需要一些时间。 尝试一下没有打印,看看是否有区别。
这不一定是问题所在,但首先尝试是合理的。