浏览器输入网址到响应的整个过程-http 请求到响应详解

这一过程详细来讲涉及到计算机的整个网络架构系统,从应用层到物理层都可以讲述。本讲聚焦应用层发生了什么事。

在应用层,浏览器首先需要获得将要访问的网站的 IP 地址,因此首先需要进行域名解析,从网址提取出域名,然后进行 DNS 请求(UDP)。首先在本机的域名缓存中查询,若查询不到再到直连的路由器中查询,还是没有则到直连的网络服务提供商的 DNS 服务器查询,查询不到则会有两种方式继续查询一种是递归方式,即一级一级的往上一级 DNS 服务器查询,直到根 DNS 服务器,此时基本能查到;
示例:
主机——>本地 DNS 服务器——>权限 DNS 服务器——>顶级 DNS 服务器——>根服务器。其结果是要么能查到要么报错。
一种是非递归方式,即直接找根 DNS 服务器,然后由它指示要找哪一个根服务器的下一级 DNS 服务器。

当查到需要的 IP 地址后,地址中没有端口的话则使用 HTTP 协议的默认短号,进行 TCP 的三次握手,与对端主机连接。
成功连接后,则可以向对端主机发送 HTTP 请求,成功收到响应则进行断连,即 TCP 的四次挥手。若响应是重定向,则需要再一次发送 HTTP 请求到重定向的地址(是否需要重新 DNS 解析?)

最后浏览器解析服务器的响应内容,并显示再浏览器页面。

参考链接:

猜你喜欢

转载自blog.csdn.net/chuanglan/article/details/80619249