傳輸層的擁塞控制_第1頁(yè)
傳輸層的擁塞控制_第2頁(yè)
傳輸層的擁塞控制_第3頁(yè)
傳輸層的擁塞控制_第4頁(yè)
傳輸層的擁塞控制_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、n網(wǎng)絡(luò)傳輸層的擁塞控制擁塞產(chǎn)生原因n在某段時(shí)間,若對(duì)網(wǎng)絡(luò)中某一資源(如鏈路容量、交換機(jī)點(diǎn)的緩存和處理機(jī))的需求超過(guò)了該資源所能提供的可用部分,網(wǎng)絡(luò)性能就要變壞。n對(duì)資源的需求可用資源(供不應(yīng)求)幾種擁塞控制方法n慢開(kāi)始n擁塞避免n快重傳n快恢復(fù)1. 慢開(kāi)始和擁塞避免n發(fā)送方維持一個(gè)叫做擁塞窗口 cwnd (congestion window)的狀態(tài)變量。擁塞窗口的大小取決于網(wǎng)絡(luò)的擁塞程度,并且動(dòng)態(tài)地在變化。發(fā)送方讓自己的發(fā)送窗口等于擁塞窗口。如再考慮到接收方的接收能力,則發(fā)送窗口還可能小于擁塞窗口。n發(fā)送方控制擁塞窗口的原則是:只要網(wǎng)絡(luò)沒(méi)有出現(xiàn)擁塞,擁塞窗口就再增大一些,以便把更多的分組發(fā)送出

2、去。但只要網(wǎng)絡(luò)出現(xiàn)擁塞,擁塞窗口就減小一些,以減少注入到網(wǎng)絡(luò)中的分組數(shù)。 慢開(kāi)始算法的原理 n在主機(jī)剛剛開(kāi)始發(fā)送報(bào)文段時(shí)可先設(shè)置擁塞窗口 cwnd = 1,即設(shè)置為一個(gè)最大報(bào)文段 MSS 的數(shù)值。n在每收到一個(gè)對(duì)新的報(bào)文段的確認(rèn)后,將擁塞窗口加 1,即增加一個(gè) MSS 的數(shù)值。n用這樣的方法逐步增大發(fā)送端的擁塞窗口 cwnd,可以使分組注入到網(wǎng)絡(luò)的速率更加合理。 發(fā)送方接收方發(fā)送 M1 確認(rèn) M1發(fā)送 M2M3 確認(rèn) M2M3 發(fā)送 M4M7 確認(rèn) M4M7 cwnd = 1 cwnd = 2 cwnd = 4 發(fā)送 M8M15cwnd = 8 tt發(fā)送方每收到一個(gè)對(duì)新報(bào)文段的確認(rèn)(重傳的不算

3、在內(nèi))就使 cwnd 加 1。 輪次 1輪次 2輪次 3傳輸輪次(transmission round)n使用慢開(kāi)始算法后,每經(jīng)過(guò)一個(gè)傳輸輪次,擁塞窗口 cwnd 就加倍。 n一個(gè)傳輸輪次所經(jīng)歷的時(shí)間其實(shí)就是往返時(shí)間 RTT。n“傳輸輪次”更加強(qiáng)調(diào):把擁塞窗口 cwnd 所允許發(fā)送的報(bào)文段都連續(xù)發(fā)送出去,并收到了對(duì)已發(fā)送的最后一個(gè)字節(jié)的確認(rèn)。n例如,擁塞窗口 cwnd = 4,這時(shí)的往返時(shí)間 RTT 就是發(fā)送方連續(xù)發(fā)送 4 個(gè)報(bào)文段,并收到這 4 個(gè)報(bào)文段的確認(rèn),總共經(jīng)歷的時(shí)間。 設(shè)置慢開(kāi)始門(mén)限狀態(tài)變量ssthreshn慢開(kāi)始門(mén)限 ssthresh 的用法如下:n當(dāng) cwnd ssthresh

