精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

當我們向瀏覽器輸入網址后會發生什么?

系統 瀏覽器 網絡
本文會從如何生成 HTTP 消息展開,接著介紹 DNS 服務器是怎么幫我們查詢 IP 地址的,最后介紹協議棧最終是怎么把消息發送出去的。

前言

當我們向瀏覽器輸入網址后會發生什么呢,大家有沒有想過,這背后有著什么神奇的事情發生,今天,蛋蛋我就一層一層為大家揭秘瀏覽器背后的故事。

本文會從如何生成 HTTP 消息展開,接著介紹 DNS 服務器是怎么幫我們查詢 IP 地址的,最后介紹協議棧最終是怎么把消息發送出去的,文章很長,你要忍住。

一、生成 HTTP 請求消息

1、 解析 URL

網址,其實應該叫 URL 。一般網址都是以 “http://" 開頭,但也不乏有其他開頭的,例如:"ftp://" , "file://" 等等。

這部分文字表示的是瀏覽器使用的訪問方法。當訪問 Web 服務器時,使用 HTTP 協議,訪問 FTP 服務器則使用的是 FTP 協議。

整個 URL 除了有開頭需要指定的協議方法,還會包含服務器的域名和要訪問的文件路徑名等,如下圖所示:

我們以 HTTP 的協議來進行舉例講解:www.lab.glasscom.com 表示要訪問的服務器地址,而后面的路徑名 /dir/file1.html 表示訪問該服務器這個路徑下的 file1.html 文件。

可能有些小伙伴就有些疑問了,日常生活中我們有時候訪問的網站地址沒有指定具體要訪問的文件名,只有一個簡單的域名,一般這種情況服務器大多數會設置一個默認的訪問路徑,例如是 index.html 或者是 default.htm 等。

這就是瀏覽器工作的第一步,對 URL 進行解析。

2、HTTP 基本工作原理

通過對 URL 進行解析,我們已經知道訪問的目的地是哪了,接下來瀏覽器就會通過 HTTP 協議 來訪問 Web 服務器,HTTP 協議是一個很重要的知識點,后期我會專門出個專欄進行詳細講解,這里我先簡單介紹下,讓大家有個概念。

HTTP 協議定義了客戶端和服務器之間交互的消息內容與步驟。如上圖所示,客戶端會向服務器發送請求消息,請求可以有不同的操作,HTTP 通過方法來表示不同的操作:

Web 服務器收到請求后,完成自己的處理,會將處理的結果存放在響應消息中,響應消息會發生回客戶端,然后客戶端讀取結果進行展示。

3、 HTTP 請求消息生成

HTTP 請求消息對格式是有要求的,因此瀏覽器會按照規定的格式來生成請求消息。

  • 請求行:請求消息的第一行叫作請求行,這里面有三個重要的參數,請求方法,告訴了服務器應該進行怎樣的操作;URL :指定了需要訪問的服務器地址及路徑,最后是協議版本,HTTP 協議有不同的版本,需要標明 HTTP 的版本號。
  • 請求頭:請求頭用來放置一些額外的詳細信息,例如客戶端支持的數據類型、語言、壓縮格式、日期等。
  • 消息體:這里存放你需要發送的數據。

這里我給大家舉個真實的例子,來一探究竟。

例如我們訪問 www.baidu.com

第一行就是請求行,從請求行可以看出,是 GET 請求,訪問路徑是 / ,協議版本是 1.1。

從第一行往下都是請求頭,因為沒有需要發送的數據,所以沒有請求體。

4、請求消息后收到響應

響應消息的格式和請求消息大致是相同的,區別只在第一行。

響應消息的第一行內容為請求協議、狀態碼和響應短語,用來表示請求的執行結果是成功還是出錯。

二、如何查詢 IP 地址

1、IP 地址的基本知識

生成 HTTP 消息后,我們就會通過操作系統將消息發送給你 Web 服務器。通過操作系統發消息之前,還有一件重要的事情要做,就是查詢域名對應的 IP 地址。

