瀏覽器輸入url後怎樣請求服務的

卑微小吳勵志寫博客第12天。

當在瀏覽器中輸入一個網址後的處理過程

1、瀏覽器根據域名查找域名對應的服務器IP地址。

根據域名查詢IP地址的順序如下:

  • 瀏覽器DNS >>> 操作系統DNS緩存 >>> 本地(ISP)域名服務器緩存 >>> 根域名服務器。

在請求到根域名服務器之後,根域名服務器告訴本地域名服務器,下一次應查詢的頂級域名服務器dns.com的IP地址。

本地域名服務器向頂級域名服務器dns.com進行查詢,頂級域名服務器dns.com告訴本地域名服務器,下一步應查詢的權限服務器dns.abc.com的IP地址。

本地域名服務器向權限域名服務器dns.abc.com進行查詢,權限域名服務器dns.abc.com告訴本地域名服務器,所查詢的主機的IP地址。

DNS 是什麼?

域名系統DNS(Domain Name System)是因特網使用的命名系統,用來把便於人們使用的機器名字轉換成爲IP地址。域名系統其實就是名字系統。爲什麼不叫“名字”而叫“域名”呢?這是因爲在這種因特網的命名系統中使用了許多的“域(domain)”,因此就出現了“域名”這個名詞。“域名系統”明確地指明這種系統是應用在因特網中。

2、瀏覽器主機根據IP地址與服務器建立TCP連接。

建立TCP連接需要進行三次握手。

(1)瀏覽器主機 >>> 服務器:SYN=1,ACK=0,seq=x;

           (2)服務器 >>> 瀏覽器主機:SYN=1,ACK=1,seq=y,ack=y+1;

           (3)瀏覽器主機 >>> 服務器:ACK=1,seq=x+1,ack=y+1。

3、瀏覽器將訪問請求封裝爲一個HTTP請求報文,通過TCP協議發送給服務器。

HTTP請求報文的方法是get方式;如果瀏覽器存儲了該域名下的Cookies,那麼會把Cookies放入HTTP請求頭裏發給服務器

4、服務器收到請求並響應,生成一個HTTP響應報文,通過TCP協議發送給瀏覽器主機。

HTTP響應報文的頭部包含了狀態碼(Status-Code),三位數字,有5大類。HTTP響應報文內容則是網頁的編碼內容。

5、瀏覽器得到響應報文之後,對響應報文進行解析。

在瀏覽器沒有完整接受全部HTML文檔時,它就已經開始顯示這個頁面了。如果是個靜態的頁面,那到此就基本結束了。如果是是動態的,那麼在瀏覽器顯示HTML時,會獲取嵌入在HTML中的對象,瀏覽器會發送獲取請求來重新獲得這些文件。

6、瀏覽器異步請求其他資源。

在分析HTML時,若發現網頁引用了其他資源,例如:css、圖片等,瀏覽器則發起HTTP請求,得到響應資源。

附:最常用狀態碼

一個人做事,在動手之前,當然要詳慎考慮;但是計劃或方針已定之後,就要認定目標前進,不可再有遲疑不決的態度,這就是堅毅的態度。——鄒韜奮 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章