讀書筆記:《圖解HTTP》第一章 網絡基礎

原文地址
博客積累地址html

HTTP的誕生及發展

HTTP是爲了知識共享而誕生,最初的設計理念是讓遠隔兩地的研究者們共享知識,藉助多文檔之間相互關聯造成的超文本,連成可相互參閱的 WWW(World Wide Web,萬維網)git

3項WWW 構建技術github

  • 做爲頁面的文本標記語言 HTML(超文本標記語言)
  • 做爲文檔傳遞協議的 HTTP
  • 指定文檔所在地址的 URL(統一資源定位符)

如今咱們都知道在網頁瀏覽器的地址欄中輸入URL能夠呈現Web頁面web

固然Web頁面不能憑空顯示出來,它是根據瀏覽器輸入的URl,瀏覽器從web服務器獲取文件資源等信息,從而顯示出web頁面瀏覽器

像這種經過發送請求獲取服務資源的web瀏覽器器等,都稱爲客戶端(client)服務器

An image

從客戶端到服務器端獲取信息的一系列運做流程,須要雙方規定一些規則,以此來告知雙方本身須要什麼消息,咱們能夠將這些規則理解爲HTTP協議,即HTTP協議就是雙方通訊的規範。網絡

TCP/IP協議

計算機與網絡設備要相互通訊,雙方就必須基於相同的方法。frontend

早期的計算機網絡,都是由各廠商本身規定一套通訊協議,互不兼容,帶來不一樣協議之間沒法通訊的弊端ide

爲了把世界全部不一樣類型的計算機鏈接起來,規定了一套全球通用的協議spa

由於互聯網協議包括上百種協議標準,可是最重要的兩個協議是TCP和IP協議,因此你們把互聯網的協議簡稱TCP和IP協議

HTTP 屬於TCP/IP協議內部的一個子集、一個協議標準

TCP/IP協議重要的一個概念是分層,咱們稱爲TCP/IP模型

分層的好處是,若是某個地方有變更,只需改變某層內部,只需把各層的之間的接口部分規劃好,每一個層次的內部設計能夠隨意改動

TCP/IP模型

分層 內容
應用層 向用戶提供應用服務時通訊的活動;FTP(文件傳輸協議)、DNS服務、HTTP協議等
傳輸層 提供處於網絡鏈接中計算機之間的數據傳輸;TCP(傳輸控制協議)、UDP(用戶數據報協議)
網絡層 規定傳輸路線,傳輸數據包(數據包是網絡傳輸最小的數據單位)
鏈路層 處理鏈接網絡的硬件部分

TCP/IP通訊傳輸流

TCP/IP協議會經過分層順序與對方進行通訊

  1. 客戶端在應用層發出HTTP請求
  2. 傳輸層對從應用層收到的數據(HTTP請求報文)進行分割,在各個報文上打上標記序號、端口號後轉發給網絡層
  3. 網絡層,增長做爲通訊目的地MAC地址轉發給鏈路層
  4. 服務器在鏈路層收到消息,按層往上發送,直到應用層,最終收到客戶端的HTTP請求

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

An image

IP、TCP 和 DNS

IP、TCP 和 DNS 是與HTTP密不可分的三個協議,接下來一一說明

負責傳輸的IP協議

IP協議位於網絡層,它的做用是把各類數據包傳送給對方

而要保證確實傳送到對方那裏,須要知足各種條件;其中兩個重要的條件是IP地址和MAC地址

IP地址指明節點被分配的地址,MAC地址指網卡所屬的固定地址
IP地址能夠和MAC地址配對,IP地址可變換,MAC地址基本不會更改

確保可靠性的TCP協議

TCP協議位於傳輸層,提供可靠的字節流服務

字節流服務
字節流服務是指,爲了方便傳輸,將大塊數據分割成報文段爲單位的數據包進行管理,而TCP協議可以確認數據最終是否發送到對方

爲了保證通訊的可靠性,TCP協議採用了三次握手策略創建鏈接,TCP協議發送數據包後,會向對方確認是否發送成功

TCP三次握手

咱們將發送一次消息稱爲一次握手

TCP三次握手使用了TCP的標誌:SYN 和 ACK

  1. 發送端首先發送一個帶有SYN標誌的數據包給對方,確認對方是否能夠收到消息
  2. 對方收到後,返回帶有SYN/ACK標誌的數據包表示收到消息,你能夠跟我通訊啦
  3. 發送端最後發送帶ACK標誌的數據包,會話結束

若在握手的某個階段莫名中斷,TCP協議會以相同的順序發送相同的數據包

An image

負責域名解析的DNS服務

DNS服務和HTTP協議同樣位於應用層,DNS提供域名到IP地址之間的解析服務

計算機被賦予IP地址,經過IP地址能夠訪問頁面,與IP地址的一組數字相比,域名(字母數字的組合:好比www.baidu.com)更符合人們的記憶習慣,可是計算機擅長處理數字,爲了解決這一問題,DNS 服務應運而生

An image

TCP、IP和DNS在使用HTTP協議通訊過程當中各自發揮的做用

An image

相關文章
相關標籤/搜索