天天看點

圖解HTTP讀書筆記(一)

圖解HTTP讀書筆記(一)

第一章 網絡基礎

網絡基礎TCP/IP

為了了解HTTP,我們有必要事先了解以下TCP/IP協定族。通常使用的網絡實在TCP/IP協定族的基礎上運作的。HTTP屬于它内部的一個子集。

計算機與網絡裝置要互相通信,雙方就必須基于相同的方法,如:如何探測到通信目标,由哪邊先發起通信,使用哪種語言進行通信,如何結束通信等都需要事先确定。不同的硬體、作業系統之間的通信,所有的一切都需要一種規則,而我們就把這種規則稱之為協定。

圖解HTTP讀書筆記(一)

像這樣與網際網路相關的協定集合起來總稱為TCP/IP協定。

  • TCP/IP協定族
    • 說法一:TCP/IP是指TCP和IP這2種協定。
    • 說法二:TCP/IP是指在IP協定的通信過程中,使用到的協定族的統稱。
  • TCP/IP的分層管理

    TCP/IP協定族按層次分别分為以下4層:應用層、傳輸層、網絡層、資料鍊路層。

    • 應用層:決定了向使用者提供應用服務時通信的活動。TCP/IP協定族内預存了各類通用的應用服務。如:HTTP,FTP(檔案傳輸協定)和DNS(域名系統)。
    • 傳輸層:傳輸層對上層應用層,提供處于網絡連接配接中的兩台計算機之間的資料傳輸。在傳輸層有2個性質不同的協定TCP和UDP。
    • 網絡層(又名網絡互連層):網絡層用來處理在網絡上流動的資料包。資料包是網絡傳輸的最小資料機關。該層規定了通過怎樣的路徑(所謂的傳輸路線)到達對方的計算機,比把資料包傳送給對方。
    • 鍊路層(又名資料鍊路層,網絡接口層):用來處理連接配接網絡的硬體部分。包括控制作業系統、硬體的裝置驅動、NTC(網絡擴充卡,即網卡),及光纖等實體可見部分。硬體上的範疇均在鍊路層的作用範圍之内。
  • TCP/IP通信傳輸流

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

以HTTP協定為例:

圖解HTTP讀書筆記(一)

發送端的用戶端在應用層發生出一個HTTP請求。在傳輸層(TCP協定)把從應用層處收到的資料(HTTP請求封包)進行分割,并在各個封包上打上标記序号及端口号後轉發給網絡層。在網絡層(IP協定),增加作為通信目的地的MAC位址後轉發給鍊路層。

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

發送段在層與層之間傳輸資料時,每經過一層時必定會被打上一個該層所屬的首部資訊。反之,接收端在層與層傳輸資料時,每經過一層時,會把對應的首部資訊去掉。

與HTTP關系密切的協定:IP、TCP和DNS

  • IP協定:
    • IP協定的作用:是把各種資料包傳送給對方。要保證确實傳送到對方那裡,需要滿足各類條件。其中兩個重要的條件是IP位址和MAC位址(網卡所屬的固定位址)。
    • ARP協定:是一種可以解析位址的協定,根據通信方的IP位址就可以反查出對應的MAC位址。
    • 路由選擇(routing):是指選擇通過互連網絡從源節點向目的節點傳輸資訊的通道,而且資訊至少通過一個中間節點。
  • TCP協定

    TCP位于傳輸層,提供可靠的位元組流服務。所謂的位元組流服務,是指為了友善傳輸,将大塊資料分割成以封包段為機關的資料包進行管理。為了準确無誤的将資料送達目标處,TCP協定采用了三次握手政策。

圖解HTTP讀書筆記(一)
  • DNS協定:與HTTP協定一樣位于應用層的協定。他提供域名到IP位址之間的解析服務。

DNS協定提供通過域名查找IP位址,或逆向從IP位址反查找域名服務。

各種協定與HTTP協定的關系

如圖:

圖解HTTP讀書筆記(一)

URI和URL

  • URI(Uniform Resource Identifier):統一資源辨別符。
  • URL(Uniform Resource Locator):統一資源定位符。

URI用字元串辨別某一網際網路資源,而URL表示資源的地點(網際網路上所處的位置)。URL是URI的子集。

關于URI和URL的差別

繼續閱讀