OSI 七層模型與 TCP/IP 四層模型對照示意圖

← INSIGHTS & PERSPECTIVES | 後端開發

網路概念模型:OSI 七層與 TCP/IP 四層完整對照

網路概念模型介紹:從 OSI 七層與 TCP/IP 四層模型入手,說明各層負責的協定(HTTP、TCP、UDP、IP 等)與資料如何層層封裝傳遞到對端再拆解,建立排查網路連線與除錯問題時的分層思考框架,是後端與維運工程的基礎知識。

網際網路協議模型(網路模型)和開放系統互連(OSI)模型都是描述電腦網路通訊的框架,它們把通訊過程分解為不同的層級,每個層級都有特定的功能和協議。這篇文章整理 OSI 七層各自負責什麼、TCP/IP 四層與 OSI 的對照關係,以及一個 HTTP 請求從用戶端到伺服器的完整封包傳送流程。

OSI 七層模型是什麼?

OSI 七層模型把網路通訊分成七個層級,每層的職責如下:

OSI 七層模型分層示意圖
  1. 實體層(Physical Layer):負責管理電腦通信設備和網路媒介之間的互動,處理二進制位元組在通訊媒介(如電纜、無線電波)上的傳輸。
  2. 資料連接層(Data Link Layer):主要負責將網路層傳來的資料封裝成幀(Frame),在兩個網路節點之間傳輸這些幀,並處理錯誤的檢測和修正(詳見下方整理)。
  3. 網路層(Network Layer):負責將網路地址(如 IP 地址)分配給裝置,並決定資料的傳輸路徑,把資料從來源位置轉移到目的地。
  4. 傳輸層(Transport Layer):提供端到端(source-to-destination)的通訊服務。TCP 和 UDP 都在這一層,負責將資料切割為小的資料包,並確保資料包能在目的地正確重組。
  5. 會議層(Session Layer):負責在資料傳輸過程中建立、管理和終止會話。
  6. 表示層(Presentation Layer):對資料進行編碼和轉換,確保資料能被接收端系統理解,也可以實現資料的壓縮和加密。
  7. 應用層(Application Layer):最接近用戶的一層,負責處理特定的應用程式細節,包括 HTTP、SMTP、FTP、DNS 等協議。

Q資料連接層有哪些知名協議?

  • 乙太網路(Ethernet):最廣泛使用的網路技術之一,使用 MAC 地址來識別網路中的節點,並提供在本地網路範圍內傳輸資料的方法。
  • 點對點協議(PPP):被認為是在第二層運作,因為它的核心功能在於建立、管理和終止連接、進行錯誤檢測和修正,以及將資料封裝為幀。PPP 主要用於在兩個直接連接的網路節點之間建立網路層連接(例如透過撥號網路、數據機或專用線路直接連接的系統),定義了如何建立、配置和測試連接的方法。即使 PPP 提供對上層網路協定(如 IP)的支援,其核心功能仍屬於資料連接層。
  • 無線區域網路(Wi-Fi):為無線網路提供傳輸資料的方法。
  • 媒體存取控制(MAC):控制多個裝置如何在共享媒體(例如乙太網)上存取資料。「碰撞」指半雙工通信系統中多個設備同時發送資料造成干擾;MAC 協議(例如乙太網中的 CSMA/CD)協調設備的傳輸以減少碰撞。
  • 邏輯鏈路控制(LLC):為網路應用程式提供統一介面,讓它們無需關心下層的具體硬體細節(如乙太網路、無線區域網路等)。

網路層協議:IPv4 與 IPv6

IPv4 和 IPv6 都在 OSI 模型的第三層(網路層)運作,處理資料包的路由和傳輸、網路連接管理等操作。網路層協議會對資料包進行封裝並確定其在網路中的路徑——需要經過哪些路由器才能到達目標。兩者的主要差異在於地址的長度和格式:IPv6 提供的地址空間遠大於 IPv4,能對更多設備進行唯一地址的分配。

會議層和 HTTP 的關係

