一,解析域名转换成对应的公网的IP地址
二,根据公网IP通过互联网路由到对应的服务器上
三,建立可靠的TCP数据连接;
四,服务器对该URL中的请求进行处理分发,逐步返回一个完整的html;
五,浏览器或者客户端对该HTML进行渲染;
具体内容:
一,解析域名转换成对应的公网的IP地址
1,使用DNS服务,将域名解析为Ip地址:
a,递归查询
b,迭代查询
从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是的交互查询就是迭代查询
2,解析顺序
a,浏览器缓存
当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名对应的IP地址(若曾经访问过该域名且没有清空缓存便存在);
b,系统缓存
当浏览器缓存中无域名对应IP则会自动检查用户计算机系统Hosts文件DNS缓存是否有该域名对应IP;
c,路由器缓存
当浏览器及系统缓存中均无域名对应IP则进入路由器缓存中检查,以上三步均为客户端的DNS缓存;
d,ISP(互联网服务提供商)DNS缓存
当在用户客服端查找不到域名对应IP地址,则将进入ISP DNS缓存中进行查询。比如你用的是电信的网络,则会进入电信的DNS缓存服务器中进行查找;
e,根域名服务器
当以上均未完成,则进入根服务器进行查询。全球仅有13台根域名服务器,1个主根域名服务器,其余12为辅根域名服务器。根域名收到请求后会查看区域文件记录,若无则将其管辖范围内顶级域名(如.com)服务器IP告诉本地DNS服务器;
(10台在美国,各一台在英国,瑞典,日本)
f,顶级域名服务器
顶级域名服务器收到请求后查看区域文件记录,若无则将其管辖范围内主域名服务器的IP地址告诉本地DNS服务器;
g,主域名服务器
主域名服务器接受到请求后查询自己的缓存,如果没有则进入下一级域名服务器进行查找,并重复该步骤直至找到正确纪录;
h,保存结果至缓存
本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时将该结果反馈给客户端,客户端通过这个IP地址与web服务器建立链接。
二,根据公网IP通过互联网路由到对应的服务器上
根据路由表内容查询数据转发路径:
目标网络的IP地址:32位,这里在上文提到,是目标网络的IP地址而非目标计算机的IP地址
目标网络的子网掩码:32位,即子网掩码
下一跳IP地址:32位,如果目标网络需经过多个路由器,下一跳即使下一个路由器的IP地址
离出接口名字:路由器会提供多个接口,每个接口通向不同的网段,所以表项中需要提供该项,即使确定IP分组从哪一个接口发出去,离出接口只是标识本路由器的信息,没有过多的全局含义
度量:从该路由器到达目标网络的代价,这个属性反映这一路径的优劣,由于路由协议的不同,该项具体数据形式也不同,常见的有跳数(途径路由器的数量),当前往返时间,最窄链路带宽等等
三,建立可靠的TCP数据连接
三次握手,四次分手
四,服务器对该URL中的请求进行处理分发,逐步返回一个完整的html;
五,浏览器或者客户端对该HTML进行渲染;
原文地址:https://www.cnblogs.com/yu-tang/p/12077578.html