以太網是無鏈接的,不可靠的服務,採用盡力傳輸的機制。以太網CSMA/CD我就很少講了,我相信你們都瞭解這個原理。
以太網是不可靠的,這意味着它並不知道對方有沒有收到本身發出的數據包,但若是他發出的數據包發生錯誤,他會進行重傳。以太網的錯誤主要是發生碰撞,碰撞是指兩臺機器同時監聽到網絡是空閒的,同時發送數據,就會發生碰撞,碰撞對於以太網來講是正常的。
咱們來看一下,假設A檢測到網絡是空閒的,開始發數據包,盡力傳輸,當數據包尚未到達B時,B也監測到網絡是空閒的,開始發數據包,這時就會發生碰撞,B 首先發現發生碰撞,開始發送碰撞信號,所謂碰撞信號,就是連續的01010101或者10101010,十六進制就是55或AA。這個碰撞信號會返回到 A,若是碰撞信號到達A時,A尚未發完這個數據包,A就知道這個數據包發生了錯誤,就會重傳這個數據包。但若是碰撞信號會返回到A時,數據包已經發完,則A不會重傳這個數據包。
咱們先看一下,以太網爲何要設計這樣的重傳機制。首先,以太網不想採用鏈接機制,由於會下降效率,但他又想有必定的重傳機制,由於以太網的重傳是微秒級,而傳輸層的重傳,如TCP的重傳達到毫秒級,應用層的重傳更達到秒級,咱們能夠看到越底層的重傳,速度越快,因此對於以太網錯誤,以太網必須有重傳機制。
要保證以太網的重傳,必須保證A收到碰撞信號的時候,數據包沒有傳完,要實現這一要求,A和B之間的距離很關鍵,也就是說信號在A和B之間傳輸的來回時間必須控制在必定範圍以內。IEEE定義了這個標準,一個碰撞域內,最遠的兩臺機器之間的round-trip time 要小於512bit time.(來回時間小於512位時,所謂位時就是傳輸一個比特須要的時間)。這也是咱們常說的一個碰撞域的直徑。
512個位時,也就是64字節的傳輸時間,若是以太網數據包大於或等於64個字節,就能保證碰撞信號到達A的時候,數據包尚未傳完。
這就是爲何以太網要最小64個字節,一樣,在正常的狀況下,碰撞信號應該出如今64個字節以內,這是正常的以太網碰撞,若是碰撞信號出如今64個字節以後,叫 late collision。這是不正常的。網絡
MAC幀格式圖併發
碰撞槽時間
假設公共總線媒體長度爲S,幀在媒體上的傳播速度爲0.7C(光速),網絡的傳輸率爲R(bps),
幀長爲L(bps),tPHY爲某站的物理層時延;
則有:
碰撞槽時間=2S/0.7C+2tPHY
由於Lmin/R=碰撞槽時間
因此:Lmin =(2S/0.7C+2tPHY )×R
Lmin 稱爲最小幀長度。
碰撞槽時間在以太網中是一個極爲重要的參數,有以下特色:
(1)它是檢測一次碰撞所需的最長時間。
(2)要求幀長度有個下限。(即最短幀長)
(3)產生碰撞,就會出現幀碎片。
(4)如發生碰撞,要等待必定的時間。t=rT。(T爲碰撞槽時間)spa
下面咱們來估計在最壞狀況下,檢測到衝突所需的時間
(1)A和B是網上相距最遠的兩個主機,設信號在A和B之間傳播時延爲τ,假定A在t時
刻開始發送一幀,則這個幀在t+τ時刻到達B,若B在t+τ-ε時刻開始發送一幀,則B在t+τ時就
會檢測到衝突,併發出阻塞信號。
(2)阻塞信號將在t+2τ時到達A。因此A必須在t+2τ時仍在發送才能夠檢測到衝突,因此一幀的
發送時間必須大於2τ。
(3)按照標準,10Mbps以太網採用中繼器時,鏈接最大長度爲2500米,最多通過4箇中繼器,因
此規定對於10Mbps以太網規定一幀的最小發送時間必須爲51.2μs。
(3)51.2μs也就是512位數據在10Mbps以太網速率下的傳播時間,常稱爲512位時。這個時間定
義爲以太網時隙。512位時=64字節,所以以太網幀的最小長度爲512位時=64字節。
以太網18字節,我想應該是「目的MAC(6)+源MAC(6)+Type(2)+CRC(4)
設計
至於IP最大傳輸單元1500,只是規定ip
有些把以太網幀的前導字符部分也算到幀頭裏面了產品
IEEE 802.3標準的第一個版本於1983年6月24日發佈,因爲Xerox將關於CSMA/CD的4件專利轉交給IEEE,IEEE以極低的價格受權生產企業使用相應專利,因此使用IEEE 802.3標準生產產品不存在高昂專利費用問題。隨後,802.3標準獲得了ANSI和ISO的承認,使IEEE 802.3標準成爲一個開放的、權威的標準。
雖然與Ethernet II標準發佈時間差很少,並且IEEE 802.3的標準級別比前者高得多,但在標準發佈後的十多年,802.3標準在應用中僅僅能與Ethernet II勢均力敵,其本質緣由是802.3標準中的幀結構必須配合802.2標準使用,這大大減少了應用的靈活性並顯著增長了協議的開銷,複雜加之效率低使802.3難以佔上風。
在1998年編輯中802.3工做組對802.3標準進行了重大改動,最後完成了新版標準IEEE 802.3-2002。2002版的802.3標準對MAC幀結構進行了重大改進使之具有Ethernet II封裝靈活性,從而在應用中徹底取代了Ethernet II,使IEEE 802.3-2002標準成爲以太網的惟一標準。
2005年以來又開始制定802.3標準的新版本。
802.3-2002標準定了以太網的頭結構爲DA(6)+SA(6)+Len/Type(2)=14字節。
64字節的由來即以太網幀的18 Byte (目的MAC(6)+源MAC(6)+Type(2)+CRC(4))加上實際載荷的最小長度46 Byte(數據:46~1500字節) ,總共64字節!it