面试官:浏览器输入URL,说出整个的网络过程的详细步骤

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。
😊 座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍

首先一次完整的 HTTP 请求要经过:建立连接、发送请求、接受响应、关闭连接过程。当在浏览器输入www.baidu.com,整个网络过程发生了什么,这是经常被问到的问题。首先这块涉及了DNS域名解析相关内容。

DNS域名解析

DNS协议简介

DNS(Domain Name System)是互联网中用于将域名转换为对应 IP 地址的服务。DNS 使用 UDP 协议的端口 53 进行通信,也可以使用 TCP 协议。它是一个分布式数据库系统,

DNS 如何解析IP地址

用户在浏览器输入 URL 后,

  1. 本地域名解析器查询:操作系统会首先检查本地 DNS 缓存中是否有与该域名相关的 IP 地址。如果缓存中存在,会直接返回对应的 IP 地址;否则,会继续进行查询。

  2. 本地 DNS 服务器查询:如果本地缓存中没有目标域名的 IP 地址,本地计算机会向配置的本地 DNS 服务器发起查询请求。

  3. DNS 递归查询:本地 DNS 服务器会根据自身的缓存情况,如果没有目标域名的 IP 地址,它会依次向根域名服务器、顶级域名服务器和权威域名服务器发起递归查询,直到找到目标域名对应的 IP 地址。(在递归查询的过程中,域名解析器会逐级查询域名的权威服务器,获取域名对应的 IP 地址记录(A记录或AAAA记录))

  4. 获取目标服务器 IP 地址:权威域名服务器返回目标服务器的 IP 地址,本地 DNS 服务器将 IP
    地址返回给浏览器。并在本地缓存中保存这个映射关系,以便将来更快地响应相同的查询。

DNS 的查询方式

  1. 递归查询(Recursive Query)
    a. 客户端向本地 DNS 服务器发起查询请求。
    b. 本地 DNS 服务器负责递归地向其他 DNS 服务器查询,直到找到目标域名的 IP 地址或查询失败。
    c. 本地 DNS 服务器返回查询结果给客户端。

  2. 迭代查询(Iterative Query)

    a. 客户端向本地 DNS 服务器发起查询请求。
    b. 本地 DNS 服务器向根域名服务器发起查询请求,根域名服务器返回指向顶级域名服务器的地址。
    c. 本地 DNS 服务器向顶级域名服务器发起查询请求,顶级域名服务器返回指向权威域名服务器的地址。
    d. 本地 DNS 服务器向权威域名服务器发起查询请求,权威域名服务器返回目标域名的 IP 地址。
    e. 本地 DNS 服务器返回查询结果给客户端。

  3. 追踪迭代查询(Iterative Query Tracing)

    用于查看 DNS 查询过程中每一步的详细信息,包括每个 DNS 服务器的响应和转发情况。

小结

递归查询通常由本地 DNS 服务器负责处理,而迭代查询则是DNS系统中不同层级的服务器之间协作完成域名解析的一种方式。

输入URL后,整个网络发生了什么

详细步骤:

当你在浏览器中输入 www.baidu.com 并按下回车键时,浏览器将开始执行以下网络过程的详细步骤:

  1. DNS解析过程。。。

  2. 建立 TCP 连接:浏览器通过目标服务器的 IP 地址建立 TCP 连接。

  3. 发送 HTTP 请求:浏览器向服务器发送 HTTP 请求,请求访问 URL 的页面。

  4. 服务器处理请求:服务器接收到请求后,处理并生成响应数据。

  5. 接收响应数据:服务器将生成的响应数据通过 TCP 连接发送给浏览器。

  6. 渲染页面:浏览器接收到响应数据,开始解析 HTML、CSS 和 JavaScript,并渲染页面。

  7. 关闭连接:页面加载完成后,浏览器和服务器之间的 TCP 连接被关闭。

总结

从输入域名到加载页面的整个网络过程,涉及了域名解析、建立 TCP 连接、发送 HTTP 请求、服务器处理请求、接收响应数据、页面渲染等环节。

It is never too late to learn.‌ (活到老学到老)
学习永无止境。

在这里插入图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小曾同学.com

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

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

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

打赏作者

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

抵扣说明:

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

余额充值