您當前的位置:首頁 > 遊戲

TCPIP(一):乙太網幀協議

作者:由 蒗裡格郎 發表于 遊戲時間:2022-09-19

TCPIP(一):乙太網幀協議

乙太網幀說明

乙太網幀大小必須在64~1518位元組(不包含前導碼和定界符),即包括目的地址(6B)、源地址(6B)、型別(2B)、資料、FCS(4B)在內,其中資料段大小在46~1500位元組之間。

乙太網幀結構

乙太網由前導碼(7B)、定界符(1B)、目的地址(6B)、源地址(6B)、型別(2B)、資料、FCS(4B)。

TCPIP(一):乙太網幀協議

欄位

欄位長度(位元組)

說明

前導碼(preamble)

7

0和1交替變換的碼流

幀開始符(SFD)

1

幀起始符

目的地址(DA)

6

目的裝置的MAC物理地址

源地址(SA)

6

傳送裝置的MAC物理地址

長度/型別(Length/Type)

2

幀資料欄位長度/幀協議型別

資料及填充(data and pad)

46~1500

幀資料欄位

幀校驗序列(FCS)

4

資料校驗欄位

前導碼(preamble):交替的0和1,裝置從靜默狀態變成有訊號狀態標誌乙太網幀的開始。IEEE802。3 由 7 個 8‘b10101010 (8’haa)構成,由於資料從低位元開始傳送(LSB),程式碼中的前導碼數值為 8’b01010101,即8‘h55。

幀開始符(SFD, Start frame delimiter):值為8’b10101011(8’hab),最後兩個1表示接收端介面卡:“幀資訊來了,準備接收”。資料從低位元開始傳送(LSB),因此程式碼中的 SFD 值為8’hd5。

目的地址(DA, Destination Address):包含一個 48bit 的值,LSB 優先。目標地址可以是單播地址、廣播地址(48‘hffff_ffff_ffff)、組播地址。當網絡卡收到一個數據幀時,首先檢查該幀的目的地址是否與當前介面卡的物理地址相同,如果相同,則進一步處理,如果不同則直接丟棄。

源地址(SA, Source Address):一個 48bit 的值,傳送幀的網路介面卡的物理地址,用於標識傳輸裝置,LSB 格式。

長度/型別(Length/Type):欄位值小於或等於1500,則指示幀的有效資料長度。Length 標識有效載荷的資料長度,不包含填充的長度。16‘h0800 代表IP 報文;16‘h0806 標識 ARP 請求/應答報文;16’h8035 標識RARP請求/應答報文。

資料及填充(data and pading):該段資料長度需在46~1500位元組之間,填充資料不會改變Length 的值。

幀校驗序列(FCS):用於儲存 CRC 結果的校驗結果。以 preamble、SFD、DA、SA、Length/Type、DATA and Pading作為輸入資料進行計算,從“目標MAC地址”欄位到“資料”欄位的資料進行校驗。

更多內容掃碼關注:

標簽: 地址  資料  乙太網  length  校驗