×

從輸入 URL 到頁面加載是怎么完成(下)

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-02-26 17:53:23

接下來封裝包會從本地計算機出發(fā),經(jīng)過本地網(wǎng)絡(luò),再通過調(diào)制解調(diào)器把數(shù)字信號轉(zhuǎn)換成模擬信號。在傳輸線路的另一端,另一個調(diào)制解調(diào)器把模擬信號轉(zhuǎn)換回數(shù)字信號,交由下一網(wǎng)絡(luò)節(jié)點進行處理,最終封包會到達目標(biāo)服務(wù)器。

 接下來封裝包會從本地計算機出發(fā),經(jīng)過本地網(wǎng)絡(luò),再通過調(diào)制解調(diào)器把數(shù)字信號轉(zhuǎn)換成模擬信號。在傳輸線路的另一端,另一個調(diào)制解調(diào)器把模擬信號轉(zhuǎn)換回數(shù)字信號,交由下一網(wǎng)絡(luò)節(jié)點進行處理,最終封包會到達目標(biāo)服務(wù)器

5932b7111df1a780163e9bba2e47944a.jpg
發(fā)送和接收的過程在TCP連接期間會發(fā)送很多次(三次握手):客戶端將封包發(fā)送給服務(wù)端,并建立連接設(shè)置初始的序列號;服務(wù)端收到封包后做相應(yīng)處理,并且向客戶端表明自己接受到了第一個封包;客戶端再次發(fā)送一個封包來確認(rèn)這次連接。這就是建立連接三次握手的過程。
 
TLS握手
 
客戶端發(fā)送相應(yīng)消息給服務(wù)端,表明可用的加密算法以及壓縮算法。
 
服務(wù)端返回給客戶端一個消息,包含了TLS版本,以及自己使用的加密算法和壓縮算法等。
 
客戶端驗證服務(wù)端發(fā)送的信息是否可用,如果可用,就生成一段加密的隨機數(shù)返給服務(wù)端。
 
服務(wù)端對這段密文進行解密,并生成自己的主密鑰。
 
接下來整個會話會進行加密,傳輸http的內(nèi)容。
 
HTTP協(xié)議
 
瀏覽器向服務(wù)器發(fā)送請求頭,請求頭內(nèi)容包括:請求數(shù)據(jù)方式,http版本號,域名等頭部信息。接下來,服務(wù)器端返回一個響應(yīng)碼,表明這次請求的狀態(tài)。瀏覽器會從自己的緩存中取出想要的內(nèi)容,在解析完 HTML 之后,瀏覽器會重復(fù)上面的過程,直到HTML頁面引入的所有資源(圖片,CSS,JS等等)全部都獲取完畢。
 
瀏覽器
 
當(dāng)服務(wù)器提供了資源之后(HTML,CSS,JS,圖片等),瀏覽器會執(zhí)行下面的操作:
 
HTML解析。HTML解析器的主要工作是對HTML文檔進行解析,解析出HTML的內(nèi)容。
 
CSS解析。分析CSS文件內(nèi)容以及屬性值,將每個CSS文件都被解析成一個樣式表對象。
 
頁面渲染。通過一些列計算并呈現(xiàn)DOM樹,過程就是測量-排版-繪制頁面。在渲染過程中,對圖形的渲染處理會使用圖形處理器GPU。
 
后期渲染
 
渲染結(jié)束后,瀏覽器根據(jù)時間機制運行JavaScript代碼(比如動畫)或與用戶交互。類似Flash和Java的插件也會運行,這些腳本也可能改變網(wǎng)頁的內(nèi)容和布局,并產(chǎn)生又一輪渲染與繪制。
 
以上就是網(wǎng)站頁面從輸入 URL 到頁面加載的全部過程。
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費咨詢獲取折扣

Loading