獨特的千兆乙太網幀格式

2021-09-24 12:57:39 字數 1985 閱讀 4990

說到乙太網幀格式,可以說是耳熟能詳了。如果要問千兆乙太網幀格式有什麼特殊的地方,恐怕大多數人會感到好奇。事實是,千兆乙太網的幀格式確實不太一樣。

常規的乙太網幀格式是這樣的:

目的mac

源mac

幀型別資料和padding

fcs千兆乙太網工作在半雙工模式的情況下,如果幀長小於512

位元組,資料幀的

fcs域後面會用「

carrierextension

」域補齊

512位元組。不過,

carrierextension

域並不參與

fcs的計算。

千兆乙太網為什麼需要carrierextension

域呢?這要從

csma/cd

的衝突檢測機制和乙太網提速的原理說起。

在回答上面的問題之前,先看一下衝突檢測的過程。假設主機a

和主機b

是鏈路上相距最遠的兩台主機。主機

a傳送的訊號傳播到

b處時,主機

b剛好開始傳送訊號,主機

a和主機

b傳送的訊號就會發生衝突,主機

b馬上就能感知到衝突。但是,當衝突訊號傳播到主機

a時,主機

a才能檢測到衝突。從主機

a開始傳送訊號到衝突訊號傳播到主機

a這段時間,要小於

512位元時間,否則最小的資料幀(

64位元組)傳送完成之前就檢測不到衝突了。衝突檢測機制限制了乙太網的最大傳播距離。

傳輸速率為10m

的經典乙太網中,鏈路上的主機需要在

512位元時間內檢測到潛在的衝突,這段時間稱為「

collisionwindow

」。在百兆乙太網中,

collisionwindow

依然是512

位元時間,因為傳輸速率提公升為原來的

10倍,

collisionwindow

的絕對時間縮短為原來的十分之一。要在十分之一的時間內檢測到潛在的衝突,百兆乙太網將最大的傳輸距離縮短到經典乙太網的十分之一。百兆乙太網誕生時,乙太網組網方式已經轉為使用

hub,雖然百兆乙太網的傳輸距離大大縮短,依然可以滿足實際的組網需求。當傳輸速率提公升到

1000m

時,512

位元時間就不夠用了,為了滿足衝突檢測的需要,傳輸距離將大大縮短,短到幾乎沒有什麼實用價值。

千兆乙太網為了增加最大傳輸距離,collisionwindow

被提公升到

4096

位元時間,也就是說在

4096

位元時間內檢測到衝突就可以了。但是,這樣又有了新的問題。因為乙太網最小幀長是

64位元組,傳送最短的資料幀只需要

512位元時間。資料幀傳送結束之後,可能在遠端發生衝突,衝突訊號傳到傳送端時,資料幀已經傳送完成,傳送端也就感知不到衝突了。最終的解決辦法就是,當資料幀長度小於

512位元組(即

4096

位元)時,在

fcs域後面新增

carrierextension

域。主機傳送完短資料幀之後,繼續傳送

carrierextension

訊號,衝突訊號傳回來時,傳送端就能感知到了。

現在,來考慮另乙個問題。如果傳送的資料幀都是64

位元組的短報文,那麼鏈路的利用率就很低,因為

carrierextension

域將占用大量的頻寬。千兆乙太網標準中,引入了

framebursting

機制來改善這個問題。當連續傳送小於

512位元組的報文時,不是長時間傳送

carrierextension

訊號,而是只傳送幀間隔時間的

carrierextension

然後繼續傳送下乙個資料幀,這樣就提高了鏈路的利用率。

carrierextension和

framebursting

僅用於千兆乙太網的半雙工模式;全雙工模式不需要使用csma/cd機制,也就不需要這兩個特性。

千兆乙太網幀

乙太網資料報如圖 mac層由前導碼 sfd 目的mac位址 源mac位址 型別 資料 fcs組成。前導碼 7個位元組,為7個 8 h55 也就是連續的01,表示乙個mac資料報的開始,用於同步。sfd 1個位元組,為7個 8 hd5 11010101。目的mac位址 6位元組,存放目的裝置的實體地址...

乙太網幀格式

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

乙太網幀格式

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