互聯網中的局域網都是基于 TCP/IP 來設計的。通過一些小的子網,使用路由器連接起來組成一個大的網絡,就形成了一個網絡。網絡中,所有設備都會被分配一個地址,就像你住的地方,叫“xx 號 xx 室”, 這個號就是分配給整個子網的,室是分配給子網中的計算機的,整體就叫作 IP 地址。發送者發出的消息首先會經過子網的集線器轉發到距離最近的路由器,再由路由器根據目的地地址發送給下一個路由器,不斷重復這個過程最終抵達目的地。

2、域名和 IP 地址為何要共用

首先拋出兩個問題,大家先思考一下:

  1. 我們通過 IP 地址就能直接確定目標地址,為啥還要用域名呢?
  2. 能不能直接用域名確定訪問對象?

先解答第一個問題,IP 地址是一串數字,但是想想實際情況,如果每次讓你訪問網站都輸入 IP 地址,估計你很難記得住,而使用名稱就好記的多,而且更有辨識度。

再來說說第二個問題,用域名來直接確定訪問對象,繞過 IP ,從實際運行效率來說,這是不可行的,IP 地址長度是 4 個字節,域名即使最短的也需要幾十個字節,字節越長,路由器處理數據時間會越長,路由器的速度是有極限的,目前的現實情況路由器性能已經快達到飽和了,所以直接訪問是行不通的,那有什么好辦法嗎?

就是通過讓人來使用名稱,讓路由器來使用 IP 地址,誰來建立域名和IP地址的關系呢,這個橋梁就是 DNS。

3、 如何查詢 IP 地址

通過 DNS 服務器 我們就可以查到 IP 地址。我們計算機都會有一個 DNS 客戶端 用來向 DNS 服務器發起請求,我們把它叫作 DNS解析器,通過 DNS 查詢 IP 地址的操作就是域名解析。

三、 DNS 服務器詳解

1、DNS 服務器基本工作流程

其基本工作就是接收來自客戶端的查詢消息,然后根據消息內容返回響應信息。

一般來說,客戶端的查詢消息會包含三個部分:

  • 域名:服務器的名字。
  • Class : Class 的值永遠是代表互聯網的 IN。
  • 記錄類型:表示域名對應的類型。類型為 A ,表示域名對應的是 IP 地址,類型為 MX ,表示域名對應的是郵件服務器。

DNS 服務器 會從域名與 IP 地址的對照表中查找相應的記錄進行返回。

2、 如何根據域名的結構快速查找

當前域名的數量是海量的,不可能都放在一臺 DNS 服務器中,因此這些信息會被分布保存在多臺 DNS 服務器 中,這些 DNS 服務器相互接力配合,查找出最終的結果。

DNS 中的域名是用句點來分隔的,例如 www.lab.glasscom.com ,如果按照公司的組織架構,com 就代表 集團,glass com 代表事業部 ,lab 代表 小組。在一個層級的部分叫作域。

一個域的信息會作為一個整體存放在 DNS 服務器中,一臺服務器可以存放多個域的信息。

我們怎么找到要訪問的服務器的信息歸宿哪一臺 DNS 服務器管呢? 首先,我們可以將負責管理下級域的 DNS 服務器的 IP 地址 注冊到 其上級 DNS 服務器中,然后上級 DNS 服務器 的 IP 地址再注冊到更上一級的 DNS 服務器,以此類推。這樣做的好處是什么呢?假如我們要查詢 www.lab.glasscom.com,那么我們可以通過 com 域的 DNS 服務器向下查到 保存 glasscom.com 域的 DNS 服務器,一直往下,最終我們就能查到需要的 域名所對應的 IP 地址。

在現實生活中,有一種保存根域的服務器,什么是根域,就是比 com 還要上一級的域,一般不會在 域名中體現,但其是真實存在的,它管理著所有下級 DNS 服務器的信息,根域服務器的 IP 地址全世界只有 13 個。這些地址不會發生改變,因此所有的 DNS 服務器都會保存這 13 個 IP 地址。

我們來看下具體是怎么找目標 DNS 服務器的。

客戶端首先會訪問最近的一臺 DNS 服務器,然后因為最近的 DNS 服務器沒有保存我們需要的域名對應的 IP 地址,因此我們需要從頂層往下找,通過根域服務器向下查找,直到找到目標 DNS 服務器,從而獲得我們需要的 IP 地址。

