网页浏览全过程
2024-01-25 10:45:38 0 举报
网页浏览全过程
作者其他创作
大纲/内容
用户访问网站流程图
TCP协议说明(四层模型)
概念介绍: 网络协议是一个共同标准,大家都来遵守
作用说明: 不同层次中制定了相应的网络通讯协议 TCP HTTP FTP 协议==语言
组成部分: 接入层(物理层 链路层) 互联网层(网络层) 主机到主机层(传输层) 应用层(应用 表示 会话)
DNS缓存服务器:DNS缓存服务器用于存储DNS查询结果的缓存,以提高域名解析的速度。当用户发起DNS查询时,缓存服务器首先检查自己的缓存中是否已有相应的解析结果,如果有,则直接返回,否则向上游DNS服务器发起查询。
负载均衡服务器(LB服务器):负载均衡服务器用于分发网络流量到多个服务器,以实现负载均衡,提高系统的性能、可用性和稳定性。LB服务器可以根据不同的算法将流量分发到后端的多台服务器,确保这些服务器能够共同承担负载,避免单一服务器过载。
Web服务器:Web服务器用于托管和提供Web服务,接收并响应用户通过HTTP或HTTPS协议发起的请求。Web服务器处理客户端请求,将请求发送到后端应用服务器或处理静态资源,并将结果返回给客户端。常见的Web服务器包括Apache、Nginx、IIS等。
NFS服务器:NFS服务器用于提供网络文件系统服务,允许远程计算机通过网络访问和共享文件。NFS是一种分布式文件系统协议,使得多台计算机可以共享文件系统上的文件和目录。
DB服务器:数据库服务器用于存储和管理数据库,处理数据库相关的请求。它提供了数据的读写、查询、更新等功能,支持应用程序与数据库之间的数据交互。常见的数据库服务器包括MySQL、PostgreSQL、Oracle等。
一、浏览器输入网址信息点击回车
二、客户端 完成域名的解析过程(DNS)
DNS解析
含义:DNS(domain name system) = 域名解析系统
作用:负责把网站域名解析为对应的IP地址
由来:早期打开网站是通过它的IP地址进行访问,因为IP地址不方便记住,所以到后面出现了域名解析系统
发展:linux根域名服务器全球共13台,随着互联网发展,无法满足解析,所以把域名分发往下授权处理
说明:/ 根域名--->顶级域名(.com、.cn)--->一级域名(baidu.com)--->二级域名(bbs.baidu .com)--->三级域名(三级域名少见,越往下域名与长)
DNS解析过程
递归查询
迭代查询
三、客户端 直接访问相应网站服务器 建立TCP三次握手过程
三次握手就是发送三次请求,检测网络是否畅通
01.客户端 --> 服务端 发送建立连接请求(syn) 发送数据序列号信息(seq)
02.服务端 --> 客户端 回复建立连接确认信息(ack) 并且会发送建立连接请求(syn)发送数据序列号seq 确认号ack
03.客户端 --> 服务端 发送建立连接确认信息(ack) 发送数据序列号seq 确认号ack
四、客户端 访问网站服务器 发送HTTP请求报文 多次
浏览器向服务器发送 HTTP 请求,请求网页的内容
五、服务端 响应客户端请求 回复HTTP响应报文 多次
服务器接收并处理浏览器的请求,根据请求生成相应的 HTML、CSS、JavaScript 等资源
六、客户端 浏览器看到网站页面
返回HTTP响应:服务器将生成的资源作为 HTTP 响应返回给浏览器
浏览器解析HTML:浏览器接收到 HTTP 响应后,开始解析 HTML 文档,构建文档对象模型(DOM)
构建渲染树:浏览器根据 DOM 结构和样式表(CSS)构建渲染树,该树描述了页面的层次结构和样式
布局:浏览器计算每个元素在页面上的准确位置,考虑样式、尺寸等因素
绘制:浏览器根据计算的布局信息将页面的每个元素绘制到屏幕上
JavaScript解析与执行:如果 HTML 中包含 JavaScript,浏览器会解析并执行这些脚本。执行可能导致对 DOM 或样式的更改,触发重新渲染
渲染完成:浏览器完成渲染,用户可以看到页面内容
七、客户端 结束访问网站过程 完成TCP四次挥手过程
四次挥手流程图
01.客户端 --> 服务端 发送断开连接请求(fin) 发送数据序列号信息seq 确认号ack
02.服务端 --> 客户端 回复断开连接确认信息(ack) 发送数据序列号信息seq确认号ack
03.服务端 --> 客户端 发送断开连接请求(fin) 回复断开连接确认信息(ack) 发送数据序列号信息seq 确认号ack
04.客户端 --> 服务端 发送断开连接确认信息(ack)
0 条评论
下一页