osi網絡模型 協議層 數據封裝

當主機向其他的設備跨網絡傳輸數據時,數據就要進行封裝,就是在OSI模型的每一層加上協議信息。每一層只與接收設備上相應的對等層進行通信。
爲了實現通信交換信息,每一層都使用協議數據單元PDU,這些含有控制信息的PDU被附加到數據上。我們通常被附加到數據字段的報頭中,但他們也可以被附加在數據字段的報尾中。
OSI模型的每一層,通過封裝使每個PDU被附加到數據上,而且每個PDU都有特定的名稱,其名稱取決於在每個報頭中所提供的信息。這種PDU信息只能由接收方設備中的對等層讀取,在讀取後,報頭就被剝離,然後把數據交給上一層。
用戶信息被轉換成能在網絡上傳輸的的數據格式。然後,數據流被送到傳輸層,通過發送同步包,傳輸層能夠建立一條到接收方設備的虛電路。然後數據流被分割成更小的數據塊,並根據死而已創建一個傳輸層報頭(就是一個PDU),然後將它附加到數據字段的報頭中。現在數據塊就被稱爲數據段。每個數據段要進行排序,以便數據流能夠在接收方精確的重視,與它發送時的順序完全一樣。
然後,每個數據段被交到網絡層,以便通過互聯網實現網絡尋址和路由選擇。在網絡層,使用邏輯尋址(比如IP)將每個數據段送到正確的網絡中。網絡層協議向來自傳輸層的數據段中添加控制報頭,現在所得到的數據塊就稱爲數據包或數據報。記住,傳輸層和網絡一起工作,以在接收放主機中重建數據流,但他們並不將他們的PDU放在一個本地網段上
數據鏈路層負責從網絡層接收數據包並將他們放到網絡介質(有線或無線)上。數據鏈路層將每個數據包封裝成幀,幀的報頭中包含了源和目的主機的硬件地址。如果目的設備在一個遠程網絡中,幀就會被髮送到路由器,以通過互聯網絡傳送到目的地。一旦到達了目的網絡,就會使用一個新的幀將數據包送往目的主機。
爲了將幀送到網絡上,它首先必須被轉換成數字信號的形式。幀實際上是10的邏輯組,物理層負責將這些數值封裝爲數字信號,在同一個本地網絡中就可以直接傳輸了。接收方設備將使數字信號實現同步,並從數字信號中提取出10,這時設備就可以構建幀,執行循環冗餘校驗(CRC),並根據幀的FCS字段中的結果來檢驗數據是否被正確傳送。如果他們匹配,就從幀中取出數據包,然後丟棄剩餘的部分。這個過程就稱爲解封裝。數據包被交到網絡層,在這裏對地址進行檢查。如果地址匹配,就從數據包中取出數據段,然後丟棄剩餘的部分。在傳輸層對數據段進行處理,這裏將重建數據流,並向發送方站點確認它收到了每個數據塊。然後,它將數據流送往高層的應用程序。
在發送方設備中,數據封裝的過程如下:
1:用戶信息被轉換爲數據,以便在網絡上傳輸。
2:數據被轉換爲數據段,並在發送方和接收方主機之間建立一條可靠的連接。
3:數據段被轉換爲數據包或數據報,並在報頭中放上邏輯地址,這樣,每一個數據包都可以通過互聯網絡進行傳輸。
4:數據包或數據報被轉換爲幀,以便在本地網絡中傳輸。在本地網段上,使用硬件地址唯一的標識每一臺主機。
5:幀被轉換爲比特流,並採用數字編碼和時鐘方案。

本文出自 “sky~ywb” 博客,請務必保留此出處http://sky2008.blog.51cto.com/466292/97356

一個對osi五層模型的講解的文章鏈接:
發佈了20 篇原創文章 · 獲贊 11 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章