在瀏覽器中輸入一個URL,按下回車會發生什麼?

_reallllmino_發表於2020-09-25

URL:在WWW上,每一資訊資源都有統一的且在網上唯一的地址,該地址就叫URL(Uniform Resource Locator,統一資源定位器),它是WWW的統一資源定位標誌,就是指網路地址。

1.輸入一個網址後,首先瀏覽器會通過查詢DNS,查詢這個URL的IP地址。
2.得到目標伺服器的IP地址和埠號(HTTP埠80,HTTPS 埠443),呼叫系統庫函式socket,請求一個TCP流套接字。客戶端向伺服器傳送HTTP請求報文。

a.應用層:客戶端傳送HTTP請求報文。
b.傳輸層:傳輸層會發起一條到達伺服器的 TCP 連線,在建立連線前會進行TCP三次握手。
c.網路層:(加入IP頭)路由定址。IP協議查詢Mac地址 將資料段打包,並加入源及目標的IP地址,並且負責尋找傳輸路線。
判斷目標地址是否與當前地址處於同一網路中,是的話直接根據 Mac 地址傳送,否則使用路由表查詢下一跳地址,以及使用 ARP 協議查詢它的
Mac 地址。
d.鏈路層:乙太網協議。(加入frame頭傳輸資料)
乙太網協議
根據乙太網協議將資料分為以“幀”為單位的資料包,每一幀分為兩個部分:
→標頭:資料包的傳送者、接受者、資料型別
→資料:資料包具體內容
e.物理層:物理傳輸bit。

3.伺服器端經過物理層->資料鏈路層->網路層->傳輸層->應用層,解析請求報文,傳送HTTP響應報文。
4.關閉連線,TCP四次揮手。
5.客戶端解析HTTP響應報文,瀏覽器開始顯示HTML。

相關文章