4、 時(shí),停止使用慢開(kāi)始算法而改用擁塞避免算法。n當(dāng) cwnd = ssthresh 時(shí),既可使用慢開(kāi)始算法,也可使用擁塞避免算法。n擁塞避免算法的思路是讓擁塞窗口 cwnd 緩慢地增大,即每經(jīng)過(guò)一個(gè)往返時(shí)間 RTT 就把發(fā)送方的擁塞窗口 cwnd 加 1,而不是加倍,使擁塞窗口 cwnd 按線(xiàn)性規(guī)律緩慢增長(zhǎng)。當(dāng)網(wǎng)絡(luò)出現(xiàn)擁塞時(shí)n無(wú)論在慢開(kāi)始階段還是在擁塞避免階段,只要發(fā)送方判斷網(wǎng)絡(luò)出現(xiàn)擁塞(其根據(jù)就是沒(méi)有按時(shí)收到確認(rèn)),就要把慢開(kāi)始門(mén)限 ssthresh 設(shè)置為出現(xiàn)擁塞時(shí)的發(fā)送方窗口值的一半(但不能小于2)。n然后把擁塞窗口 cwnd 重新設(shè)置為 1,執(zhí)行慢開(kāi)始算法。n這樣做的目的就是要迅速減少主

5、機(jī)發(fā)送到網(wǎng)絡(luò)中的分組數(shù),使得發(fā)生擁塞的路由器有足夠時(shí)間把隊(duì)列中積壓的分組處理完畢。 2216慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 當(dāng) TCP 連接進(jìn)行初始化時(shí),將擁塞窗口置為 1。圖中的窗口單位不使用字節(jié)而使用報(bào)文段。慢開(kāi)始門(mén)限的初始值設(shè)置為 16 個(gè)報(bào)文段,即 ssthresh = 16?!俺朔p小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 發(fā)送端的發(fā)送窗口不能超過(guò)擁塞窗口 cwnd 和接收端窗口 rw

6、nd 中的最小值。我們假定接收端窗口足夠大,因此現(xiàn)在發(fā)送窗口的數(shù)值等于擁塞窗口的數(shù)值。2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 在執(zhí)行慢開(kāi)始算法時(shí),擁塞窗口 cwnd 的初始值為 1,發(fā)送第一個(gè)報(bào)文段 M0。 2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)

7、始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 發(fā)送端每收到一個(gè)確認(rèn) ,就把 cwnd 加 1。于是發(fā)送端可以接著發(fā)送 M1 和 M2 兩個(gè)報(bào)文段。 2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 接收端共發(fā)回兩個(gè)確認(rèn)。發(fā)送端每收到一個(gè)對(duì)新報(bào)文段的確認(rèn),就把發(fā)送端的 cwnd 加 1?,F(xiàn)在 cwnd 從 2 增大到 4,并可接著發(fā)送后面的 4 個(gè)報(bào)文段

8、。 2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 發(fā)送端每收到一個(gè)對(duì)新報(bào)文段的確認(rèn),就把發(fā)送端的擁塞窗口加 1,因此擁塞窗口 cwnd 隨著傳輸輪次按指數(shù)規(guī)律增長(zhǎng)。 2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”

9、傳輸輪次慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 當(dāng)擁塞窗口 cwnd 增長(zhǎng)到慢開(kāi)始門(mén)限值 ssthresh 時(shí)(即當(dāng) cwnd = 16 時(shí)),就改為執(zhí)行擁塞避免算法,擁塞窗口按線(xiàn)性規(guī)律增長(zhǎng)。 2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”傳輸輪次2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避

10、免“加法增大”擁塞避免“加法增大”慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 假定擁塞窗口的數(shù)值增長(zhǎng)到 24 時(shí),網(wǎng)絡(luò)出現(xiàn)超時(shí),表明網(wǎng)絡(luò)擁塞了。 傳輸輪次2216“乘法減小”24681012141618200048122024擁塞窗口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 更新后的 ssthresh 值變?yōu)?12(即發(fā)送窗口數(shù)值 24 的一半),擁塞窗口再重新設(shè)置為 1,并執(zhí)行慢開(kāi)始算法。 傳輸輪次2216“乘法減小”24681012141618200048122024擁塞窗

