網絡MTU與VS. 最大TCP數據包大小

低TCP數據包大小會對性能產生不利影響

最大傳輸單元(MTU)是可以通過網絡傳輸的數字通信的單個數據單元的最大尺寸。 MTU大小是物理網絡接口的固有屬性,通常以字節為單位 。 例如, 以太網的MTU為1500字節。 某些類型的網絡(如令牌環 )具有較大的MTU,而某些網絡具有較小的MTU,但該值對於每種物理技術都是固定的。

MTU與最大TCP數據包大小

TCP / IP這樣的更高級別的網絡協議可以配置最大數據包大小,這是一個獨立於運行TCP / IP的物理層MTU的參數。 不幸的是,許多網絡設備可互換地使用這些術語。 例如,在家庭寬帶路由器和支持Xbox Live的遊戲控制台上,稱為MTU的參數實際上是最大的TCP數據包大小,而不是物理MTU。

在Microsoft Windows中,可以在註冊表中設置協議(如TCP)的最大數據包大小。 如果此值設置得太低,則網絡流量會被分解為相對較大數量的小數據包,這會對性能產生不利影響。 例如,Xbox Live要求數據包大小的值至少為1365字節。 如果最大TCP數據包大小設置得過高,則它會超出網絡的物理MTU,並會因要求將每個數據包細分為更小的數據包而降低性能 - 這一過程稱為分段。 對於寬帶連接,Microsoft Windows計算機的默認最大數據包大小為1500字節, 撥號連接數為576字節。

MTU相關問題

理論上,TCP數據包大小的限制是64K(65,525字節)。 這個限制比你使用的要大得多,因為傳輸層的尺寸要小得多。 以太網的1500字節的MTU限制了通過它的數據包的大小。 發送大於以太網最大傳輸窗口的數據包稱為Jabbering。 Jabber可以被識別和預防。 如果沒有被解決,嘰嘰喳喳可能會破壞網絡。 通常情況下,jabber會被中繼器集線器或網絡交換機檢測到,這些交換機可以這樣做。 防止jabber最簡單的方法是將TCP數據包的最大大小設置為不超過1500字節。

如果家庭寬帶路由器上的TCP最大傳輸設置與連接到它的各個設備上的設置不同,也可能出現性能問題。