企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[toc] ### 输入url到页面加载过程 ``` 1.首先输入url,会查找缓存看是否有这个地址页面 1.浏览器缓存 2.系统缓存 3.路由缓存 如果有则显示该页面内容 2.如果缓存中没有,则进行dns域名解析,浏览器向dns服务器发起请求,解析该url中域名对应的ip地址 (dns服务器是基于udp的,因此可能会用到udp协议) 3.解析出ip地址后,要和服务器进行tcp连接,此时建立通道前要进行三次握手 4.发起http请求,客户端发送数据,浏览器接收数据,开始浏览器渲染页面 5.关闭tcp连接,通过四次挥手释放 5.浏览器渲染页面 1.构建dom树,根是document 2.构建css树 3.构建render树,将dom和cssom结合 4.布局layout,计算每个节点在屏幕的位置 5.绘制painting, 遍历render树,绘制节点 6.js解析 ``` ### tcp三次握手和四次挥手 三次握手: ``` 1.浏览器向服务器发送数据:控制位syn:1表示开启和随机序列号seq 2.服务器向浏览器发送数据:控制位syn+ack,以及浏览器的seq+1,以及自己的序号 3.浏览器向服务器发送数据:控制为ack,以及服务器序号+1,seq+1 ``` 四次挥手 ``` 1.浏览器向服务器发送:fin+ack+自身序列号+确认号 2.服务端先发送一次:ack进行确认,并把浏览器的确认号作为自身序号,把浏览器的序列号作为自己的确认号再+1,发送给浏览器 3.服务端再发送一次:fin+ack,序列号和确认号同上 4.客户端得到结束确认后发送:ack,把服务端的确认号作为序号,序号作为确认号发送 ```