240 likes | 512 Views
Ethernet 網路 & 資料連結層. IEEE 802. 規範 OSI 中的實體層與資料連結層 IEEE 802.1 – IEEE 802.19 IEEE 802.3 : EtherNet IEEE 802.4 : Token Bus IEEE 802.5 : Token Ring. EtherNet. 目前使用最普遍的網路架構 DIX (EtherNet 2.0) 與 IEEE 802.3 兩個標準 訊號的存取採用 CSMA/CD 機制 CS : Carrier Sense 載波感測 MA : Multiple Access 多重存取
E N D
Ethernet 網路 & 資料連結層
IEEE 802 • 規範OSI中的實體層與資料連結層 • IEEE 802.1 – IEEE 802.19 • IEEE 802.3:EtherNet • IEEE 802.4:Token Bus • IEEE 802.5:Token Ring
EtherNet • 目前使用最普遍的網路架構 • DIX (EtherNet 2.0) 與 IEEE 802.3兩個標準 • 訊號的存取採用CSMA/CD機制 • CS:Carrier Sense 載波感測 • MA:Multiple Access 多重存取 • CD:Collision Detection 碰撞偵測
CSMA/CD 工作原理 • 乙太網路上,一次只能有一台電腦的封包在傳輸,使用廣播方式傳送。 • CSMA/CD 並未指派每台電腦的傳輸優先順序, 而是以電腦送出資料的先後為準, 即『先搶先贏』。 • 搶輸的電腦會持續偵測(CS)網路是否有空檔,若已無其它封包在傳送, 則繼續將封包搶送出去。
資料碰撞(Collision) • 萬一有多台電腦同時送出資料, 則會產生『碰撞』(Collision)。 • 發生碰撞時, 所有電腦會休息一段時間 ( Backoff ) 再搶送資料(CD)。 • 若又發生第2次碰撞, 則每台電腦的休息時間會加長, 連續16次後便放棄傳送。
EtherNet網路 4 大特色 • 先搶先贏。 • 一山不容二虎。 • 同歸於盡。 • 先斬不奏。
MAC 位址的用途 • 乙太網路採用『廣播』(Broadcast)方式傳送封包。 • 封包一旦送出去, 網路上的所有電腦, 無論是否為傳送對象, 都會收到此封包。 • 為了使每一部電腦都能知道自己是否為傳送的對象, 因此每張 Ethernet 網路卡都編有一個獨一無二的『MAC ( Media Access Control ) 位址』。
MAC 位址的原理 • 每個封包都會記載『來源 MAC 位址』和『目的 MAC 位址』。 • 每台電腦在比對目的 MAC 位址之後, 就可以得知自己是否為傳送的對象。 • 若非傳送的對象, 便丟棄此封包;若是傳送的對象, 便繼續處理此封包。
MAC 位址的規格 • 每一片 Ethernet 網路卡出廠前, 就已經將 MAC 位址寫在網路卡的 ROM 或 EEPROM 裡。 • MAC 位址以 6 Bytes 表示, 前 3 個 Bytes 為廠商代號,後3個Bytes為產品流水號。 • 全世界任何兩片乙太網路卡都不會有相同的 MAC 位址。 • Ipconfig/all
TCP標頭 資料訊息 IP標頭 TCP標頭 資料訊息 EtherNet標頭 IP標頭 TCP標頭 資料訊息 標尾 EtherNet訊框格式 資料訊息
Preamble (前序) • 前 7 個 Byte 由一串101010循環字串所構成,功用是使訊號同步。 • 第 8 個 Byte(在 802.3 封包中稱為 SFD 欄位)的資料是10101011,代表前序結束與訊框開始,才會被網路設備(包括網路卡、集線器等等)視為封包內容、開始解讀。
Destination Address (目的位址) • 記錄此封包的目的 MAC 位址。 • 前 3 Bytes 為廠商代號, 後 3 Bytes 為流水號。 • 『0xFFFFFFFFFFFF』(全部 Bit 都是 1)這個位址特別稱為『廣播位址』, 代表所有的接收端都必須處理這個封包
Source Address (來源位址) • 記錄此封包的來源 MAC 位址。 • 此欄位必定是指某個特定的 MAC 位址, 不可能是廣播位址。
Type (協定種類) • 以代碼指定上層(網路層)所採用的協定。 • 例如0x0800代表IP、0x8137 代表 IPX。 • 因網路層可能同時安裝 TCP/IP、IPX、NetBeui 等多種協定, 此欄位便指出應傳給上層的哪一種協定處理。
Data (資料) • 也就是 Payload。 • 長度為 46 Bytes 到 1500 Bytes。 • 不足46 Bytes填入0 • 超過1500 Bytes則在傳輸層進行切割
FCS(Frame Check Sequence, 訊框檢查序列) • 記錄著由硬體(網路卡)自動產生的 CRC (Cyclic Redundancy Check) 值。 • 將來接收端收到封包時, 也會產生一個 CRC 值, 並比對兩個 CRC 值是否相符, 以判斷封包是否完整無損。
如何決定採用何種封包格式? • 並非由使用者決定, 而是要配合上層的協定和下層的網路卡驅動程式。 • 兩者與作業系統關係密切。 • 以 Windows 2000 為例, 對於 IP 和 ARP, 可以同時支援 Ethernet 2.0 和 802.3 兩種格式的封包, 可是在 NetBIOS、AppleTalk 則採用 802.3 格式的封包。