在浏览器输入网址后都经历了什么(在浏览器中输入网址到页面显示出来)

在浏览器中输入网址,到页面显示出来,中间发生了什么?,下面我们就来说一说关于在浏览器输入网址后都经历了什么?我们一起去了解并探讨一下这个问题吧!

在浏览器输入网址后都经历了什么(在浏览器中输入网址到页面显示出来)

在浏览器输入网址后都经历了什么

一、问题

在浏览器中输入网址,到页面显示出来,中间发生了什么?

二、解答

1、查询DNS,获取域名对应的IP。

(1)检查本地hosts文件是否有这个网址的映射,如果有,就调用这个IP地址映射,解析完成。

(2)如果没有,则查找本地DNS解析器缓存是否有这个网址的映射,如果有,返回映射,解析完成。

(3)如果没有,则查找填写或分配的首选DNS服务器,称为本地DNS服务器。服务器接收到查询时:

  • 如果要查询的域名包含在本地配置区域资源中,返回解析结果,查询结束,此解析具有权威性。
  • 如果要查询的域名不由本地DNS服务器区域解析,但服务器缓存了此网址的映射关系,返回解析结果,查询结束,此解析不具有权威性。

(4)如果本地DNS服务器也失效:

  • 如果未采用转发模式(迭代),本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后,会判断这个域名(如.com)是谁来授权管理,并返回一个负责该顶级域名服务器的IP,本地DNS服务器收到顶级域名服务器IP信息后,继续向该顶级域名服务器IP发送请求,该服务器如果无法解析,则会找到负责这个域名的下一级DNS服务器(如http://baidu.com)的IP给本地DNS服务器,循环往复直至查询到映射,将解析结果返回本地DNS服务器,再由本地DNS服务器返回解析结果,查询完成。如果采用转发模式(递归),则此DNS服务器就会把请求转发至上一级DNS服务器,如果上一级DNS服务器不能解析,则继续向上请求。最终将解析结果依次返回本地DNS服务器,本地DNS服务器再返回给客户机,查询完成。

2、客户机发送HTTP请求报文:

(1)应用层:客户端发送HTTP请求报文

(2)传输层:切分长数据,并确保可靠性。

(3)网络层:进行路由

(4)数据链路层:传输数据

(5)物理层:物理传输bit

3、服务器端经过物理层→数据链路层→网络层→传输层→应用层,解析请求报文,发送HTTP响应报文。

4、客户端解析HTTP响应报文

5、浏览器开始显示HTML

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页