gpt4 book ai didi

sockets - TCP RST 会导致主机丢弃接收缓冲区吗?

转载 作者:可可西里 更新时间:2023-11-01 02:49:39 24 4
gpt4 key购买 nike

在收到一个 TCP RST 数据包后,主机是否会丢弃接收缓冲区中已被远程主机确认但未被使用套接字的应用进程读取的所有剩余数据?

我想知道一旦我对其他主机所说的不再感兴趣(例如,为了节省资源)就关闭套接字是否危险;例如如果那会导致对方丢失任何我已经发送但他尚未阅读的数据。

通常应该避免 RST 并指示完全的双向通信失败,还是如上例所示,RST 是一种相对安全的单向强制断开连接的方法?

最佳答案

我找到了一些关于该主题的很好的解释,它们表明在这种情况下很可能会丢失数据: http://blog.olivierlanglois.net/index.php/2010/02/06/tcp_rst_flag_subtleties

http://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable还提供了有关该主题的更多信息,并提供了我在代码中使用的解决方案。到目前为止,我还没有看到我的服务器应用程序发送任何 RST。

关于sockets - TCP RST 会导致主机丢弃接收缓冲区吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8873271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com