TCP協議有幾大計時器?


1)超時重傳計時器

目的:避免無限等待確認報文

創建時間:在發送TCP報文段時,會為該報文段設置一個超時重傳計時器

可能發生的情況:在超時時間到達之前,收到了該報文段的確認則撤銷計時器,否則重傳該報文段,並將超時重傳計時器復位

重傳時間:2*RTT(RTT為往返時間)

2)堅持計時器

目的:解決零大小窗口導致的死鎖問題

死鎖產生原因:當接收端窗口大小為0時,發送端停止發送,此后如果接收端有空余空間來接收數據,則發送一個新窗口大小的報文,如果該報文丟失了則導致雙方都處於等待狀態,產生死鎖

工作原理:當發送端接收到接收端發送的零大小窗口的報文時,就啟動堅持計時器,當計時器到達計時時間,發送端就主動發送一個報文段告訴接收端你發送的新窗口大小的報文丟失了,需要重新發送

堅持時間:開始先設置為超時重傳時間,如果超時了還是沒有收到接收端發送的新窗口大小報文,則將計時器的值加倍並且復位,直到大於門限值60s,在此之后每隔60s向接收端發送一個詢問報文

3)保活計時器

目的:避免空閑連接長時間的占用服務器資源

工作原理:當服務器收到數據時都將保活計時器重新設置(一般2h),過了2h后,服務器如果沒有收到數據,每隔75s發送一個探測報文給客戶端,當連續發送10次后,仍然沒有收到客戶端的回復,則服務器斷開連接

4)時間等待計時器(為服務器Time_Wait狀態設置)

服務器主動斷開連接時,服務器會保持一個Time_wait狀態,而時間等待計時器就是Time_wait狀態的持續時間

關於Time_wait狀態請參考:https://www.cnblogs.com/yinbiao/p/10945836.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM