gpt4 book ai didi

tcp - 谁首先在客户端-服务器连接中设置 tcp FIN 标志

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

谁应该首先设置 TCP FIN 标志。 Server,什么时候发送完数据,或者Client,什么时候接收到完整的数据?

问候

最佳答案

FIN 在该端的应用程序请求关闭连接时发送。这也不必在从另一方收到 FIN 后立即发生 - 一方可以发送 FIN,然后另一方发送一些在发送自己的 FIN 之前获取更多数据。

一旦 TCP 连接建立起来,它就是完全对称的 - 任何一方都无法区分为“服务器”或“客户端”。这意味着任何一方都可以发送第一个 FIN。由于主机在发送 FIN 后无法在连接上发送更多数据,因此通常是首先知道它没有更多数据可发送的一方。

有一个很好的实际理由来设计一个网络协议(protocol),以便客户端是第一个关闭连接的人——“第一个关闭者”以 TIME_WAIT 状态结束,持续时间是最大段生命周期的两倍,也就是几分钟。这会在那几分钟内占用少量资源 - 但如果这种情况发生在服务器端,服务器每秒处理数百个连接,那么这些 TIME_WAIT 套接字将很快加起来。最好将这种负担分摊给客户。

关于tcp - 谁首先在客户端-服务器连接中设置 tcp FIN 标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4677925/

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