複製鏈接
請複製以下鏈接發送給好友

巨型幀

鎖定
在計算機網絡中,巨型幀(英語:jumbo frames),又稱大型幀,是指有效負載超過IEEE 802.3標準所限制的1500字節的以太網幀。通常來説,巨型幀可以攜帶最多9000字節的有效負載,但也存在變化,因此需要謹慎使用該術語。許多吉比特以太網交換機和吉比特以太網網卡可以支持巨型幀。部分Fast Ethernet交換機和Fast Ethernet網卡也支持巨型幀。大多數國家級研究和教育網絡(諸如Internet2、National LambdaRail、ESnet、GÉANTAARNet)支持巨型幀,但大多數商業性互聯網服務供應商則不支持。
中文名
巨型幀
外文名
Jumbo Frames
領    域
計算機數據通訊
又    稱
大型幀
學    科
計算機網絡
屬    性
以太網幀

巨型幀概念

巨型幀是幀長大於1522字節的以太網幀。這是一種廠商標準的超長幀格式,專門為千兆以太網而設計。巨型幀的長度各廠商有所不同,從9000字節~64000字節不等。採用巨型幀能夠令千兆以太網性能充分發揮,使數據傳輸效率提高50%~100%。在網絡存儲的應用環境中,巨型幀更具有非同尋常的意義。

巨型幀開端

每個接收到的以太網幀都需要網絡硬件和軟件處理。增加幀大小有助於用更少的努力傳遞更大量的數據,降低CPU使用率(主要是減少中斷),以及通過減少需處理的幀來增加吞吐量和減少所發送幀的幀開銷總量。
巨型幀最初是由Alteon WebSystems在其ACEnic吉比特以太網適配器中推出。其他許多廠商也採納了此大小。但是,巨型幀尚未成為官方的IEEE 802.3以太網標準的一部分。 [1] 

巨型幀採用

巨型幀或9000字節有效負載幀可以減少開銷和CPU使用。 [2]  最近的工作也證明了,巨型幀對端到端TCP性能有着積極作用。巨型幀的存在可能對網絡延遲有不利影響,尤其是在低帶寬鏈路上。 [3]  端到端連接使用的幀大小通常受到中間鏈路中的最小幀大小限制。802.5 Token Ring可以使用4464字節的幀MTUFDDI可以4352字節,ATM可以9180字節,以及802.11可以傳輸7935字節MTU。IEEE 802.3以太網標準僅規定支持1500字節的幀MTU,總計1518字節的幀大小(1522字節及可選的IEEE 802.1QVLAN/QoS標籤)。
巨型幀所採用的9000字節有效負載大小來自Internet2聯合工程團隊與美國聯邦政府網絡的討論。他們的建議已被其他所有國家研究和教育網絡採納。為滿足這一強制性購買標準,製造商已將9000字節納入常規的MTU大小,使巨型幀尺寸至少有9018/9022字節(不含或包含IEEE 802.1Q字段)。大多數以太網設備可支持高達9216字節的巨型幀。

巨型幀錯誤檢測

巨型幀在使用以太網幀中簡單的CRC32錯誤檢測時,更容易遭受未檢測到的錯誤——因為更多的數據增加了幾個錯誤互相抵消的概率。正因如此,已經有較高網絡層上的額外機制被開發以改進錯誤檢測。
IETF為巨型幀中避免數據完整性降低準備的解決方案是在SCTP傳輸(RFC 4960)和iSCSI(RFC 7143)中使用Castagnoli CRC polynomial。這個多項式的選擇基於論文“32-Bit Cyclic Redundancy Codes for Internet Applications”中記錄的成果。Castagnoli多項式0x1EDC6F41達到了漢明距離HD=6,在超過一個以太網MTU(16,360位數據字長)時,以及HD=4(114,663比特),當超過以太網MTU長度的9倍。相比以太網CRC標準的多項式,這為基於MTU大小的數據提供了額外兩個比特的錯誤檢測能力,而不犧牲在數據字長超過72kbits時的HD=4的能力。
通過為UDP和TCP傳輸內部使用CRC校驗和而非簡單的累加校驗和,發生在NIC內部的錯誤也可以被檢測到。由於簡單求和時這些誤差往往會自我消除,TCP和UDP都已被證明在檢測總線特定比特錯誤上是無效的。在RFC 3309中完成的對真實數據注入模擬誤差並對比的測試顯示,這些錯誤有將近2%未被檢測到。
採用巨型幀的主要障礙之一是,升級現有的以太網基礎設施以避免降低檢測錯誤的能力是困難的。在軟件中完成的CRC計算必定會慢於TCP和UDP中那種簡單的累加校驗和實現。為克服這種性能損失,NIC卸載SCTP校驗和計算是可能的,並且支持SSE4.2的CPU可以利用在向量數學指令集中擴展的CRC32指令。
在設計處理數據塊的常規目的傳輸中,以及在設計攜帶SCSI數據的TCP傳輸中,支持Castagnoli CRC多項式都可以帶來更好的錯誤檢測,儘管使用增加以太網MTU的巨型幀會使錯誤檢測顯著減少。

