1. OSI七層模型簡介
OSI 七層模型通過七個層次化的結構模型使不同的系統不同的網絡之間實現可靠的通訊,因此其最主要的功能就是幫助不同類型的主機實現數據傳輸 。
在7層模型中,每一層都提供一個特殊的網絡功能,從網絡功能的角度觀察:
- (1)下面4層(物理層、數據鏈路層、網絡層和傳輸層)主要提供數據傳輸和交換功能,即以節點到節點之間的通信為主;
- (2)第4層作為上下兩部分的橋梁,是整個網絡體系結構中最關鍵的部分;
- (3)而上3層(會話層、表示層和應用層)則以提供用戶與應用程序之間的信息和數據處理功能為主。
簡言之,下4層主要完成通信子網的功能,上3層主要完成資源子網的功能。
2. OSI七層模型詳解
第 1 層:物理層(機械、電子、定時接口通信信道上原始比特流程的傳輸)
① 主要功能
- 利用傳輸介質為數據鏈路層提供物理連接,實現比特流的透明傳輸。
② 作用
- 實現相鄰計算機節點之間比特流的透明傳送,盡可能屏蔽掉具體傳輸介質和物理設備的差異,使其上面的數據鏈路層不必考慮網絡的具體傳輸介質是什么。
- 注:“透明傳送比特流”表示經實際電路傳送后的比特流沒有發生變化,對傳送的比特流來說,這個電路好像是看不見的。
第 2 層:數據鏈路層(物理尋址,同時將原始比特流轉換為邏輯傳輸線路)
① 主要功能
- 通過各種控制協議,將有差錯的物理信道變為無差錯的、能可靠傳輸數據幀的數據鏈路。
② 數據鏈路層又被分為介質訪問控制(MAC)和邏輯鏈路控制(LLC)兩個子層
- (1)MAC子層的主要任務是解決共享型網絡中多用戶對信道競爭的問題,完成網絡介質的訪問控制;
- (2)LLC子層的主要任務是建立和維護網絡連接,執行差錯校驗、流量控制和鏈路控制。
③ 具體工作
- 接收來自物理層的位流形式的數據,並封裝成幀,傳送到上一層;
- 同樣,也將來自上層的數據幀,拆裝為位流形式的數據轉發到物理層;
- 並且,還負責處理接收端發回的確認幀的信息,以便提供可靠的數據傳輸。
④ 解決的問題
- 背景:在計算機網絡中由於各種干擾的存在,物理鏈路是不可靠的。
- 解決:在物理層提供的比特流的基礎上,通過差錯控制、流量控制方法,使有差錯的物理線路變為無差錯的數據鏈路,即提供可靠的通過物理介質傳輸數據的方法。
第 3 層:網絡層(控制子網的運行,如邏輯輸址、分組傳輸、路由選擇)
① 主要功能
- 在下兩層的基礎上向資源子網提供服務。
- 通過路由選擇算法,為報文或分組通過通信子網選擇最適當的路徑。該層控制數據鏈路層與傳輸層之間的信息轉發,建立、維持和終止網絡的連接。
② 具體工作
- 數據鏈路層的數據在這一層被轉換為數據包,
- 然后通過路徑選擇、分段組合、順序、進/出路由等控制,
- 將信息從一個網絡設備傳送到另一個網絡設備。
③ 解決的問題
- (1)尋址:數據鏈路層中使用的物理地址(如MAC地址)僅解決網絡內部的尋址問題。在不同子網之間通信時,為了識別和找到網絡中的設備,每一子網中的設備都會被分配一個唯一的地址。由於各子網使用的物理技術可能不同,因此這個地址應當是邏輯地址(如IP地址)。
- (2)交換:規定不同的信息交換方式。常見的交換技術有:線路交換技術和存儲轉發技術,后者又包括報文交換技術和分組交換技術。
- (3)路由算法:當源節點和目的節點之間存在多條路徑時,本層可以根據路由算法,通過網絡為數據分組選擇最佳路徑,並將信息從最合適的路徑由發送端傳送到接收端。
- (4)連接服務:與數據鏈路層流量控制不同的是,前者控制的是網絡相鄰節點間的流量,后者控制的是從源節點到目的節點間的流量。其目的在於防止阻塞,並進行差錯檢測。
第 4 層:傳輸層(接受上一層的數據,在必要的時候吧數據進行分割,並將這些數據交給網絡層,且保證)
① 主要功能
- 通信子網和資源子網的接口和橋梁,起到承上啟下的作用。
- 向用戶提供可靠的端到端的差錯和流量控制,保證報文的正確傳輸。傳輸層的作用是向高層屏蔽下層數據通信的細節,即向用戶透明地傳送報文。
② 具體功能
- (1)傳輸連接管理:提供建立、維護和拆除傳輸連接的功能。傳輸層在網絡層的基礎上為高層提供“面向連接”和“面向無接連”的兩種服務。
- (2)處理傳輸差錯:提供可靠的“面向連接”和不太可靠的“面向無連接”的數據傳輸服務、差錯控制和流量控制。在提供“面向連接”服務時,通過這一層傳輸的數據將由目標設備確認,如果在指定的時間內未收到確認信息,數據將被重發。
② 具體工作
- 傳輸層提供會話層和網絡層之間的傳輸服務,這種服務從會話層獲得數據,並在必要時,對數據進行分割。
- 然后,傳輸層將數據傳遞到網絡層,並確保數據能正確無誤地傳送到網絡層。
- 因此,傳輸層負責提供兩節點之間數據的可靠傳送,當兩節點的聯系確定之后,傳輸層則負責監督工作。
第 5 層:會話層(不同機器上的用戶之間建立及管理會話)
① 定義
- 用戶應用程序和網絡之間的接口
② 主要任務
- 向兩個實體的表示層提供建立和使用連接的方法。將不同實體之間的表示層的連接稱為會話。
- 因此會話層的任務就是組織和協調兩個會話進程之間的通信,並對數據交換進行管理。
③ 具體功能:
- (1)會話管理:允許用戶在兩個實體設備之間建立、維持和終止會話,並支持它們之間的數據交換。例如提供單方向會話或雙向同時會話,並管理會話中的發送順序,以及會話所占用時間的長短。
- (2)會話流量控制:提供會話流量控制和交叉會話功能。
- (3)尋址:使用遠程地址建立會話連接。l
- (4)出錯控制:從邏輯上講會話層主要負責數據交換的建立、保持和終止,但實際的工作卻是接收來自傳輸層的數據,並負責糾正錯誤。會話控制和遠程過程調用均屬於這一層的功能。但應注意,此層檢查的錯誤不是通信介質的錯誤,而是磁盤空間、打印機缺紙等類型的高級錯誤。
④ 建立會話方式
- 用戶可以按照半雙工、單工和全雙工的方式建立會話。
④ 具體工作
- 當建立會話時,用戶必須提供他們想要連接的遠程地址。
- 而這些地址與MAC(介質訪問控制子層)地址或網絡層的邏輯地址不同,它們是為用戶專門設計的,更便於用戶記憶。域名(DN)就是一種網絡上使用的遠程地址例如:www.3721.com就是一個域名
第 6 層:表示層(信息的語義語法及它們的關聯,如加密解密、轉換翻譯、壓縮解壓縮)
① 主要功能
- 對來自應用層的命令和數據進行解釋,並按照一定的格式傳送給會話層
② 具體功能
- (1)數據格式處理:協商和建立數據交換的格式,解決各應用程序之間在數據格式表示上的差異。
- (2)數據的編碼:處理字符集和數字的轉換。例如由於用戶程序中的數據類型(整型或實型、有符號或無符號等)、用戶標識等都可以有不同的表示方式,因此,在設備之間需要具有在不同字符集或格式之間轉換的功能。
- (3)壓縮和解壓縮:為了減少數據的傳輸量,這一層還負責數據的壓縮與恢復。
- (4)數據的加密和解密:可以提高網絡的安全性。
第 7層: 應用層(各種應用程序協議,如HTTP、FTP、SMTP、POP3)
① 定義
- 是直接向用戶提供服務,完成用戶希望在網絡上完成的各種工作。
② 具體介紹
- 它在其他6層工作的基礎上,負責完成網絡中應用程序與網絡操作系統之間的聯系,建立與結束使用者之間的聯系,
- 並完成網絡用戶提出的各種網絡服務及應用所需的監督、管理和服務等各種協議。
- 此外,該層還負責協調各個應用程序間的工作
② 主要功能
- (1)用戶接口:應用層是用戶與網絡,以及應用程序與網絡間的直接接口,使得用戶能夠與網絡進行交互式聯系。
- (2)實現各種服務:該層具有的各種應用程序可以完成和實現用戶請求的各種服務。