在建立连接时,TCP使用三方握手.
step 1: client send SYN to server
step 2: server send SYN/ACK to client
step 3: client send ACK to server
但是,在步骤1、2或3中,分组可能丢失。
我有三个问题,请帮助我。
如何在三次握手中处理丢包?是否有任何方法来模拟丢包问题?TCP自动处理这个问题,或者开发人员也必须处理它?。
谢谢你的建议。
我正在开发一个使用python FABRIC模块执行远程shell命令的模块。
我的基础机器是运行在CentOS7发行版上的Linux机器,而我的远程机器是FreeBSD发行版。
我面临的问题有点令人困惑。
问题是,有时fabric会在远程计算机上运行该命令并顺利发布输出,但有时会显示错误msg:
fabric.exceptions.NetworkError: Low level socket error connecting to host *.*.*.* on port 22: Unable to connect to port 22 on *.*.*.*
我找不到背后的原因。
我的代码看
我有一个OpenVPN服务器,它有Debian 8和OpenVPN 2.3.14 x86_64-pc-linux-gnu。今天我意识到丢包了。我的服务器位于TCP端口443上。
Ping statistics for 144.76.41.103:
Packets: Sent = 1135, Received = 1121, Lost = 14 (1% loss),
Approximate round trip times in milli-seconds:
Minimum = 29ms, Maximum = 961ms, Average = 51ms
其他统计数据:
Ping