一般來說,如果是我們經常查詢的域名信息, DNS 服務器本身具有緩存功能,會記錄你之前查詢過的域名,這樣當你請求的域名信息在緩存中時,DNS 服務器就會直接返回響應,省去了每次從根域找起的麻煩,減少了查詢的時間。

四、委托協議棧發送消息

1、數據收發過程

當我們通過 DNS 服務器拿到需要的 IP 地址后,就能夠讓操作系統內部的協議棧向目標 IP 發送消息了。

收發數據是通過 使用 Socket 庫來完成的,如下圖所示:

在收發數據之前,客戶端和服務端都要先建立起管道,這個管道的關鍵就是管道的數據出入口,我們把它叫作套接字。

所以我們需要先創建套接字,才能建立起管道。服務器會先創建套接字,客戶端也會創建一個套接字,然后連接到服務端上。當數據都發送完,連接到管道就會斷開,通信擦操作就結束了。

我們把這個過程可以分為 4 個階段:

  • 創建套接字。
  • 將管道連接到服務端套接字上。
  • 收發數據。
  • 斷開管道并刪除套接字。

2、 創建套接字

套接字是怎么創建的呢?其實就是調用 Socket 庫中的 socket 組件,創建好后,協議棧會返回一個描述符,程序收到這個描述符存放在內存當中,這個描述符是用來識別不同的套接字,因為瀏覽器可能會存在多個請求,那么就會創建多個套接字,所以就要有一個標志來識別。例如當大家住酒店的時候,多個人同時來辦理入住,為了確保大家入住不同的房間,會給每個人發一個房間卡來當作唯一標識,這樣服務員就能根據房間卡來找到對應的人。

3、怎么連接管道

套接字創建好后,我們需要和服務端進行連接,這里調用了 Socket 庫中的 connect 組件來完成,調用connect組件需要傳遞描述符、服務器 IP 地址和端口號這3個參數。前面兩個參數大家都已經知道,這個端口號是起什么作用呢?大家想象一下,IP 地址可以讓我們找到對應服務器,但是服務器可能會部署多個應用,例如部署兩個web服務,我們單純根據 IP 是無法識別的,因此我們還需要加上端口號來找到具體的服務。可能會有人說了,咱不是有描述符嗎,這個是唯一的啊?這個是行不通的,因為服務端是無法知曉這個描述符的。

4、 傳遞消息及收發數據結束

傳遞消息就很簡單了,就是將數據送入套接字,就會被發送到對方的套接字中。這個過程也是通過 Socket 庫的 write 程序組件來完成的。當消息返回后,接收消息是通過 Socket 庫中的 read 組件來完成。當服務器發送完響應消息后,就會主動執行斷開操作,通過 調用 close 組件來完成。當客戶端接收完數據后,也會調用 close 來進行斷開。總結當瀏覽器輸入網址后,瀏覽器首先會進行 URL 解析,然后我們會生成 HTTP 請求消息并介紹了 HTTP 協議基本概念,因為我們是通過域名訪問,所以需要借助 DNS 拿到目標訪問對象的 IP 地址,最后我們介紹了借助 協議棧(TCP IP)真正將消息發送給服務端,并完成數據接收。

一個網址的請求背后涉及到的知識是多方面的,做到知其然,知其所以然,才能真正學到更有價值的知識。

責任編輯:姜華 來源: 今日頭條
相關推薦

2021-04-14 10:47:56

瀏覽器網址TCP

2018-01-03 15:17:26

2020-09-01 11:40:01

HTTPJavaTCP

2020-10-09 08:59:55

輸入網址解密

2010-07-06 10:11:25

瀏覽器

2023-05-04 00:16:39

數字化轉型運營

2024-11-04 09:10:00

2018-11-16 09:21:06

2024-05-06 10:53:22

瀏覽器TCPHTTPS

2023-01-14 16:11:27

瀏覽器URL回車

2024-11-04 08:10:00

2025-06-30 09:26:47

2021-12-27 08:24:08

漏洞網絡安全

2021-08-19 17:27:41

IT數據中心災難

2023-12-13 17:04:51

終端命令shell

2022-03-11 21:28:31

