【技術(shù)分享】以太網(wǎng)的兩種幀結(jié)構(gòu)

以太網(wǎng)的幀結(jié)構(gòu)分兩種:
第一種是Ethernet_II的幀
第二種是IEEE802.3的幀
幀樣式之間的差異很小。兩種標(biāo)準(zhǔn)之間最大的差異是 802.3 中增加了幀首定界符 (SFD),并且“類型”字段變?yōu)椤伴L度”字段。

前導(dǎo)碼和幀首定界符字段:
前導(dǎo)碼(7 個(gè)字節(jié))和幀首定界符 (SFD)(也稱為幀首)(1 個(gè)字節(jié))字段用于發(fā)送設(shè)備與接收設(shè)備之間的信號(hào)同步。幀的這前八個(gè)字節(jié)用于引起接收節(jié)點(diǎn)的注意。前幾個(gè)字節(jié)的實(shí)質(zhì)作用是告訴接收方準(zhǔn)備接收新幀。
目的MAC地址字段:該 6 字節(jié)字段是預(yù)期接收方的標(biāo)識(shí)符。此地址被第 2 層用來協(xié)助設(shè)備確定幀是否發(fā)送到目的地。幀中的地址將會(huì)與設(shè)備中的 MAC 地址進(jìn)行比對(duì)。如果匹配,設(shè)備就接受該幀。
源MAC地址字段:
該 6 字節(jié)字段標(biāo)識(shí)發(fā)出幀的網(wǎng)卡或接口。
長度字段:
在 1997 年以前的所有 IEEE 802.3 標(biāo)準(zhǔn)中,“長度”字段定義幀的數(shù)據(jù)字段的準(zhǔn)確長度。此字段后來被用作 FCS 的一部分,用來確認(rèn)是否正確收到報(bào)文。否則,該字段將用于描述存在哪個(gè)上層協(xié)議。如果兩個(gè)二進(jìn)制八位數(shù)值等于或大于 0x0600 十六進(jìn)制值或 1536 十進(jìn)制值,則數(shù)據(jù)字段的內(nèi)容將根據(jù)指定的 EtherType 協(xié)議進(jìn)行解碼。而如果值等于或小于 0x05DC 十六進(jìn)制值或 1500 十進(jìn)制值,則使用“長度”字段指定使用 IEEE 802.3 幀格式。這就是以太網(wǎng) II 幀和 802.3 幀的區(qū)別。
數(shù)據(jù)字段:
該字段(46 - 1500 個(gè)字節(jié))包含來自較高層的封裝數(shù)據(jù)(一般是第 3 層 PDU 或更常見的 IPv4 數(shù)據(jù)包)。所有幀至少必須有 64 個(gè)字節(jié)。如果封裝的是小數(shù)據(jù)包,則幀使用填充位增大到最小值。
幀校驗(yàn)序列字段:
“幀校驗(yàn)序列 (FCS)”字段(4 個(gè)字節(jié))用于檢測(cè)幀中的錯(cuò)誤。它使用的是循環(huán)冗余校驗(yàn) (CRC)。發(fā)送設(shè)備在幀的 FCS 字段中包含 CRC 的結(jié)果。接收設(shè)備接收幀并生成 CRC 以查找錯(cuò)誤。如果計(jì)算匹配,就不會(huì)發(fā)生錯(cuò)誤。計(jì)算不匹配則表明數(shù)據(jù)已經(jīng)改變;因此幀會(huì)被丟棄。數(shù)據(jù)改變可能是由于代表比特的電信號(hào)中斷所致。
網(wǎng)絡(luò)里面通常存在兩種流量:
業(yè)務(wù)流量和協(xié)議信令流量
EthernetII通常用于封裝業(yè)務(wù)流量:(以下報(bào)文是ICMP報(bào)文)

IEEE 802.3通常用于封裝協(xié)議信令流量:(以下報(bào)文是生成樹BPDU報(bào)文)
