浏览器中输入一个URL后,按下回车后发生了什么

1.解析IP地址
a.浏览器搜索浏览器dns缓存

b.搜索操作系统dns缓存

c.搜索路由器的dns缓存

d.操作系统将域名发送至 本地域名服务器- -(递归查询方式),本地域名服务器 查询自己的DNS缓存,查找成功则返回结果;

e.否则,本地域名服务器向根域名服务器查询(一般是迭代查询),迭代查询的意思是根域名服务器要么给出IP地址,要么告诉本地域名服务器下一步应该向哪个服务器进行查询。
递归查询和迭代查询的区别在于:后续的查询是由请求发起者还是接收者进行查询。

f.本地域名服务器 将得到的IP地址返回给操作系统,同时自己也将IP地址缓存起来

g.操作系统将 IP 地址返回给浏览器,同时自己也将IP地址缓存起来

2.tcp连接与http连接

a.三次握手建立TCP连接

b.浏览器向Web服务器发送http请求命令(http请求包含请求头,可能包含请求体,请求头中包含我们希望对请求文件的操作的信息,请求体中包含传递给后台的参数。)

c.服务端接受请求并且做出响应发送给客户端(响应也包含两部分,响应头和相应体,响应体就是我们所请求的文件)

d.客户端收到响应并且解析响应响应给客户,经过网络传输,文件被下载到本地客户端,客户端开始加载。

3.html渲染

a.客户端浏览器加载了html文件后,开始解析html文件;

b.遇到js/css/image等静态资源时,就向服务器端去请求下载(会使用多线程下载,每个浏览器的线程数不一样)。
以css为例,css中的url发起http请求,这个时候就用上keep-alive特性了(由于http1.1协议增加了Connection: keep-alive声明,故tcp连接不会关闭,可以复用),建立一次HTTP连接,可以请求多个资源,下载资源的顺序就是按照代码里的顺序,但是由于每个资源大小不一样,而浏览器又多线程请求请求资源,所以从下图看出,这里显示的顺序并不一定是代码里面的顺序。

c.最后,浏览器利用自己内部的工作机制,把请求到的静态资源和html代码进行渲染,渲染之后呈现给用户
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值