以太網幀格式及例子[轉]

  
  很多人將局域網(Local Area Network,LAN)和以太網(Ethernet)混爲一談,這個誤解大概是因爲和其他局域網技術比較起來,以太網技術使用得是如此普遍、發展得是如此地迅速,以至於人們將"以太網"當作了"局域網"的代名詞。
  本節將討論"局域網"和"以太網"二者之間的關係以及相關的一些基礎知識。
  
  1 以太網概述
  
  1973年,施樂公司(Xerox)開發出了一個設備互連技術並將這項技術命名爲"以太網(Ethernet)"。Ethernet採用了總線競爭式的介質訪問方法(起源於夏威夷大學在60年代研製的ALOHA網絡),它的問世是局城網發展史上的一個重要里程碑。
  
  1979年,Xerox與DEC、Intel共同起草了一份10 Mbps以太網物理層和數據鏈路層的規範,稱爲DIX(Digital、Intel、Xerox)規範-DIX 1.0。
  
  1980年2月(美國)電氣電子工程師學會(IEEE)成立了專門負責制定局域網絡標準的IEEE 802委員會。該委員會開始研究一系列局域網(LAN)和城域網(MAN)標準,這些標準統稱爲IEEE 802標準。其中,IEEE 802.3對於基於總線型的局域網進行了規定(實際上IEEE 802.3標準的制定過程中參考、借鑑了很多已經實現的以太網技術)。
  
  1982年,DIX修改併發布了自己的以太網新標準:DIX 2.0。
  1983年,Novell根據初步形成的IEEE 802.3規範發佈了Novell專用的以太網幀格式,常被稱爲802.3 原始幀格式(802.3 raw)。
  
  1984-1985年,IEEE 802委員會公佈了五項標準IEEE 802.1~IEEE 802.5。其中,公佈了兩種802.3幀格式,即802.3 SAP和802.3 SNAP。
  
  後來,IEEE 802標準被國際標準化組織ISO修訂並作爲國際標準,稱爲ISO 8802。
  
  2 以太網技術概述
  
  儘管局域網的各種標準在內容上有不少區別,但是,其主要的技術實現方法是相近的。
  
  
2.1 Ethernet地址
  
  爲了標識以太網上的每臺主機,需要給每臺主機上的網絡適配器(網絡接口卡)分配一個唯一的通信地址,即Ethernet地址或稱爲網卡的物理地址、MAC地址。
  
  IEEE負責爲網絡適配器製造廠商分配Ethernet地址塊,各廠商爲自己生產的每塊網絡適配器分配一個唯一的Ethernet地址。因爲在每塊網絡適配器出廠時,其Ethernet地址就已被燒錄到網絡適配器中。所以,有時我們也將此地址稱爲燒錄地址(Burned-In-Address,BIA)。
  
  Ethernet地址長度爲48比特,共6個字節,如圖1所示。其中,前3字節爲IEEE分配給廠商的廠商代碼,後3字節爲網絡適配器編號。
  
 
  
圖1  Ethernet地址
  
2.2 CSMA/CD
  在ISO的OSI參考模型中,數據鏈路層的功能相對簡單。它只負責將數據從一個節點可靠地傳輸到相鄰節點。但在局域網中,多個節點共享傳輸介質,必須有某種機制來決定下一個時刻,哪個設備佔用傳輸介質傳送數據。因此,局域網的數據鏈路層要有介質訪問控制的功能。爲此,一般將數據鏈路層又劃分成兩個子層:
  
  ●邏輯鏈路控制LLC(Logic Line Control)子層
  
  ●介質訪問控制MAC(Media Access Control)子層
  
 

  
圖2  LLC和MAC子層  
  如圖2所示。其中,LLC子層負責向其上層提供服務;MAC子層的主要功能包括數據幀的封裝/卸裝,幀的尋址和識別,幀的接收與發送,鏈路的管理,幀的差錯控制等。MAC子層的存在屏蔽了不同物理鏈路種類的差異性。在MAC子層的諸多功能中,非常重要的一項功能是仲裁介質的使用權,即規定站點何時可