在 HTTP/1.1 及其更高版本中,是由應用層(即 HTTP 協議)來管理和控制會話的建立和中止。這是因為 OSI 模型是在許多現代協議之前設計的,而且 OSI 模型是一種理想化的框架,並非所有實際網路協議都會完全符合它。理解 OSI 模型可以幫助我們理解網路通信的一般原理,但研究具體協議時,也要考慮它們可能有自己的設計和行為方式。

表示層的編碼與轉換操作

  • 字符編碼轉換:例如從 ASCII 轉換為 UTF-8,或從一種語言編碼轉換為另一種(如 Unicode)。
  • 資料格式轉換:例如將 XML 轉換為 JSON、CSV 轉換為 EXCEL;資料的結構和語義保持不變,但格式和表示方式可能變化。
  • 資料壓縮和解壓縮:例如使用 ZIP、RAR、GZIP 等壓縮演算法,減少資料體積、提高傳輸效率。
  • 資料加密和解密:例如使用 AES、RSA 等加密演算法,確保資料在網路傳輸中的安全性。

OSI 模型在實務上怎麼應用?

在實際的網路協議和應用中,一個應用功能可能會跨越多個層次進行操作。例如一個 Web 應用可能在應用層處理字符編碼和資料格式轉換,並在傳輸層或網路層實現資料加密。這就是為什麼我們說 OSI 模型的層次劃分並不是絕對的。

儘管層次劃分在實際應用中可能不絕對,OSI 模型仍然是理解和描述網路系統的重要工具——它的主要目的是提供一種通用的、理論性的框架,讓我們更好地理解網路系統中不同部分的工作原理和互動方式。

具體來說,可以把七層分成兩大塊來理解:

  • 第 1 層(實體層)到第 3 層(網路層):主要處理硬體與網路傳輸相關的問題,包括資料的實際傳輸、網路交換、路由等,通常由硬體設備(網路卡、交換機、路由器等)和相關驅動程式來實現。
  • 第 4 層(傳輸層)到第 7 層(應用層):主要關心如何在傳輸網路上建立有效的通訊,包括確保資料可靠地從源點到達目的地(如 TCP)、提供給應用程式使用的通訊服務(如 HTTP)、資料的格式轉換和加密等,這些層的實現主要在軟體中完成。

因此,功能豐富的軟體或應用程式可能會跨越多層提供服務。例如一個網頁伺服器需要處理從 TCP 連接的管理(傳輸層)到 HTTP 請求的解析(應用層),甚至包括加密(表示層)。由於這些層都在軟體中實現,開發者有更大的靈活性來實現跨層功能。而硬體層(1–3 層)的功能則較固定,因為它們直接與網路傳輸的物理現象打交道,通常不會在應用程式中操作或修改,而是由硬體設備和驅動程式來管理。

網際網路協議模型(TCP/IP 四層)是什麼?

網際網路協議模型(Internet Protocol Suite)通常被稱為 TCP/IP 模型,它是一個分層的網路架構,包括四個層次:

  1. 應用層(Application Layer):處理與應用程式的通信和資料傳輸,例如 HTTP、FTP、SMTP 等。
  2. 傳輸層(Transport Layer):主要負責端對端的通信,例如 TCP 和 UDP。
  3. 網際網路層(Internet Layer):主要負責封包的路由和傳遞,例如 IP 協議。
  4. 網路存取層(Network Access Layer):處理與實體網路的通信,包括資料鏈路層和物理層的功能,例如以太網和 Wi-Fi。

這個模型與 OSI 模型有些相似,但更簡單,並且更直接反映了實際的網際網路協議的設計和實現。

TCP/IP 四層模型示意圖

兩個模型的層級怎麼對應?

TCP/IP 模型對應 OSI 模型
應用層(Application Layer)第 4 層(傳輸層)到第 7 層(應用層)
傳輸層(Transport Layer)第 4 層(傳輸層)
網際網路層(Internet Layer)第 3 層(網路層)
網路存取層(Network Access Layer)第 1 層(物理層)和第 2 層(資料連接層)

