計算機網絡——數據幀和數據包的區別

在這裏插入圖片描述
如上圖,圖中15.0.0.2,13.0.0.2等是設備的IP地址,m1,m2等是設備的物理地址(Mac地址,出廠即確定,全球唯一識別),如果圖中左邊的某個個人電腦(IP地址爲15.0.0.2)要傳輸一段信息到右邊的某個服務器(IP地址爲13.0.0.2),那麼需要將信息封裝起來,並且需要在數據中記錄數據發送方的IP地址,也就是個人電腦的IP地址(IP地址爲15.0.0.2),同時記錄接收方的IP地址(IP地址爲13.0.0.2),這樣就形成了一個數據包。數據包的形式如下所示:在這裏插入圖片描述

上圖中的灰色部分就是封裝的信息,兩個IP地址分別是發送方和接收方。

現在已經打包好數據信息,知道發送方和接收方的IP地址。這一段數據包怎麼在網絡中傳輸呢?網絡怎麼知道下一步要將這個數據包轉到哪一個網關接口呢?這時候就用到了設備的Mac地址和數據幀。

現在假設發送方的IP地址爲15.0.0.2,其Mac地址爲m4,那麼其下一步要傳輸給網關接口m5,也就是這段數據下一步要到達的地方。注意數據不可能一下子從發送方傳輸到接收方,中間需要經過很多次的中轉站,這些中轉站需要使用Mac地址進行標記。

現在我們已經有數據包,知道發送方的Mac地址爲m4,需要中轉的下一個中轉站爲路由器的網關接口,其IP地址爲15.0.0.1,Mac地址爲m5。這樣,我們需要把當前Mac和下一個要到達的Mac地址記錄在數據包中,這樣就從數據包形成了數據幀。具體的數據幀形式如下:
在這裏插入圖片描述
當這個數據幀到達m5之後,發送位置變爲m5,Mac地址爲m5的路由器接收到數據幀後,需要訪問數據幀中的IP地址知道接收到的IP地址,然後才能決定下一個中轉站的具體位置,決定下一個中轉站的具體位置後,將下一個中轉站的Mac地址記錄在數據幀中,因此需要把上圖中的數據幀的兩個Mac地址重寫,然後再進行傳輸,一直到到達最終的IP地址接收方。

當數據幀到達接收方後,數據幀中的Mac地址已經不包括髮送方的Mac地址了,但是發送方的IP地址仍然存在數據包中,因此我們可以知道是誰發送的請求,可以將其IP地址記錄下來,這也是我們可以通過IP進行查詢的原因。

物理地址Mac決定了下一站的位置,IP地址決定了最後的接收方是誰。

爲什麼不能直接使用IP地址代替Mac地址進行記錄呢?查了一下,IP地址是TCP/IP網絡層的尋址機制,Mac是802.3/Ethernet鏈路層的尋址機制,
他們是不同層次的東西,不是並排關係,想一想數據發出去走到網線上最終還是變成了電脈衝,TCP/IP是沒有物理層定義的,IP包最終變成電信號之前需要以太網來處理,當度IP的數據給予了以太網之後,以太網就用屬於它自己的尋址機制來處理以太幀,也就是用MAC地址。

同時,在數據鏈路層中,既有Mac又有ppp,怎麼確定在傳輸的時候使用哪個呢?ppp屬於廣域網回範疇,MAC是局域網範疇,按實際情況和環境就選用不同的協議,ppp支持的網絡答結構只能是點對點,mac支持多點對多點。
以太網中用mac,遠程的話就用ppp(如ADSL撥號,就是基於ppp的)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章