這篇文章主要理一理瀏覽器從傳送請求到接受到響應資料這個過程中,都發生了什麼事!(標題的順序即為整個過程中發生的事情的順序)
我們從網域名稱解析階段與請求和響應階段來敘述從網域名稱解析直至獲取到資源的整個過程所發生的事
以www.baidu.com為例
首先應該明白,網域名稱是倒著解析的,即從頂級網域名稱開始解析。瀏覽器需要的得到網域名稱對應的ip才能訪問到相關伺服器,因此需要先將網域名稱解析為ip,然後瀏覽器再拿著這個ip找到對應伺服器並訪問資源
上述只是網域名稱解析階段。下面在敘述資源請求和響應階段
瀏覽器得到ip後,通過三次握手與伺服器端建立連線。下面是三次握手的過程:
三次握手,建立連線
以下敘述中:a代表客戶端,b代表伺服器
首先明白:
在明白了上述內容後,我們再來**三次握手的具體細節:
至此,握手結束,開始資料傳輸
三次握手成功,建立連線後。客戶端向伺服器傳送http協議請求包,請求伺服器中的資源。而伺服器向客戶端傳送http協議應答包,向客戶端傳輸資源
請求報文、響應報文
這個階段主要是資料互動:
客戶端向伺服器傳送http協議包以請求伺服器中的資源
伺服器向客戶端傳送http協議應答包
具體請看——『http報文』
資料傳輸完畢後,伺服器與客戶端通過四次揮手斷開連線
四次揮手
這主要是,資料傳輸完畢,斷開連線的過程
首先明白
下面是四次揮手的細節:
wait:這個時候client端就進入fin_wait狀態,繼續等待server端的fin報文。
瀏覽器中輸入url後發生的事情
瀏覽器中輸入url後發生的事情有什麼?這是面試的時候可能會遇到的問題,下面是我根據從 http和網上的部落格中學習整理的過程,如果哪一步有問題,希望正指出來,十分感謝。輸入url後可以大概分為六個部分 dns網域名稱解析 建立tcp連線 發起http請求 接受響應結果shu 瀏覽器解析html 瀏覽...
瀏覽器url中輸入位址後發生什麼事情?
1.dns網域名稱解析 如果直接查詢dns伺服器沒有找到對應的ip位址,就會向上級伺服器詢問,這樣一層一層的向上級找,最高可到達根結點,直到找到或者全部找不到位置。2.建立tcp連線 簡稱三次握手 第一次握手 建立連線時,客戶端傳送syn包 syn j 到伺服器,並進入syn sent狀態,等待伺服...
瀏覽器中輸入url後,發生的事情(經典面試題)
這是乙個經典的面試題,沒有固定答案,越詳細越好 我們在瀏覽器中輸入 瀏覽器查詢網域名稱對應的ip位址 dns查詢過程為 瀏覽器快取 系統快取 路由器快取 isp dns快取 遞迴搜尋 遞迴搜尋過程為 從根網域名稱伺服器到頂級網域名稱伺服器到你查詢的網域名稱伺服器。瀏覽器開啟tcp連線 預設埠為80 ...