【问题标题】:TCP connection broken detection (If intermediate link goes down)?TCP 连接中断检测(如果中间链接断开)?
【发布时间】:2013-06-23 20:43:35
【问题描述】:

假设在 C 中实现。 如果中间链路发生故障,则 TCP 连接正在通过该链路发送数据。两端的socket会不会立即无法发送和接收数据?

如果链接在 5-6 秒后出现,是否可以使用相同的套接字来发送和接收数据包?

【问题讨论】:

    标签: c sockets tcp


    【解决方案1】:

    TCP/IP 协议套件旨在通过不可靠的链接工作。如果连接在几秒钟后恢复,应用程序只会注意到吞吐量下降。

    【讨论】:

    • 只是好奇-如果中间链接没有出现,什么时候结束套接字在 read()/write() 上收到 RST 或一些此类错误?
    • 刚刚发现另一个有用且相关的 SO 帖子,它确实回答了我的查询 - stackoverflow.com/questions/17326918/…
    • TCP 将每隔几秒尝试重新传输数据包。如果没有收到回复,它可能会继续这样做几个小时,尽管我没有任何参考来支持它。收到 RST 将意味着链接已恢复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-10
    • 2014-01-24
    • 2020-07-04
    • 1970-01-01
    • 2013-11-16
    • 2013-11-22
    • 2014-05-16
    相关资源
    最近更新 更多