科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道路由交换输入facebook的URL按下回车后究竟发生了什么

输入facebook的URL按下回车后究竟发生了什么

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

作为一名软件开发或是网络技术人员,你应该对Web应用程序的运行原理和协议交换,以及涉及到的技术:如浏览器、HTTP、HTML、Web服务器和请求处理程序等都有所了解才行。在这篇文章中,我们将深入探讨你访问某个URL时发生的一系列事情。

来源:51CTO 2011年4月1日

关键字: Web服务器 DNS服务器 URL

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

  作为一名软件开发或是网络技术人员,你应该对Web应用程序的运行原理和协议交换,以及涉及到的技术:如浏览器、HTTP、HTML、Web服务器和请求处理程序等都有所了解才行。在这篇文章中,我们将深入探讨你访问某个URL时发生的一系列事情。

  1、你在浏览器中输入某个URL

  我们从这里开始:

图 1

  图 1

  2、浏览器查找该域名对应的IP地址

图 2

  图 2

  第一步是找出所访问域名对应的IP地址,按以下顺序循环查找DNS记录:

  ◆浏览器缓存 - 浏览器会缓存DNS记录一段时间,有趣的是,操作系统不会告诉浏览器每条DNS记录的存活时间,浏览器按照固定的周期进行缓存(每种浏览器的保留时间从2-30分钟长度不定)。

  ◆操作系统缓存 - 如果浏览器缓存中没有要找的记录,浏览器会产生一个系统调用(在Windows中是gethostbyname),操作系统有它自己的缓存。

  ◆路由器缓存 - 请求继续来到你的路由器,路由器通常也有自己的DNS缓存。

  ◆ISP DNS缓存 - 下一步要检查的是ISP的DNS服务器,当然也是有缓存的。

  ◆递归查找 - ISP的DNS服务器开始一个递归查找,从根域服务器开始,到.com顶级域名服务器,再到Facebook的域名服务器,正常情况下,DNS服务器将会缓存.com域名服务器的名字,因此不一定需要访问根域服务器。

  下面是一个递归DNS查找过程示意图:

图 3

  图 3

  关于DNS一个令人担心的问题是,整个域名如wikipedia.org或facebook.com只映射到单个IP地址,幸运的是,有许多方法来消除这个问题。

  ◆循环DNS :DNS查找返回多个IP地址,例如,facebook.com真实情况是映射到了4个IP地址。

  ◆负载均衡: 由专用硬件监听一个特定IP地址,然后将请求转发给其它服务器,大型网站一般都使用了昂贵的高性能负载均衡设备。

  ◆基于地理位置的DNS: 将域名映射到不同地理位置的IP地址提高扩展性,对于托管静态内容的服务器布局来说,这个方法很有用,不同服务器之间不需要相互同步状态。

  ◆Anycast(任播): 它是一种路由技术,单个IP地址可以映射到多台物理服务器,遗憾的是,任播对TCP不友好,在实际中很少使用。

  大多数DNS服务器本身使用任播实现高可用和DNS查找的低延迟。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章