這些對應關係是大致的,因為兩個模型在設計和目的上有差異:TCP/IP 模型更側重於實際的網際網路協議結構,而 OSI 模型則是一個理想化的、更通用的網路架構參考模型。

一個封包是怎麼從用戶送到伺服器的?

以一個用戶從他的電腦訪問某個網站為例,描繪整個過程:

  1. 應用層開始動作:用戶打開瀏覽器,輸入想訪問的網站的 URL。瀏覽器解析 URL 並建立一個 HTTP 請求。
  2. 傳輸層協同作戰:作業系統的 TCP 協議堆疊接收到 HTTP 請求後,將其分割成合適大小的段,每一個段包含了目的地的 IP 地址和連接埠號。
  3. 網際網路層導航:這些段被打包成資料包,並由 IP 協議處理。IP 協議會查找目的地的路由,並將資料包指向該方向。
  4. 資料連接層的傳輸:資料包到達資料連接層,被封裝成幀,包括 MAC 地址等資訊,透過網路介面卡(NIC)發送出去。
  5. 穿越本地網路:封包穿越用戶的本地網路,可能經過交換機和路由器等設備。
  6. 經過網際網路:封包繼續透過各種路由器和交換機,穿越網際網路,可能經歷多次轉發和路由選擇。
  7. 到達目的地伺服器:最終,封包到達目標伺服器的網路,經過其防火牆、負載平衡器等,到達伺服器的 NIC。
  8. 資料包的解封裝:封包在目標伺服器的 OS 中被解封裝,首先在資料連接層解讀 MAC 地址,然後在網際網路層解析 IP,再到傳輸層解析 TCP 資訊,最終到達應用層。
  9. 伺服器處理請求:伺服器的網路應用(例如 Web 伺服器軟體)處理 HTTP 請求,讀取相應的網頁內容。
  10. 回應的路程:伺服器建立 HTTP 回應,沿著相同的路徑但方向相反,將資料回傳到用戶的電腦。
  11. 在用戶端解析回應:用戶的作業系統和瀏覽器解析回應,渲染網頁,最終展示給用戶。

延伸閱讀

常見問題

QOSI 模型和 TCP/IP 模型有什麼差別?

OSI 模型把通訊分成七層,是理想化、通用的參考框架;TCP/IP 模型則分成四層,更簡單,也更直接反映實際網際網路協議的設計與實現。兩者層級大致對應,但 TCP/IP 應用層涵蓋了 OSI 的第 4 到 7 層。

QOSI 的會議層和表示層在現代協議中還存在嗎?

功能仍然存在,但位置不固定。例如 HTTP 會在應用層管理會話的建立與中止,編碼、壓縮、加密也可能在應用層或跨層實現。OSI 是理想化框架,現代協議不一定逐層遵循。

QIPv4 和 IPv6 都運作在哪一層?

兩者都在網路層(OSI 第三層)運作,負責資料包的封裝、路由與傳輸。主要差異在地址長度與格式:IPv6 的地址空間遠大於 IPv4,能為更多設備分配唯一地址。

Q為什麼說 PPP 是資料連接層的協議?

因為 PPP 的核心功能在於建立、管理和終止連接,進行錯誤檢測和修正,以及將資料封裝為幀——這些都是資料連接層的職責。即使它支援上層網路協定(如 IP),仍屬於第二層。

Q一個 HTTP 請求的封包傳送流程是什麼?

瀏覽器建立 HTTP 請求後,由 TCP 分段、IP 負責路由,資料連接層封裝成幀並經由 NIC 發送,穿越本地網路與網際網路到達伺服器;伺服器逐層解封裝後處理請求,再沿相同路徑反向回傳,由瀏覽器解析渲染。

參考資料

  • 本文整理自個人實作筆記。

最後更新

2026-08-28(原文發布於 2022-08-01,本文保留原始筆記內容並補上 GEO 結構。)

關於作者 {#author}

Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。

首次發布:2022-08-01