九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
在瀏覽器地址欄輸入URL,按下回車后究竟發(fā)生了什么?

這是一道面試會經(jīng)常問的問題,平時雖然很常見的操作,但是探究其底層原理,可能并不是一件簡單的事情,于是我從各處搜羅整理下全過程,在這里做分享。

第一步:瀏覽器輸入域名

例如輸入:www.csdn.net/

第二步:瀏覽器查找域名的IP地址

瀏覽器會把輸入的域名解析成對應(yīng)的IP,其過程如下:

1.查找瀏覽器緩存:因為瀏覽器一般會緩存DNS記錄一段時間,不同瀏覽器的時間可能不一樣,一般2-30分鐘不等,瀏覽器去查找這些緩存,如果有緩存,直接返回IP,否則下一步。

2.查找系統(tǒng)緩存:瀏覽器緩存中找不到IP之后,瀏覽器會進行系統(tǒng)調(diào)用(windows中是gethostbyname),查找本機的hosts文件,如果找到,直接返回IP,否則下一步。

3.查找路由器緩存:如果1,2步都查詢無果,則需要借助網(wǎng)絡(luò),路由器一般都有自己的DNS緩存,將前面的請求發(fā)給路由器,查找ISP 服務(wù)商緩存 DNS的服務(wù)器,如果查找到IP則直接返回,沒有的話繼續(xù)查找。

4.遞歸查詢:如果以上步驟還找不到,則ISP的DNS服務(wù)器就會進行遞歸查詢,所謂遞歸查詢就是如果主機所詢問的本地域名服務(wù)器不知道被查詢域名的IP地址,那么本地域名服務(wù)器就以DNS客戶的身份,向其他根域名服務(wù)器繼續(xù)發(fā)出查詢請求報文,而不是讓該主機自己進行下一步查詢。(本地域名服務(wù)器地址是通過DHPC協(xié)議獲取地址,DHPC是負(fù)責(zé)分配IP地址的)

5.迭代查詢:本地域名服務(wù)器采用迭代查詢,它先向一個根域名服務(wù)器查詢。本地域名服務(wù)器向根域名服務(wù)器的查詢一般都是采用迭代查詢。所謂迭代查詢就是當(dāng)根域名服務(wù)器收到本地域名服務(wù)器發(fā)出的查詢請求報文后,要么告訴本地域名服務(wù)器下一步應(yīng)該查詢哪一個域名服務(wù)器,然后本地域名服務(wù)器自己進行后續(xù)的查詢。(而不是替代本地域名服務(wù)器進行后續(xù)查詢)。

本例子中:根域名服務(wù)器告訴本地域名服務(wù)器,下一次應(yīng)查詢的頂級域名服務(wù)器dns.net的IP地址。本地域名服務(wù)器向頂級域名服務(wù)器dns.net進行查詢。頂級域名服務(wù)器dns.net告訴本地域名服務(wù)器,下一次應(yīng)查詢的權(quán)限域名服務(wù)器dns.csdn.netIP地址。本地域名服務(wù)器向權(quán)限域名服務(wù)器dns.csdn.net進行查詢。權(quán)限域名服務(wù)器dns.csdn.net告訴本地域名服務(wù)器,所查詢的主機www.csdn.net的IP地址。本地域名服務(wù)器最后把結(jié)果告訴主機。

第三步 :瀏覽器與目標(biāo)服務(wù)器建立TCP連接

1.      主機瀏覽器通過DNS解析得到了目標(biāo)服務(wù)器的IP地址后,與服務(wù)器建立TCP連接。

2.      TCP3次握手連接:瀏覽器所在的客戶機向服務(wù)器發(fā)出連接請求報文(SYN標(biāo)志為1);服務(wù)器接收報文后,同意建立連接,向客戶機發(fā)出確認(rèn)報文(SYN,ACK標(biāo)志位均為1);客戶機接收到確認(rèn)報文后,再次向服務(wù)器發(fā)出報文,確認(rèn)已接收到確認(rèn)報文;此處客戶機與服務(wù)器之間的TCP連接建立完成,開始通信。

第四步:瀏覽器通過http協(xié)議發(fā)送請求

