2010-07-04 59 views
1

我有一個問題: 我有一個4Mbit連接在一側(稱爲A側)和一個路由器另一側(B側)1Gbit連接。如果現在有一個1500字節的數據包進入A端,路由器是否等待,直到它收到A端的數據包的所有內容(全部爲1500字節),直到它將其轉發到B端,還是以塊的形式發送它?路由器延遲,當網絡有不同的帶寬

對不起,如果問題太重要了,但我真的沒有找到這個問題的好答案。

+0

協議可能會將數據拆分爲數據包,並且這些數據包也可能會被截斷。所以我會說這是協議和實施依賴。請具體說明您所指的協議和系統。 – jweyrich 2010-07-04 06:25:33

+0

這是一個TCP-IP包,裏面包含專有協議,然後包含Zlib和Huffman壓縮結構。所以問題是,A端有一個很大的tcp數據包。它有1500個字節,它佔用了一條需要3ms的4Meg線路,當然路由器首先需要tcp頭部(使用ip,mac,..) 48字節,因此是100微米......我也可以通過塊讀取tcp消息的內容。因此,如果我減少B端的MTU大小,它是否在數據傳入時將數據包拆分,或者是否等到3ms,直到收到數據包爲止 – megaflux 2010-07-04 06:36:29

回答

3

如果它是一個IP路由器(所謂的「第3層路由」),它會得到整個數據包(可能少於或超過1536字節),驗證校驗和,然後轉發到下一跳。

'第3層交換機'(理論上它會是一個矛盾,實際上它並不罕見)聲稱做'以交換速度進行路由',這可能暗示在接收整個數據包之前開始重新傳輸;但是AFAIK,甚至第二層交換機(也稱爲「交換機」)在重新傳輸它之前都會獲得整個以太網幀(至少能夠丟棄壞幀)。所以我想這意味着只要收到標題,它就會執行所有的表查找,所以一旦完成就準備重新發送。當做第3層時,交換機表除了MAC地址之外還包括IP地址。

+0

非常感謝您提供快速且良好的答案。我剛開始喜歡這一面。如果能問我,可以節省我幾個小時的研究;-) – megaflux 2010-07-04 06:38:17

+0

也是我的+1。 – jweyrich 2010-07-05 04:12:25