广州电子商城网站seo优化排名易下拉软件
news/
2025/9/23 12:34:51/
文章来源:
广州电子商城网站,seo优化排名易下拉软件,网站上传百度多久收录,wordpress 查询页面连接断开阶段 四次挥手机制#xff1a;TCP连接的断开需要四次挥手#xff0c;这是因为双方都需要独立地关闭数据传输。第二次和第三次挥手不能合并#xff0c;因为在回复第二次挥手的时候#xff0c;可能还有数据没有接收完成#xff0c;所以需要先回复ACK报文#xff0c…
连接断开阶段 四次挥手机制TCP连接的断开需要四次挥手这是因为双方都需要独立地关闭数据传输。第二次和第三次挥手不能合并因为在回复第二次挥手的时候可能还有数据没有接收完成所以需要先回复ACK报文等待所有的数据接收完成之后再发送FIN报文。这样可以确保数据的完整性。 延迟应答TCP为了提高传输效率采用了延迟应答的策略。如果没有响应数据要发送TCP会延迟一段时间等待是否有响应数据可以一起发送。这样可以减少网络的负载。如果在等待发送ACK期间对方的第二个数据报文又到达了这时就会立刻发送ACK。这样可以确保数据的及时性。如果开启了延迟应答的TCP并且没有响应数据要发送那么就可能看到ACK和FIN报文合并的情况。这是因为TCP为了提高效率尽可能地将多个报文合并发送。 报文丢失如果某次挥手的报文丢失了TCP会进行超时重传达到最大次数之后就强制断开连接。这是因为TCP为了确保数据的可靠性采用了超时重传的策略。如果超过一定的时间还没有收到对方的应答就会认为报文丢失然后进行重传。 主机宕机如果客户端/服务端建立连接后宕机/断网会有以下几种情况 未宕机方传输数据如果服务端向客户端传输数据的过程中发现客户端宕机并重启客户端的TCP连接的数据结构已经丢失那么会发送RST报文如果客户端仍在宕机服务端会触发超时重传次数达上限后断开。这是因为TCP为了确保数据的可靠性采用了超时重传的策略。宕机方传输数据如果客户端宕机之后重启希望与同一服务端连接会发送SYN报文。如果客户端SYN报文中端口号与历史连接相同服务端会认为这个SYN是乱序的所以回复历史连接中的正确ACKChallenge ACK但是客户端发现这个ACK不是自己希望收到的就会发送RST双方断开连接。这是因为TCP为了防止乱序的报文影响到正常的连接采用了Challenge ACK的策略。长时间无数据传输为了防止客户端长时间不发送报文占用服务端资源服务端可以开启TCP保活机制发送探测报文来探测客户端还是否处于正常状态否则只有服务端重启才能断开。这是因为TCP为了防止无效的连接占用资源采用了保活机制。 进程崩溃如果进程崩溃操作系统会在回收资源的时候代为进行挥手过程这与主机宕机是不同的因为TCP的连接信息是由内核维护的。这是因为TCP为了防止进程崩溃导致的资源泄露采用了进程崩溃后自动断开连接的策略。 TIME_WAIT状态 TIME_WAIT状态是TCP连接断开后的一个必要状态。这个状态的存在有两个主要原因 防止旧报文干扰新连接TIME_WAIT状态可以防止“旧的重复报文”在新的连接中被错误地接收。这是通过让TCP连接在TIME_WAIT状态持续2MSL的时间使得网络中可能存在的属于“旧连接”的报文都消失这样新的连接就不会收到旧的报文了。保证正常关闭TIME_WAIT状态可以确保TCP连接可靠地关闭。这是通过在TIME_WAIT状态期间等待2MSL报文最大生存时间来实现的这样可以保证对方收到了我们的FIN报文如果对方没有收到我们可以在这个时间内重发。 主动断开连接 主动断开连接会导致有很多处于TIME_WAIT状态的TCP连接这会占用系统资源因此应该尽量让客户端承受TIME_WAIT。 TCP连接可以在以下几种情况下被主动断开 长连接数量达上限如果长连接的数量达到了系统的上限系统可能会主动断开一些连接以释放资源。长连接超时如果客户端长时间无请求长连接可能会超时此时服务端可能会主动断开连接。没有使用长连接如果没有使用长连接Keep-Alive短链接一般由服务端主动关闭 快速复用 当TIME_WAIT状态过长会导致占用系统资源过多时可以选择快速复用但这相当于放弃了TIME_WAIT的作用所以最好在保证安全的情况下复用。 tcp_tw_reuse选项tcp_tw_reuse选项可以快速复用处于TIME_WAIT的连接但需要配合时间戳一同开启。虽然有了时间戳控制可以避免历史报文但是历史RST报文只要在接收窗口内就不会丢弃而且也无法保证被动关闭方正常关闭。tcp_tw_recycle选项tcp_tw_recycle选项也可以快速复用但是在使用了NAT网络的情况下是不安全的因为tcp_tw_recycle和时间戳是针对IP地址做PAWS检查的使用NAT会导致内网下的两个主机会映射到同一个IP此时两端传输数据包一端的时间戳会比另一端小在服务器看来会认为小的那一端是非法报文从而丢弃。tcp_max_tw_buckets选项tcp_max_tw_buckets选项可以设定当前主机最多存在的TIME_WAIT状态的TCP连接的数量当超过这个上限就可以直接关闭。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/912554.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!