以太網(wǎng)(IEEE 802.3)幀格式:
1、前導(dǎo)碼:7字節(jié)0x55,一串1、0間隔,用于信號同步
2、幀起始定界符:1字節(jié)0xD5(10101011),表示一幀開始
3、DA(目的MAC):6字節(jié)
4、SA(源MAC):6字節(jié)
5、類型/長度:2字節(jié),0~1500保留為長度域值,1536~65535保留為類型域值(0x0600~0xFFFF)
6、數(shù)據(jù):46~1500字節(jié)
7、幀校驗(yàn)序列(FCS):4字節(jié),使用CRC計(jì)算從目的MAC到數(shù)據(jù)域這部分內(nèi)容而得到的校驗(yàn)和。
以CSMA/CD作為MAC算法的一類LAN稱為以太網(wǎng)。CSMA/CD沖突避免的方法:先聽后發(fā)、邊聽邊發(fā)、隨機(jī)延遲后重發(fā)。一旦發(fā)生沖突,必須讓每臺主機(jī)都能檢測到。關(guān)于最小發(fā)送間隙和最小幀長的規(guī)定也是為了避免沖突。 考慮如下的情況,主機(jī)發(fā)送的幀很小,而兩臺沖突主機(jī)相距很遠(yuǎn)。在主機(jī)A發(fā)送的幀傳輸?shù)紹的前一刻,B開始發(fā)送幀。這樣,當(dāng)A的幀到達(dá)B時(shí),B檢測到?jīng)_突,于是發(fā)送沖突信號。假如在B的沖突信號傳輸?shù)紸之前,A的幀已經(jīng)發(fā)送完畢,那么A將檢測不到?jīng)_突而誤認(rèn)為已發(fā)送成功。由于信號傳播是有時(shí)延的,因此檢測沖突也需要一定的時(shí)間。這也是為什么必須有個(gè)最小幀長的限制。 按照標(biāo)準(zhǔn),10Mbps以太網(wǎng)采用中繼器時(shí),連接的最大長度是2500米,最多經(jīng)過4個(gè)中繼器,因此規(guī)定對10Mbps以太網(wǎng)一幀的最小發(fā)送時(shí)間為51.2微秒。這段時(shí)間所能傳輸?shù)臄?shù)據(jù)為512位,因此也稱該時(shí)間為512位時(shí)。這個(gè)時(shí)間定義為以太網(wǎng)時(shí)隙,或沖突時(shí)槽。512位=64字節(jié),這就是以太網(wǎng)幀最小64字節(jié)的原因。 512位時(shí)是主機(jī)捕獲信道的時(shí)間。如果某主機(jī)發(fā)送一個(gè)幀的64字節(jié)仍無沖突,以后也就不會再發(fā)生沖突了,稱此主機(jī)捕獲了信道。 由于信道是所有主機(jī)共享的,如果數(shù)據(jù)幀太長就會出現(xiàn)有的主機(jī)長時(shí)間不能發(fā)送數(shù)據(jù),而且有的發(fā)送數(shù)據(jù)可能超出接收端的緩沖區(qū)大小,造成緩沖溢出。為避免單一主機(jī)占用信道時(shí)間過長,規(guī)定了以太網(wǎng)幀的最大幀長為1500。 100Mbps以太網(wǎng)的時(shí)隙仍為512位時(shí),以太網(wǎng)規(guī)定一幀的最小發(fā)送時(shí)間必須為5.12μs。 1000Mbps以太網(wǎng)的時(shí)隙增至512字節(jié),即4096位時(shí),4.096μs。
|