瀏覽器向主機發(fā)起一個HTTP-GET方法報文請求。請求中包含訪問的URL,也就是http://www.csdn.com/ ,KeepAlive,長連接,還有User-Agent用戶瀏覽器操作系統(tǒng)信息,編碼等。值得一提的是Accep-EncodingCookies項。Accept-Encoding一般采用gzip,壓縮之后傳輸html文件。Cookies如果是首次訪問,會提示服務(wù)器建立用戶緩存信息,如果不是,可以利用Cookies對應(yīng)鍵值,找到相應(yīng)緩存,緩存里面存放著用戶名,密碼和一些用戶設(shè)置項。

第五步:某些服務(wù)會做永久重定向響應(yīng)

對于大型網(wǎng)站存在多個主機站點,了負(fù)載均衡或者導(dǎo)入流量,提高SEO排名,往往不會直接返回請求頁面,而是重定向。返回的狀態(tài)碼就不是200OK,而是301,3023開頭的重定向碼,瀏覽器在獲取了重定向響應(yīng)后,在響應(yīng)報文中Location項找到重定向地址,瀏覽器重新第一步訪問即可。

重定向的作用:重定向是為了負(fù)載均衡或者導(dǎo)入流量,提高SEO排名。利用一個前端服務(wù)器接受請求,然后負(fù)載到不同的主機上,可以大大提高站點的業(yè)務(wù)并發(fā)處理能力;重定向也可將多個域名的訪問,集中到一個站點;由于baidu.com,www.baidu.com會被搜索引擎認(rèn)為是兩個網(wǎng)站,照成每個的鏈接數(shù)都會減少從而降低排名,永久重定向會將兩個地址關(guān)聯(lián)起來,搜索引擎會認(rèn)為是同一個網(wǎng)站,從而提高排名。

第六步:瀏覽器跟蹤重定向地址

當(dāng)瀏覽器知道了重定向后最終的訪問地址之后,重新發(fā)送一個http請求,發(fā)送內(nèi)容同上。

第七步:服務(wù)器處理請求

服務(wù)器接收到獲取請求,然后處理并返回一個響應(yīng)。

第八步:服務(wù)器發(fā)出一個HTML響應(yīng)

返回狀態(tài)碼200 OK,表示服務(wù)器可以響應(yīng)請求,返回報文,由于在報頭中Content-type“text/html”,瀏覽器以HTML形式呈現(xiàn),而不是下載文件。

第九步:釋放TCP連接

1.     瀏覽器所在主機向服務(wù)器發(fā)出連接釋放報文,然后停止發(fā)送數(shù)據(jù);

2.     服務(wù)器接收到釋放報文后發(fā)出確認(rèn)報文,然后將服務(wù)器上未傳送完的數(shù)據(jù)發(fā)送完;

3.     服務(wù)器數(shù)據(jù)傳輸完畢后,向客戶機發(fā)送連接釋放報文;

4.     客戶機接收到報文后,發(fā)出確認(rèn),然后等待一段時間后,釋放TCP連接;

第十步:瀏覽器顯示頁面

在瀏覽器沒有完整接受全部HTML文檔時,它就已經(jīng)開始顯示這個頁面了,瀏覽器接收到返回的數(shù)據(jù)包,根據(jù)瀏覽器的渲染機制對相應(yīng)的數(shù)據(jù)進行渲染。渲染后的數(shù)據(jù),進行相應(yīng)的頁面呈現(xiàn)和腳步的交互。

第十一步:瀏覽器發(fā)送獲取嵌入在HTML中的其他內(nèi)容

比如一些樣式文件,圖片url,js文件url等,瀏覽器會通過這些url重新發(fā)送請求,請求過程依然是HTML讀取類似的過程,查詢域名,發(fā)送請求,重定向等。不過這些靜態(tài)文件是可以緩存到瀏覽器中的,有時訪問這些文件不需要通過服務(wù)器,直接從緩存中取。某些網(wǎng)站也會使用第三方CDN進行托管這些靜態(tài)文件。

 

好了,總結(jié)就這里

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
在瀏覽器中輸入一個網(wǎng)址后,發(fā)生了什么?
面試經(jīng)驗|計算機網(wǎng)絡(luò)面試相關(guān)知識
從輸入url到頁面展示到底發(fā)生了什么
深入淺出瀏覽器渲染原理
瀏覽器工作原理
從輸入網(wǎng)址到顯示網(wǎng)頁,這個過程究竟發(fā)生了什么? - CSS9.NET
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服