面试冲刺:17---在浏览器输入www.baidu.com后执行的全部过程

一、输入URL

  • 在网页中输入URL

二、DNS解析

  • 输入了URL之后,浏览器需要通过域名找出其IP地址,这一步需要DNS的解析
  • DNS查找过程如下:
    • 浏览器缓存:浏览器会缓存DNS记录一段时间。 有趣的是,操作系统没有告诉浏览器储存DNS记录的时间,这样不同浏览器会储存个自固定的一个时间(2分钟到30分钟不等)
    • 系统缓存:如果在浏览器缓存里没有找到需要的记录,浏览器会做一个系统调用(windows里是gethostbyname)。这样便可获得系统缓存中的记录
    • 路由器缓存:接着,前面的查询请求发向路由器,它一般会有自己的DNS缓存
    • ISP DNS缓存:接下来要check的就是ISP缓存DNS的服务器。在这一般都能找到相应的缓存记录
    • 递归搜索:你的ISP的DNS服务器从跟域名服务器开始进行递归搜索,从.com顶级域名服务器到百度的域名服务器。一般DNS服务器的缓存中会有.com域名服务器中的域名,所以到顶级服务器的匹配过程不是那么必要了

三、建立TCP连接

  • 之后客户端与服务端建立TCP连接

四、进行HTTP通信

  • 浏览器向百度发送HTTP请求,请求百度首页
  • 服务器收到HTTP请求之后,给客户端回送一条HTTP响应,将首页文件发送给浏览器

五、显示网页、断开连接

  • 浏览器客户端接收到HTTP响应报文之后,将服务端的网页文件显示在浏览器中
  • 接着还会客户端还会断开与服务端的TCP连接

猜你喜欢

转载自blog.csdn.net/qq_41453285/article/details/107743672