标签: c windows linux tcp
这是环境:
client -> router -> server
客户端也会继续将数据写入服务器。
以下是步骤:
路由器存在一些问题,因此客户端会收到错误消息。
路由器已恢复
客户端可以像以前一样将数据写入服务器。
PS:这是一个TCP连接。
答案 0 :(得分:2)
TCP旨在容忍临时故障。内置于TCP中的缓冲,排序,确认,超时和重传机制将处理一些丢弃的数据包。路由恢复时,连接的TCP流的末端只会看到延迟。客户端可能会溢出其套接字发送缓冲区并从发送调用返回错误,这取决于您如何处理(等待,重试,挽救)。
如果您的路由器确实是NAT防火墙,通常是消费级“路由器”,那么这不起作用。
如果服务器软件决定在经过一段时间的不活动后决定关闭您的连接,这也行不通。
我建议花些时间更多地了解TCP/IP,或者购买一个book:)