計網基礎-傳輸層之流量控制和擁塞控制

UDP無流量控制和擁塞控制,所以,咱們主要討論的是TCP的擁塞控制和流量控制,並要注意二者的區別。緩存

 

擁塞Congestion

太多發送主機發送了太多數據或者速度過快,以致於網絡沒法處理網絡

表現:學習

- 分組丟失(路由器緩存溢出)blog

- 分組延遲過大,甚至致使路由器不可用(在路由器緩存排隊)資源

 

Q:rdt(可靠數據傳輸)已經解決了分組丟失的問題,爲何要學習擁塞控制?路由

A:這是兩個不一樣的問題,rdt解決的是端到端,針對個體利益的角度,使用確認、重傳機制;擁塞控制是社會機制,從羣體利益角度,使得每個主機作出必定的犧牲,採用某種機制來控制整個網絡的負載。it

 

Q:流量控制和擁塞控制有什麼不一樣?io

A:流量控制是發送方不要發送的太快,致使接收方處理不了;而擁塞控制是不要讓整個網絡處理不了路由器

 


 擁塞的成因和代價

1. 兩個senders,兩個receivers,一個路由器(無限緩存),沒用重傳方法

致使:

C爲帶寬bandwidth,in和out是速率

- (右圖)擁塞時分組延遲delay太大

- (左圖)達到最大throughput吞吐量,<C/2時,線性增加,直至達到maxC

 

2. 一跳/一個路由器(有限的緩存),sender能夠重傳分組

致使:

備註:

- 狀況b,不能提早獲知路由器的緩存信息,只能經過肯定丟失才重傳

- 狀況b相對於a,意味着有效的吞吐量下降了,因爲擁塞,因爲丟失,須要重傳,(網絡資源是有限的)形成了網絡資源的浪費

- 狀況c,不只肯定分組丟失以後才重傳,並且會等待必定時間後重傳,這時候將有更多的重傳,因此吞吐量更低了

 

3. 四個sender,多跳/四個路由器(有限緩存),超時/重傳

 致使:

紅線綠線競爭,都要使用R2,因爲擁塞,吞吐量也變低了,會形成不斷的丟失

Q:假如紅線已經在前一個路由器正常轉發,可是到達R2後因爲競爭擁塞,則會產生什麼代價?

A:相對於一跳,多跳擁塞會產生另外一個代價——任何用於該分組的」上游「傳輸能力全被浪費

前半段:in速率和out速率線性增長

後半段:當in速率增大到必定程度的時候,out速率基本等於0——>你們都在往裏面發數據,可是,幾乎沒用數據被正確的接收,意味着網絡癱瘓了/網絡全部的資源都被浪費掉了

 

 


 

進行擁塞的控制,解決擁塞產生的代價

傳輸層或者網絡層進行控制/管制數據、網絡的負載(成因)

 

方法(2種)

- 端到端的擁塞控制(在傳輸層,TCP就是使用這種方法)

網絡層或者網絡層的設備,好比路由器路由器並不須要顯式的支持,而是端系統經過管制/控制本身的發送速率,經過觀察loss、delay等網絡行爲判斷是否發生擁塞

 

- 網絡輔助的擁塞控制(在網絡層,典型的ATM就是使用這種方式)

路由器向發送方顯式的反饋網絡擁塞信息

簡單的擁塞指示(1bit):SNA、DECbit、TCP/IP ECN、ATM

指示發送方應該使用何種速率

相關文章
相關標籤/搜索