Plurk FaceBook Twitter 收進你的MyShare個人書籤 MyShare
  顯示內嵌語法

【旗標技術通訊電子報】第101期 2001.4.20


*****************************************************************
※本期書摘:乙太網路的資料連接層(1)
※下期書摘:乙太網路的資料連接層(2)
*****************************************************************
※新書訊息

抓住你的 Photoshop 6 中文版 施威銘研究室著 540 元

*****************************************************************
※本期書摘:乙太網路的資料連接層(1)
*****************************************************************

由於乙太網路上所有的電腦, 都共用同一個傳輸介質(網路線), 當然會
面臨『誰先用、誰後用?』這個讓人頭疼的問題。要解決這個問題, 就必
須訂定一套『介質使用管理辦法』。以網路術語來說, 這套使用管理辦法
稱為『MAC Method』(Media Access Control Method)。乙太網路所採用
的 MAC Method 稱為『CSMA/CD』(Carrier Sense Multiple Access with
Collision Detection), 雖然英文全名又臭又長, 但是其原理並不難懂,
且讓我們舉個簡單的例子來說明。

CSMA/CD 工作原理

假設會議室的每個座位都安裝一隻麥克風, 大家都必須透過麥克風發言。為
了避免多人同時發言, 於是設計為一次只有一隻麥克風能傳出聲音。但是如
何決定誰的麥克風能出聲呢?

很簡單!大家公平競爭嘛。

說得更清楚一點, 就是『用搶的』!

每個人必須先按『發言鈕』搶發言權, 一旦您搶到了發言權, 別人的麥克風
與發言鈕就都失效。整個播音線路就統統歸您一個人用, 只會傳出您的聲音
, 別人無法插嘴。直到您講完了、不再佔用線路, 其它人便又可以搶按『發
言鈕』, 爭取發言權。

明白了以上的道理後, 我們不難領悟到:其實在按『發言鈕』搶發言權之前
, 應該先聽聽看是有否人正在發言?若然, 那就不必按鈕, 反正按也沒用。
一定要等到沒人發言時, 才有機會搶到發言權, 此時按『發言鈕』才有意義
。可是, 如果碰巧有多人同時按下『發言鈕』, 哪麼誰會搶到發言權呢?

答案是:『都搶不到!』。

發生這種同時搶用的衝突情況時, 播音系統會自動暫停作用, 等一小段時間
後再恢復正常, 繼續接受大家搶發言權。

現在, 我們將上面這個例子套用到乙太網路。假設 A 電腦要傳送 1 個封包
給 B 電腦, A 電腦會先傾聽(偵測)網路是否已在傳送資料?若然, 則耐心
等待並持續偵測。若偵測到有空檔, 而且此空檔能持續 9.6 us 之久, 就認
定可以傳送資料, 於是趕緊送出封包。在實際生活中, A 電腦要傳送的封包
通常不只 1 個, 假設有 10 個, 如果它的運氣夠好, 哪麼連續 10 次就能送
完 10 個封包收工。如果沒這麼幸運, 就可能在送出第 1 個封包後, 被 C
電腦『插隊』、搶先送出封包, 等到 C 電腦傳了 1 個封包後, 卻又變成 D
電腦傳送封包。這齣你爭我奪的戲碼, 在傳送每個封包前都會重演 1 次, 每
次都可能產生新的贏家。

然而, 為什麼所偵測到的空檔要持續 9.6 us, 才能傳送資料呢?

其實比較周延的說法應該是『空檔能持續 96 Bit-time 之久』。所謂
『Bit-time』代表傳送 1 Bit 的平均時間。對於 10 Mbps 乙太網路而言,
1 Bit-time=10-7 秒, 因此 96 Bit-time 等於 9.6 us;若是 100 Mbps 乙
太網路, 1 Bit-time=10-8 秒, 96 Bit-time 就縮短成 0.96 us 了。在乙太
網路規格中, 將封包的間隔時間定為 96 Bit-time, 以確保接收端可以處理
完先前收到的封包, 回復到等待接收的狀態, 這段時間稱為『IFG』(Inter
Frame Gap)。

A 電腦所偵測到的空檔, 可能正好位於 IFG 內。倘若就此送出封包, 然而接
收端還在忙著處理上一個封包, 根本來不及接收這個封包。因此最保險的方
式, 就是等待 96 Bit-time 之後才送出封包, 確定接收端不會準備不及。

在前例中, 使用者必須按鈕以搶奪發言權。但是在乙太網路上, 並非要求使
用者真的去按鈕。而是以電腦送出資料的先後為準, 先送出者先贏!萬一湊
巧有多台電腦同時送出資料, 這些資料(其實就是電子訊號)就會撞在一起
, 這種現象稱之為『碰撞』(Collision)。發生碰撞後, 網路上的所有電腦
都會知道, 而且都會休息一段時間之後, 才又繼續搶送資料, 這個休息動作
稱為『Backoff』。這段休息的時間稱為 Backoff 時間(Backoff time)。
每台電腦的 Backoff 時間長短是以亂數產生, 彼此相同的機率很低, 因此能
降低再度發生碰撞的機率。

如果不幸再度發生第 2 次碰撞, 則每台電腦的 Backoff 時間會加長;若又
發生第 3 次碰撞, Backoff 時間再加長,...依此類推, 直到連續碰撞 16
次之後, 便宣告傳送失敗。

總結來說, CSMA/CD 並未指派每台電腦的傳輸優先順序, 而是開放給大家自
由競爭。在電腦數量不多時, 它的確是一種高效率的 MAC Method。但是反過
來說, 隨著電腦數量遞增, 發生碰撞的機率也愈來愈高, 效率自然也隨之下降
, 這也成為 CSMA/CD 先天難以避免的缺點。

******************************************************************
以上內容摘自『Internet 協定觀念與實作』
施威銘研究室 著
書號:F910  定價:560 元
******************************************************************
想索取前幾期的電子報內容請至易達網網站下載
http://lib.edirect168.com/enews/enews.asp?CH=87

本電子報內容未經授權請勿轉載
版權所有人:旗標出版股份有限公司


好書能增進知識、提高學習效率
卓越的品質是旗標的信念與堅持
http://www.flag.com.tw

═<易達網電子報發報中心>═══════════════════

˙欲訂閱或取消易達網電子報: http://www.edirect168.com/enewsv2/
˙收報、退報有問題,請洽易達網客服信箱: mailto:cs@service.edirect168.com
˙歡迎申請易達網免費電子信箱: http://www.edirect168.com
˙易達網電子報發報中心: mailto:news@service.edirect168.com
˙您想要登廣告: http://www.edirect168.com/html/ad.htm
˙本電子報文章與其相關連結由電子報報主提供,易達網負責發送。

════════════════ 作自己的媒體,唱自己的歌 ══