巨型幀配置

部分廠商在大小設置時包括頭的大小,而部分廠商則不是。這即是最大幀大小(包括幀頭)與最大傳輸單元/MTU(不包括幀頭=最大的第三層包大小)。因此您可能會發現,必須在不同廠商的設備中配置不同的值,以使其設置匹配。在網絡上同時存在配置為巨型幀的設備與未配置為巨型幀的設備可能導致網絡性能問題。

巨型幀帶寬效率

巨型幀可以減少開銷以略微提升以太網效率,例如在IPv4上的TCP:
幀類型
第一層開銷
第二層開銷
第三層開銷
第四層開銷
有效負載大小
總計傳輸
效率


標準
1500
8字節
12字節
14字節
4字節
IPv4頭
20字節
TCP頭
20字節
1460字節
1538字節
94.93%
Jumbo
9000
preamble
8字節
IPG
12字節
幀頭
14字節
FCS
4字節
IPv4頭
20字節
TCP頭
20字節
8960字節
9038字節
99.14%
其他幀大小供參考










7935
PLCP前導和頭
24字節
IPG
varies
幀頭和安全ovhd
52字節
FCS
4字節
IPv4頭
20字節
TCP頭
20字節
7895字節
8015 + IPG大小字節
< 98.5%

巨型幀小巨型幀

小巨型幀(Baby giant或baby jumbo frames;也稱小巨人幀)是隻比IEEE以太網標準所限定的體積稍大的以太網幀。小巨型幀是為使IP/MPLS能通過以太網幀直接傳輸到以太網服務而準備。大多數實現要求將非巨型的用户幀封裝為MPLS幀格式以使其可以被封裝成適當的以太網幀格式(以太類型值為0x8847和0x8848)。額外的MPLS和以太網頭開銷意味着支持1600字節的幀是運營商以太網網絡中的一項強制性要求。

巨型幀超巨型幀

超巨型幀Super jumbo frames,簡稱SJF)通常被認為是有效負載大小超過9000字節的幀。

巨型幀部分過時

通過使CPU負載與幀大小無關,大段卸載(LSO)已經消除了巨型幀設計目的中的減少分組開銷。大接收卸載(LRO)——接收方的大段卸載,並不能完全消除每個分組導致的CPU開銷,因此巨型幀對保證入站流量仍然有益。從帶寬的角度來説,巨型幀仍然有用,因為它減少了非數據的帶寬開銷量。

巨型幀優點

巨型幀把以太網的最大幀長擴展到了9K,幾乎把以前的最大幀長擴展了6倍。加大幀長的好處在於,減少了網絡中數據包的個數,減輕了網絡設備處理包頭的額外開銷。經過測試,在傳統的千兆以太網中,每秒大約有81,000個數據包流經網絡,而在使用了巨型幀的網絡中,這個數字減少為14,000。在萬兆網絡中,這個對比更加強烈,標準的網絡中幀長為標準1518的幀每秒有812,000個,而採用了巨型幀技術的網絡上僅僅只有14,000個。大量減少的幀數目必將帶來性能的提高。這樣顯著的性能提高,引起了各個廠商的興趣。無論是系統吞吐量還是對CPU的佔用率,相比傳統以太網的幀來説,巨型幀都佔有極大的優勢。

巨型幀缺點

可能會成為融合網絡的障礙。如果人們在網絡上傳送語音或其他對延遲敏感的內容,不需要有妨礙這些對延遲敏感數據的超長幀傳輸。比如,超長幀會造成延遲,一旦一個‘大傢伙’在線路上傳送,它會較長時間佔用線路,阻止其他人使用線路,從而造成延遲。
幀越長意味着如果丟失一幀數據,則是一次更為嚴重的網絡事件,而重新傳送丟失的數據包成為更為耗費時間的工作。網絡中的每種東西都必須支持超長幀,超長幀才能使用。
Internet連接不支持超長幀:一個長度超過Internet連接所支持長度的幀將在發送前被分段,從而大大降低了Internet連接的性能和可靠性。這導致需要每一個工作站都必須知道哪個數據包傳送到本地網絡,哪個數據包傳送到Internet。為了檢測線路上的最大數據包長度,IP執行MTU路由發現算法,但是,這不是標準化的作法,並且,由於拒絕服務攻擊,許多防火牆不允許與這種算法有關的ICMP數據包通過。因此,超長幀不能在與Internet連接的網絡中使用。支持巨型幀需要新的硬件,這也導致了今天巨型幀主要在一些特殊環境使用,比如在服務器場用於數據的傳輸。
參考資料
  • 1.    Jeff Caruso. Alteon still stumping for Jumbo Frames. Network World. October 22, 1998
  • 2.    Foong, A; H. Hum; J. Patwardhan; G. Regnier. TCP Performance Re-visited. In IEEE International Symposium on Performance of Systems and Software. 2003.
  • 3.    Large MTUs and internet performance. 13th IEEE Conference on High Performance Switching and Routing (HPSR 2012). 2012.