以使用通信介質。  
  實際上,局域網技術中是採用具有衝突檢測的載波偵聽多路訪問(Carrier Sense Multiple Access /
Collision Detection,CSMA/CD)這種介質訪問方法的。  
  在這種介質訪問方法中規定:在發送數據之前,一個節點必須首先偵聽網線上的載波,如果在9.6微
秒的時間之內沒有檢測到載波(說明通信介質空閒),節點纔可以發送一幀數據。  
  如果兩個節點同時檢測到介質空閒並同時發送出一幀數據,則會導致數據幀的衝突,雙方的數據幀均被破壞。一方面,檢測到衝突的節點會發送"衝突增強"信號(32比特的"1")通知介質上的每個節點發生了衝突。另一方面,發生衝突的節點在再次發送自己的數據幀之前會各自等待一段隨機的時間。隨着以太
網上節點數量的增加,衝突的數量也隨之增加,而整個網段的有效帶寬將隨之減少。  
  在後面的章節中,我們將學習如何利用網橋、交換機等設備將一個網段劃分成多個獨立的衝突域,進而增加每個網段的可用帶寬。
  
  3 以太網幀格式
  
  目前,有四種不同格式的以太網幀在使用,它們分別是:
  
  ●Ethernet II即DIX 2.0:Xerox與DEC、Intel在1982年制定的以太網標準幀格式。Cisco名稱爲:ARPA。
  
  ●Ethernet 802.3 raw:Novell在1983年公佈的專用以太網標準幀格式。Cisco名稱爲:Novell-Ether。
  
  ●Ethernet 802.3 SAP:IEEE在1985年公佈的Ethernet 802.3的SAP版本以太網幀格式。Cisco名稱爲:SAP。
  
  ●Ethernet 802.3 SNAP:IEEE在1985年公佈的Ethernet 802.3的SNAP版本以太網幀格式。Cisco名稱爲:SNAP。
  
  在每種格式的以太網幀的開始處都有64比特(8字節)的前導字符,如圖3所示。其中,前7個字節稱爲前同步碼(Preamble),內容是16進制數0xAA,最後1字節爲幀起始標誌符0xAB,它標識着以太網幀的開始。前導字符的作用是使接收節點進行同步並做好接收數據幀的準備。
  
 

  
圖3  以太網幀前導字符

  
  除此之外,不同格式的以太網幀的各字段定義都不相同,彼此也不兼容。
  
  
3.1 Ethernet II幀格式
  
  如圖4所示,是Ethernet II類型以太網幀格式。
  
 

  
圖4  Ethernet II幀格式
  Ethernet II類型以太網幀的最小長度爲64字節(6+6+2+46+4),最大長度爲1518字節(6+6
+2+1500+4)。其中前12字節分別標識出發送數據幀的源節點MAC地址和接收數據幀的目標節點MAC地
址。  
  接下來的2個字節標識出以太網幀所攜帶的上層數據類型,如16進制數0x0800代表IP協議數據,16進制數0x809B代表AppleTalk協議數據,16進制數0x8138代表Novell類型協議數據等。
  在不定長的數據字段後是4個字節的幀校驗序列(Frame Check Sequence,FCS),採用32位CRC循環冗餘校驗對從"目標MAC地址"字段到"數據"字段的數據進行校驗。
  
  
3.2 Ethernet 802.3 raw幀格式
  如圖5所示,是Ethernet 802.3 raw類型以太網幀格式。
  
 

  
圖5  Ethernet 802.3 raw幀格式  
  在Ethernet 802.3 raw類型以太網幀中,原來Ethernet II類型以太網幀中的類型字段被"總長度"
字段所取代,它指明其後數據域的長度,其取值範圍爲:46-1500。
  接下來的2個字節是固定不變的16進制數0xFFFF,它標識此幀爲Novell以太類型數據幀。
 
  
3.3 Ethernet 802.3 SAP幀格式
  
  如圖6所示,是Ethernet 802. 3 SAP類型以太網幀格式。
  
 

  
