https://wenku.baidu.com/view/194427ddd15abe23482f4dcf.html
https://zhidao.baidu.com/question/497227757.html
https://www.jianshu.com/p/9133b4b9d3a6
***https://blog.csdn.net/dawn_sf/article/details/82382399
***http://ishare.iask.sina.com.cn/f/32eC6rLURIS.html
***https://blog.csdn.net/m_buddy/article/details/77800998
訪問一個網站的詳細過程:
1、DNS解析:在瀏覽器中輸入的網址後,瀏覽器會獲取到網址的域名,通過域名來進行DNS解析。
DNS解析過程爲:
(1)首先查找瀏覽器的DNS緩存中是否有該域名
(2)查找操作系統hosts文件中是否有該域名
(3)向DNS域服務器發送請求
(4)向根服務器發送請求,進行遞歸迭代解析。根服務器只保存.com,.cn,.org類型的域名,例如要解析mail.google.com的IP地址,就得查詢.com域服務器,如果找不到該IP地址的話,就遞歸查詢google.com的域服務器,找到之後再向google.com域服務器進行迭代查詢,知道解析到mail.google.com的IP地址
2、通過IP地址找到對應的服務器後建立TCP連接,瀏覽器發送完HTTP request請求包後,服務器接收到請求包,並處理請求
3、服務器處理完請求後返回response響應包
4、客戶端收到來自服務器的響應後開始渲染這個Response包裏的主體(body),等收到全部的內容隨後斷開與該服務器之間的TCP連接