Linux(十六)網絡基礎:網絡初識

網絡協議初識

協議分層
OSL七層模型
* OSL七層網絡模型稱爲開放式系統互連參考模型,是一個邏輯上的定義和規範
* 把網絡從邏輯上分爲了七層,每一層都有相關,相對應的物理設備,比如路由器,交換機。
* OSL七層模型是一種框架性的設計方法,其最主要功能就是幫助不同類型的主機實現數據傳輸;
* 它的最大優點是將服務,接口和協議這三個蓋面明確的區分開來,概念清楚,理論也就比較完整,通過七個層次化的結構模型使不同的系統不同的網絡之間可以實現可靠地通訊;
* 但是它複雜又不適用;所以我們一般學習TCP/IP四層模型
* 這裏寫圖片描述

TCP/IP五層模型

TCP/IP是一組協議的代名詞,它還包括許多協議,組成了TCP/IP的協議族。
TCP/IP通訊協議採用了五層的層級結構,每一層都呼叫他的下一次鎖提供的網絡來完成自己的需求
*物理層:負責光/電信號的傳遞方式,比如現在以太網通用的網線,早期以太網採用的同軸電纜(現在主要用於有線電視)、光纖,現在的WiFi無線網使用電磁波等都屬於物理層的概念。物理層的能力決定了最大傳輸速率、傳輸距離、抗干擾性等。集線器工作在物理層。
*數據鏈路層:負責設備之間的數據幀的傳送和識別,例如網卡設備的驅動、幀同步(就是說從網線上檢測到什麼信號算作新幀的開始)、衝突檢測(如果檢測到衝突就自動重發)、數據差錯校驗等工作。有以太網,令牌環網,無線LAN等標準,交換機工作在數據鏈路層。
*網絡層:負責地址管理和路由選擇。例如在IP協議中,通過IP地址來標識一臺主機,並通過路由表的方式規劃出兩臺主機之間的數據傳輸線路(路由)。路由器工作在網絡層。
傳輸層:負責兩臺主機之間的數據傳輸。如傳輸控制協議,能夠確保數據可靠地熊源主機發送到目標主機。
應用層:負責應用程序間溝通,如簡單點子郵件傳輸,文件傳輸協議,網絡遠程訪問協議等。我們的網絡編程主要針對應用層。

由於我們物理層考慮的比較少,因此很多時候也稱爲TCP/IP四層模型

一般而言
*對於一臺主機,它的操作系統內核實現了從傳輸層到物理層的內容;
*對於一臺路由器,它實現了從網絡層到物理層;
*對於一臺交換機,它實現了從數據鏈路層到物理層;
*對於集線器,它只實現了物理層;

網絡傳輸基本流程

這裏寫圖片描述
主機A從應用層發數據時,應用層堆數據進行了包裝,它在要傳輸的數據上加了一個應用層首部AH,繼續向傳輸層傳送。

傳輸層接收到應用層的數據後,將數據+應用層AH當做數據,給它進行包裝,加上自己的首部,此時的數據變爲數據+應用層AH+傳輸層PH,繼續向網絡層傳遞。
以此類推,數據每傳遞一層,便增加相應協議的首部。
直到傳輸至數據鏈路層,數據鏈路層將加了自己首部的數據交給物理層後,轉換爲高低跳躍的比特流,這個時候的數據才能在線路上傳輸。
接受端與發送過程相反,在接受主機B上,能夠通過電信號識別出比特流,將收到的信息傳遞給數據鏈路層。
數據鏈路層收到數據後,剝離發送時添加的數據鏈路層首部DH,把數據提取出來,遞交給網絡層,
同理網絡層剝離自己的首部NH,還原後將數據遞交給傳輸層,最後到應用層將其首部AH剝離後,就可以還原成最原始的發送數據

其中這裏面的數據是怎麼從數據鏈路層傳輸到路由器,又怎麼衝路由器傳輸到主機B的,主機B收到信息後,又是如何將信息傳給相對應的進程,我們後面再說

數據包的封裝和分用
*不同的協議層對數據包有不同的稱爲,在傳輸層叫做段,在網絡層叫做數據報,在鏈路層叫做幀
*應用層數據通過協議棧發到網絡上時,每層協議都要加上一個數據首部,稱爲封裝
首部信息中包含了一些類似於首部有多長,再和有多長,上層協議是什麼等信息,
數據封裝成幀後發送到傳輸介質上,到達目的主機後每層協議剝離掉相應的首部,根據首部的“上層協議字段”將數據交給對應的上層協議處理

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