圖6  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網絡環境中。
  
  新增的802.2 LLC首部包括兩個服務訪問點:源服務訪問點(SSAP)和目標服務訪問點(DSAP)。它們用於標識以太網幀所攜帶的上層數據類型,如16進制數0x06代表IP協議數據,16進制數0xE0代表Novell類型協議數據,16進制數0xF0代表IBM NetBIOS類型協議數據等。
  
  至於1個字節的"控制"字段,則基本不使用(一般被設爲0x03,指明採用無連接服務的802.2無編號數據格式)。
  
3.4 Ethernet 802.3 SNAP幀格式
  
  如圖7所示,是Ethernet 802. 3 SNAP類型以太網幀格式。
  

  
圖7  Ethernet 802. 3 SNAP幀格式

  
  Ethernet 802. 3 SNAP類型以太網幀格式和Ethernet 802. 3 SAP類型以太網幀格式的主要區別在於:
  ●2個字節的DSAP和SSAP字段內容被固定下來,其值爲16進制數0xAA。
  ●1個字節的"控制"字段內容被固定下來,其值爲16進制數0x03。
  ●增加了SNAP字段,由下面兩項組成:
  
  ◆新增了3個字節的組織唯一標識符(Organizationally Unique Identifier,OUI ID)字段,其值通常等於MAC地址的前3字節,即網絡適配器廠商代碼。
  ◆2個字節的"類型"字段用來標識以太網幀所攜帶的上層數據類型。
  
  4 IEEE 802標準系列
  
  隨着時間的推移,除了最早的10Base2、10Base5、10BaseT,IEEE 802還推出了一系列其他局域網標準。下面,我們簡單介紹其中一些較爲常用的以太網標準。
  
  
4.1 100BaseT
  
  1995年6月,傳輸速率爲100Mbps的以太網由IEEE 802.3u標準所定義。即我們通常所說的快速以太網(Fast Ethernet)。
  根據所用傳輸介質不同,還定義了以下三種不同的物理層標準:
  ●100Base-TX:使用2對UTP 5類線或STP,其中一對用於發送,另一對用於接收。
  ●100Base-F:使用2對光纖,其中一對用於發送,另一對用於接收。
  ●100Base-T4:使用4對UTP 3類線或5類線,它使用3對線同時傳送數據,用1對線用作衝突檢測的接收信道。
  以上三種不同的標準中,因爲100Base-TX 與10BaseT兼容,所以使用得更廣泛。
  
  
4.2 1000BaseT
  
  1996年3月成立的IEEE 802.3z工作組,專門負責千兆位以太網的研究,98年制定了相應標準。
  
  千兆以太網的物理層協議包括1000Base-SX,1000Base-LX,1000Base-CX和1000Base-T等標準。
  
  ●1000Base-SX:使用芯徑爲50μm或62.5μm,工作波長爲850nm或1300nm的多模光纖,採用8B/10B編碼方式,傳輸距離分別爲260m和525m,適用於同一建築物中同一層的短距離主幹網。
  ●1000Base-LX:使用芯徑爲9μm、50μm或62.5μm,工作波長爲1300nm的多模、單模光纖,採用8B/10B編碼方式,傳輸距離分別爲550m和3km~10km,主要用於校園主幹網。
  ●1000Base-CX:使用150歐姆平衡屏蔽雙絞線(STP),採用8B/10B編碼方式,傳輸速率爲1.25Gbps,傳輸距離爲25m,主要用於集羣設備的連接,如一個交換機房內的設備互連。
  ●1000Base-T:使用4對5類非平衡屏蔽雙絞線(UTP),傳輸距離爲100m,主要用於結構化佈線中同一層建築中的設備通信,從而可以利用以太網或快速以太網已鋪設的 UTP電纜。
  
  
4.3 萬兆以太網
  
  2000年3月,IEEE專門成立了IEEE 802.3ae特別工作組,負責制定10G以太網,即萬兆以太網標準。
  
  2002年7月,萬兆以太網標準最終發佈。萬兆標準內容包括10GBase-X、10GBase-R和10GBase-W三種類型。萬兆以太網標準不僅將以太網的帶寬提高到10Gbps(在使用萬兆以太網信道的情況下可以達到40Gbps甚至更高的速率),同時也將通信距離提高到數十公里甚至上百公里。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章