鄭永春 吉軍
摘 要
傳統的半雙工以太網中,在共享通信介質上,數據采用爭用線路來發送信號,在爭用過程中會產生信號的碰撞沖突,為了避免和減少沖突的發生,碰撞槽時間參數起到了關鍵的作用,本文分別從碰撞的產生和碰撞槽時間的作用兩個方面進行了論述,以供參考。
【關鍵詞】以太網 CSMA/CD 碰撞槽時間
1 引言
在傳統以太網的總線型網絡拓撲結構中,由于通信介質的共享,網絡設備節點需要采用爭用線路的方法來發送信號,為了防止在通信介質上造成沖突,因而采用了CSMA/CD(Carrier Sense Multiple Access with Collision Detection)載波偵聽多路訪問/沖突檢測技術來實現信號的傳輸。因為總線結構的特點是多路訪問拓撲結構,每個計算機節點使用相同的共享介質相互通信,也就是說,為了避免各個節點發送信號時產生碰撞沖突,要求各個節點在發送前和發送中都要對整個介質進行信號檢測,如在某一時刻,當總線上的一臺計算機發送信號時,總線上的其他計算機檢測出了介質上的這個信號,也就是檢測到共享介質處于忙碌狀態,這時其他計算機便處于等待狀態,等到發送節點信號發送完畢并檢測到介質空閑時再發送信號,這就是載波偵聽的特點,這個檢測也就是沖突檢測(CD)。
因為在傳統的半雙工以太網中,信號只能朝一個方向傳送,因此碰撞槽時間就起到了確定網絡距離和設備數量的重要參數作用。
2 碰撞的產生
假設局域網的兩個最遠的端點為節點1和節點2,當節點1向節點2發送信號時,發送一段時間后,信號才能到達節點2。假設當節點1向節點2發送信號的過程中,此時節點2也向節點1發送自己的信號,那么經過一段時間后,節點1和節點2發送的幀信號肯定要發生碰撞,從而產生了沖突,沖突一旦產生,都變成了無用的信號,數據傳送就沒有意義了。為了避免這種碰撞的產生,節點1和節點2要知道最晚經過多長時間自己發送的數據沒有發生碰撞。
假設節點1從開始發送到碰撞時間為τ,節點2從發送信號到碰撞的時間為δ(注:兩個節點不是同時發送信號),信號發生碰撞后,節點1經過2τ時間檢測到了發生了有碰撞,于是停止發送信號,節點2經過2δ時間檢測到發生了碰撞,也停止發送信號。兩個節點分別等待一段隨機選定的時間(二進制指數退避算法)后,再檢測共享介質是否空閑,然后決定是否發送信號。假設碰撞的時間為T,從節點1傳送信號到節點2的單程時間為t,碰撞時間的范圍就是 0≤T≤2t,也就是T最大取值是2倍的節點1到節點2信號的傳播時間,這個時間T就叫做碰撞槽時間。T的極端最大值是2t,這個時間也被稱為爭用期,又稱為沖突窗口,也就是在這個爭用期T內,如果沒有檢測到碰撞的發生,那么就代表共享介質空閑,節點取得使用權,就可以發送數據了,也肯定不會發生碰撞。
3 碰撞的作用
由于碰撞沖突的存在,所以為了減少信號傳輸過程中的沖突以及沖突發生后,采取有效的恢復措施,同時設定合理的局域網絡距離和連接設備就顯得尤為重要。
3.1 確定以太網最小幀的長度
在CSMA/CD中,協議規定了幀的最小傳輸時間至少為一個碰撞槽時間,以太網規定,對于10Mb/S和100Mb/s以太網的碰撞槽時間為512個比特時間或64個二進制字節,1000Mb/s以太網的碰撞槽時間為4096個比特時間或512個二進制字節。因為假設某個節點發送了一個非常短的幀,在發送完畢后發送節點才檢測到發生了碰撞,這種情況顯然會影響以后信號的發送,沒辦法保證在接下來信號的傳送過程中不會發生沖突,為了避免這種情況發生,因此以太網規定了最短幀長為512比特,即64個字節,這64個字節幀的組成由“目的MAC”占6個字節,“源MAC”占6個字節,“Type”占2個字節,“CRC”占4個字節,再加上實際載荷的最小數據長度46個字節組成。如果要發送的數據非常少,要加入一些填充字節,使幀長不少于64字節。對于10Mb/S以太網,發送512比特的時間需要51.2μs,也就是爭用期的時間是51.2μs,如果在爭用期內,發送了64個字節沒有發生碰撞,那么共享介質就被此節點有效占用,其他節點檢測到有信號發生,也就不發送信號了,也就是說后續發送的數據就一定不會發生沖突。任何長度小于64個字節的幀都被看作是由于沖突產生的碎片或者無效幀而被丟棄。
3.2 以太網中網段最大傳輸范圍
CDMA/CD協議中規定,信號在以太網上傳播1km大約需要5μs,以太網最大的端到端傳輸距離必須小于爭用期的一半(即25.6μs),則理論上S=(1km /5μs) *25.6μs=5.12km,也就是說以太網的最大端到端長度S約為5km,這足以滿足現在以太網的傳輸范圍,同時按照標準,10Mb/s以太網采用中繼器時,連接最大長度為2500米,最多經過4個中繼器 ,因此,以太網都能在爭用期51.2μs內檢測到可能發生碰撞。如果共享以太網網絡擴展得太大,就會使碰撞槽時間變長,容易導致發生延遲沖突,所以說碰撞槽時間確定了最大網段的大小限制。
4 結論
總之,在實際應用中,碰撞槽的時間還要考慮信號在集線器等物理層產生的延遲時間,幀在媒體上的傳播速度等因素,通過計算機碰撞槽時間定義了網絡電纜的最大長度和共享介質以太網網段所能使用的集線器個數,所以說碰撞槽時間在以太網中是一個極為重要的參數。
參考文獻
[1] 吳功宜.計算機網絡(第3版)[M] .北京: 清華大學出版社,2011(06).
[2] 謝希仁.計算機網絡(第6版)[M].北京:電子工業出版社,2013(11).
[3] 王鳳英等.計算機網絡[M].北京:清華大學出版社,2010(02).
[4] Mark A.Dye,Rick McDonald,Antoon W.Rufi.思科網絡技術學院教程[M].北京:人民郵電出版社,2009(01).
作者簡介
鄭永春(1972-),男 ,碩士學位。現供職于長春工程學院。主要研究方向為軟件工程。
吉軍(1963-),男,大學本科學歷。現供職于長春工程學院。主要研究方向為計算機應用。
作者單位
長春工程學院計算機技術與工程學院 吉林省長春市 130012endprint