面试必考 浏览器输入URL后面究竟发生了什么

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31214097/article/details/84503461

1.将域名传输至DNS服务器

2.DNS服务器进行解析

浏览器如何通过域名去查询 URL 对应的 IP 呢

1 浏览器的缓存 2 操作系统的缓存 3 路由的缓存

ISP的dns服务器进行递归查询

浏览器通过向 DNS 服务器发送域名,DNS 服务器查询到与域名相对应的 IP 地址,然后返回给浏览器,浏览器再将 IP 地址打在协议上,同时请求参数也会在协议搭载,然后一并发送给对应的服务器。接下来介绍向服务器发送 HTTP 请求阶段,HTTP 请求分为三个部分:TCP 三次握手、http 请求响应信息、关闭 TCP 连接。

3.TCP的三次握手 与服务器建立联系

TCP 三次握手的过程如下:

  • 客户端发送一个带 SYN=1,Seq=X 的数据包到服务器端口(第一次握手,由浏览器发起,告诉服务器我要发送请求了)
  • 服务器发回一个带 SYN=1, ACK=X+1, Seq=Y 的响应包以示传达确认信息(第二次握手,由服务器发起,告诉浏览器我准备接受了,你赶紧发送吧)
  • 客户端再回传一个带 ACK=Y+1, Seq=Z 的数据包,代表“握手结束”(第三次握手,由浏览器发送,告诉服务器,我马上就发了,准备接受吧)

    3次握手的意义:为了防止已失效的连接请求报文段突然又传送到了服务端.

 4.每台服务器上都会安装处理请求的应用——web server。常见的 web server 产品有 apache、nginx、IIS 或 Lighttpd 等。

发送http 请求

5、服务器处理请求并返回 HTTP 报文

随后数据传送完毕 断开链接.

6.浏览器获取到html后渲染页面

7.TCP断开链接 4次握手

https://mp.weixin.qq.com/s?__biz=MzAxODE2MjM1MA==&mid=2651555392&idx=1&sn=9042c990f82fe5d03f03e6af7536b4c3&chksm=80255181b752d897524a6f1ee332f245761c89a5e01d0cbf0499e3a74a21f3865f8cfff823cf&mpshare=1&scene=1&srcid=1125ecOUDnM5i0dhstkG6eyd&pass_ticket=byNbhf3smWXq8FGyJxzCfHcRBNH4ztcG%2Fq8NdYLN6QLm6WnpixhgNnTCZyE4aY%2F9#rd

猜你喜欢

转载自blog.csdn.net/qq_31214097/article/details/84503461
今日推荐