詳解巨型幀:Jumbo Frame
本期將為大家詳解“巨型幀”。
一、什么是巨型幀?
巨幀(巨型幀、Jumbo Frame)是一種廠商標(biāo)準(zhǔn)的超長(zhǎng)幀格式,以太網(wǎng)標(biāo)準(zhǔn)的最大幀長(zhǎng)度為1518字節(jié)。
不同于以太網(wǎng)標(biāo)準(zhǔn)幀長(zhǎng),Jumbo Frame(巨型幀)的長(zhǎng)度各廠商有所不同,從9000字節(jié)~64000字節(jié)不等。
采用Jumbo Frame能夠令千兆以太網(wǎng)性能充分發(fā)揮,使數(shù)據(jù)傳輸效率提高50%~100%。在網(wǎng)絡(luò)存儲(chǔ)的應(yīng)用環(huán)境中,Jumbo Frame更具有非同尋常的意義。目前通常是將1500Byte至9000Byte這一段叫做Jumbo幀,然后從9000Byte至64000Byte叫做Super jumbo frames,也就是超巨幀。
二、巨型幀有什么優(yōu)勢(shì)和劣勢(shì)?
1. 優(yōu)勢(shì):可提高網(wǎng)絡(luò)的吞吐率和效率
小的數(shù)據(jù)報(bào)文封裝二層包頭時(shí)效率不高,同時(shí)減少設(shè)備的CPU 負(fù)擔(dān),對(duì)于小的報(bào)文CPU花大量的時(shí)間來(lái)分片和重組報(bào)文。
巨幀需要在相互通訊的2個(gè)通訊端口(交換機(jī)端口或網(wǎng)卡端口)上同時(shí)支持,而且與以前的以太網(wǎng)產(chǎn)品不兼容,因此主要會(huì)應(yīng)用于千兆主干的端口之間以及服務(wù)器端口接入到網(wǎng)絡(luò)主干的鏈路。
交換機(jī)把Jumbo Frame格式的數(shù)據(jù)轉(zhuǎn)發(fā)向不兼容Jumbo Frame的端口時(shí)應(yīng)進(jìn)行幀格式的轉(zhuǎn)換,即把Jumbo Frame幀格式的數(shù)據(jù)轉(zhuǎn)換成標(biāo)準(zhǔn)以太網(wǎng)的幀格式,從而保證其正常工作。相反,從不兼容Jumbo Frame的端口向支持Jumbo Frame的端口轉(zhuǎn)發(fā)數(shù)據(jù)時(shí),交換機(jī)可以把多個(gè)標(biāo)準(zhǔn)以太網(wǎng)幀合并成超長(zhǎng)Jumbo Frame幀,從而提高傳輸效率。
2. 劣勢(shì):存在兼容新問(wèn)題
由于巨型幀是各個(gè)廠家的標(biāo)準(zhǔn),各廠家支持的巨型幀最大長(zhǎng)度如果不一致,可能會(huì)導(dǎo)致鏈路上數(shù)據(jù)轉(zhuǎn)發(fā)異常。
三、巨型幀的典型應(yīng)用有哪些?
一些工業(yè)相機(jī)場(chǎng)景,大文件傳輸拷貝場(chǎng)景,采用巨型幀傳輸可以提高傳輸效率。
四、常見(jiàn)問(wèn)題和注意事項(xiàng)
1. 如何理解數(shù)據(jù)鏈路層最大傳輸數(shù)據(jù)為1500Byte和巨型幀的區(qū)別?
數(shù)據(jù)鏈路層最大傳輸數(shù)據(jù)為1500Byte為IEEE公認(rèn)的默認(rèn)情況下鏈路最大數(shù)據(jù)幀(MTU),在VLAN tag的場(chǎng)景下,即最大數(shù)據(jù)包字節(jié)長(zhǎng)度1522字節(jié)(1500+14+4+4),巨型幀是幀長(zhǎng)大于1522字節(jié)的以太網(wǎng)幀。這是一種廠商標(biāo)準(zhǔn)的超長(zhǎng)幀格式,專門為千兆以太網(wǎng)而設(shè)計(jì)。巨型幀的長(zhǎng)度各廠商有所不同,從9000字節(jié)~64000字節(jié)不等。
2. 如何確認(rèn)電腦網(wǎng)卡是否支持巨型幀?如何設(shè)置?
可以在網(wǎng)卡的屬性-高級(jí)配置界面查看設(shè)備是否有巨型幀選項(xiàng),有對(duì)應(yīng)選項(xiàng)的話則選擇對(duì)應(yīng)的值即可,網(wǎng)卡默認(rèn)關(guān)閉巨型幀功能。
3. 如何確認(rèn)網(wǎng)絡(luò)設(shè)備(路由器/交換機(jī)/AP)是否支持巨型幀?
巨型幀是交換芯片才能支持的功能,不同芯片方案是否支持需要根據(jù)芯片方案查詢,另外注意:交換機(jī)巨型幀不支持三層轉(zhuǎn)發(fā)。
4. 關(guān)于巨型幀的幾點(diǎn)注意事項(xiàng):
端到端之間的所有轉(zhuǎn)發(fā)接口都需要支持巨型幀才能將巨型幀數(shù)據(jù)包從一端轉(zhuǎn)到另一端,如果中間轉(zhuǎn)發(fā)設(shè)備(交換機(jī))不支持巨型幀或者支持的最大巨型幀比網(wǎng)卡設(shè)置的巨型幀小,交換機(jī)則會(huì)將數(shù)據(jù)包丟棄;;
TCP巨型幀協(xié)商過(guò)程,由系統(tǒng)MTU決定,握手階段協(xié)商MSS:
UDP巨型幀傳遞過(guò)程,網(wǎng)卡直接根據(jù)巨型幀值發(fā)送UDP封包:
部分網(wǎng)卡安裝到系統(tǒng)后,通過(guò)修改網(wǎng)卡支持的巨型幀之后,電腦的默認(rèn)MTU也會(huì)跟隨被修改,但是部分網(wǎng)卡的系統(tǒng)MTU不會(huì)被修改,這個(gè)可以通過(guò)命令(管理員模式下CMD)來(lái)確認(rèn)和修改:
改電腦mtu:
netsh interface ipv4 set subinterface "以太網(wǎng) 2" mtu=1500 store=persistent;
查看mtu:
netsh interface ip show interface