1. 程式人生 > >網路的一次請求過程學習記錄

網路的一次請求過程學習記錄

網路請求的過程為域名解析,TCP三次握手,三次握手後的TCP連線後,傳送http請求,伺服器端的http響應,瀏覽器解析html程式碼,同時請求html中的資源。

1.域名解析

瀏覽器會首先訪問瀏覽器本身儲存的dns快取,但本身dns快取量少,存活時間短,如果有,則直接解析,沒有則去訪問作業系統所儲存的DNS快取,沒有的話在訪問C盤下的hosts檔案,如果在沒找到,則首先去找TCP/IP中設定的本地DNS伺服器,找不到的話在請求13臺根伺服器,根伺服器會根據請求返回負責該域名的一個伺服器ip,本地DNS使用這個ip去連線負責這個域名的伺服器,如果這臺伺服器無法解析,在返回該域名的下一級DNS伺服器。

2.TCP三次握手

3.HTTP請求:請求行,請求頭,空行,訊息體,如果是GET和DELETE將要處理的訊息存放在URL中,如果是POST和PUT則存放在報文的主題中。

4.HTTP響應:響應行,響應頭,空行,訊息體。

5.瀏覽器解析html程式碼時,如果遇到靜態資源,會請求伺服器,如果伺服器返回304則代表伺服器沒有改過,可以直接使用本地資源快取的檔案,否則開啟新執行緒請求伺服器下載。