一、Http 的数据请求过程
1、例如Chrome会先搜索自身的DNS缓存
2、然后会搜索操作系统自身的 DNS 缓存,(如果浏览器没有找到缓存,或者1分钟之内的缓存失效了)
3、读取本地的 host 文件
4、浏览器就会发起一个 DNS 的一个系统调用(运营商提供的,发起的一个域名解析请求)
- 4.1、运营商会找自己的服务器的本身缓存
- 4.2、运营商服务器会发起一个迭代 DNS 解析请求
- 4.3、会经历迭代查询根域的 DNS 服务器 IP 地址、.com 域 DNS 服务器 IP 地址、xxx.com 服务器查询对应的 IP 地址
- 4.4、运营商服务器就把结果返回给操作系统内核,并缓存起来
- 4.5、操作系统把结果返回给浏览器
- 4.6、最后浏览器拿到 IP 地址
5、浏览器获得域名 IP 地址后,发起 Http 三次握手请求
,建立 tcp/ip
的连接
6、建立协议后,浏览器就可以向服务器发送http的请求了,get\post\put等
7、服务器端拿到请求后,处理数据,返回数据给浏览器
8、浏览器拿到服务端返回的完整HTML页面代码,解析和渲染这个页面的时候,里面的JS\CSS\图片等资源也是需要经历上述的http请求过程7个步骤,
9、浏览器的渲染、展示
二、https
https 协议实在http之上加入了SSL/TLS握手
以及数据加密传输,SSL/TLS是他们的最大区别。