HTTP、TCP/IP協議的原理及應用


訪問網頁時發生了什么

當用戶在瀏覽器地址欄輸入地址,敲下回車鍵,直到看到網頁界面,一般事件不過兩三秒左右。然而在這瞬間時間,計算機實際上已經完成了非常復雜的操作。這段過程中發生的事情,其實有很大一部分就與HTTP TCP/IP有關,我們可以簡要的概括一下大概的流程

一、找服務器IP

當用戶輸入一個網址並按下回車鍵的時候,瀏覽器得到了一個域名。而在實際通信過程中,瀏覽器需要的是一個IP地址。為了獲得IP地址,瀏覽器會做如下操作,一般我們把瀏覽器通過域名查找對應IP的行為叫做DNS(域名系統Domain [də(ʊ)'meɪn] Name System,是互聯網的一項服務)解析

1.找瀏覽器的本地的緩存

2.再找電腦硬盤里的host文件,有么有記錄這個域名和IP的映射關系

3.實在沒找到,只好通過網絡鏈路去域名供應商那里查詢

二、建立TCP/IP連接

1.瀏覽器獲取到了服務器對應的IP,就會向對應的IP服務器發送TCP(Transmission Control Protocol 傳輸控制協議)連接請求

2.服務器收到請求后回應,雙方多次確認后建立TCP雙向連接。

從客戶端發起連接請求一直到TCP連接建立,這個過程,叫做三次握手

如果請求時HTTPS的,還需要再TCP連接上,再通過SSL或TLS提供的加密處理數據、驗證對方身份以及數據完整性,來保證數據傳輸的安全

三、請求資源

1.TCP連接創建完成,瀏覽器開始向服務器發送正式的HTTP請求的數據包

2.服務端接受請求,對請求進行解析,經過數據操作后,返回客戶端需要的數據包

四、瀏覽器渲染

瀏覽器獲取到需要的數據以后,對數據進行拼接、解析、執行,最終將完整的網頁繪制在網頁上。

五、瀏覽器緩存

瀏覽器拿到服務器返回的數據后,會根據一定的策略進行數據緩存,這樣在下一次請求同樣數據的時候,就可以直接到緩存拿取,不再請求服務器。

 

https://juejin.im/post/5d75c116f265da03d9255dd1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM