你在浏览器输入一个URL都经历了什么过程

WBOY
发布: 2024-08-08 08:16:02
原创
801 人浏览过

你在浏览器输入一个URL都经历了什么过程

一:相关概念说明:
1.1: DNS(Domain name System)缓存: (域名系统)(查看本机的ipconfig/displaydns)

当电脑把一个域名解析完之后,它把这个这个域名和那个主机Ip地址相关联起来了,电脑吧这个关系存到DNS缓存表中,下次电脑再输入www.baidu.com的时候,电脑通过查找DNS缓存,就可以知道这个域名对应的IP地址了,不再进行域名解析了,提高了效率

1.2: ip地址:
ip地址对应好像门牌号,我们通过这个地址可以找到主机的位置
1.3:域名:(domain name):
Ip地址是4个数字,用顿号隔开,这个东西不好记,我们一般用字母搭配数字的方式使用比如.www.baidu.com.,Ip地址和域名不是一一对应的,一个域名可以绑定多个IP,但在同一时刻一个域名只能解析成一个Ip地址(这个活由我们的DNS帮我们完成)
二:相关请求大致流程
1:浏览器根据域名解析出来Ip地址
2:浏览器根据IP地址进行Socket通信
3:浏览器和客户端进行通信,浏览器请求,服务器接收请求
4:浏览器和服务器断开链接
三:具体的流程
3.1:查找过程
1:浏览器先从自己DNS表中查找看有没有.www.baidu.com(对应的IP地址)
2:从操作系统中的DNS表中查找(维护域名和ip地址对应关系的一张表)
3:从操作系统host文件夹中查找
4:操作系统将域名发送到LDNS(本地区域域名系统),比如我在工大,那么LDNS服务器就在 我们学校, 查找DNS缓存,继续失败的话发送一个迭代的DNS解析请求.
4.1:LDNS向Root name server(根域名服务器,存储每个域名的域),Root name Server返回com域的顶级域名服务器地址
4.2:LDNS向com顶级域名服务器发送请求,返回www.bai.com域名服务器的地址
4.3:LDNS向www.baidu.com域名服务器发送请求,得到www.baidu.com的ip地址
5:LDNS得到Ip地址返给操作系统,并把这个iP地址缓存到DNS表中
6:操作系统将地址返给浏览器.同时也将IP地址缓存起来
7:现在浏览器已经得到了Ip地址
3.2:建立连接(三次握手)(采用TCP协议)
知道了百度的Ip地址,接下来是三次握手的实现连接
1:客户机向服务器发送建立连接请求(你好,很高兴认识你)
2:服务器接到请求后发送同意连接请求(好的,很高兴认识你)
3:客户机接收到服务器同意请求后,再次向服务器发送确认信号(我也很高兴认识你),自此主机和服务器两个建立连接
3.3:网页请求和显示
接続が確立されると、サーバーとクライアントの間で通信が発生します
3.1: クライアントのブラウザは、ファイルの場所とリクエスト方法を含む IP アドレスに基づいて HTTP リクエストを生成します
3.2: サーバーは http リクエストのコンテンツを受信し、対応する HTML ファイルを取得する方法を決定します
3.3: サーバーは対応する HTML ファイルをブラウザに送信します
3.4: ブラウザーは HTML ファイルを完全に受信する前に、Web ページのレンダリングと表示を開始します
3.5: HTML コードに従って画像をリクエストし続けます。
3.4: 切断プロセス(4つの手を振るプロセス)
1: クライアントはサーバーに切断リクエストを送信します (遅いので、行きましょう)
2: サーバーはリクエストを受信し、リクエストを確認する(受信した)信号を送信します
3: サーバーはクライアントに切断通知を送信します (退出する時間です)
4: クライアントは切断通知を受信して信号 (ok) をフィードバックし、サーバーはフィードバック信号を受信してリンクを切断します

以上是你在浏览器输入一个URL都经历了什么过程的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:linuxprobe.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!