Link Layer &一點點的Physical Layer Prof. Michael Tsai 2013/03/04
Multiple Access Protocols (Link Layer) Point-to-point link – link的兩端各有一個傳輸&接收器 Broadcast link – 多個裝置共用一個”連結”/媒體(Medium) 共用 = 你講話大家都聽得到 Collision = 多個人一起講話, 每個人都聽到同時兩個人以上講 話 沒人聽得懂 剛剛的時間(頻寬)就浪費了 大家必須有某種decentralized, 簡單, 公平的協議來避免 collision! Channel partition protocols & taking turns protocols Random access protocols: 傳的時候全速傳 壞掉再重傳 (retransmission)
Ethernet’s Carrier Sensing / Collision Detection 上層(network layer)有東西要傳的時候,會將準備好的 封包放進buffer內。 Carrier Sensing: 說前先聽, 如果有人在說話(如果你 聽到了),先等他說完再說。 如果96-bit duration沒有偵測到傳輸,則開始傳輸。 Collision Detection: 如果有人同時開始講話(如果你聽 到了),立刻停下來。 停下來以後,傳輸48-bit duration的jam signal。 Exponential Backoff: 每次傳輸失敗後,這個裝置會進 入exponential backoff模式。 當傳輸這個封包碰到連續第n次collision後,則須等待 𝑟𝑎𝑛𝑑𝑜𝑚 0,1,2,…, 2 𝑚 −1 ×512 bit duration, 𝑚= min(𝑛,10)的時間,然後回到步驟1。
2 CSMA Nodes with Colliding Transmissions B A Space Time Propagation Delay 𝑑(𝐴,𝐵) 𝑐 𝑡 0 𝑡 1 Transmission Time 𝐿 𝐴 𝑅 𝐴 𝐿 𝐵 𝑅 𝐵
2 CSMA/CD Nodes with Colliding Transmissions B A Space Time 𝑡 0 𝑡 1 偵測到collision, 停止傳輸
CSMA/CD的效率 𝑑 𝑝𝑟𝑜𝑝 =最大propagation delay 𝑑 𝑡𝑟𝑎𝑛𝑠 =最大packet transmission time 𝐸𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑐𝑦= 1 1+ 5 𝑑 𝑝𝑟𝑜𝑝 𝑑 𝑡𝑟𝑎𝑛𝑠
Ethernet: 從broadcast link到point-to-point link HUB: Re-send received packets to all ports A multi-port repeater!
Ethernet: 從broadcast link到point-to-point link Switch: The internal address table will learn the MAC addresses on that port. Packets to a specific address will be sent to only the port with that address. Packets with new addresses will be sent to all ports. Point-to-point links! No longer need a MAC!
常用使用網路線的Ethernet科技 10 Base2: 使用類似家裡第四台用的同軸電纜傳輸。速 度可達10 MBps。資訊館最早的網路使用此科技。 10 BaseT: 使用Cat. 3 or Cat. 5網路線中的四芯(兩對) 。 所有裝置都直接接到HUB或Switch(星狀拓樸)。 100 BaseTX:使用Cat. 5網路線中的四芯(兩對)。 1000 BaseT:使用Cat. 5等級或更好的網路線中的八芯(四 對)。 10G BaseT:使用Cat. 6a等級或更好的網路線。
10 BaseT的訊號 可以經常切換high & low voltages (-2.5 及 2.5 Volt) Clock recovery: 需要知道每個bit開始及結束的時間。但是 每個裝置內部的時間不同! 因此需要從對方傳輸的訊號變 換來估計每個bit的時間有多長! 接收端用0 volt來當作threshold判斷到底是high or low。 Noise: 電路中的雜訊會加在收到的訊號上。當訊號相對於 雜訊太弱的時候,就有可能會誤判high or low。
100 BaseTX的訊號 4B5B + MLT-3 編碼 4B5B: 把0和1做更平均的分配 MLT-3: +1, 0, -1 Volt Name 4b 5b 0000 11110 1 0001 01001 2 0010 10100 3 0011 10101 4 0100 01010 5 0101 01011 6 0110 01110 7 0111 01111 8 1000 10010 9 1001 10011 A 1010 10110 B 1011 10111 C 1100 11010 D 1101 11011 E 1110 11100 F 1111 11101 4B5B + MLT-3 編碼 4B5B: 把0和1做更平均的分配 MLT-3: +1, 0, -1 Volt Bit 1: 移動到下一個state Bit 0: 同樣一個state
Ethernet Frame Structure Octets = Bytes Preamble Start of frame delimiter MAC destination MAC source Length (IEEE 802.3) 802.1Q tag (optional) Payload Frame check sequence(32‑bit CRC) 7 octets 1 octet 6 octets 2 octets (4 octets) 42–1500 octets 4 octets Preamble: 10101010, 用來做clock recovery用途。 MAC source/destination: 紀錄來源及目的裝置網路卡號 MTU (Maximum Transmission Unit): 如果上層封包> 1500 Bytes, 則會被切小分段傳輸。 FCS (CRC): 可以檢查這個封包是否有錯誤。
作業 請在網路上查詢, 100 BaseTX Ethernet的最大傳輸長度(裝 置之間的距離)為? 因此最大的propagation delay為? 為什麼在100 BaseTX的定義中,需要設定一個最大傳輸長 度? 100 BaseTX Ethernet的最大封包大小為? 其transmission time為? 由以上之資訊,計算100 BaseTX Ethernet的efficiency。 如果今天我們想要使用CSMA/CD作為台灣超級網路的 MAC protocol,並使用1000 BaseT Ethernet作為Link layer的 協定,此網路包含了台北、新竹、台中、台南、高雄、 台東、花蓮等城市(網路集線器設在台中)。假設鋪設兩點 之間的線路時都是以直線來鋪設。試問efficiency在這樣的 環境下會是多少?