Ethernet和802.3的區別及歷史


1.前言

 Ethernet 和 802.3 並不是一回事,雖然我們經常混用這兩個術語

2.歷史上以太網幀格式

2.1 Ethernet V1

這是最原始的一種格式,是由Xerox PARC提出的3Mbps CSMA/CD以太網標准的封裝格式,后來在1980年由DEC,Intel和Xerox標准化形成Ethernet V1標准

2.2 Ethernet V2(ARPA)

  • Ethernet V2幀頭結構

這是最常見的一種以太網幀格式,也是今天以太網的事實標准,由DEC,Intel和Xerox在1982年公布其標准,

主要更改了Ethernet V1的電氣特性和物理接口,在幀格式上並無變化;

Ethernet V2出現后迅速取代Ethernet V1成為以太網事實標准;

Ethernet V2幀頭結構為6bytes的源地址+6bytes的目標地址+2Bytes的協議類型字段+數據

  • 常見協議類型

0800 IP 
0806 ARP 
8137 Novell IPX 
809b Apple Talk 
如果協議類型字段取值為0000-05dc(十進制的0-1500),則該幀就不是Ethernet V2(ARPA)類型了,而是下面講到的三種802.3幀類型之一;

Ethernet可以支持TCP/IP,Novell IPX/SPX,Apple Talk Phase I等協議;

RFC 894定義了IP報文在Ethernet V2上的封裝格式; 

  • Ethernet_II中所包含的字段

(1)前導字符

在每種格式的以太網幀的開始處都有64比特(8字節)的前導字符,如圖所示。其中,前7個字節稱為前同步碼(Preamble),內容是16進制數0xAA,最后1字節為幀起始標志符0xAB,它標識着以太網幀的開始。

前導字符的作用是使接收節點進行同步並做好接收數據幀的准備

(2)PR

同步位,用於收發雙方的時鍾同步,同時也指明了傳輸的速率(10M和100M的時鍾頻率不一樣,所以100M網卡可以兼容10M網卡),是56位的二進制數101010101010.....

(3)SD:

分隔位,表示下面跟着的是真正的數據,而不是同步時鍾,為8位的10101011,跟同步位不同的是最后2位是11而不是10. 
(4)DA

目的地址,以太網的地址為48位(6個字節)二進制地址,表明該幀傳輸給哪個網卡.如果為FFFFFFFFFFFF,則是廣播地址,廣播地址的數據可以被任何網卡接收到. 
(5)SA

源地址,48位,表明該幀的數據是哪個網卡發的,即發送端的網卡地址,同樣是6個字節. 
(6)TYPE

類型字段,表明該幀的數據是什么類型的數據,不同的協議的類型字段不同。

如:0800H 表示數據為IP包,0806H 表示數據為ARP包,814CH是SNMP包,8137H為IPX/SPX包,(小於0600H的值是用於IEEE802的,表示數據包的長度。) 
(7)DATA

數據段 ,該段數據不能超過1500字節。因為以太網規定整個傳輸包的最大長度不能超過1514字節。(14字節為DA,SA,TYPE) 
(8)PAD

填充位。由於以太網幀傳輸的數據包最小不能小於60字節, 除去(DA,SA,TYPE 14字節),還必須傳輸46字節的數據,當數據段的數據不足46字節時,后面補000000.....(當然也可以補其它值) 
(9)FCS

32位數據校驗位.為32位的CRC校驗,該校驗由網卡自動計算,自動生成,自動校驗,自動在數據段后面填入.對於數據的校驗算法,我們無需了解. 
注:

[1]事實上,PR,SD,PAD,FCS這幾個數據段我們不用理它 ,它是由網卡自動產生的,我們要理的是DA,SA,TYPE,DATA四個段的內容. 
[2]所有數據位的傳輸由低位開始(但傳輸的位流是用曼徹斯特編碼的) 
[3]以太網的沖突退避算法就不介紹了,它是由硬件自動執行的. 
[4]DA+SA+TYPE+DATA+PAD最小為60字節,最大為1514字節. 
[5]以太網卡可以接收三種地址的數據,一個是廣播地位,一個是多播地址(我們用不上),一個是它自已的地址.但網卡也可以設置為接收任何數據包(用於網絡分析和監控). 
[6]任何兩個網卡的物理地址都是不一樣的,是世界上唯一的,網卡地址由專門機構分配.不同廠家使用不同地址段,同一廠家的任何兩個網卡的地址也是唯一的.

[7]根據網卡的地址段(網卡地址的前三個字節),可以知道網卡的生產廠家.有些網卡的地址也可以由用戶去設定,但一般不需要. 
[8]Ethernet_II的主要特點是通過類型域標識了封裝在幀里的數據包所采用的協議,類型域是一個有效的指針,通過它,數據鏈路層就可以承載多個上層(網絡層)協議。

但是,Ethernet_II的缺點是沒有標識幀長度的字段。 

