步驟
- NDS解析,將域名地址解析爲ip地址 (第一步)
- 瀏覽器DNS緩存
- 系統DNS緩存
- 路由器DNS緩存
- 網絡運營商DNS緩存
- 遞歸搜索 如 blog.baidu.com
- .com 域名下查找DNS解析
- .baidu
- blog
- 出錯
- TCP鏈接,TCP三次握手 (第二步)
- 第一次握手,由瀏覽器發起,告訴服務器我要發送請求了
- 第二次握手,由服務器發起,告訴瀏覽器,你趕忙發送
- 第三次握手,由瀏覽器發起,告訴服務器,我立刻就發了,準備接收了。
- 發送請求 (第三步)
- 接收響應 (第四步)
- 渲染頁面 (第五步)
- 碰見html 標記,瀏覽器調用html解析器解析成token並構建成dom樹。
- 碰見style/link標記,瀏覽器會調用css解析器,處理css標記並構建cssom樹
- 碰見script標籤,會調用script解析器,處理script代碼。
- 將dom樹和cssom樹合併成渲染樹
- 根據渲染樹來計算佈局,計算每一個節點的幾何信息(佈局)
- 將各個節點的顏色繪製到屏幕上(渲染)
注意 這五個步驟,不必定按順序執行,可能反覆執行,或者執行屢次佈局和渲染,每每在實際頁面中,這些步驟會執行屢次。css
- 斷開鏈接(Tcp的四次揮手)(第六步)
- 第一次揮手: 由瀏覽器發起,告訴服務器,我東西發完來(請求報文),能準備關閉吧。
- 第二次揮手:由服務器發起,告訴瀏覽器,我東西接收完來(請求報文),我準備關閉來,你也準備吧。
- 第三次揮手:由服務器發起,告訴瀏覽器,我東西發送完來 (響應報文),你準備關閉吧。
- 第四次揮手:由瀏覽器發起,告訴服務器,我東西接收完了,我準備關閉來(響應報文),你也準備吧。