浏览器从输入URL到展示页面,经历了哪些过程?
创始人
2025-07-05 04:31:49
0

浏览器根据输入的URL通过HTTP或者HTTPS协议发起对远端Web服务器的请求,Web服务器返回对应请求的数据给浏览器,然后浏览器将数据解释渲染并最终展示给用户。整个过程涉及到网络中各种协议的交互以及各种设备对报文的转发,主要流程有:

图片图片

1、浏览器进行URL解析和生成HTTP请求

浏览器首先对URL进行解析,确定要访问的Web服务器和文件名,然后生成要发送给Web服务器的请求信息。当然,在生成HTTP请求之前,浏览器还会查看本地缓存是否已经缓存有要请求的资源,如果有,就直接返回缓存资源显示出来。如果没有,才会继续进行后面的请求流程。

图片图片

图片图片

图片图片

图片图片

图片图片

2、生成TCP报文段,准备发起TCP连接

HTTP是基于TCP 协议传输的,在做完应用层HTTP请求的准备后,客户端主机开始进行TCP报文段头部的封装。

图片图片

图片图片

3、DNS解析域名得到服务器的IP地址

传输层TCP报文段组装好后,开始进入网络层进行IP数据报的组装,但是URL中请求服务器资源使用的是域名,而网络中标识服务器位置使用的是IP地址,所以先要通过DNS域名解析协议进行域名解析,先获取到服务器域名对应的IP地址。

图片图片

DNS进行域名解析的过程是,先查浏览器DNS缓存,再查hosts主机文件,最后查DNS服务器,由于DNS服务器采用的是层级结构,所以DNS查询采用的是递归迭代查询。

图片图片

图片图片

图片图片

4、IP路由寻址和生成IP数据报

传输层TCP处理完后,开始进行网络层IP数据报的处理。特别是对于多网卡客户端主机,访问服务器的IP数据报需要确定从哪个网卡发出去,所以需要进行路由寻址查找路由表确定报文发出去的网口,从而确定IP数据报的源IP地址。

图片图片

图片图片

图片图片

5、ARP请求下一跳网关MAC地址

IP数据报组装完成之后,需要进行以太网帧的封装,以太网帧头的源MAC就是报文发出网卡的MAC,而目的MAC就是路由表中指定的下一跳网关IP对应的MAC,这时候需要通过ARP地址解析协议来请求获取下一跳网关的MAC的地址,从而确定以太网帧头的目的MAC。

图片图片

图片图片

图片图片

6、报文经过网络发往WEB服务器

经过前面的各种处理,请求报文已经组装完成,现在可以从客户端主机网卡发送出去了,整个网络是经过大量的交换机和路由器互联的,报文会经过这些设备的转发最终到达Web服务器。

图片图片

图片图片

图片图片

7、服务器返回响应报文

服务器收到请求报文后,首先检查报文的目的MAC是否是自己网卡的MAC,目的IP是否是自己网卡的IP,然后查看传输层TCP协议的端口,确认是Web服务进程监听的端口,所以将请求报文交给Web服务进程进行处理。Web服务进程将请求的网页内容封装成响应报文,然后通过网卡发出去,响应报文经过网络中的交换机和路由器转发到达客户端主机,并最终通过客户端主机的浏览器将响应报文中的网页内容渲染展示出来。

图片图片

图片图片

整体上看,浏览器输入URL到展示网页内容,需要经过浏览器解析URL、DNS解析域名IP地址、查找路由表确定出口网卡和源IP地址、ARP地址解析获取主机网关下一跳的MAC地址、TCP连接建立以及交换机路由器等网络中间设备对报文的转发这些过程。

图片图片

图片图片

编程十万问,每天一问。关注我,每天学习一个编程小知识。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...