从输入url到页面展示到底产生了什么
刚开始写这篇文章还是挺纠结的,因为网上搜索“从输入url到页面展示到底产生了什么”,你可以搜到一大堆的资料。而且面试这道题根基是必考题,仲春份面试的时候,虽然知道这个过程产生了什么,不过对面试官一步步追问下去的,很多细节就不太清楚了。
比来恰好也在看http协议相关的对象,所以想对这个话题来个深入的总结,本文的目的是通过输入url之后产生的工作来做常识的总结和扩展。所以文章可能会很杂。
总的过程概略如下:
1、输入地点当我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等处所,找到已经输入的字符串可能对应的 url,然后给出智能提示,让你可以补全url地点。对付 google的chrome 的浏览器,他甚至会直接从缓存中把网页展示出来,就是说,你还没有按下 enter,页面就出来了。
2、浏览器查找域名的 IP 地点1、请求一旦倡议,浏览器首先要做的工作就是解析这个域名,一般来说,浏览器会首先检察本地硬盘的 hosts 文件,看看此中有没有和这个域名对应的法则,如果有的话就直接使用 hosts 文件里面的 ip 地点。
2、如果在本地的 hosts 文件没有能够找到对应的 ip 地点,浏览器会发出一个 DNS请求到本地DNS处事器 。本地DNS处事器一般都是你的网络接入处事器商供给,好比中国电信,中国移动。
3、盘问你输入的网址的DNS请求达到本地DNS处事器之后,本地DNS处事器会首先盘问它的缓存记录,如果缓存中有此笔记录,就可以直接返回功效,此过程是递归的方法进行盘问。如果没有,本地DNS处事器还要向DNS根处事器进行盘问。
4、根DNS处事器没有记录具体的域名和IP地点的对应关系,而是报告本地DNS处事器,你可以到域处事器上去继续盘问,并给出域处事器的地点。这种过程是迭代的过程。
5、本地DNS处事器继续向域处事器发出请求,在这个例子中,请求的东西是.com域处事器。.com域处事器收到请求之后,也不会直接返回域名和IP地点的对应关系,而是报告本地DNS处事器,你的域名的解析处事器的地点。
6、最后,本地DNS处事器向域名的解析处事器发出请求,这时就能收到一个域名和IP地点对应关系,本地DNS处事器不只要把IP地点返回给用户电脑,还要把这个对应关系生存在缓存中,以备下次另外用户盘问时,可以直接返回功效,加快网络访谒。
下面这张图很完美的解释了这一过程:
DNS(Domain Name System,域名系统),因特网上作为域名和IP地点彼此映射的一个漫衍式数据库,能够使用户更便利的访谒互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地点的过程叫做域名解析(或主机名解析)。
通俗的讲,我们更习惯于记住一个网站的名字,好比,而不是记住它的ip地点,好比:167.23.10.2。而计算机更擅长记住网站的ip地点,而不是像等链接。因为,DNS就相当于一个电话本,好比你要找这个域名,那我翻一翻我的电话本,我就知道,哦,它的电话(ip)是167.23.10.2。
2)DNS盘问的两种方法:递归盘问和迭代盘问1、递归解析
政府部DNS处事器本身不能回答客户机的DNS盘问时,它就需要向其他DNS处事器进行盘问。此时有两种方法,如图所示的是递归方法。局部DNS处事器本身卖力向其他DNS处事器进行盘问,一般是先向该域名的根域处事器盘问,再由根域名处事器一级级向下盘问。最后得到的盘问功效返回给局部DNS处事器,再由局部DNS处事器返回给客户端。
2、迭代解析
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32653.html