2.3 RAW 802.3:(NOVELL Ethernet 802.3) 

這是1983年Novell發布其划時代的Netware/86網絡套件時采用的私有以太網幀格式,該格式以當時尚未正式發布的802.3標准為基礎;

但是當兩年以后IEEE正式發布802.3標准時情況發生了變化—IEEE在802.3幀頭中又加入了802.2 LLC(Logical Link Control)頭,這使得Novell的RAW 802.3格式跟正式的IEEE 802.3標准互不兼容;

可以看到在Novell的RAW 802.3幀結構中並沒有標志協議類型的字段,而只有Length 字段(2bytes,取值為0000-05dc,即十進制的0-1500),因為RAW 802.3幀只支持IPX/SPX一種協議; 

原始的802.3幀是早期的Novell NetWare網絡的默認封裝。它使用802.3的幀類型,但沒有LLC域。同Ethernet_II的區別:將類型域改為長度域,其取值范圍為:46-1500。

解決了原先存在的問題。但是由於缺省了類型域,因此不能區分不同的上層協議。 接下來的2個字節是固定不變的16進制數0xFFFF,它標識此幀為Novell以太類型數據幀。

2.4.IEEE 802.3/802.2 LLC

  • IEEE 802.3/802.2 LLC幀格式

這是IEEE 正式的802.3標准,它由Ethernet V2發展而來。它將Ethernet V2幀頭的協議類型字段替換為幀長度字段(取值為0000-05dc;十進制的1500 );

並加入802.2 LLC頭用以標志上層協議,LLC頭中包含DSAP,SSAP以及Crontrol字段; 

  • 802.2SAP

為了區別802.3數據幀中所封裝的數據類型, IEEE引入了802.2SAP和SNAP的標准。它們工作在數據鏈路層的LLC(邏輯鏈路控制)子層。

通過在802.3幀的數據字段中划分出被稱為服務訪問點(SAP)的新區域來解決識別上層協議的問題,這就是802.2SAP。

  • LLC標准

LLC標准包括兩個服務訪問點,源服務訪問點(SSAP)和目標服務訪問點(DSAP)。每個SAP只有1字節長,而其中僅保留了6比特用於標識上層協議,所能標識的協議數有限。

因此,又開發出另外一種解決方案,在802.2SAP的基礎上又新添加了一個2字節長的類型域(同時將SAP的值置為AA),使其可以標識更多的上層協議類型,這就是802.2SNAP。

  • 常見SAP值

0:Null LSAP[IEEE] 
4:SNA Path Control[IEEE] 
6:DOD IP[79,JBP] 
AA:SNAP[IEEE] 
FE:ISO DIS 8473[52,JXJ] 
FF:Global DSAP[IEEE] 

  • Ethernet 802.3 SAP幀

在Ethernet 802.3 SAP幀中,將原Ethernet 802.3 raw幀中2個字節的0xFFFF變為各1個字節的DSAP和SSAP,同時增加了1個字節的"控制"字段,構成了802.2邏輯鏈路控制(LLC)的首部。

LLC提供了無連接(LLC類型1)和面向連接(LLC類型2)的網絡服務。LLC1是應用於以太網中,而LLC2應用在IBM SNA網絡環境中。

2.5.IEEE 802.3/802.2 SNAP

  • IEEE 802.3/802.2 SNAP幀格式

這是IEEE為保證在 802.2 LLC上支持更多的上層協議同時更好的支持IP協議而發布的標准

與802.3/802.2 LLC一樣,802.3/802.2 SNAP也帶有LLC頭,但是擴展了LLC屬性,新添加了一個2Bytes的協議類型域(同時將SAP的值置為AA),從而使其可以標識更多的上層協議類型;

另外添加了一個3Bytes的OUI字段用於代表不同的組織,RFC 1042定義了IP報文在802.2網絡中的封裝方法和ARP協議在802.2 SNAP中的實現; 

今天的實際環境中大多數 TCP/IP設備都使用Ethernet V2格式的幀。

這是因為第一種大規模使用的TCP/IP系統(4.2/3 BSD UNIX)的出現時間介於RFC 894和RFC 1042之間,它為了避免不能和別的主機互操作的風險而采用了RFC 894的實現;

也由於大家都抱着這種想法,所以802. 3標准並沒有如預期那樣得到普及; 

CISCO設備的Ethernet Interface默認封裝格式是ARPA(Ethernet V2) 

3.不同廠商對這幾種幀格式通常有不同的叫法

比如:

Frame Type----------------------------------Novell/ ----------------------------Cisco 
Ethernet Version 2 : -----------------------Ethernet_II/--- -----------------arpa 
802.3------------------------------------------ Raw : Ethernet_802.3/ novell_ether 
IEEE 802.3/802.2 : -------------------------Ethernet_802.2/-------- -------- sap 
IEEE 802.3/802.2 SNAP : ------------------ETHERNET_SNAP/-------------- snap

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM