分析浏览器输入域名到网页显示出来这个过程

1.例如我们在浏览器中输入www.hactcm.edu.cn并回车,首先浏览器会在本地hosts文件(位于C:WindowsSystem32driversetc)中查找,查看是否存在这个域名和其对应的ip地址,假如存在,便开始访问这个ip地址。假如不存在再将域名发送至域名解析服务器,然后域名解析服务器将解析出来的ip地址返回,浏览器再去访问这个地址。下面我们就开始对其进行实验:

①我先对www.hactcm.edu.cn进行ping命令测试,然后得知IP地址是211.69.32.50,用ipconfig /all命令得知DNS地址为211.69.32.10。

这个时候访问该网站,我们发现网站能够正常访问。

②此时我再将DNS随便改一个值1.1.0.0,再去访问这个网站发现不能正常访问。

③此时在C:WindowsSystem32driversetc下找到hosts文件夹,然后在host文件中添加一条记录。

④此时,再去访问www.hactcm.edu.cn,发现网站又能正常访问了。

2.当浏览器拿到网站所对应的IP地之后,便开始于服务器建立TCP链接(服务器IP地址是211.69.32.50,端口号是80)。下面我们便开始实验进行分析。

①当建立tcp链接的时候,路由器得到这个地址后不断的查看转发数据包,我们先用tracert追踪一下每发送一个数据包,需要经过多少路由器。

②浏览器与服务器建立TCP连接这个过程我们成为TCP三次握手,我们用抓包工具可以看到这个过程。

3.之后浏览器向服务器发送请求,服务器得到请求后给出相应,把请求的内容发给浏览器,浏览器解析返回的文件,显示在浏览器上,然后释放TCP链接。下面我们对这个过程进行详细分析。

①当建立TCP连接请求后,便开始向服务器发送HTTP请求,而请求又分为GET请求和POST请求,请求信息封装在HTTP请求报文中。请求头的格式如下:

②Web服务器通常通过监听80端口,来获取客户端的HTTP请求。web服务器开始接受客户端发来请求后,将返回的信息封装在HTTP响应报文中,并发给浏览器。响应报文头的格式如下:

③服务器返回给浏览器数据可能是根据HTML协议组织的网页,里面包含页面的布局、文字。数据也可能是图片、脚本程序等。所以说浏览器需要不断的发送HTTP请求来获取这些东西。当网速较慢时,我们明显能感受到这个过程,一般是网页的文字先显示出来,然后是页面的样式布局显示出来,最后是图片显示出来。

休对故人思故国 且将新火试新茶 诗酒趁年华
原文地址:https://www.cnblogs.com/sdadx/p/4620022.html