我们正在使用 C/S 在 linux 上开发一个网络应用程序,最近我们发现当有大量 UDP 和 TCP 数据通过带宽传输时,一些打开和连接的套接字上的写入/读取可能会失败,看起来套接字是因不明原因关闭。
问题来了,请告诉我TCP是否会自动关闭套接字。
假设有发送方和接收方,发送方通过 TCP 非阻塞套接字向接收方发送大量数据。并假设应用程序本身和其他应用程序在带宽上有大量流量。如果带宽完全部署,发送方没有任何机会发送数据,那么 TCP 会在一段时间后自动关闭套接字吗?如果是,时间价值是多少?
假设问题 1 的带宽没有完全部署,发送方可以成功将数据传递给接收方。但是如果接收方没有读取数据并且在一段时间后缓冲区会填满,那么 TCP 会在几小时内自动关闭套接字吗?
任何帮助将不胜感激!!