乙太網幀長度 64 octet

2021-06-20 04:53:51 字數 3456 閱讀 3587

zz

1.碰撞槽時間

假設公共匯流排**長度為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為碰撞槽時間)

2.下面我們來估計在最壞情況下,檢測到衝突所需的時間

(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位元組。

3.乙太網的幀頭開銷是18位元組,可能是「目的mac(6)+源mac(6)+type(2)+crc(4)」至於ip最大傳輸單元1500,只是規定。

最大1518應該有地方限制才對,先記在這,找到原因再補上

乙太網最小位元組長度(64 bytes)

乙太網為什麼要有最小位元組限制:乙太網採用的是csma/cd方法在介質上傳輸資料,而csma/cd的特性要求有最小位元組限制

csma/cd 為什麼要有最小位元組限制:在csma/cd網路中,傳送資料的一方在傳送資料的同時會監聽網路是否有碰撞。

一旦傳送方傳送完乙個最後乙個bit以後,仍然沒有檢測到碰撞,它就會認為,這次傳輸已經成功

a----------------------c(衝突)------------------------------------b

如果傳送方(a)傳輸的是乙個非常小的幀的話,它傳送完幀以後,認為這次傳輸已經成功,並會在繼續監聽碰撞。

碰撞傳送以後,由於a不監聽碰撞,所以a也不會進行碰撞處理,不會再重傳幀,導致發出去的這個幀丟失,從而導致資料丟失

這就要求有最小的幀長限制

在ieee802.3 baseband 5-4-3中規定:在任意兩個節點之間,最大的physical segments為5個,所以最多可以有4個repeaters在兩個節點之間。

這5個physical segments 之間, 只有三個可以連線節點,而其它的兩個只能被當作延長網路之用

在使用10base-5線纜的網路中,每個physical segment 最長是500公尺,所以,每個ethernet的最大長度是2500公尺

a------------repeater1---------- repeater2--------- repeater3----------- repeater4-----------b

|----------------------------------------------2500meter-------------------------------------|

最小時間要求:

a傳送幀的第乙個bit到達b,b開始傳輸,產生碰撞,發出碰撞訊號,碰撞訊號要在a傳輸完最後乙個bit時,能夠到達a,從而讓a感知到碰撞,從而重傳這個幀。

乙個幀從a-b,b-a的這個時間被稱為slot time,這個時間計算出來為57.6 μs.

在10mbit/s的網路中,在57.6μs的時間內,能夠傳輸576個bit,所以要求乙太網幀的大小最小為576個bits,從而讓所有的碰撞都能夠被檢測到

乙太網幀的構成:

preamble

start-of-

frame-delimiter

destination mac

source mac

type

payload

crcinterframe

gap7 bytes

10101010

1 bytes

10101011

6 bytes

6bytes

2 bytes

46-1500

bytes

4 bytes

12 bytes

在傳輸完乙個資料幀以後,在傳輸下乙個資料幀之前,要傳輸12bytes的空閒幀

12 bytes = 12×8 = 96 bits

在10mbit/s的網路中,傳輸1個bit 需要的時間為 1×10-7s

所以interframe gap 的時間為 96×10-7=9.6×10-6 s= 9.6μs

在乙個資料幀傳送完以後,要等待9.6μs的時間,然後再傳輸下乙個資料幀

576bits= 72 bytes

通常情況下我們所說的乙太網長度,不包括preamble和start of frame delimiter,所以乙太網最小長度為:72-8= 64 bytes

乙太網的最大位元組長度(1518/1522)

為什麼在乙太網中,三層的ip包長要規定為64~1500 位元組,都是二層的ethernet特性來決定的:

最小包長由csma/cd的最小檢測碰撞時間來決定

最大包長沒有特別的規定,但是考慮到如下的因數,將ip最大包長設定為1500 bytes:

1.       乙太網是所有的終端共享傳輸介質,如果一台終端傳送乙個很長的幀,傳輸時將占用太多的時間,其它的終端將等待,直到這個幀傳輸完畢。幀越長,等待的時間將越長

2.       如果乙個幀太長,如果在傳輸的過程中,發生乙個傳輸錯誤,那麼整個幀要重傳,這樣又要占有大量的時間,導致效率不高---—早期的乙太網由於傳輸的錯誤率非常高

3.       幀越長,需要的快取越大,2023年在設計網絡卡時,快取的**非常昂貴,所以當時選用1500 bytes作為最大的長度。

標準的乙太網的最大位元組長度為1518/1522:

untagged的frame最大幀長為1518

tagged的frame 最大幀長為1522

其它的長度都是裝置廠商自己規定的:如jumbo frame 等

mtu1.  mtu:maximum transmission unit,裝置傳送資料時,任何比mtu大的資料報都會被分片,分片是在三層進行的,所以這裡所說的mtu,指的是三層報文的長度,不包括二層的資訊-------指的是最大ip報文的長度

2.  標準的乙太網上,mtu值為1500bytes,不包括乙太網頭和crc(cyclic redundancy check),總共18bytes

乙太網最小幀長度 802 3?乙太網?看完你就懂了

關注 星標公眾在tcp ip世界中,乙太網ip資料報的封裝是在rfc894中定義的,ieee802網路的ip資料報封裝是在rfc1042中定義的。最常使用的封裝格式是rfc 894定義的格式。下圖顯示了兩種不同形式的封裝格式。從上圖看到,兩種幀格式都採用48bit 6位元組 的目的位址和源位址。接下...

乙太網幀格式

一 ethernet位址 為了標識乙太網上的每台主機,需要給每台主機上的網路介面卡 網路介面卡 分配乙個唯一的通訊位址,即ethernet位址或稱為網絡卡的實體地址 mac位址。ieee負責為網路介面卡製造廠商分配ethernet位址塊,各廠商為自己生產的每塊網路介面卡分配乙個唯一的ethernet...

乙太網幀格式

乙太網幀格式,即在乙太網幀頭 幀尾中用於實現乙太網功能的域。圖2 ieee802.3以太幀頭 欄位字段長度 位元組 目的前導碼 preamble 7同步 幀開始符 sfd 1標明下乙個位元組為目的mac欄位 目的mac位址 6指明幀的接受者 源mac位址 6指明幀的傳送者 長度 length 2幀的...