浏览器访问服务器的整个流程介绍,介绍客户端和服务器端三次握手

  1. 域名解析

    浏览器将输入的域名通过DNS进行解析:

    首先浏览器检查浏览器DNS缓存中有没有这个域名 , 如果找不到则从操作系统的DNS缓存中找 , 如果还是找不到 , 则查询系统的host文件 , 如果还是找不到,根据配置的DNS地址如114.114.114.114,去对应的服务器中查询,查询出的一个域名对应一个ip地址

    浏览器DNS缓存–>系统DNS缓存–>系统DNS缓存–>配置的DNS地址服务器

  2. 发起TCP的3次握手

    拿到了ip地址之后,浏览器向服务器发起3次握手:

    1. 客户端向服务器发送一个TCP的试探连接, 一次握手 , 服务器确认客户端可以发出消息
    2. 服务器同意建立TCP连接,返回确认信息,两次握手, 客户端收到响应消息,确认服务器可以收发消息
    3. 客户端再向服务器确认消息,三次握手. 服务器知道客户端可以收到消息. 这个时候就建立起了TCP连接.

因为计算机之间的通信是通过协议来实现的,所以3次握手的目的,就是为了确认对方是否支持TCP协议,确认支持后就可以通信了.

1A发,B收, B知道A能发
2:B发,A收, A知道B能发收
3A发,B收, B知道A能收
  1. 建立TCP连接,发起http请求
    http请求包括请求头, 请求体, 请求行等信息

  2. 服务器处理http请求,响应给浏览器
    服务器的web程序处理http请求,处理之后将数据(如html代码)响应给浏览器
    状态码: 200 访问成功.
    404 请求的资源不存在
    400 请求有错误
    500 服务器内部错误
    502 服务器代理联系不到后面的服务器

  3. 浏览器解析请求中的html代码, 请求http中的资源,如js,css,图片

  4. 断开TCP连接,浏览器对页面进行渲染

猜你喜欢

转载自blog.csdn.net/zzzgd_666/article/details/80769234