详细 | 浏览器输入一个URL后的历程

一个url的执行历程

当我们用浏览器输入一个URL后,是如何请求到页面的呢?这也是计算机网络面试必问的一个问题。

首先,打开浏览器输入一个网址:

image-20220304095223030

然后…

1.查找DNS缓存

DNS就像是电话簿,存放着名字(URL)和其对应的电话(IP地址)

image-20220304095313272

DNS(Domain Name System)是一个分布式的数据库,它用于维护网址 URL `到其 `IP 地址的映射关系。在互联网中,IP 地址是计算机所能够理解的一种地址,而 DNS 的这种别名地址是我们人类能够理解和记忆的地址,DNS就负责把人类记忆的地址映射成计算机能够理解的地址,每个 URL 都有唯一的 IP 地址进行对应

如果上面四个步骤中都不存在 DNS 记录,那么就表示不存在 DNS 缓存,这个时候就需要发起 DNS 查询,以查找目标网址( www.csdn.net)的 IP 地址。

由于 DNS 的设计原因,本地 DNS 可能无法给我提供正确的 IP 地址,那么它就需要在互联网上搜索多个 DNS 服务器,来找到网站的正确 IP 地址。

  • 因为 DNS 是分布式域名服务器,每台服务器只维护一部分 IP 地址到网络地址的映射,没有任何一台服务器能够维持全部的映射关系。
  • 大致来说有三种 DNS 服务器: 根 DNS 服务器顶级域(Top-Level Domain,TLD)DNS 服务器权威DNS 服务器

三种DNS:

image-20220304101051587

  • 根DNS服务器: 根域名服务器提供TLD服务器的IP地址。
  • **TLD DNS服务器:**对于每个顶级域名比如:org、com、net、edu...和所有国家级域名ca、uk、fr都有TLD服务器或服务器集群。TLD服务器提供了权威DNS服务器的IP地址。
  • **权威DNS服务器:**在因特网上具有公共可访问的主机,这些主机的组织机构必须提供可供访问的DNS记录,这些记录将这些主机的名字映射为IP地址。一个组织机构的权威DNS服务收藏了这些DNS记录。

如何发起DNS查询呢?

负责开始 DNS 查找的介质叫 DNS 解析器,它一般是 LSP 维护的 DNS 服务器,它的主要职责就是通过向网络中其他 DNS 服务器询问正确的 IP 地址。

image-20220304103838735


2.浏览器与服务器建立TCP连接

经过DNS 和 ARP 查找流程后,路蓝旗收到一个目标服务器的IP和MAC地址,然后浏览器将会和目标服务器简历连接来传输信息。

TCP的连接建立需要经过TCP/IP三次握手,三次握手的过程其实就是浏览器和服务器交换SYN 同步ACK 确认消息的过程。

image-20220304105326990

3.浏览器发送HTTP请求到Web服务器

TCP 连接建立完成后,就开始直接传输数据了。此时浏览器可能发送GET/POST…请求。
image-20220304105727189

4.服务器处理请求并返回响应

image-20220304110047507

5.浏览器渲染界面

6.连接结束

image-20220304110612458

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

结构化思维wz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值