国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > JS > 正文

概述一個頁面從輸入URL到頁面加載完的過程

2024-05-06 16:33:47
字體:
供稿:網(wǎng)友

過程概述

  • 瀏覽器查找域名對應(yīng)的 IP 地址;
  • 瀏覽器根據(jù) IP 地址與服務(wù)器建立 socket 連接;
  • 瀏覽器與服務(wù)器通信: 瀏覽器請求,服務(wù)器處理請求;
  • 瀏覽器與服務(wù)器斷開連接。

以下為詳細解析:

根據(jù)域名查找 IP 地址

概念解釋

  • IP 地址:IP 協(xié)議為互聯(lián)網(wǎng)上的每一個網(wǎng)絡(luò)和每一臺主機分配的一個邏輯地址。IP 地址如同門牌號碼,通過 IP 地址才能確定一臺主機位置。服務(wù)器本質(zhì)也是一臺主機,想要訪問某個服務(wù)器,必須先知道它的 IP 地址;
  • 域名( DN ):IP 地址由四個數(shù)字組成,中間用點號連接,在使用過程中難記憶且易輸入錯誤,所以用我們熟悉的字母和數(shù)字組合來代替純數(shù)字的 IP 地址,比如我們只會記住 www.baidu.com(百度域名) 而不是 220.181.112.244(百度的其中一個 IP 地址);
  • DNS: 每個域名都對應(yīng)一個或多個提供相同服務(wù)服務(wù)器的 IP 地址,只有知道服務(wù)器 IP 地址才能建立連接,所以需要通過 DNS 把域名解析成一個 IP 地址。

知道了上面的概念,大概就知道了想要獲得服務(wù)器的門牌號碼,需要先將域名轉(zhuǎn)換成 IP 地址。轉(zhuǎn)換過程如下(以查詢 www.baidu.com 的 IP 地址為例,其中2、3、4步均在上一步未查詢成功的情況下進行):

查找過程

1.瀏覽器搜索自己的 DNS 緩存(維護一張域名與 IP 地址的對應(yīng)表);

2.搜索操作系統(tǒng)中的 DNS 緩存(維護一張域名與 IP 地址的對應(yīng)表);

3.搜索操作系統(tǒng)的 hosts 文件( Windows 環(huán)境下,維護一張域名與 IP 地址的對應(yīng)表);

4.操作系統(tǒng)將域名發(fā)送至 LDNS(本地區(qū)域名服務(wù)器,如果你在學(xué)校接入互聯(lián)網(wǎng),則 LDNS 服務(wù)器就在學(xué)校,如果通過電信接入互聯(lián)網(wǎng),則 LDNS 服務(wù)器就在你當(dāng)?shù)氐碾娦拍抢铩#㎜DNS 查詢自己的 DNS 緩存(一般查找成功率在 80% 左右),查找成功則返回結(jié)果,失敗則發(fā)起一個迭代 DNS 解析請求;

  • LDNS 向 Root Name Server (根域名服務(wù)器,其雖然沒有每個域名的的具體信息,但存儲了負責(zé)每個域,如 com、net、org等的解析的頂級域名服務(wù)器的地址)發(fā)起請求,此處,Root Name Server 返回 com 域的頂級域名服務(wù)器的地址;
  • LDNS 向 com 域的頂級域名服務(wù)器發(fā)起請求,返回 baidu.com 域名服務(wù)器地址;
  • LDNS 向 baidu.com 域名服務(wù)器發(fā)起請求,得到 www.baidu.com 的 IP 地址;

5.LDNS 將得到的 IP 地址返回給操作系統(tǒng),同時自己也將 IP 地址緩存起來;

6.操作系統(tǒng)將 IP 地址返回給瀏覽器,同時自己也將 IP 地址緩存起來;

7.至此,瀏覽器已經(jīng)得到了域名對應(yīng)的 IP 地址。

