http 从发送到接收的过程 [http 的请求阶段]1)在有网的前提下,在浏览器输入域名 2)浏览器把这个域名发送给 DNS 解析器 3)DNS 解析器根据发送过来的 url,解析出一个服务器的 IP 地址 4)DNS 解析器最终把请求发到对应的服务器上【http 响应阶段】1) 服务器根据 DNS 解析的内容,要找到对应的端口号;2)把客户端请求的资源进行整理 3)服务器将打包的资源发送给客户端[客户端响应阶段]1、浏览器接收到服务器传输过来的内容和数据 2、浏览器把拉取回来的 HTML 和 CSS 进行渲染 3、在渲染的过程中,浏览器先要根据 HTML 形成 DOM 树,根据 CSS 形成 CSS 树,最后把 DOM 树和 CSS 树合并成 render 渲染树,渲染成你想看到的页面;遍历 render 树,计算每个节点的位置大小信息,将渲染树的每个节点部署到屏幕上
http 的三次握手和四次挥手 1 第一次握手 客户端发送一个 SYN 码给服务器,要求建立数据连接;2 第二次握手 服务器 SYN 和自己处理一个 SYN:叫 SYN+ACK 发送给客户端,可以建立连接 3 第三次握手 客户端再次发送 ACK 向服务器,服务器验证 ACK 没有问题,则建立起连接;三次握手成功,就可以进行数据传输了。
中断连接可以是客户端也可以是服务器第一次挥手:客户端发送 FIN 报文,通知服务器已经传输完毕;第二次挥手:服务器接收到之后,通知客户端我收到了 SYN,发送 ACK 给客户端,数据还没有传输完成第三次挥手:服务器已经传输完毕,再次发生 SYN 通知客户端数据已经传输完毕第四次挥手:客户端再次发送 ACK,进入 TIME_WAIT 状态,服务端和客户端关闭连接