国产精品chinese,色综合天天综合精品网国产在线,成午夜免费视频在线观看,清纯女学生被强行糟蹋小说

    <td id="ojr13"><tr id="ojr13"><label id="ojr13"></label></tr></td>
        • <source id="ojr13"></source>
            <td id="ojr13"><ins id="ojr13"><label id="ojr13"></label></ins></td>

            Article / 文章中心

            存在大量處于TIME_WAIT狀態(tài)的連接

            發(fā)布時間:2021-04-21 點擊數(shù):588
            問題現(xiàn)象

            云服務(wù)器中存在大量處于TIME_WAIT狀態(tài)的連接。

            原因分析

            首先通過調(diào)用close()發(fā)起主動關(guān)閉,在發(fā)送最后一個ACK之后會進入time_wait的狀態(tài),該發(fā)送方會保持2MSL時間之后才會回到初始狀態(tài)。MSL值是數(shù)據(jù)包在網(wǎng)絡(luò)中的最大生存時間。產(chǎn)生這種結(jié)果使得這個TCP連接在2MSL連接等待期間,定義這個連接的四元組(客戶端IP地址和端口,服務(wù)端IP地址和端口號)不能被使用。

            解決方法

            通過netstat或ss命令,可以看到大量處于TIME_WAIT狀態(tài)的連接。

            1. 執(zhí)行以下命令,查看TIME_WAIT狀態(tài)的連接數(shù)量。
              netstat -n | awk '/^tcp/ {++y[$NF]} END {for(w in y) print w, y[w]}'
              說明:或者執(zhí)行ss -tan state time-wait命令,查看TIME_WAIT連接信息。
            2. 執(zhí)行以下命令,編輯系統(tǒng)內(nèi)核配置。
              vi /etc/sysctl.conf
              修改或加入以下內(nèi)容。
              net.ipv4.tcp_syncookies = 1 
              net.ipv4.tcp_tw_reuse = 1 
              net.ipv4.tcp_tw_recycle = 1
              net.ipv4.tcp_fin_timeout = 30
              警告:對于服務(wù)端來說,在NAT環(huán)境中,開啟net.ipv4.tcp_tw_recycle = 1配置可能導(dǎo)致校驗時間戳遞增,從而影響業(yè)務(wù),不建議開啟該功能。關(guān)于這四個內(nèi)核參數(shù)的更多介紹,請參考以下內(nèi)容:
              • net.ipv4.tcp_syncookies=1:開啟SYN的cookies,當出現(xiàn)SYN等待隊列溢出時,啟用cookies進行處理。
              • net.ipv4.tcp_tw_reuse=1:允許將TIME-WAIT的socket重新用于新的TCP連接。如果新請求的時間戳,比存儲的時間戳更大,則系統(tǒng)將會從TIME_WAIT狀態(tài)的存活連接中選取一個,重新分配給新的請求連接。
              • net.ipv4.tcp_tw_recycle=1:開啟TCP連接中TIME-WAIT的sockets快速回收功能。需要注意的是,該機制也依賴時間戳選項,系統(tǒng)默認開啟tcp_timestamps機制,而當系統(tǒng)中的tcp_timestamps和tcp_tw_recycle機制同時開啟時,會激活TCP的一種行為,即緩存每個連接最新的時間戳,若后續(xù)的請求中時間戳小于緩存的時間戳時,該請求會被視為無效,導(dǎo)致數(shù)據(jù)包會被丟棄。特別是作為負載均衡服務(wù)器的場景,不同客戶端請求經(jīng)過負載均衡服務(wù)器的轉(zhuǎn)發(fā),可能被認為是同一個連接,若客戶端的時間不一致,對于后端服務(wù)器來說,會發(fā)生時間戳錯亂的情況,因此會導(dǎo)致數(shù)據(jù)包丟失,從而影響業(yè)務(wù)。
              • net.ipv4.tcp_fin_timeout=30:如果socket由服務(wù)端要求關(guān)閉,則該參數(shù)決定了保持在FIN-WAIT-2狀態(tài)的時間。
            3. 執(zhí)行命令以下命令,使配置生效。
              /sbin/sysctl -p 
            4. TIME_WAIT狀態(tài)的連接較多時,會導(dǎo)致各種問題,除了直觀的減少TIME_WAIT狀態(tài)的連接,也可以通過擴大端口范圍和對TIME_WAIT的bucket進行擴容等手段優(yōu)化系統(tǒng)性能
              如果您有其他問題,可以聯(lián)系北京志遠天成阿里云代理商,為您提供一對一專業(yè)全面的技術(shù)服務(wù),同時新老阿里云會員,均可享受我公司代理商價格,歡迎咨詢!歡迎咨詢.gif
              。