版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
TCP的擁塞控制方法TCP采用基于窗口的方法進(jìn)行擁塞控制。該方法屬于閉環(huán)控制方法。TCP發(fā)送方維持一個(gè)擁塞窗口CWND
(CongestionWindow)擁塞窗口的大小取決于網(wǎng)絡(luò)的擁塞程度,并且動(dòng)態(tài)地在變化。發(fā)送端利用擁塞窗口根據(jù)網(wǎng)絡(luò)的擁塞情況調(diào)整發(fā)送的數(shù)據(jù)量。所以,發(fā)送窗口大小不僅取決于接收方公告的接收窗口,還取決于網(wǎng)絡(luò)的擁塞狀況,所以真正的發(fā)送窗口值為:真正的發(fā)送窗口值=
Min(公告窗口值,擁塞窗口值)控制擁塞窗口的原則只要網(wǎng)絡(luò)沒有出現(xiàn)擁塞,擁塞窗口就可以再增大一些,以便把更多的分組發(fā)送出去,這樣就可以提高網(wǎng)絡(luò)的利用率。但只要網(wǎng)絡(luò)出現(xiàn)擁塞或有可能出現(xiàn)擁塞,就必須把擁塞窗口減小一些,以減少注入到網(wǎng)絡(luò)中的分組數(shù),以便緩解網(wǎng)絡(luò)出現(xiàn)的擁塞。擁塞的判斷重傳定時(shí)器超時(shí)現(xiàn)在通信線路的傳輸質(zhì)量一般都很好,因傳輸出差錯(cuò)而丟棄分組的概率是很小的(遠(yuǎn)小于1%)。只要出現(xiàn)了超時(shí),就可以猜想網(wǎng)絡(luò)可能出現(xiàn)了擁塞。收到三個(gè)相同(重復(fù))的ACK個(gè)別報(bào)文段會(huì)在網(wǎng)絡(luò)中丟失,預(yù)示可能會(huì)出現(xiàn)擁塞(實(shí)際未發(fā)生擁塞),因此可以盡快采取控制措施,避免擁塞。TCP擁塞控制算法四種(RFC5681):慢開始(slow-start)擁塞避免(congestionavoidance)快重傳(fastretransmit)快恢復(fù)(fastrecovery)慢開始(Slowstart)用來確定網(wǎng)絡(luò)的負(fù)載能力。算法的思路:由小到大逐漸增大擁塞窗口數(shù)值。初始擁塞窗口cwnd設(shè)置:舊的規(guī)定:在剛剛開始發(fā)送報(bào)文段時(shí),先把初始擁塞窗口cwnd設(shè)置為1至2個(gè)發(fā)送方的最大報(bào)文段SMSS(SenderMaximumSegmentSize)的數(shù)值。新的RFC5681把初始擁塞窗口cwnd設(shè)置為不超過2至4個(gè)SMSS的數(shù)值。慢開始門限ssthresh(狀態(tài)變量):防止擁塞窗口cwnd增長過大引起網(wǎng)絡(luò)擁塞。慢開始(Slowstart)擁塞窗口cwnd控制方法:在每收到一個(gè)對(duì)新的報(bào)文段的確認(rèn)后,可以把擁塞窗口增加最多一個(gè)SMSS的數(shù)值。其中
N是原先未被確認(rèn)的、但現(xiàn)在被剛收到的確認(rèn)報(bào)文段所確認(rèn)的字節(jié)數(shù)。不難看出,當(dāng)
N<SMSS時(shí),擁塞窗口每次的增加量要小于SMSS。用這樣的方法逐步增大發(fā)送方的擁塞窗口cwnd,可以使分組注入到網(wǎng)絡(luò)的速率更加合理。擁塞窗口cwnd每次的增加量=min(N,SMSS)(5-8)發(fā)送方接收方發(fā)送M1
確認(rèn)M1發(fā)送M2~M3
確認(rèn)M2~M3發(fā)送M4~M7
確認(rèn)M4~M7cwnd=1cwnd=2cwnd=4發(fā)送M8~M15cwnd=8…發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)(重傳的不算在內(nèi))就使cwnd加1。輪次1輪次2輪次3窗口大小按指數(shù)增加,不慢!每經(jīng)過一個(gè)傳輸輪次,擁塞窗口就加倍。傳輸輪次使用慢開始算法后,每經(jīng)過一個(gè)傳輸輪次(transmissionround),擁塞窗口cwnd就加倍。一個(gè)傳輸輪次所經(jīng)歷的時(shí)間其實(shí)就是往返時(shí)間RTT?!皞鬏斴喆巍备訌?qiáng)調(diào):把擁塞窗口cwnd所允許發(fā)送的報(bào)文段都連續(xù)發(fā)送出去,并收到了對(duì)已發(fā)送的最后一個(gè)字節(jié)的確認(rèn)。例如,擁塞窗口cwnd=4,這時(shí)的往返時(shí)間RTT就是發(fā)送方連續(xù)發(fā)送4個(gè)報(bào)文段,并收到這4個(gè)報(bào)文段的確認(rèn),總共經(jīng)歷的時(shí)間。設(shè)置慢開始門限狀態(tài)變量ssthresh慢開始門限ssthresh的用法如下:當(dāng)cwnd<ssthresh時(shí),使用慢開始算法。當(dāng)cwnd>ssthresh時(shí),停止使用慢開始算法而改用擁塞避免算法。當(dāng)cwnd=ssthresh時(shí),既可使用慢開始算法,也可使用擁塞避免算法。擁塞避免算法思路:讓擁塞窗口cwnd緩慢地增大,即每經(jīng)過一個(gè)往返時(shí)間RTT就把發(fā)送方的擁塞窗口cwnd加1,而不是加倍,使擁塞窗口cwnd按線性規(guī)律緩慢增長。因此在擁塞避免階段就有“加法增大”(AdditiveIncrease)的特點(diǎn)。這表明在擁塞避免階段,擁塞窗口cwnd按線性規(guī)律緩慢增長,比慢開始算法的擁塞窗口增長速率緩慢得多。當(dāng)網(wǎng)絡(luò)出現(xiàn)擁塞時(shí)無論在慢開始階段還是在擁塞避免階段,只要發(fā)送方判斷網(wǎng)絡(luò)出現(xiàn)擁塞(重傳定時(shí)器超時(shí)):ssthresh=max(cwnd/2,2)cwnd=1執(zhí)行慢開始算法這樣做的目的就是要迅速減少主機(jī)發(fā)送到網(wǎng)絡(luò)中的分組數(shù),使得發(fā)生擁塞的路由器有足夠時(shí)間把隊(duì)列中積壓的分組處理完畢。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例當(dāng)TCP連接進(jìn)行初始化時(shí),將擁塞窗口置為1。圖中的窗口單位不使用字節(jié)而使用報(bào)文段。慢開始門限的初始值設(shè)置為16個(gè)報(bào)文段,即ssthresh=16。超時(shí)246810121416182022004812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
慢開始慢開始慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)246810121416182022004812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
慢開始慢開始發(fā)送端的發(fā)送窗口不能超過擁塞窗口cwnd和接收端窗口rwnd中的最小值。我們假定接收端窗口足夠大,因此現(xiàn)在發(fā)送窗口的數(shù)值等于擁塞窗口的數(shù)值。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例在執(zhí)行慢開始算法時(shí),擁塞窗口cwnd=1,發(fā)送第一個(gè)報(bào)文段。超時(shí)246810121416182022004812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)ACK,就把擁塞窗口值加1,然后開始下一輪的傳輸(請(qǐng)注意,橫坐標(biāo)是傳輸輪次,不是時(shí)間)。因此擁塞窗口cwnd隨著傳輸輪次按指數(shù)規(guī)律增長。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)ACK,就把擁塞窗口值加1,然后開始下一輪的傳輸(請(qǐng)注意,橫坐標(biāo)是傳輸輪次,不是時(shí)間)。因此擁塞窗口cwnd隨著傳輸輪次按指數(shù)規(guī)律增長。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)ACK,就把擁塞窗口值加1,然后開始下一輪的傳輸(請(qǐng)注意,橫坐標(biāo)是傳輸輪次,不是時(shí)間)。因此擁塞窗口cwnd隨著傳輸輪次按指數(shù)規(guī)律增長。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4當(dāng)擁塞窗口cwnd增長到慢開始門限值ssthresh時(shí)(圖中的點(diǎn)
,此時(shí)擁塞窗口cwnd=16),就改為執(zhí)行擁塞避免算法,擁塞窗口按線性規(guī)律增長。必須強(qiáng)調(diào)指出“擁塞避免”并非指完全能夠避免了擁塞。利用以上的措施要完全避免網(wǎng)絡(luò)擁塞還是不可能的?!皳砣苊狻笔钦f在擁塞避免階段把擁塞窗口控制為按線性規(guī)律增長,使網(wǎng)絡(luò)比較不容易出現(xiàn)擁塞。
慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4當(dāng)擁塞窗口cwnd=24時(shí),網(wǎng)絡(luò)出現(xiàn)了超時(shí)(圖中的點(diǎn)
),發(fā)送方判斷為網(wǎng)絡(luò)擁塞。于是調(diào)整門限值
ssthresh=cwnd/2=12,同時(shí)設(shè)置擁塞窗口cwnd=1,進(jìn)入慢開始階段。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4當(dāng)擁塞窗口cwnd=24時(shí),網(wǎng)絡(luò)出現(xiàn)了超時(shí)(圖中的點(diǎn)
),發(fā)送方判斷為網(wǎng)絡(luò)擁塞。于是調(diào)整門限值
ssthresh=cwnd/2=12,同時(shí)設(shè)置擁塞窗口cwnd=1,進(jìn)入慢開始階段。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4按照慢開始算法,發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)ACK,就把擁塞窗口值加1。當(dāng)擁塞窗口cwnd=ssthresh=12時(shí)(圖中的點(diǎn)
,這是新的ssthresh值),改為執(zhí)行擁塞避免算法,擁塞窗口按線性規(guī)律增大。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4當(dāng)擁塞窗口cwnd=16時(shí)(圖中的點(diǎn)
),出現(xiàn)了一個(gè)新的情況,就是發(fā)送方一連收到3個(gè)對(duì)同一個(gè)報(bào)文段的重復(fù)確認(rèn)(圖中記為3-ACK)。發(fā)送方改為執(zhí)行快重傳和快恢復(fù)算法??熘貍魉惴ú捎每熘貍鱂R(FastRetransmission)算法可以讓發(fā)送方盡早知道發(fā)生了個(gè)別報(bào)文段的丟失。快重傳算法首先要求接收方不要等待自己發(fā)送數(shù)據(jù)時(shí)才進(jìn)行捎帶確認(rèn),而是要立即發(fā)送確認(rèn),即使收到了失序的報(bào)文段也要立即發(fā)出對(duì)已收到的報(bào)文段的重復(fù)確認(rèn)??熘貍魉惴òl(fā)送方只要一連收到三個(gè)重復(fù)確認(rèn),就知道接收方確實(shí)沒有收到報(bào)文段,因而應(yīng)當(dāng)立即進(jìn)行重傳(即“快重傳”),這樣就不會(huì)出現(xiàn)超時(shí),發(fā)送方也不就會(huì)誤認(rèn)為出現(xiàn)了網(wǎng)絡(luò)擁塞。使用快重傳可以使整個(gè)網(wǎng)絡(luò)的吞吐量提高約20%。
不難看出,快重傳并非取消重傳計(jì)時(shí)器,而是在某些情況下可更早地重傳丟失的報(bào)文段??熘貍髋e例發(fā)送方接收方發(fā)送M1
確認(rèn)M1t
確認(rèn)M2發(fā)送M2發(fā)送M3發(fā)送M4
?發(fā)送M5發(fā)送M6
重復(fù)確認(rèn)M2立即重傳M3
重復(fù)確認(rèn)M2
重復(fù)確認(rèn)M2t發(fā)送M7收到三個(gè)連續(xù)的對(duì)M2
的重復(fù)確認(rèn)立即重傳M3丟失快恢復(fù)算法當(dāng)發(fā)送端收到連續(xù)三個(gè)重復(fù)的確認(rèn)時(shí),由于發(fā)送方現(xiàn)在認(rèn)為網(wǎng)絡(luò)很可能沒有發(fā)生擁塞,因此現(xiàn)在不執(zhí)行慢開始算法,而是執(zhí)行快恢復(fù)算法FR(FastRecovery)算法:
(1)慢開始門限ssthresh=當(dāng)前擁塞窗口cwnd/2; (2)新?lián)砣翱赾wnd=慢開始門限ssthresh;(3)開始執(zhí)行擁塞避免算法,使擁塞窗口緩慢地線性增大。慢開始和擁塞避免算法的實(shí)現(xiàn)舉例超時(shí)24681012141618202200812162024傳輸輪次擁塞窗口cwnd3-ACKTCPReno版本ssthresh的初始值擁塞避免
24擁塞避免擁塞避免
4因此,在圖的點(diǎn)
,發(fā)送方知道現(xiàn)在只是丟失了個(gè)別的報(bào)文段。于是不啟動(dòng)慢開始,而是執(zhí)行快恢復(fù)算法。這時(shí),發(fā)送方調(diào)整門限值ssthresh=cwnd/2=8,同時(shí)設(shè)置擁塞窗口cwnd=ssthresh=8(見圖中的點(diǎn)
),并開始執(zhí)行擁塞
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 北京課改版歷史七年級(jí)上冊(cè)第11課《秦朝的統(tǒng)一》聽課評(píng)課記錄
- 新人教版九年級(jí)歷史下冊(cè)第19課《現(xiàn)代音樂和電影》聽課評(píng)課記錄
- 蘇科版九年級(jí)數(shù)學(xué)聽評(píng)課記錄:第31講 與圓有關(guān)的位置關(guān)系
- 人教版九年級(jí)數(shù)學(xué)下冊(cè):29《復(fù)習(xí)題》聽評(píng)課記錄1
- 二年級(jí)體育聽評(píng)課記錄
- 首師大版道德與法治七年級(jí)下冊(cè)1.2《彼此尊重顯自尊》聽課評(píng)課記錄
- 五年級(jí)數(shù)學(xué)下冊(cè)聽評(píng)課記錄-《6 圓的面積》蘇教版
- 蘇教版小學(xué)數(shù)學(xué)四年級(jí)上口算部分
- 三年級(jí)語文教學(xué)計(jì)劃模板
- 新員工入職工作計(jì)劃書
- 《社區(qū)工作者培訓(xùn)課件 新浪版》
- 教育信息化背景下的學(xué)術(shù)研究趨勢(shì)
- 人教版小學(xué)數(shù)學(xué)(2024)一年級(jí)下冊(cè)第五單元100以內(nèi)的筆算加、減法綜合素養(yǎng)測(cè)評(píng) B卷(含答案)
- 2024-2025學(xué)年北京市豐臺(tái)區(qū)高三語文上學(xué)期期末試卷及答案解析
- 2024年度體育賽事贊助合同:運(yùn)動(dòng)員代言與贊助權(quán)益2篇
- 2025屆西藏林芝一中高三第二次診斷性檢測(cè)英語試卷含解析
- 藥企銷售總經(jīng)理競(jìng)聘
- 開封市第一屆職業(yè)技能大賽健康照護(hù)項(xiàng)目技術(shù)文件(國賽)
- 公路電子收費(fèi)系統(tǒng)安裝合同范本
- 醫(yī)院培訓(xùn)課件:《傷口評(píng)估與測(cè)量》
- 2021年全國高考物理真題試卷及解析(全國已卷)
評(píng)論
0/150
提交評(píng)論