2013-05-09 37 views
62

TCP中的流量控制和擁塞控制有什麼區別?TCP中的流量控制和擁塞控制有什麼區別?

這個問題可以分解爲兩個部分:

  1. 什麼是流量控制和擁塞控制的總體目的是什麼?
  2. 任務如何完成?

根據Wikipedia,TCP流量控制依賴於ACK消息中報告的窗口大小。擁塞控制還依賴於確認消息。我想知道兩個目標之間有什麼不同,以及他們的工作方式。

+42

不是一個家庭作業問題。更多的面試準備問題。什麼是關於它的「脫離主題」? @EJP – 2013-05-10 05:05:49

回答

101

至於第1部分,超級一般概述:

流量控制是通過接收側的控制。它確保發送者只發送接收者可以處理的內容。想想光纖連接快速的人可能會通過撥號或類似方式發送給某人的情況。發送者可以非常快速地發送數據包,但是這對接收者來說在撥號時沒用,所以他們需要一種方法來限制發送端可以發送的內容。流量控制處理可用的機制以確保此通信順利進行。

擁塞控制是一種確保網絡中的每個人在任何給定時間對網絡資源具有「公平」訪問量的方法。在混合網絡環境中,每個人都需要能夠承擔相同的總體績效水平。有助於理解這一點的常見方案是辦公室LAN。你在辦公室裏有許多局域網段,他們都在局域網內部做事,但是他們可能都需要通過比組成局域網段慢的廣域網連接。在局域網內有100mb連接的圖片,最終通過5mb廣域網鏈接傳出。某種形式的擁塞控制需要在那裏進行,以確保在更大的網絡中沒有問題。

至於第2部分:

如果這是接受記者採訪時,準備的問題,如你上面說的,我會考慮採取一些時間一般在TCP/IP讀了。不要使用維基百科。 RTFM!這是非常值得您的時間。你可以爭辯說,這是支持大部分現代互聯網的最重要的協議。

需要了解流量控制的內容:停止並等待,滑動窗口,暫停幀。

有關擁塞控制:QoS(服務質量),重傳策略,窗口策略的內容。

除此之外,你可以搜索任何特定供應商實現(思科等)

+2

很好的答案,但至少有一個錯誤:「暫停幀」在擁塞控制中不被使用,它們是流量控制的一種機制。 – Angel 2015-09-24 06:29:24

+1

你是完全正確的。在錯誤的段落中添加,現在編輯。 – 2015-09-24 07:51:36

18

流量控制:發送方將發送可容納在接收端足夠的數據。

擁塞控制:發送方將減少發送數據包的數量,以避免路由器的緩衝區(隊列)溢出。

-3

流量控制:是指多網絡如何能夠吸收,擁塞窗口;擁塞控制:表示接收器能夠吸收多少廣播窗口; 發件人的max_window = min(廣告窗口,擁塞窗口);

3

擁塞控制是一個全球性的問題 - 包括子網 流量控制範圍內的每個路由器和主機 - 範圍是點至點;只涉及發送者和接收者。

13

流量控制:

  • 它確保發件人不超載的接收器。
  • 與擁塞控制不同,這是一種本地現象。
  • 它通常由發件人發起。

擁塞控制:

  • 這可確保網絡能夠處理的數據包的載荷。
  • 這是一個全球性現象,並影響與該網絡連接的每臺主機。
  • 它由路由器發起。
2

擁塞控制:除了防止路由器的緩衝區溢出,也與其他兩個重要因素

交易
  • 公平:飢餓不應該發生的連接到網絡的任何主機儘管術語比較複雜。
  • 效率:該鏈接應利用自己最大的能力,使得它不會造成擁堵。
3

流量控制主要是做在接收機側,調整多少數據發件人被注入到所述網絡; 擁塞控制主要是做在發送側,試圖檢測擁塞網絡通過ACK信息包的定時上,以調整發送給相應的狀況數據的音量。

1

流控制在接收端進行。如果發送方發送的數據包大於接收方的緩衝區大小,則會在接收方的緩衝區發生溢出。爲了避免接收端的這種溢出,在發送端使用了一種開窗技術。 擁塞控制在發送方完成。這是一個全球現象。這發生在路由器。當許多發送者嘗試通過同一鏈接推送更多的數據包時,路由器的緩衝區溢出。

+0

這看起來像是一個誠實的嘗試來回答這個問題,但現在,你的答案有點混亂。它也相當短。請考慮在流量控制上花費一兩個完整段落,並在擁塞控制方面花費一兩段完整段落,用更多的逗號和更少的字省略。 – Julian 2016-08-01 22:14:25

相關問題