當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > OA系統(tǒng)企業(yè)版 > 相關(guān)軟件 > 上網(wǎng)行為管理軟件
網(wǎng)絡(luò)管理基本知識(shí):TCP的四種定時(shí)器
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
TCP 是提供可靠的傳輸層,它使用的方法之一就是確認(rèn)從另一端收到的數(shù)據(jù)。但是數(shù)據(jù)和確認(rèn)都可能會(huì)丟失。TCP 通過(guò)在發(fā)送時(shí)設(shè)置一個(gè)定時(shí)器來(lái)解決這個(gè)問(wèn)題。如果當(dāng)定時(shí)器溢出時(shí)還沒(méi)收到確認(rèn),它就會(huì)重傳該數(shù)據(jù)。關(guān)鍵在于超時(shí)和重傳策略,即怎樣決定超時(shí)的時(shí)間間隔和如何確定重傳的頻率。
對(duì)于每個(gè)連接,TCP 管理著四個(gè)不同的定時(shí)器:重傳定時(shí)器、堅(jiān)持定時(shí)器、?;疃〞r(shí)器 以及 2MSL 定時(shí)器。
重傳定時(shí)器
為了防止丟失數(shù)據(jù)報(bào)文段或確認(rèn)報(bào)文段,當(dāng) TCP 發(fā)送報(bào)文段時(shí),啟動(dòng)了特定報(bào)文段的重傳計(jì)時(shí)器,若在計(jì)時(shí)器超時(shí)之前收到對(duì)報(bào)文段的確認(rèn),則撤銷計(jì)時(shí)器。若收到特定報(bào)文段的確認(rèn)之前計(jì)時(shí)器已經(jīng)超時(shí),則重傳該報(bào)文,并把計(jì)時(shí)器復(fù)位。這里最重要的是超時(shí)的時(shí)間計(jì)算,有關(guān)該時(shí)間的請(qǐng)查閱具體的算法,這里不再進(jìn)行記錄。
堅(jiān)持定時(shí)器
堅(jiān)持定時(shí)器主要是解決零窗口大小通知可能導(dǎo)致的死鎖問(wèn)題。剛開(kāi)始接收端向發(fā)送端發(fā)送了一個(gè)零窗口報(bào)文段。在不久之后,如果接收端的緩存區(qū)有一定的空間可以接收數(shù)據(jù),此時(shí)接收端就會(huì)向發(fā)送端發(fā)送了一個(gè)非零窗口大小的報(bào)文段(即窗口更新),但是這個(gè)非零窗口大小的報(bào)文段在傳輸過(guò)程中丟失,導(dǎo)致發(fā)送端無(wú)法接收到該非零窗口大小的報(bào)文段。因此,發(fā)送端就會(huì)一直處于等待非零窗口大小的報(bào)文端通知,由于接收端已經(jīng)發(fā)送了非零窗口大小的報(bào)文段,而且并不知道該報(bào)文段在傳輸過(guò)程中丟失,則接收端會(huì)一直處于等待接收數(shù)據(jù)狀態(tài),如果沒(méi)有任何措施的話,這個(gè)死鎖的局面會(huì)一直延續(xù)下去。
為了解決上面這個(gè)問(wèn)題,TCP 為每一個(gè)連接設(shè)有一個(gè)堅(jiān)持定時(shí)器(也叫持續(xù)計(jì)數(shù)器)。當(dāng)發(fā)送端收到零窗口的確認(rèn)時(shí),就啟動(dòng)堅(jiān)持計(jì)時(shí)器,當(dāng)堅(jiān)持計(jì)時(shí)器截止期到時(shí),發(fā)送端就發(fā)送一個(gè)特殊的報(bào)文段,叫探測(cè)報(bào)文段,這個(gè)報(bào)文段只有一個(gè)字節(jié)的數(shù)據(jù)。探測(cè)報(bào)文段有序號(hào),但序號(hào)永遠(yuǎn)不需要確認(rèn),甚至在計(jì)算對(duì)其他部分?jǐn)?shù)據(jù)的確認(rèn)時(shí)這個(gè)序號(hào)也被忽略。探測(cè)報(bào)文段提醒接收端,確認(rèn)已丟失,必須重傳。
堅(jiān)持計(jì)時(shí)器的截止期設(shè)置為重傳時(shí)間的值,但若沒(méi)有收到來(lái)自接收端的響應(yīng),則發(fā)送另一個(gè)探測(cè)報(bào)文段,并將堅(jiān)持計(jì)時(shí)器的值加倍和并復(fù)位,發(fā)送端繼續(xù)發(fā)送探測(cè)報(bào)文段,將堅(jiān)持計(jì)時(shí)器的值加倍和復(fù)位,直到這個(gè)值增大到閾值為止(通常為 60 秒)。在此之后,發(fā)送端每隔 60s 就發(fā)送一個(gè)報(bào)文段,直到窗口重新打開(kāi)為止。
堅(jiān)持定時(shí)器的原理:當(dāng) TCP 服務(wù)器收到了客戶端的 0 滑動(dòng)窗口報(bào)文時(shí),啟動(dòng)一個(gè)定時(shí)器來(lái)計(jì)時(shí),并在定時(shí)器溢出的時(shí)向客戶端查詢窗口是否已經(jīng)增大,如果得到非零的窗口就重新開(kāi)始發(fā)送數(shù)據(jù),如果得到零窗口就再開(kāi)一個(gè)新的定時(shí)器準(zhǔn)備下一次查詢。
保活定時(shí)器
?;疃〞r(shí)器是為了應(yīng)對(duì) TCP 連接雙方出現(xiàn)長(zhǎng)時(shí)間的沒(méi)有數(shù)據(jù)傳輸?shù)那闆r。如果客戶端與服務(wù)器建立了 TCP 連接之后,客戶端由于某種原因?qū)е轮鳈C(jī)故障,則服務(wù)器就不能收到來(lái)自客戶端的數(shù)據(jù),而服務(wù)器不可能一直處于等待狀態(tài),保活定時(shí)器就是用來(lái)解決這個(gè)問(wèn)題的。服務(wù)器每收到一次客戶端的數(shù)據(jù),就重新設(shè)置?;疃〞r(shí)器,通常為 2 小時(shí),如果 2 小時(shí)沒(méi)有收到客戶端的數(shù)據(jù),服務(wù)端就發(fā)送一個(gè)探測(cè)報(bào)文,以后每隔75秒發(fā)送一次,如果連續(xù)發(fā)送10次探測(cè)報(bào)文段后仍沒(méi)有收到客戶端的響應(yīng),服務(wù)器就認(rèn)為客戶端出現(xiàn)了故障,就可以終止這個(gè)連接。
2MSL 定時(shí)器
2MSL 定時(shí)器主要是解決以下兩種情況:
TIME_WA上網(wǎng)行為 確保有足夠的時(shí)間讓對(duì)端收到了ACK,如果被動(dòng)關(guān)閉的那方?jīng)]有收到 ACK,就會(huì)觸發(fā)被動(dòng)端重發(fā) FIN。因?yàn)樽詈笠淮未_認(rèn)應(yīng)答 ACK 報(bào)文段很有可能丟失,因而使被動(dòng)關(guān)閉方處于在LIST_ACK 狀態(tài)的,此時(shí)被動(dòng)關(guān)閉方會(huì)重發(fā)這個(gè) FIN+ACK 報(bào)文段,在這等待的 2MSL 時(shí)間內(nèi)主動(dòng)關(guān)閉方重新收到這個(gè)被動(dòng)關(guān)閉方重發(fā)的 FIN+ACK 報(bào)文段,因此,主動(dòng)關(guān)閉方會(huì)重新發(fā)送確認(rèn)應(yīng)答信息,從而重新啟動(dòng) 2MSL 計(jì)時(shí)器,直到通信雙方都進(jìn)入 CLOSED 狀態(tài)。如果主動(dòng)關(guān)閉方在 TIME_WA上網(wǎng)行為 狀態(tài)不等待一段時(shí)間就直接釋放連接并進(jìn)入 CLOSED 狀態(tài),那么主動(dòng)關(guān)閉方無(wú)法收到來(lái)自被動(dòng)關(guān)閉方重發(fā)的 FIN+ACK 報(bào)文段,也就不會(huì)再發(fā)送一次確認(rèn) ACK 報(bào)文段,因此被動(dòng)關(guān)閉方就無(wú)法正常進(jìn)入CLOSED 狀態(tài)。
有足夠的時(shí)間讓這個(gè)連接不會(huì)跟后面的連接混在一起。防止已失效的請(qǐng)求連接出現(xiàn)在本連接中。在連接處于 2MSL 等待時(shí),任何遲到的報(bào)文段將被丟棄,因?yàn)樘幱? 2MSL等待的、由該插口(插口是IP和端口對(duì)的意思,socket)定義的連接在這段時(shí)間內(nèi)將不能被再用,這樣就可以使下一個(gè)新的連接中不會(huì)出現(xiàn)這種舊的連接之前延遲的報(bào)文段。
【推薦閱讀】
◆上網(wǎng)行為運(yùn)維管理專區(qū)
◆上網(wǎng)行為運(yùn)維一體化管理的內(nèi)涵如何把握?
◆上網(wǎng)行為運(yùn)維管理的七大內(nèi)容和四個(gè)技巧
◆部署全移動(dòng)網(wǎng)絡(luò)環(huán)境 提升企業(yè)移動(dòng)管理價(jià)值
◆網(wǎng)管軟件專區(qū)
本文來(lái)自互聯(lián)網(wǎng),僅供參考- 1店鋪管理軟件
- 2工廠管理軟件
- 3服裝庫(kù)存管理軟件
- 4銷售管理軟件
- 5電腦銷售管理軟件
- 6預(yù)算管理軟件
- 7人員管理軟件
- 8檔案管理軟件
- 9公司管理軟件
- 10企業(yè)管理軟件
- 11中小企業(yè)管理軟件
- 12日程管理軟件
- 1網(wǎng)絡(luò)管理員知識(shí):服務(wù)器機(jī)房維護(hù)與管理詳談
- 2IT運(yùn)維管理如何迎接云時(shí)代的到來(lái)?
- 3用鏈路層發(fā)現(xiàn)協(xié)議管理分散設(shè)備
- 4寬帶路由器死機(jī)的四大原因
- 5大客戶專線環(huán)境下傳統(tǒng)設(shè)備網(wǎng)管的局限和問(wèn)題
- 6IT運(yùn)維管理經(jīng)驗(yàn)分享:如何應(yīng)對(duì)網(wǎng)站備案被注銷
- 7調(diào)查:企業(yè)走向IaaS之路坎坷
- 8企業(yè)網(wǎng)絡(luò)管理技巧:五步管好局域網(wǎng)帶寬管理
- 9徐州市公安局IT運(yùn)維管理“不做事后諸葛亮”
- 10IT運(yùn)維管理關(guān)鍵技術(shù)點(diǎn)解剖
- 11網(wǎng)絡(luò)管理技術(shù)的應(yīng)用分析
- 122015年網(wǎng)絡(luò)市場(chǎng)展望 無(wú)線和統(tǒng)一通信被看好
- 13網(wǎng)管員經(jīng)驗(yàn)分享:教你如何防止自己的IP泄漏
- 14網(wǎng)絡(luò)運(yùn)維管理的好幫手:IIS日志
- 15上網(wǎng)行為管理系統(tǒng)的解決之道
- 16IT運(yùn)維管理的七大內(nèi)容和四個(gè)技巧
- 172013年預(yù)測(cè):大數(shù)據(jù)帶來(lái)的五大挑戰(zhàn)
- 18云網(wǎng)絡(luò)如何應(yīng)對(duì)云計(jì)算未來(lái)?
- 19綜合布線系統(tǒng)線纜如何挑選
- 20你知道如何節(jié)約存儲(chǔ)成本嗎?
- 21工業(yè)以太網(wǎng)布線與故障排除經(jīng)驗(yàn)
- 22網(wǎng)絡(luò)管理技巧七則
- 23IT運(yùn)維管理經(jīng)驗(yàn):有關(guān)ARP病毒問(wèn)題的處理匯總
- 24IT運(yùn)維管理經(jīng)驗(yàn):VLAN的配置管理與維護(hù)
- 25軟交換的七大特點(diǎn)和四大功能
- 26網(wǎng)管必備技巧:如何跟蹤IP地址
- 27移動(dòng)時(shí)代企業(yè)應(yīng)用帶寬如何管理
- 28未來(lái)數(shù)據(jù)中心發(fā)展的四個(gè)關(guān)鍵點(diǎn)
- 29網(wǎng)管軟件選擇四大要素
- 30IT運(yùn)維管理的發(fā)展趨勢(shì)之自動(dòng)化運(yùn)維
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