什麼是 OSI 模型?

開放式系統互相連線模型將網路通訊分為七層。這些層用於識別網路問題。

Share facebook icon linkedin icon twitter icon email icon

OSI 模型

學習目標

閱讀本文後,您將能夠:

  • 定義 OSI 模型
  • 識別第 7 層 OSI 模型
  • 探索資料如何傳入 OSI 模型

什麼是 OSI 模型?

開放式系統互相連線 (OSI) 模型是由國際阻止為實現標準化而建立的一種概念模型,它能使各種通訊系統使用標準通訊協定進行通訊。通俗來說,OSI 為不同的電腦系統建立了一個能夠互相通訊的標準。


我們可以將 OSI 模型視為電腦網路的一種通用語言。它建立在將通訊系統拆分為七個抽象層這一概念的基礎之上,每一層都堆疊在最後一層之上。

未定義

每一層 OSI 模型均處理特定作業,並與其上下幾幾層進行通訊。DDoS 攻擊以特定層數的網路連線為目標;應用程式層攻擊以第 7 層為目標,而通訊協定層攻擊以第 3 層和第 4 層為目標。

為什麼 OSI 模型如此重要?

盡管現今的網際網路並未嚴格遵循 OSI 模型 (它更為緊密遵循較簡單的網際網路通訊協定套件),但 OSI 模型在對網路問題進行疑難排解上仍舊極為實用。無論是某個使用者的膝上型電腦無法連線網際網路,還是數千名使用者的網站被關閉,OSI 模型都能協助分解故障並分離故障來源。如果能夠將問題縮小至該模型的一個特定層,便能避免許多不必要工作。

OSI 模型的七層有哪些?

OSI 模型的七個抽象層從頂部到底部可定義如下:

應用程式層

7.應用程式層

這是唯一一個直接與來自使用者的資料進行互動的層。軟體應用程式類似於網頁瀏覽器,電子郵件用戶端依靠此應用程式層初始化通訊。但應該明確的是,用戶端軟體應用程式不是應用程式層的一部分;相反,應用程式層負責通訊協定和資料操作,軟體依靠這些來為使用者呈現有意義的資料。應用程式層通訊協定包括 HTTP 及 SMTP (簡易郵件傳輸通訊協定是支援電子郵件通訊的通訊協定之一)。

呈現層

6.呈現層

該層主要負責準備資料以供應用程式層使用;換言之,第 6 層可使資料呈現給需要消費的應用程式。呈現層負責轉譯、加密和壓縮資料。


兩個通訊裝置在通訊時可能使用不同的編碼方式,因此第 6 層負責將傳入資料轉譯至接收裝置的應用程式層能夠理解的語法。


如果裝置透過加密連線進行通訊,第 6 層將負責在傳送者終端新增加密以及在接受者終端解碼,以便它能呈現帶有未加密、可讀取資料的應用程式層。


最後,呈現層也負責壓縮其從應用程式層接收到的資料,然後將其傳送至第 5 層。透過最大限度減少即將傳輸的資料數量,這有助於提高通訊的速度和效率。

工作階段層

5.工作階段層

該層負責開啟和關閉兩個裝置之間的通訊。通訊開啟與關閉的時間間隔,又稱工作階段。工作階段層可確保工作階段保持足夠長的開啟時間以傳輸所有進行交換的資料,然後立即關閉工作階段以避免浪費資源。


工作階段層也可同步具有檢查點的資料傳輸。例如,如果傳輸一個 100 GB 的檔案,工作階段層可每 5 GB 設定一個檢查點。如果在傳輸了 52 GB 後中斷連線或當機,可能會從上一個檢查點繼續,這意味著僅需傳輸 50 GB 額外的資料。若沒有檢查點,整個傳輸只有再次從頭開始。

傳輸層

4.傳輸層安全性

第 4 層負責兩個裝置之間的端到端通訊。這包括從工作階段層獲取資料,並在將該資料傳送至第 3 層前,將其分解為稱作區段的區塊。接收裝置上的傳輸層負責將這些區段重組為工作階段層可以消費的資料。


傳輸層還負責流量控制和錯誤控制。流量控制可確定船速的最佳速度,以確保具有快速連線的傳送者不會淹沒具有低速連線的接受者。傳輸層在接收端執行錯誤控制,從而確保接收的資料完整無缺,倘若不完整,可要求重新傳輸。

網路層

3.網路層

網路層負責促成兩個不同網路之間的資料傳輸。如果兩個裝置的通訊在同一個網路上,將無需網路層。網路層在傳送者的裝置中將傳輸層中的區段分解為較小的單元 (又稱封包),並在接收裝置中重組這些封包。網路層還能為資料尋找達到其目的地的最佳實體路徑;這又稱路由傳送。

資料連結層

2.資料連結層

The Data Link Layer與網路層極為相似,只是資料連結層可促成同一網路上的兩個裝置之間的資料傳輸。資料連結層從網路層中獲取封包,並將其分解為更小的部分 (又稱框架)。與網路層類似,資料連結層也負責內部網路通訊中的流量控制和錯誤控制 (傳輸層僅執行網際網路通訊的控制和錯誤控制)。

實體層

1.實體層

該層包括資料傳輸中涉及的實體設備,例如纜線和開關。該層還可使資料轉換為字串為 1s 和 0s 的位元流。兩個裝置的實體層還必須在訊號慣例上取得一致意見,以便 1s 能與兩個裝置上的 0s 區分開來。

資料如何傳入 OSI 模型

為了使人們可讀取的資訊能透過網路從一個裝置傳送至另一個裝置,資料必須沿著傳送裝置上的七層 OSI 模型向下傳送,然後沿著接收端上的七層向上傳送。


例如:Cooper 先生想要給 Palmer 女士傳送一封電子郵件。Cooper 在其膝上型電腦的電子郵件應用程式中編寫了他的訊息,然後點擊「傳送」。他的電子郵件應用程式會將其電子郵件訊息傳遞至應用程式層,該層將挑選一個通訊協定 (SMTP) 並將該資料傳遞至呈現層。隨後,呈現層將壓縮該資料並點擊工作階段層,該層將初始化通訊工作階段。


該資料將點擊對其分割的傳送者的傳輸層,然後,這些區段將分解為網路層中的封包,該封包又將進一步分解為資料連結層的框架。隨後,資料連結層將這些框架傳遞至實體層,該層將資料轉換為 1s 和 0s 位元流,並透過纜線等實體媒體傳送該資料。


一旦 Palmer 的電腦透過實體媒體 (例如其 wifi) 接收到位元流,該資料將傳入其裝置上的同一層數列,但順序相反。首先,實體層將使位元流從 1s 和 0s 換為傳遞至資料連結層的框架。隨後,資料連結層將框架重組為網路層封包。然後,網路層將用傳輸層封包建立區段,傳輸層又將這些區段重組為一段資料。


資料便傳送至接受者的工作階段層,該層將資料傳遞至呈現層,隨即結束通訊工作階段。呈現層又將移除此壓縮,並將原始資料向上傳遞至應用程式層。應用程式層將人們可讀取的資料饋送至 Palmer 女士的電子郵件軟體,該軟體將允許她在其膝上型電腦螢幕中讀取 Cooper 的電子郵件。