部署開發服務器

2023-08-26 07:44:13

系統內存虛擬

2024-11-04 10:00:00

瀏覽器網絡

2019-12-24 11:19:44

容器DockerLinux

2020-11-16 15:47:05

SaaS軟件轉型
點贊
收藏

51CTO技術棧公眾號

澳门成人av网| 熟妇人妻一区二区三区四区| 日韩欧美网址| 91精品国产综合久久福利软件 | 亚洲第一页综合| 亚洲精品欧洲| 色先锋资源久久综合5566| 红桃视频一区二区三区免费| 偷拍自拍在线看| 国产精品久久福利| 国产区欧美区日韩区| 日韩精品一区二区亚洲av观看| 99精品视频在线观看免费播放| 精品粉嫩超白一线天av| 精品999在线| wwww亚洲| 国产精品欧美精品| 精品国产免费一区二区三区 | 日韩精品高清视频| 日韩欧美理论片| 中文在线а√天堂| 亚洲激情男女视频| 四虎永久国产精品| 天天干天天爱天天操| 久久99久久99小草精品免视看| 午夜精品视频在线| 亚洲人做受高潮| 奇米色欧美一区二区三区| 日韩一区国产二区欧美三区| 波多结衣在线观看| 美女91在线看| 亚洲一区二区三区四区中文字幕| 亚洲精品一区二区三| 色欲av永久无码精品无码蜜桃| 激情五月激情综合网| 国产ts人妖一区二区三区| 精品无码久久久久久久久| 国产精品久久占久久| 亚洲欧美日韩中文在线| av漫画在线观看| 国产精品亚洲欧美日韩一区在线| 欧美性三三影院| 欧美一级黄色片视频| 2020国产在线| 午夜精品福利一区二区蜜股av| 日本一二三区视频在线| 国产在线高潮| 国产精品久久久久9999吃药| 天天人人精品| 大片免费播放在线视频| 国产亚洲一区二区三区四区| 国产亚洲欧美另类一区二区三区| www.热久久| 国产精品小仙女| 91青青草免费在线看| 国产精品伊人久久| 韩国毛片一区二区三区| 91美女高潮出水| 国产精品爽爽久久| 国产精品自拍三区| 亚洲最大福利视频| xxxx国产精品| 成人黄色在线网站| 精品午夜一区二区三区| 天堂√在线中文官网在线| 国产成人午夜精品5599 | 狼人天天伊人久久| 亚洲黄色在线看| 人妻丰满熟妇aⅴ无码| 校花撩起jk露出白色内裤国产精品| 日韩电影第一页| 中文字幕高清视频| 日本激情一区| 久久精品免费电影| 中文字幕av免费在线观看| 亚洲一级特黄| 欧美性受xxxx白人性爽| 中文字幕精品无| 久久99精品国产| 99久久精品无码一区二区毛片| 日本激情视频网站| 91毛片在线观看| 亚洲精品白虎| 欧美理论片在线播放| 精品久久久精品| 欧美婷婷精品激情| 日韩一区二区三区在线看| 亚洲国产福利在线| 成人无码av片在线观看| 亚洲第一偷拍| 国外成人在线播放| 中国女人真人一级毛片| 国产久卡久卡久卡久卡视频精品| 国产精品99久久久久久久| 日本私人网站在线观看| 18欧美乱大交hd1984| 精品久久久无码人妻字幂| 国产精品高颜值在线观看| 欧美三级蜜桃2在线观看| 色欲欲www成人网站| 国产成人av| 欧美俄罗斯乱妇| 探花国产精品一区二区| 国产成人在线影院 | 国产69精品久久app免费版| 亚洲精品精品亚洲| 丰满爆乳一区二区三区| 亚洲精品一区二区在线播放∴| 亚洲精品狠狠操| 好吊日在线视频| 久久美女性网| 99久久伊人精品影院| 不卡在线视频| 调教+趴+乳夹+国产+精品| 天天操天天干天天做| 亚洲人成精品久久久| 九九久久国产精品| 国产91av在线播放| 99久久综合精品| 久久久天堂国产精品| 成人交换视频| 亚洲另类图片色| 国产无码精品久久久| 激情综合网激情| 亚洲欧美99| 欧美xx视频| 日韩av影片在线观看| 欧美日韩精品在线观看视频| 久久99九九99精品| 日韩高清av| 成人av免费电影网站| 精品国产网站在线观看| www日韩在线| 久久成人免费网| 日本一区二区三区视频在线观看| 91福利在线免费| 精品国产免费一区二区三区四区 | 成人国产精品色哟哟| 可以在线观看的av| 午夜不卡av在线| av av在线| 国产精品多人| av色综合网| 免费看电影在线| 日韩精品在线一区二区| 天天干中文字幕| 国产精品一二一区| 一二三在线视频| 国产日韩欧美中文在线| 久久久久99精品久久久久| 一卡二卡三卡在线| 中文字幕亚洲电影| 日本在线观看视频一区| 婷婷综合亚洲| 91国产在线播放| 三级网站视频在在线播放| 日韩欧美一级二级三级| 青青草原在线免费观看视频| 国产成人免费av在线| 91传媒免费视频| 999久久久精品一区二区| 久久97久久97精品免视看| 亚洲精品久久久久久动漫器材一区| 亚洲老妇xxxxxx| 欧美极品jizzhd欧美仙踪林| 亚洲一区中文| 欧美一二三区| 国产福利亚洲| 久久香蕉频线观| 99热这里只有精品1| 一区二区三区在线免费| 欧美一区二区三区影院| 99在线|亚洲一区二区| 欧美在线3区| 日韩成人在线电影| 欧美激情a在线| 青青操视频在线| 色综合网站在线| 永久免费未视频| 成人免费av网站| 亚洲成熟丰满熟妇高潮xxxxx| 97在线精品| 风间由美久久久| 69久成人做爰电影| 色妞欧美日韩在线| 亚洲国产一二三区| 色噜噜狠狠色综合中国| 992在线观看| 成人午夜激情片| 天堂中文视频在线| 伊人久久大香线蕉精品组织观看| 国产一区免费| 欧美在线se| 91国产美女在线观看| 91最新在线| 亚洲国产精品大全| 亚洲一区在线观| 亚洲成a人v欧美综合天堂| 一级片黄色录像| av亚洲精华国产精华| 国产精品区在线| 一本色道久久综合亚洲精品不| 亚洲最大免费| 人体久久天天| 亚洲综合国产精品| 日韩电影免费观| 久久久久久久久久久国产| 在线观看黄av| 亚洲精品电影在线观看| 99国产精品久久久久久久成人 | 一道本视频在线观看| 狠狠色综合网| 一区二区视频在线播放| 神马香蕉久久| 国产成人精品一区二区三区福利| 视频精品导航| 欧美亚洲午夜视频在线观看| 日本伦理一区二区| 日韩中文字幕视频| 六十路在线观看| 亚洲精品97久久| 性一交一乱一乱一视频| 777色狠狠一区二区三区| 日韩欧美成人一区二区三区| 有码一区二区三区| 一区二区三区在线播放视频| 久久久激情视频| 超碰97在线资源站| 成人亚洲一区二区一| 91 视频免费观看| 久久国产日韩欧美精品| 手机看片福利盒子久久| 国产精品主播| 男女猛烈激情xx00免费视频| 欧美激情日韩| 日韩视频一二三| 91综合视频| 亚洲免费不卡| 欧美3p视频| 香蕉久久夜色| 狠狠综合久久av一区二区蜜桃| 久久九九视频| 三级精品视频| 免费在线成人av| 色婷婷久久久| 久久精品中文字幕一区二区三区| 乱亲女h秽乱长久久久| 国产视频不卡| 九色丨蝌蚪丨成人| 国产一区自拍视频| 思热99re视热频这里只精品| 精品中文字幕人| 日韩影视高清在线观看| 青青草成人网| 波多野结衣的一区二区三区| 亚洲精品一区国产精品| 日韩在线视频精品| 一区二区三区四区国产| 欧美第一精品| 久久精品在线免费视频| 国自产拍偷拍福利精品免费一| 精品人妻人人做人人爽| 在线观看一区| 欧洲av无码放荡人妇网站| 日韩精品三区四区| 一区二区三区网址| 国产一区二区三区在线观看免费视频| 中文字幕一区二区三区四| 国产凹凸在线观看一区二区| 欧美夫妇交换xxx| 久久久精品tv| 91免费公开视频| 亚洲福利视频一区| 亚洲男人的天堂在线视频| 亚洲444eee在线观看| 日本中文在线播放| 欧美在线视频全部完| 国产精品一区二区人人爽| 精品国产一区二区三区不卡| 全色精品综合影院| 最新日韩中文字幕| 日本一级理论片在线大全| 97视频在线观看成人| 精品国产欧美日韩一区二区三区| 91网站免费看| 日韩欧美ww| 欧美日韩一区二区三区电影| 日韩一级欧洲| 国产精品自拍视频在线| 国产99久久精品| 无码人妻aⅴ一区二区三区69岛| 一区在线播放视频| 91看片在线播放| 欧美另类变人与禽xxxxx| 黑人乱码一区二区三区av| 亚洲视频欧洲视频| 亚洲国产精品精华素| 欧美自拍大量在线观看| 国产精品一区免费在线| 久久一区二区精品| 久久久国产精品| 成年人视频观看| 国产一区二区在线电影| 日本少妇色视频| 亚洲免费观看高清完整版在线观看 | 精品少妇在线视频| 99精品热视频只有精品10| 亚洲一区精品视频在线观看| 91在线精品一区二区三区| 卡通动漫亚洲综合| 色屁屁一区二区| 亚洲精品免费在线观看视频| 最新69国产成人精品视频免费| 国产深夜视频在线观看| 国产欧美一区二区三区视频| 久久99高清| 国产精彩视频一区二区| 日韩av在线播放中文字幕| 日本三级日本三级日本三级极| 国产精品久久精品日日| 波多野结衣人妻| 亚洲精品日韩欧美| 久久五月精品中文字幕| 成人免费黄色网| 成人毛片免费看| aa在线免费观看| www.日韩av| 国产亚洲精品成人| 欧美一级免费观看| 毛片在线视频| 国产剧情日韩欧美| 成人3d动漫在线观看| 日韩免费毛片视频| 99免费精品在线观看| 成年人午夜视频| 亚洲成av人影院在线观看| 青草在线视频在线观看| 亚洲一区二区三区久久 | 久久中文字幕在线| 影音成人av| 日本在线播放不卡| 久久免费黄色| 国产成人精品无码免费看夜聊软件| 岛国av午夜精品| 涩爱av在线播放一区二区| 97精品视频在线| 青青草原在线亚洲| 国产精品沙发午睡系列| 久久综合色婷婷| 欧美h在线观看| 亚洲三级 欧美三级| 视频二区不卡| 亚洲一二三区精品| 精品一区精品二区高清| 永久久久久久久| 日韩女优制服丝袜电影| xxxx成人| 蜜桃网站成人| 免费在线看成人av| 日本裸体美女视频| 91精品在线一区二区| 四虎av在线| 韩日午夜在线资源一区二区| 亚洲一区二区伦理| 亚洲国产日韩一区无码精品久久久| 在线观看一区二区精品视频| 亚洲搞黄视频| 超碰97在线资源| 国产欧美日韩亚洲一区二区三区| 日本xxx在线播放| 欧美日韩一本到| 日本孕妇大胆孕交无码| 免费电影一区| 精品午夜一区二区三区在线观看| 国产精品成人免费观看| 亚洲国产日韩欧美在线图片| 激情开心成人网| aaa免费在线观看| 成人免费va视频| 中文字幕777| 欧美极品在线播放| 视频一区在线观看| 久久久久久久久久毛片| 亚洲成人精品在线观看| 国产精品视频一区二区久久| 91在线免费看网站| 国产日韩一区| 一级性生活免费视频| 亚洲黄色免费三级| 91精品一区| 黄色免费观看视频网站| |精品福利一区二区三区| 蜜臀av免费在线观看| 国产精品久久久久国产a级| 欧美精品一线| 亚洲一区二区自偷自拍| 精品国产区一区| 开心久久婷婷综合中文字幕| 拔插拔插海外华人免费| 欧美激情综合五月色丁香|