面试题:输入一个网址后发生了什么?

当你在浏览器输入一个网址,如http://www.baidu.com,按回车之后发生了什么?请从技术的角度描述.

1.DNS解析

DNS解析的过程就是寻找哪台机器上有你需要资源的过程,寻找的过程遵循就近原则。
输入一个网址并按回车的时候浏览器会根据输入的URL去查找对应的IP(就是根据输入的URL查找对应的IP),过程如下:

DNS根据域名查询IP地址的过程为:浏览器缓存 --> 操作系统缓存 --> 路由器缓存–>本地(ISP)域名服务器缓存 --> 根域名服务器。

2.进行TCP连接

这时候浏览器终于得到了IP以后,向服务器发送TCP连接,TCP连接经过三次握手。

3.浏览器发送HTTP请求

4.服务器处理请求

5.浏览器解析渲染页面

1)浏览器显示HTML
2)浏览器向服务器发送请求获取嵌入在HTML中的对象
3)浏览器发送异步(AJAX)请求

6.关闭TCP连接

当数据完成请求到返回的过程之后,根据Connection的Keep-Alive属性可以选择是否断开TCP连接。

TCP的断开与连接不一样,断开可以分为主动关闭和被动关闭,需要经过4次握手。

最后 当浏览器需要的全部数据都已经加载完毕,一个页面就显示完了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值