输入一个url到页面渲染完毕过程

一、获取IP地址

获取流程如下

  1. 在浏览器缓存中查找,看是否有该url,有的话直接发起请求,否则下一步
  2. 在本地host文件查找,看是否有该url映射,有的话根据映射ip发起请求,否则下一步
  3. 向本地DNS服务器发起DNS查询请求,如果有对应IP返回,根据该ip发起请求,否则下一步
  4. 本地DNS服务器会向根域名服务器发起NDS查询请求,如果查询不到会返回可能保存了该域名的一级域名DNS服务器地址,本地DNS服务器会再向这个可能保存了域名的一级域名DNS服务器发起DNS查询请求,依次迭代,直到查询到保存了该域名的服务器地址,像其发起NDS查询请求,获取到ip地址发起请求。(DNS服务器就是一个域名和ip的映射表,保存了该域名,即说明该DNS服务器可以解析该域名)

第4步查询有两种方式:

1. 递归查询

本地DNS服务器获取不到查询url和ip的映射,便向根DNS服务器进行DNS查询请求,然后再由跟服务器向一级域名DNS服务器进行DNS查询请求,依次递归查询,直接查询到对应url和ip映射,再将结果一层层返回给本地DNS服务器,最后浏览器发起请求(请求服务器一层层代理转发)

2. 迭代查询

本地DNS服务器获取不到查询url和ip的映射,便向根服务器进行DNS查询请求,根DNS服务器返回可能保存了该域名的一级域名DNS服务器的地址,本地DNS服务器则会再向这个一级DNS服务器发起DNS查询请求,然后本地DNS服务依次查询,直到找到真正保存了该域名的DNS服务器获取对应ip地址,最后浏览器发起请求(本地服务器根据返回地址不断的查询)

二、TCP/IP连接

查询到对应ip后,便会经过三次握手和该ip服务器建立连接

三次握手

 

 

 

 -------------smile

 

 

posted @ 2020-09-10 09:37  Walker-lyl  阅读(128)  评论(0编辑  收藏  举报