整個(gè)流程如下:
- 域名解析
- 為了將消息從你的PC上傳到服務(wù)器
- 上.需要用到1P協(xié)議,、ARP協(xié)議和0SPF協(xié)議
- 發(fā)起TCP的3次握手
- 建立TCP連接后發(fā)起http請(qǐng)求
- 服務(wù)器響應(yīng)htp請(qǐng)求
- 瀏覽器解析htm代碼,并請(qǐng)求html代碼中的資源(如js、css,、圖片等)
- 斷開TCP連接
- 瀏覽器對(duì)頁面進(jìn)行渲染呈現(xiàn)給用戶
一,、域名解析的詳細(xì)內(nèi)部過程
例如,要查詢www.baidu.com的IP地址(DNS解析url):
-
瀏覽器搜索自己的DNS緩存(維護(hù)一張域名與IP地址的對(duì)應(yīng)表) -
若沒有,,則搜索操作系統(tǒng)中的DNS緩存(維護(hù)一張域名與IP地址的對(duì)應(yīng)表) -
若沒有,,則搜索操作系統(tǒng)的hosts文件(Windows環(huán)境下,維護(hù)一張域名與IP地址的對(duì)應(yīng)表,,位置一般在 C:\Windows\System32\drivers\etc\hosts) -
若沒有,,則操作系統(tǒng)將域名發(fā)送至 本地域名服務(wù)器- -(遞歸查詢方式),,本地域名服務(wù)器 查詢自己的DNS緩存,查找成功則返回結(jié)果,,否則,,(以下是迭代查詢方式) 4.1 本地域名服務(wù)器 向根域名服務(wù)器(其雖然沒有每個(gè)域名的具體信息,但存儲(chǔ)了負(fù)責(zé)每個(gè)域,,如com,、net、org等的解析的頂級(jí)域名服務(wù)器的地址)發(fā)起請(qǐng)求,,此處,,根域名服務(wù)器返回com域的頂級(jí)域名服務(wù)器的地址 4.2 本地域名服務(wù)器 向com域的頂級(jí)域名服務(wù)器發(fā)起請(qǐng)求,返回baidu.com權(quán)限域名服務(wù)器(權(quán)限域名服務(wù)器,,用來保存該區(qū)中的所有主機(jī)域名到IP地址的映射)地址 4.3 本地域名服務(wù)器 向baidu.com權(quán)限域名服務(wù)器發(fā)起請(qǐng)求,,得到www.baidu.com的IP地址 -
本地域名服務(wù)器 將得到的IP地址返回給操作系統(tǒng),同時(shí)自己也將IP地址緩存起來 -
操作系統(tǒng)將 IP 地址返回給瀏覽器,,同時(shí)自己也將IP地址緩存起來 -
至此,,瀏覽器已經(jīng)得到了域名對(duì)應(yīng)的IP地址
二、三次握手
三次握手的情況可以看我的博客https://blog.csdn.net/qq_21993785/article/details/80735776
三,、建立TCP連接后發(fā)起http請(qǐng)求
講一下HTTP的瀏覽器緩存機(jī)制看我的博客:https://blog.csdn.net/qq_21993785/article/details/81188624,。使用Post還是Get。
四,、服務(wù)器收到請(qǐng)求并響應(yīng)HTTP請(qǐng)求
1.負(fù)載均衡 網(wǎng)站可能會(huì)有負(fù)載均衡設(shè)備來平均分配所有用戶的請(qǐng)求,。即對(duì)工作任務(wù)進(jìn)行平衡,分 攤到多個(gè)操作單元上執(zhí)行,如圖片服務(wù)器,應(yīng)用服務(wù)器等。 2請(qǐng)求處理閱讀請(qǐng)求及它的參數(shù)和 cookies
五.瀏覽器解析htm代碼,并請(qǐng)求htm代碼中的資源(如js,、css圖片等)
看是否是長(zhǎng)連接,。來決定是不是斷開TCP連接
六.斷開TCP連接
四次揮手
七.瀏覽器對(duì)頁面進(jìn)行渲染呈現(xiàn)給用戶
|