1. 程式人生 > >網絡基礎TCP/IP

網絡基礎TCP/IP

決定 進行 web pan 說明 過多 aps 報文 單位

TCP/IP協議簇的分層管理

  按層次分別分為4層:應用層、傳輸層、網絡層、數據鏈路層。

應用層

  決定了向用戶提供應用服務時通信的活動,比如:FTP、DNS、HTTP

傳輸層

  對上層應用層提供處於網絡連接中的兩臺計算機之間的數據傳輸,提供端對端的數據傳輸。在該層有兩個性質不同的協議:TCP、UDP。TCP的數據單元稱為段 (segments)而UDP協議的數據單元稱為“數據報(datagrams)

網絡層

  用來處理網絡上流動的數據包,數據包是網絡傳輸的最小數據單位,該層規定了通過怎樣的路徑到達對方計算機。

  與對方計算機之間通過多臺計算機或者網絡設備進行傳輸時,網絡層所起的作用是在眾多的選項內選擇一條傳輸路線

  在這一層,數據的單位稱為數據包(packet)

鏈路層

  用來處理連接網絡的硬件部分。

  在這一層,數據的單位稱為幀(frame)

TCP/IP通信傳輸流

  利用 TCP/IP 協議族進行網絡通信時,會通過分層順序與對方進行通信。發送端從應用層往下走,接收端則往應用層往上走

  我們用 HTTP 舉例來說明,首先作為發送端的客戶端在應用層(HTTP 協議)發出一個想看某個 Web 頁面的 HTTP 請求。

  接著,為了傳輸方便,在傳輸層(TCP 協議)把從應用層處收到的數據(HTTP 請求報文)進行分割,並在各個報文上打上標記序號及端口號後轉發給網絡層。

  在網絡層(IP 協議),增加作為通信目的地的 MAC 地址後轉發給鏈路層。這樣一來,發往網絡的通信請求就準備齊全了。

  接收端的服務器在鏈路層接收到數據,按序往上層發送,一直到應用層。當傳輸到應用層,才能算真正接收到由客戶端發送過來的 HTTP請求。

技術分享

  發送端在層與層之間傳輸數據時,每經過一層時必定會被打上一個該層所屬的首部信息。反之,接收端在層與層傳輸數據時,每經過一層時會把對應的首部消去。

  這種把數據信息包裝起來的做法稱為封裝(encapsulate)

網絡基礎TCP/IP