1. 理解域名解析的整个过程
解析过程:
(1)向ISPDNS或本地电脑网络设置的DNS服务器发起查询www.baidu.com域名请求
(2)ISPDNS接收到请求后,检查自己的缓存中是否有该域名对应的地址记录。若存在 记录直接返回ip地址,但此记录会被标记为非权威服务器的应答。
(3)若DNS服务器没有此域名的记录,ISPDNS会从配置文件中读取13个根域名服务器的地址(【A-M】.root-servers.net)
(4)根据所处位置,负载情况,ISPDNS向其中一台根域名服务器的镜像服务器发起请求
(5)根域名服务器接收到请求后,解析出此请求的顶级域名是com. ,然后返回com域中的NS记录,一般情况下是13台主机名和ip(隐藏)
(6)ISPDNS收到返回结果后向其中一台再次发起请求
(7)com域的服务器收到请求后解析出此请求的二级域是baidu.com,所以检索此域的NS记录,将结果返回
(8)ISPDNS收到返回结果后,向baidu.com这个域的权威服务器发起请求
(9)baidu.com域中的权威服务器收到请求后,查询一下发现了有www的这台主机,并将这台主机的ip返回给ISPDNS
(10)ISPDNS收到返回结果后,将其返回给客户端,并把这个记录保存在自己的缓存中
解析图解:
2. 理解web页面请求的整个过程,绘制流程图(nginx处理的11个过程)
请求过程:
(1)DNS解析
-
·查看浏览器缓存
-
·查看hosts文件缓存
-
·查看路由器缓存
-
·查看ISP解析服务器缓存
-
·使用ISP-DNS发起递归查询请求
-
·客户端获取网址对应的IP地址
(2)建立TCP套接字,发起TCP连接
- ·三次握手