日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TCP关闭问题

發布時間:2025/3/21 编程问答 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TCP关闭问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

三次握手,四次揮手。

意思是tcp建立連接時需要三次交互來完成,A發起連接

A --- SYN --> B A <-- SYN + ACK --- B (1) A --- ACK --> B

而關閉tcp連接需要四次交互,A發起關閉

A --- FIN --> B A <-- ACK --- B (1) A <-- FIN --- B A --- ACK --> B (2)

這里在(1)時B開始處于CLOSE_WAIT狀態,一直到收到ACK后B才轉為CLOSED ,而A就處于TIME_WAIT狀態,一直到2MSL(Max Segament Lifetime)才轉為CLOSED

為什么需要2MSL才真正轉為CLOSED?是因為需要緩沖時間萬一B丟失ACK重發FIN的話還可以回復ACK,還有就是2MSL后“迷失”在網絡上的包全部失效

大量的?TIME_WAIT?和?CLOSE_WAIT?會造成服務器的連接資源被浪費甚至占滿后導致服務器服務拒絕,怎么解決?

解決TIME_WAIT

net.ipv4.tcp_tw_recycle = 1 #開啟快速回收,默認0net.ipv4.tcp_tw_reuse = 1 #開啟重用,默認0net.ipv4.tcp_fin_timeout = 30 # 減小fin_timeout,默認60,單位s

系統參數的配置可以解決time_wait,但是close_wait就沒那么簡單了

解決CLOSE_WAIT

一般都是服務端的代碼問題。

絕大多數都是客戶端發起關閉,這樣可知HTTP服務器應該會有很多TIME_WAIT,不過當http使用keep-alive后服務端會主動斷連。

轉載于:https://my.oschina.net/alexqdjay/blog/803993

總結

以上是生活随笔為你收集整理的TCP关闭问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。