802.3 Ethernet

ethernet(乙太網路)
IEEE代號為802.3
ethernet的成功在於其簡易性,維護容易,與新技術結合之能力,可靠性及低成本安裝與升級之結果
邏輯拓樸為bus(匯流排)技術
傳遞形式為broadcast(廣播)
media access control屬於nondeterministic
存取方式:1-persistent CSMA/CD
編碼方式:manchester

缺點:
高負載時頻寬使用率低:網路負載重時會因為不斷發生訊框衝撞的現象而使得訊框無法成功的傳送
不提供保証傳送延遲服務:若不斷發生衝撞的現象而使得訊框將無法被成功傳送出去
頻寬使用不保証公平:沒有輪流傳送的特性,因此各工作站使用的頻寬可能差異極大
優點:
網路容錯性高,成本低,普及,設定安裝易

ps:
ethernet half-duplex實際傳輸速度約為理論上的50~60%
ps:
Ethernet typically is not used at either the distribution or the core layer due to its relatively low bandwidth capacity 
ps:
collision domain(碰撞領域):此領域的節點可聽到此領域的所有訊號,且此領域是一個lan segment
broadcast domain(廣播領域):此領域的節點在廣播範圍內,且此領域是一個lan


nondeterministic(非明確性)
使用first-come first-served(先到先服務)方式
或稱probabilistic(可能性的)模式的協定,不保證工作站可獲得接通網線的能力
ex:csma/cd

………………………………………….
數據以frame(訊框)形式傳遞
1frame送出後會以電子信號同時向bus兩端廣播,各節點皆收到
2各節點檢查目地位置以判斷是否要接收,若是框包將複製一份給自己
3原來框包繼續送給下一節點﹐直到封包抵達終端電阻才會被銷毀。

關於IEEE802.3和dix/ethernet2的frame
乙太網路由xerox所發明的baseband lan specification(基頻區域網路規範),且由dix(dec,intel,xerox)共同開發
IEEE802.3標準所描述的是修改過的原始乙太網路標準
在dix/ethernet2及IEEE802.3規格間仍存在一些極小的差異,如下:
 dix/ethernet2 frame格式:[preamble][da][sa][type][data][fcs]
 IEEE802.3 frame格式:[preamble][da][sa][length][data][fcs]
而且IEEE802.3frame會加入LLC header到data欄位
因為IEEE802.3無type所以無法識別上層協定,所以IEEE定義802.2LLC,以提供此功能
另外IEEE802.3frame中沒指定type則上層協定預設為ipx,這是歷史因素


Frame規格 
大小為64-1518bytes(不包含preamble)
frame欄位說明如下:
preamble(序言/前置訊號)8bytes,0與1交差變換的欄位,給接收者硬體做訊號同步用,編碼時產生,解碼時會移除
早期的ieee版本中,preamble(8)被拆成前置訊號(7)和SFD(訊框起始符號)(1)
最後一個byte是10101011,稱為sfd
100mbps或較高傳速度的乙太網路是同步的,因此用不到preamble,但為了相容仍然存在
destination(目地)6byte及source(來源)6byte
以mac位址為主
最高位元為0表一般位址
最高位元為1表群組位置(允許多站台監聽單一位置,也稱多點傳送mutlicast)
目地位置都為1表示廣播
type/length(訊息/長度)2byte,告訴接收端如何處理訊框
值比1536或16進位的0600小則代表length,大於則表type
常見的type有0800代表ip,8137代表ipx,0600代表xns,809b代表apple talk,0806代表arp
data(數據或PDU)46-1500byte,0位元資料長度會造成問題,若資料bit小於46byte則自動填塞
一般還會在放802.2LLC(3byte)和802.2SNAP(5byte),所以要扣掉8byte才是可存放上層協定的空間 
FCS(frame check sequence)4byte,檢測訊框,使用crc-32,僅偵測不修正

frame的演進
ethernet v1,1980由dix(dec,intel,xeror)制定
ethernet v2,1982由dix(dec,intel,xeror)制定,最常見的乙太網路格式
raw 802.3,1983由novell的netware/86所使用的私有乙太網路格式,只支援ipx/spx,length欄位範圍為0000-05dc
IEEE802.3,由ethernet v2發展而來,在資料欄位加入LLC
IEEE802.3+snap,為了在LLC上支援更多的上層協議而發佈

………………………………………….

碰撞的結果
部分與損壞訊框之長度小於64byte,且fcs部分不合法
己損壞或部份己傳輸的訊息通常被視為collision fragment(碰撞片段)/fragments runt/runt
碰撞依次數分:
single collision(單一碰撞):傳訊號時發生碰撞,但在第二次傳就成功
multiple collision(多重碰撞):傳訊號時發生碰撞,一直到多次碰撞後才傳成功
碰撞型態分:
local collision(區域碰撞):正常情況
remote collision(遠端碰撞):正常情況
late collision(晚碰撞):錯誤情況

 

late collision:訊框己傳送前64位元後才發生的碰撞
nic的晶片組中,在發生late collision時,並不會自動要求重新傳,
這些late collision所造成的延遲稱為consumption delay(秏費延遲),這些延遲增加會使網路效能下降

……………………………………………

乙太網路中所認定的錯誤包括:
在slot time結束前或結束後所發生的同時傳輸
超過或不合法訊框長度之傳輸 ex:jabber,long frame,range error
不合法的短訊框 ex:short frame,collision fragment
毀損之傳輸 ex:fcs錯誤
所傳輸的位元數不足或太多 ex:alignment error
訊框中實際位元組資料與通報的位元組資料不相符 ex:ranage error
不尋常長度之前置訊號或無意訊框情況 ex:ghost,jabber

jabber(無意義訊框):定義在802.3標準中,最少傳輸的期間為20.000到50.000位元時間
long frame(長訊框):訊框長度大於合法長度,且不論是否加上了tag(識別資訊)都算在長度內
short frame(短訊框)/frame runt:訊框長度小於合法的最短64byte長度,且訊框具有完整的fcs
alignment error(校準錯誤):訊息的所有位元無法被8整除,通常由軟體或碰撞引起,且可能會造成當機
range error(範圍錯誤):訊框中長度欄位的值為合法大小,但卻不符合接收到訊框的實際數目
ghost:在纜線上所偵測到的能量,雜訊