week 2 - zxc22273146/TCP-IP GitHub Wiki

IEEE 802.3 Ethernet

  • collision:(訊號)衝撞

  • 乙太網路在傳送訊框之前,傳送端和接收端之間不用先建立連線。

  • 有傳送ACK的機制代表reliable的網路

  • transceiver:收發器

  • terminator:終端器

  • MAC:media access control

  • 兩個電腦間最多只能有4個repeater,所以10Base5 Ethernet最長為2500公尺。

  • Manchester encoding:在每一個位元的中間會有電位變化,也用來讓傳送端節點和接受端節點的clocks可以同步。

  • hub、repeater 第一層;switch、bridge 第二層;router 第三層。

  • switch的每一個port相當於一張網路卡

  • 用Hub接起來的網路最多同時只能有一台送資料,否則會碰撞,因為他是廣播訊號。

  • switch處理封包的速度是wirespeed,因為所有工作站可同時傳送資料。

  • 網卡共48個位元,前24個位元是公司的prefix。

  • unicast 單播;multicast 群播;broadcast 廣播。

  • Preamble是一個101010...10(7bytes)的序列,為了讓傳送端及接收端之間可以達到同步。

  • CSMA(Carrier Sense Multiple Access)

    傳輸前先聽

    當偵測到頻道為空閒(idle)時,就傳送整包訊框,無論是否偵測到訊框碰撞。

    假如偵測到頻道為忙碌(busy)時,就延遲傳輸。

  • CSMA/CD(collision detection)

    傳輸前先聽

    假如偵測頻道為空閒時,就開始傳送訊框,一旦發現碰撞發生,立即停止傳送。

    假如偵測頻道為忙碌時,則延遲到頻道變成空閒時再傳送。

    會在偵測到封包發生衝撞後發出32-bit的jamming sequence

  • 封包最短長度為64bytes,因為封包在2500公尺(Ethernet的最長距離)的纜線上來回跑的時間為51.2 microseconds(微秒),時間乘以網速10Mbps等於512bits的資料量,也就是64bytes。

  • 長度小於64位元組的訊框會被當作被碰撞過的訊框,且被直接捨棄。

  • Exponential Backoff

    隨機時間為(0到2的n次方-1)乘以51.2microsecond之間選一個,n為碰撞次數,且n的上限為10,也就是n的範圍最多只可能有0到1023。

    舉例:假設n=2,則等待時間為0、51.2微秒、102.4微秒、153.6微秒之間選一個。

    若n>16,表示網路壅塞,則放棄封包。

  • 乙太網路在負載較輕的狀況下運作最好