11、口 cwnd新的 ssthresh 值網(wǎng)絡(luò)擁塞指數(shù)規(guī)律增長(zhǎng)ssthresh 的初始值慢開(kāi)始慢開(kāi)始慢開(kāi)始擁塞避免“加法增大”擁塞避免“加法增大”慢開(kāi)始和擁塞避免算法的實(shí)現(xiàn)舉例 當(dāng) cwnd = 12 時(shí)改為執(zhí)行擁塞避免算法,擁塞窗口按按線(xiàn)性規(guī)律增長(zhǎng),每經(jīng)過(guò)一個(gè)往返時(shí)延就增加一個(gè) MSS 的大小。 傳輸輪次加法增大(additive increase) n“加法增大”是指執(zhí)行擁塞避免算法后,在收到對(duì)所有報(bào)文段的確認(rèn)后(即經(jīng)過(guò)一個(gè)往返時(shí)間),就把擁塞窗口 cwnd增加一個(gè) MSS 大小,使擁塞窗口緩慢增大,以防止網(wǎng)絡(luò)過(guò)早出現(xiàn)擁塞。 乘法減小(multiplicative decrease) n“乘法

12、減小“是指不論在慢開(kāi)始階段還是擁塞避免階段,只要出現(xiàn)一次超時(shí)(即出現(xiàn)一次網(wǎng)絡(luò)擁塞),就把慢開(kāi)始門(mén)限值 ssthresh 設(shè)置為當(dāng)前的擁塞窗口值乘以 0.5。n當(dāng)網(wǎng)絡(luò)頻繁出現(xiàn)擁塞時(shí),ssthresh 值就下降得很快,以大大減少注入到網(wǎng)絡(luò)中的分組數(shù)。 必須強(qiáng)調(diào)指出 n“擁塞避免”并非指完全能夠避免了擁塞。利用以上的措施要完全避免網(wǎng)絡(luò)擁塞還是不可能的。n“擁塞避免”是說(shuō)在擁塞避免階段把擁塞窗口控制為按線(xiàn)性規(guī)律增長(zhǎng),使網(wǎng)絡(luò)比較不容易出現(xiàn)擁塞。 2. 快重傳和快恢復(fù)n快重傳算法首先要求接收方每收到一個(gè)失序的報(bào)文段后就立即發(fā)出重復(fù)確認(rèn)。這樣做可以讓發(fā)送方及早知道有報(bào)文段沒(méi)有到達(dá)接收方。 n發(fā)送方只要一連收

13、到三個(gè)重復(fù)確認(rèn)就應(yīng)當(dāng)立即重傳對(duì)方尚未收到的報(bào)文段。 n不難看出,快重傳并非取消重傳計(jì)時(shí)器,而是在某些情況下可更早地重傳丟失的報(bào)文段。 快重傳舉例發(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) M2 t發(fā)送 M7收到三個(gè)連續(xù)的對(duì) M2 的重復(fù)確認(rèn)立即重傳 M3丟失快恢復(fù)算法 (1) 當(dāng)發(fā)送端收到連續(xù)三個(gè)重復(fù)的確認(rèn)時(shí),就執(zhí)行“乘法減小”算法,把慢開(kāi)始門(mén)限 ssthresh 減半。但接下去不執(zhí)行慢開(kāi)始算法。 (2)由于發(fā)送方現(xiàn)在認(rèn)為網(wǎng)絡(luò)很可能沒(méi)有發(fā)生擁塞,因此現(xiàn)在不執(zhí)行慢開(kāi)始算法,即擁塞窗口 cwnd 現(xiàn)在不設(shè)置為 1,而是設(shè)置為慢開(kāi)始門(mén)限 ssthresh 減半后的數(shù)值,然

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論