TCP如何处理三次握手过程中的丢包?
How TCP handle packet loss during three-way handshake?
建立连接时,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中,数据包可能会丢失。
我有3个问题,请帮助我。
- TCP 如何处理三次握手过程中的数据包丢失?
- 有什么方法可以模拟丢包问题吗?
- TCP 自动处理问题还是开发人员也必须处理?
感谢任何建议。
How TCP handle packet loss during three-way handshake ?
重传,与任何其他类型的数据包丢失一样。这就是为什么你在握手中有 ACK。
Is there any ways to simulate the packet loss issues ?
当然可以,但这取决于您的知识。例如,在 Linux 中可以创建 iptables(防火墙)规则,它会丢弃一些但不是所有的 SYN 数据包。另见 Simulate delayed and dropped packets on Linux。
TCP handle the problem automatically or developer must also handle it ?
这对开发者来说是透明的。最多应用程序连接失败(超时)。
建立连接时,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中,数据包可能会丢失。
我有3个问题,请帮助我。
- TCP 如何处理三次握手过程中的数据包丢失?
- 有什么方法可以模拟丢包问题吗?
- TCP 自动处理问题还是开发人员也必须处理?
感谢任何建议。
How TCP handle packet loss during three-way handshake ?
重传,与任何其他类型的数据包丢失一样。这就是为什么你在握手中有 ACK。
Is there any ways to simulate the packet loss issues ?
当然可以,但这取决于您的知识。例如,在 Linux 中可以创建 iptables(防火墙)规则,它会丢弃一些但不是所有的 SYN 数据包。另见 Simulate delayed and dropped packets on Linux。
TCP handle the problem automatically or developer must also handle it ?
这对开发者来说是透明的。最多应用程序连接失败(超时)。