HTTP使用流程-笔记

步骤

比如打开官网为例:

  • Http客户端发起请求,创建端口默认为80端口
  • Http服务器在端口监听客户端请求
  • 收到请求后,服务器向客户端返回状态如state:200和内容

域名解析

在浏览器渲染完页面之前需要走的步骤以chrome 浏览器为例

  • Chrome浏览器搜索自身DNS缓存通过输入chrome://net-internals/#dns可以查看记录,如图:
Chrome浏览器DNS缓存记录
  • 搜索操作系统自身的DNS缓存浏览器没有找到缓存或缓存已经失效
  • 读取本地的Host文件系统盘下的System32
  • 浏览器发起一个DNS系统调用一般来说是自己的宽带运营商提供
    1. 宽带运营商服务器查看本身缓存
    2. 运营商服务器代替浏览器发送一个迭代DNS解析请求
    3. 域名IP地址以jianshu.com为例:根域>.com域>jianshu.com域。
    4. 运营商拿到IP地址返回操作系统内核,并缓存在缓存区有失效时间
    5. 操作系统内核把结果返回浏览器
    6. 浏览器拿到 www.jianshu.com 对应的IP地址
  • 域名解析完成后,发起HTTP"三次握手"
    1. 浏览器以一个随机端口向服务器的
      WEB程序发送TCP请求
    2. TCP请求通过各个路由设备,到达服务器进入到网卡到达内核的TCP/IP协议栈
  • 浏览器向服务器发送请求如HTTP的GET方法
  • 服务器端接受到请求,根据路劲参数,把结果数据返回给浏览器

三次握手简单理解

  1. 能否收到请求
  2. 能收到请求,可以开始交互
  3. 收到,开始交互

你可能感兴趣的:(HTTP使用流程-笔记)