天天看點

HTTP工作流程

一:什麼是HTTP事務

HTTP事務 = 請求指令 + 響應結果

是HTTP請求的最小處理單元,簡單說就是一次完整的請求過程,包括請求的發送和結果的傳回,如果隻有發送請求,而沒有響應結果,則不能算作HTTP事務

二:封包流

HTTP工作流程

三:請求封包

格式: 請求行、請求首部(請求頭)、空行、封包主體

如圖:

HTTP工作流程

四:響應封包

格式:響應行、響應首部、空行、封包主體(HTTP要傳輸的内容)

 如圖:

HTTP工作流程

五:HTTP的工作流程

整個流程步驟:

   域名解析 -> 三次握手 -> 發起HTTP請求 -> 響應HTTP請求并得到HTML代碼 -> 浏覽器解析HTML代碼  -> 浏覽器對頁面進行渲染呈現給使用者

HTTP工作流程

六:域名解析過程:

HTTP工作流程

(1)查詢浏覽器自身緩存:

  以chrome為例:在浏覽器位址欄輸入:chrome://net-internals/#dns

  浏覽器自身緩存時間比較短,為1min,數量為1000條

(2)查詢OS自身緩存:

  cmd  ->  ipconfig  /displaydns  ->  回車

  清楚OS自身緩存:

  cmd  ->  ipconfig  /flushdns

(3)讀取hosts檔案:C:\Windows\System32\drivers\etc\hosts

(4)向本地DNS伺服器請求

  向本地配置的DNS伺服器發送域名解析請求,通過UDP協定向DNS的53端口發起請求

(5)查找NetBIOS name Cache,它就存在于用戶端電腦中

補充:如果有任何一個步驟中,找到了域名對應的ip,則直接傳回,後面的步驟不再進行

 七:TCP三向交握過程

HTTP工作流程