補充說明

  • 域名與 URL 是兩個概念:域名是一臺或一組服務(wù)器的名稱,用來確定服務(wù)器在 Internet 上的位置;URL 是統(tǒng)一資源定位符,用來確定某一個文件的具體位置,例如,zhihu.com 是 知乎的域名,根據(jù)這個域名可以找到知乎的服務(wù)器,zhihu.com/people/CompileYouth 是 URL ,可以根據(jù)這個 URL 定位我的知乎主頁;
  • IP 地址與域名不是一一對應(yīng)的關(guān)系:可以把多個提供相同服務(wù)的服務(wù)器 IP 設(shè)置為同一個域名,但在同一時刻一個域名只能解析出一個 IP地址;同時,一個 IP 地址可以綁定多個域名,數(shù)量不限;

建立連接--三次握手

知道了服務(wù)器的 IP 地址,下面便開始與服務(wù)器建立連接了。

通俗地講,通信連接的建立需要經(jīng)歷以下三個過程:

  • 主機向服務(wù)器發(fā)送一個建立連接的請求(您好,我想認識您);
  • 服務(wù)器接到請求后發(fā)送同意連接的信號(好的,很高興認識您);
  • 主機接到同意連接的信號后,再次向服務(wù)器發(fā)送了確認信號(我也很高興認識您),自此,主機與服務(wù)器兩者建立了連接。

補充說明

  • TCP 協(xié)議:三次握手的過程采用 TCP 協(xié)議,其可以保證信息傳輸?shù)目煽啃裕挝帐诌^程中,若一方收不到確認信號,協(xié)議會要求重新發(fā)送信號。

網(wǎng)頁請求與顯示

當(dāng)服務(wù)器與主機建立了連接之后,下面主機便與服務(wù)器進行通信。網(wǎng)頁請求是一個單向請求的過程,即是一個主機向服務(wù)器請求數(shù)據(jù),服務(wù)器返回相應(yīng)的數(shù)據(jù)的過程。

1.瀏覽器根據(jù) URL 內(nèi)容生成 HTTP 請求,請求中包含請求文件的位置、請求文件的方式等等;

2.服務(wù)器接到請求后,會根據(jù) HTTP 請求中的內(nèi)容來決定如何獲取相應(yīng)的 HTML 文件;

3.服務(wù)器將得到的 HTML 文件發(fā)送給瀏覽器;

4.在瀏覽器還沒有完全接收 HTML 文件時便開始渲染、顯示網(wǎng)頁;

5.在執(zhí)行 HTML 中代碼時,根據(jù)需要,瀏覽器會繼續(xù)請求圖片、CSS、JavsScript等文件,過程同請求 HTML ;

斷開連接--四次揮手

1.主機向服務(wù)器發(fā)送一個斷開連接的請求(不早了,我該走了);

2.服務(wù)器接到請求后發(fā)送確認收到請求的信號(知道了);

3.服務(wù)器向主機發(fā)送斷開通知(我也該走了);

4.主機接到斷開通知后斷開連接并反饋一個確認信號(嗯,好的),服務(wù)器收到確認信號后斷開連接;

補充說明

  • 為什么服務(wù)器在接到斷開請求時不立即同意斷開:當(dāng)服務(wù)器收到斷開連接的請求時,可能仍然有數(shù)據(jù)未發(fā)送完畢,所有服務(wù)器先發(fā)送確認信號,等所有數(shù)據(jù)發(fā)送完畢后再同意斷開。
  • 第四次握手后,主機發(fā)送確認信號后并沒有立即斷開連接,而是等待了 2 個報文傳送周期,原因是:如果第四次握手的確認信息丟失,服務(wù)器將會重新發(fā)送第三次握手的斷開連接的信號,而服務(wù)器發(fā)覺丟包與重新發(fā)送的斷開連接到達主機的時間正好為 2 個報文傳輸周期。

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持VeVb武林網(wǎng)!


注:相關(guān)教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 图们市| 牙克石市| 株洲市| 滦平县| 河东区| 延庆县| 固镇县| 囊谦县| 广西| 金华市| 怀宁县| 原阳县| 南丹县| 温宿县| 咸宁市| 高安市| 台前县| 青阳县| 噶尔县| 梁河县| 光山县| 金山区| 库尔勒市| 绥化市| 永川市| 平顶山市| 新巴尔虎左旗| 景宁| 靖边县| 双江| 滦南县| 泰兴市| 榆中县| 九龙坡区| 获嘉县| 永修县| 静海县| 景德镇市| 榕江县| 望都县| 武安市|