Ethernet II 和802.3

在卷一中:(章節二:數據鏈路層)

在T C P / I P協議族中,鏈路層主要有三個目的:(1)爲I P模塊發送和 接收I P數據報;(2 )爲A R P模塊發送A R P請求和接收A R P應答;(3 )爲R A R P 發送R A R P請 求和接收R A R P應答。T C P / I P支持多種不同的鏈路層協議,這取決於網絡所使用的硬件,如以 太網、令牌環網、F D D I      (光纖分佈式數據接口)及R S-2 3 2 串行線路等。

以太網和IEEE 802封裝 
以太網這個術語一般是指數字設備公司( Digital Equipment Corp. )、英特爾公司(I n t e l C o r p . )和X e r o x 公司在 1 9 8 2年聯合公佈的一個標準。它是當今 T C P / I P採用的主要的局域網技 術。它採用一種稱作 C S M A / C D 的媒體接入方法,其意思是帶衝突檢測的載波偵聽多路接入 (Carrier Sense, Multiple Access with Collision Detection )。它的速率爲10 Mb/s,地址爲48 bit 。 
幾年後,I E E E  (電子電氣工程師協會)8 0 2委員會公佈了一個稍有不同的標準集,其中 8 0 2 . 3針對整個C S M A / C D 網絡,8 0 2 . 4針對令牌總線網絡, 8 0 2 . 5針對令牌環網絡。這三者的共同特性由8 0 2 . 2標準來定義,那就是 8 0 2 網絡共有的邏輯鏈路控制(L L C )。不幸的是,8 0 2 . 2和 8 0 2 . 3定義了一個與以太網不同的幀格式。文獻 [Stallings 1987]對所有的IEEE 802 標準進行了 詳細的介紹。 
在T C P / I P世界中,以太網I P數據報的封裝是在RFC 894[Hornig 1984] 中定義的,IEEE 802網絡的I P數據報封裝是在RFC 1042[Postel and Reynolds 1988] 中定義的。主機需求R F C要求每 臺I n t e r n e t主機都與一個 10 Mb/s的以太網電纜相連接: 
    1) 必須能發送和接收採用RFC 894(以太網)封裝格式的分組。 
    2) 應該能接收與RFC 894 混合的RFC 1042       (IEEE 802 )封裝格式的分組。 
    3)  也許能夠發送採用RFC 1042 格式封裝的分組。如果主機能同時發送兩種類型的分組數 據,那麼發送的分組必須是可以設置的,而且默認條件下必須是 RFC 894 分組。 
    最常使用的封裝格式是 RFC 894 定義的格式。圖2 - 1顯示了兩種不同形式的封裝格式。圖中每個方框下面的數字是它們的字節長度。 
兩種幀格式都採用48 bit      (6字節)的目的地址和源地址( 8 0 2 . 3允許使用16 bit的地址,但 一般是48 bit地址)。這就是我們在本書中所稱的硬件地址。A R P和R A R P協議(第4章和第5章) 對32 bit 的I P地址和48 bit 的硬件地址進行映射。 
接下來的2個字節在兩種幀格式中互不相同。在 8 0 2標準定義的幀格式中,長度字段是指它後續數據的字節長度,但不包括 C R C檢驗碼。以太網的類型字段定義了後續數據的類型。 
在8 0 2標準定義的幀格式中,類型字段則由後續的子網接入協議(Sub-network Access P r o t o c o l ,S N A P )的首部給出。幸運的是,8 0 2定義的有效長度值與以太網的有效類型值無一 相同,這樣,就可以對兩種幀格式進行區分。 
在以太網幀格式中,類型字段之後就是數據;而在 8 0 2幀格式中,跟隨在後面的是 3字節的802.2 LLC 和5字節的802.2 SNAP 。目的服務訪問點( Destination Service Access Point, D S A P )和源服務訪問點(Source Service Access Point, SSAP )的值都設爲0 x a a 。Ct r l字段的 值設爲3 。隨後的3個字節o rg code 都置爲0 。再接下來的2個字節類型字段和以太網幀格式一樣(其他類型字段值可以參見RFC 1340 [Reynolds and Postel 1992] )。 
C R C字段用於幀內後續字節差錯的循環冗餘碼檢驗(檢驗和)(它也被稱爲F C S 或幀檢驗 序列)。 
8 0 2 . 3標準定義的幀和以太網的幀都有最小長度要求。 8 0 2 . 3規定數據部分必須至少爲 3 8字節,而對於以太網,則要求最少要有 4 6 字節。爲了保證這一點,必須在不足的空間插入填充(p a d )字節。在開始觀察線路上的分組時將遇到這種最小長度的情況。


=================================================================================================================

Ethernet V2比IEEE802.3更適合於傳輸大量的數據,但Ethernet V2缺乏數據鏈路層的控制,不利於傳輸需要嚴格傳輸控制的數據,這也正是IEEE802.3的優勢所在,越需要嚴格傳輸控制的應用,越需要用 IEEE802.3或SNAP來封裝,但IEEE802.3也不可避免的帶來數據裝載量的損失,因此該格式的封裝往往用在較少數據量承載但又需要嚴格控制傳輸的應用中。

在實際應用中,我們會發現,大多數應用的以太網數據包是Ethernet V2的幀(如HTTP、FTP、SMTP、POP3等應用),而交換機之間的BPDU(橋協議數據單元)數據包則是IEEE802.3的幀,VLAN Trunk協議如802.1Q和Cisco的CDP(思科發現協議)等則是採用IEEE802.3 SNAP的幀。

如STP對應的幀如下,抓包格式爲IEEE 802.3,LLC中的DSAP=SSAP=0X42


普通的TCP報文如下,抓包顯示爲ETHERNET II格式,其實LLC中DSAP=0X06


發佈了64 篇原創文章 · 獲贊 17 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章