图片说明
1.DNS解析:当用户输入一个网址并按下回车键的时候,浏览器获得一个域名,而在实际通信中,我们需要的是一个IP地址,因此我们先要把域名转为IP地址;
2.TCP连接:浏览器通过DNS获取到Web服务器真正的IP地址后,便向Web服务器发起TCP连接,通过TCP三次握手建立好连接后,浏览器便可以将Http数据发送到服务端【三次握手放在传输层详细讲解】
3.发送Http请求:浏览器向Web服务器发送一个Http请求,Http协议是建立在Tcp协议之上的应用层协议,其本质是在建立起的TCP连接中,按照Http协议标准发送一个索要网页的请求,在这一过程中,会涉及到负载均衡等操作;
4.处理请求并返回:服务器获取到客户端的 HTTP 请求后,会根据 HTTP 请求中的内容来决定如何获取相应的文件,并将文件发送给浏览器。
5.浏览器渲染:浏览器根据响应开始显示页面,首先解析 HTML 文件构建 DOM 树,然后解析 CSS 文件构建渲染树,等到渲染树构建完成后,浏览器开始布局渲染树并将其绘制到屏幕上。
6.断开连接:客户端和服务器通过四次挥手终止 TCP 连接。【其中的细节放在传输层详细讲解】