網路架構 》TCP/IP 四層架構 & OSI七層架構

SW
Jun 16, 2023

--

通訊協定(Protocol)透過一些制定好的規則,確保傳輸與接收雙方收發正常

網路通訊協定是一種層級式(Layering)的架構,每一層呼叫下一層提供的服務來完成自己的需求。

TCP/IP 通訊協定,分為4層:

  • 應用層
    HTTP(HTTPS) / SMTP / FTP …
  • 傳輸層 (如何傳送資料)
    TCP / UDP
  • 網路互連層(加上收發地址)
    IP (Internet Protocol)
  • 網路存取層(實際傳送資料)
    路由器 / 海底電纜

資料傳遞流程
1. A應用層將資料傳送給傳輸層。在傳輸層,資料被分割成較小的封包
2. A傳輸層使用TCP或UDP協定來將封包封裝成傳輸層資料段
3. A傳輸層將資料段傳遞給A網際網路層,並指定目的地的IP位址。
4. 在A網際網路層,IP協定負責將資料段封裝成IP封包。IP封包包含源IP位址和目的IP位址。
5. IP封包通過網際網路傳輸,在路由器之間進行轉發,直到到達目的地網路B。
6.在目的地網路上,目的地B主機的網際網路層接收到IP封包。
7.B網際網路層根據IP封包中的目的IP位址,將封包傳遞給相應的B傳輸層協定(TCP或UDP)。
8. 目的地B傳輸層解析接收到的資料段,並將資料段重新組合成原始的資料。
9. 最後,原始的資料在目的地B應用層進行處理和應用。

TCP是一種可靠的連接導向協定,提供資料的可靠傳輸,它確保資料的順序和完整性,並進行錯誤偵測和重傳。

TCP 三次握手Three-way handshake (在通信的開始建立連接)
1. 建立連接(
Browser安安,在嗎?)
2. 伺服器回應(Server收到後回覆:在呀)
3. 完成握手(
Browser收到後回覆:收到,太好了)
三個步驟都能夠順利進行,就代表彼此之間溝通的管道無礙

四次揮手Four-way handshake(在結束連接時進行適當的關閉)
1.客戶端主動關閉連接(Browser:確認收到資料,申請關閉連線)
2.伺服器回應確認關閉(Server:回應申請關閉通過,server也開始關閉)
3.伺服器端主動關閉連接(Server:主動告知Browser不再接收數據)
4.客戶端回應確認關閉(Browser:收到關閉通知,回傳是否真正關閉,等候一段時間後Browser關閉)

UDP則是一種無連接的協定,它更輕量且快速,但不保證資料的可靠傳輸,因此在某些情況下,如即時通訊或音視訊流傳輸,UDP更適合。

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

OSI 七層架構
資料流程分為 7 個分層,越高層越偏向軟體,低層則偏向硬體

  • 應用層(負責通訊協定和資料操作)
    - 唯一一個直接與來自使用者的資料進行互動的層
    - 軟體應用程式類似於網頁瀏覽器,電子郵件用戶端依靠此應用程式層初始化通訊。
    -
    用戶端軟體應用程式不是應用程式層的一部分
    -
    應用程式層通訊協定包括 HTTP 及 SMTP(簡易郵件傳輸通訊協定是支援電子郵件通訊的通訊協定之一)
  • 呈現層(負責轉譯、加密和壓縮資料)
    - 兩個通訊裝置在通訊時可能使用不同的編碼方式,因此呈現層負責將傳入資料轉譯至接收裝置的應用程式層能夠理解的語法
    - 如果裝置透過加密連線進行通訊,呈現層將負責在傳送者終端新增加密以及在接受者終端解碼
  • 工作階段層(負責處理開啟和關閉兩個裝置之間的通訊)
    - 通訊開啟時和關閉時當中的時間稱為工作階段
    - 工作階段層可確保工作階段保持足夠長的開啟時間以傳輸所有進行交換的資料,然後立即關閉工作階段以避免浪費資源
  • 傳輸層(負責處理兩個裝置之間的端對端通訊)
    - 傳送端將從工作階段層取用資料,並在傳送至第 3 層之前分解為稱為區段的區塊
    - 接收端的傳輸層負責將區段重組為工作階段層可以取用的資料
  • 網路層(負責促成兩個不同網路之間的資料傳輸)
    - 網路層在傳送者的裝置中將傳輸層中的區段分解為較小的單元(又稱封包)
    - 接收裝置中重組這些封包
    - 如果兩個裝置的通訊在同一個網路上,將無需網路層
  • 資料連結層
  • 實體層 (資料傳輸中涉及的實體設備)

--

--