开心一刻
? ? ? ?作业妩媚地躺在我的床上,娇媚的唇角轻启:“官人,这可都一个月了,你怎么还不来碰碰人家。” 这作业也不愧是美人,声音微颤,最后声线上扬了三度,像羽毛似的撩的人心痒痒。 ? ? ? ?我一巴掌糊它脸上:“最后三天让你知道我的厉害!”
题目引出
? ? ? ?浏览器中输入url后按回车键发生了什么?使用到了7层网络模型中的哪些协议?
精选回答
- URL解析
- DNS查询
- TCP连接
- HTTP请求
- 响应请求
- 页面渲染
详细过程
URL解析: 主要用于判断输入的url是一个合法的url还是一个带搜索的关键字,进行相对应的操作; DNS查询:获取域名对应服务器IP地址; ? ? ? ?DNS是什么? ? ? ? ?DNS是一种组织成域层次结构的计算机和网络服务命名系统,用于TCP/IP网络,所提供的服务是用来将主机名和域名转换成IP地址的工作。 ? ? ? ?DNS解析过程: ? ? ? ?首先查询浏览器DNS缓存,如果没有再查询主机hosts文件; ? ? ? ?主机查询DNS缓存,如果没有就会给本地DNS发送查询请求; ? ? ? ?本地的DNS服务器向根域名服务器发送查询请求,根域名服务器返回该域名的一级域名服务器; ? ? ? ?该本地服务器给该一级域名服务器发送查询请求,然后依次类推直到查询到该域名的IP地址;
TCP连接:TCP三次握手建立TCP连接; HTTP请求:浏览器发送HTTP请求到目标服务器; 响应请求:目标服务器受到请求后,进行逻辑操作,返回一个HTTP响应,之后可以进行TCP四次挥手断开TCP连接; 页面渲染:浏览器对拿到的服务器资源进行解析,比如重定向、存储cookie、解压gzip等,再根据不同资源采用不同的解析方式,解析HTML,构建DOM树,解析CSS,生成CSS规则树,合并DOM树和CSS规则树,生成rander树。
使用到的协议
应用层:DNS、HTTP、HTTPS、SSL 传输层:TCP、UDP 网络层:IP、RIP、OSPF 数据链路层:ARP
总结
? ? ? ?由这个一个问题能引申出很多问题,例如DNS解析过程、HTTPS握手过程、HTTP1.0和HTTP1.1和HTTP2.0的区别、TCP三次握手四次挥手、TCP UDP区别、ARP协议过程等等,大家加油。
|