乙太網幀格式如下:
802.3 乙太網幀結構
前導碼 幀開始符 mac 目標位址 mac 源位址 802.1q 標籤 (可選) 以太型別或長度 負載 冗餘校驗 幀間距
10101010 7個octet 10101011 1個octet 6 octets 6 octets (4 octets) 2 octets 46–1500 octets 4 octets 12 octets
64–1522 octets
72–1530 octets
84–1542 octets
1、前導碼和幀開始符:
乙個幀以7個位元組的前導碼和1個位元組的幀開始符作為幀的開始。快速乙太網之前,**路上幀的這部分的位模式是10101010 10101010 10101010 10101010 10101010 10101010 10101010 10101011。由於在傳輸乙個位元組時最不重要的位最先傳輸(即低位最先傳輸),因此其相應的16進製表示為0x55 0x55 0x55 0x55 0x55 0x55 0x55 0xd5。
10/100m 網絡卡(mii phy)一次傳輸4位(乙個半字)。因此前導符會成為7組0x5+0x5,而幀開始符成為0x5+0xd。1000m網絡卡(gmii)一次傳輸8位,而10gbit/s(xgmii) phy晶元一次傳輸32位。 注意當以octet描述時,先傳輸7個01010101然後傳輸11010101。由於8位資料的低4位先傳送,所以先傳送幀開始符的0101,之後傳送1101。
2、目的位址:6位元組
3、源位址:6位元組
4、型別/長度:2位元組,0~1500保留為長度域值,1536~65535保留為型別域值(0x0600~0xffff)
5、資料:46~1500位元組
6、幀校驗序列(fcs):4位元組,使用crc計算從目的mac到資料域這部分內容而得到的校驗和。
當資料幀到達網絡卡時,在物理層上網絡卡要先去掉前導同步碼和幀開始定界符,然後對幀進行crc檢驗,如果幀校驗和錯,就丟棄此幀。如果校驗和正確,就判斷幀的目的硬體位址是否符合自己的接收條件(目的位址是自己的物理硬體位址、廣播位址、可接收的多播硬體位址等),如果符合,就將幀交"裝置驅動程式"做進一步處理。這時我們的抓包軟體才能抓到資料。
乙太網規定,乙太網幀資料域部分最小為46位元組,乙太網幀最小是6+6+2+46+4=64。
乙太網資料幀相關
乙太網幀格式如下 802.3 乙太網幀結構 前導碼幀開始符 mac 目標位址 mac 源位址 802.1q 標籤 可選 以太型別或長度 負載冗餘校驗 幀間距10101010 7個octet 10101011 1個octet 6 octets 6 octets 4 octets 2 octets 46...
乙太網資料幀結構
協議型別 0x0800 網際協議 ip 0x 814c 簡單網路管理協議 snmp network management protocol 0x86dd 網際協議v6 ipv6,internet protocol version 6 ip上層協議 0 hopopt ipv6 逐跳選項 1 icmp ...
乙太網幀格式
一 ethernet位址 為了標識乙太網上的每台主機,需要給每台主機上的網路介面卡 網路介面卡 分配乙個唯一的通訊位址,即ethernet位址或稱為網絡卡的實體地址 mac位址。ieee負責為網路介面卡製造廠商分配ethernet位址塊,各廠商為自己生產的每塊網路介面卡分配乙個唯一的ethernet...