一次完整的HTTP服務(wù)過程

題意分析

當(dāng)我們在web瀏覽器的地址欄中輸入 www.baidu.com 具體發(fā)生了什么?

  1. www.baidu.com 這個網(wǎng)址進行DNS域名解析,得到對應(yīng)的IP地址
  2. 根據(jù)這個IP,找到對應(yīng)的服務(wù)器,發(fā)起TCP的三次握手
  3. 建立TCP連接后發(fā)起HTTP請求
  4. 服務(wù)器響應(yīng)HTTP請求,瀏覽器得到html代碼
  5. 瀏覽器解析html代碼,并請求html代碼中的資源(如js、css、圖片等)
  6. 瀏覽器對頁面進行渲染呈現(xiàn)給用戶
  7. 服務(wù)器關(guān)閉TCP連接

注意:

  1. DNS怎么找到域名的?
    DNS域名解析采用的是遞歸查詢的方式,過程是,先去找DNS緩存,緩存找不到就去找根域名服務(wù)器,根域名服務(wù)器又去找下一級,這樣遞歸查找之后,直到找到然后給我們的web瀏覽器

  2. 為什么HTTP協(xié)議要基于TCP來實現(xiàn)?
    TPC是一個端到端的可靠的面向連接的協(xié)議,HTTP基于傳輸層TCP協(xié)議不用擔(dān)心數(shù)據(jù)傳輸過程出錯,出錯后會重傳

  3. 瀏覽器是如何對頁面進行渲染的?
    a、解析html文件構(gòu)成DOM樹
    b、解析CSS文件構(gòu)成渲染樹
    c、邊解析邊渲染

各個步驟具體細(xì)節(jié)

DNS解析

  1. 首先會搜索瀏覽器自身的DNS緩存(緩存時間比較短,大概只有1分鐘,且只能容納1000條緩存)
  2. 如果瀏覽器自身的緩存里沒有找到,那么瀏覽器會搜索系統(tǒng)自身的DNS緩存
  3. 如果還是沒有找到,那么嘗試從hosts文件里面去找
  4. 前面三個過程都沒有獲取到的情況下,就遞歸去域名服務(wù)器查找
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一次完整的HTTP請求過程 當(dāng)我們在web瀏覽器的地址欄中輸入: www.baidu.com,然后回車,到底發(fā)生了...
    括兒之家閱讀 455評論 0 1
  • 1,使用DNS域名解析: 1)首先會搜索瀏覽器自身的DNS緩存(緩存時間比較短,大概只有1分鐘,且只能容納10...
    SkyBlue丶ly閱讀 222評論 0 0
  • 首先進行DNS域名解析(本地瀏覽器緩存、操作系統(tǒng)緩存或者DNS服務(wù)器) a)首先會搜索瀏覽器自身的 DNS 緩存(...
    zzq_nene閱讀 278評論 0 1
  • 當(dāng)我們在web瀏覽器的地址欄中輸入: www.baidu.com,然后回車,到底發(fā)生了什么? 過程概覽 1.URL...
    spring_zto閱讀 6,492評論 0 2
  • 推薦指數(shù): 6.0 書籍主旨關(guān)鍵詞:特權(quán)、焦點、注意力、語言聯(lián)想、情景聯(lián)想 觀點: 1.統(tǒng)計學(xué)現(xiàn)在叫數(shù)據(jù)分析,社會...
    Jenaral閱讀 6,036評論 0 5

友情鏈接更多精彩內(nèi)容