1. 程式人生 > >《圖解 HTTP 》閱讀 —— 第一章

《圖解 HTTP 》閱讀 —— 第一章

計算機與網路裝置相互通訊的規則稱為協議,比如:如何探測到通訊目標、由哪一邊發起通訊、使用那種語言進行通訊、怎麼結束通訊等。

TCP/IP 協議族按照層次分為以下四層:應用層、傳輸層、網路層、資料鏈路層。

  1. 應用層:
    應用層決定了向用戶提供應用服務時的通訊活動。
    TCP/IP 協議族中預存了各類通用的應用服務,如:FTP(檔案傳輸協議)、DNS(域名系統)、HTTP協議等。
  2. 傳輸層:
    傳輸層對上層應用層提供處於網路連線中的兩臺計算機之間的資料傳輸。
    傳輸層有兩個協議:TCP(傳輸控制協議)和 UDP(使用者資料報協議)
  3. 網路層:
    資料包是網路傳輸的最小資料單位,網路層就是用來處理網路上流動的資料包。
    該層規定了以怎樣的路徑(傳輸協議)到達對方的計算機並傳輸資料包。
  4. 資料鏈路層:
    用來處理連線網路的硬體部分,如:控制作業系統、硬體的裝置驅動、NIC(網路介面卡即網絡卡)及光纖等物理可見部分。

與 HTTP 關係密切的協議:IP、TCP 和 DNS

  1. 負責傳輸的 IP 協議

IP 網際協議屬於網路層。用於將各種資料包傳送給對方。而要保證資料正確的傳送,則需要滿足一定的條件。其中最重要的兩個條件就是 IP 地址 和 MAC 地址。

IP 地址指明瞭節點被分配的地址,MAC 地址是網絡卡所屬的固定位置。IP 地址和 MAC地址可以進行配對。IP 地址可以變化,MAC 地址通常不會改變。

可以使用 ARP 協議憑藉 MAC 地址進行通訊。

  1. 確保可靠性的 TCP 協議

TCP 位於傳輸層,提供可靠的位元組流服務。
位元組流服務是指為了方便傳輸,將大塊資料分割成以報文段為單位的資料包進行管理。可靠的傳輸服務是指能夠把資料準確可靠的傳輸給對方。
TCP 協議為了更容易傳輸大資料而把資料分割,且能夠確認資料最終是否傳送給對方。

為了準確的傳送資料,TCP 協議採用了三次握手策略:

握手過程中使用了 TCP 的標誌:SYN 和 ACK

  1. 負責域名解析的 DNS 服務

DNS 服務是和 HTTP 協議一樣位於應用層的協議,它提供域名到 IP 地址的解析服務。通過域名查詢 IP 地址或者通過 IP 地址反查詢域名。

計算機既可以被賦予 IP 地址,也可以被賦予主機名和域名。
使用者通常使用主機名或域名(字母配合數字的表示形式方便記憶)來訪問對方的計算機,而不是直接通過 IP 地址進行訪問。
但是計算機更擅長處理 IP 地址(一長串數字)

  1. 各種協議與 HTTP 協議之間的關係