admin管理员组文章数量:1632659
面试的时候,面试官经常会问这样的问题,我在浏览器地址栏输入”www.baidu”,之后发生了哪些事情呢,这个问题其实是想问你与网页访问有关的网络协议,下面我们就来简单梳理一下,如何比较得体的回答这个问题。
Step 1:地址解析。
如果是首次访问百度,输入地址回车后,浏览器访问系统Host文件从中寻找www.baidu对应的IP地址(Windows默认的host文件基本是空的,所以这步执行不会成功)。没有找到对应IP地址,则主机向DNS服务器发送请求,DNS服务器解析到域名对应的IP并返回。事实上,你在地址栏输入百度的IP而不是域名也可以实现访问。DNS服务既提供从域名到IP的解析,也提供从IP到域名的解析。
DNS服务详解:
http://blog.csdn/Solo95/article/details/78524886
Step 2:建立TCP连接。
拿到百度的IP后,浏览器通过TCP协议建立TCP连接。TCP是一种可靠的传输协议,其建立要经过三次握手,其释放要经历四次挥手。
TCP连接的三次握手和四次挥手:
http://uule.iteye/blog/2213562
Step 3:使用HTTP协议请求网页内容。
HTTP是一种请求/应答协议,通过客户机和服务器相互发送信息的方式工作。通常HTTP消息包括客户机向服务器的请求消息服务器向客户机的响应消息。使用HTTP消息头,可以实现客户机与服务器之间的HTTP请求和HTTP应答。消息头分为通用头、请求头、相应头、实体头。
Step 4:渲染。
客户端收到服务器的HTTP应答后,从其中提取出HTML文件,然后进行渲染,之后就可以看到百度的首页了。
查看知乎讨论:
用户用浏览器访问一个网站的时候背后的过程与步骤是怎样的?
https://www.zhihu/question/20513729
版权声明:本文标题:在浏览器地址栏输入百度网址之后的故事(面试必考) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729141710a1187663.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论