先上一个简单回答:
1、首先DNS解析(网址 -> IP地址):
DNS缓存:浏览器,操作系统,
分级查询:本地DNS服务器,根域名服务器,COM顶级域名服务器,google.com域名服务器
2、建立TCP连接(三次握手):为什么两次不可以
这里通常可以延伸,为什么两次不可以?
- 客户端具有发送信息的能力
- 服务器具有接收信息和发送信息的能力
- 客户端具有接受信息的能力
3、发送HTTP请求
4、服务器处理请求,并且返回HTTP报文
5、浏览器解析和渲染页面
6、连接结束(四次挥手):为什么三次不可以
这里通常可以延伸,为什么三次不可以?
发完了,知道发完了,收完了,知道收完了
自上而下 下载 || 渲染 css并行 图片异步请求 js挂起
html -> dom + css -> cssom = render渲染树(不渲染)
布局
绘制