CDN 和 DNS
原文地址:http://www.cnblogs.com/xitang/p/3575255.html
相信有很多的朋友会被这几个名词绕的有些头大,很多朋友觉得智能DNS跟双线加速、CDN加速是类似的技术。其实不然,虽然他们的目的都是一个:让用户更快的访问网站。但是他们的应用原理却大相径庭。
大家一定很清楚这几种都是比较常见的主机加速的方式。所以文本主要介绍一下“智能dns解析”,“cdn加速技术”,“双线主机的加速方式”的基本加速原理,当你了解了这些就可以从这几种方式中找出一种更适合你的主机的加速方式。
一、何谓双线加速
双线加速比较常用的就是“双线双IP”和“双线单IP”,"BGP双线单IP"
- 双线双IP。
双IP双线路实现方式是指在一台服务器上安装两块网卡,分别接入电信网线与网通网线并设置一个网通IP与一个电信IP,这样一台服务器上就有了两个IP地址(即域名解析到哪个IP都可以访问),需要在服务器上添加网通或电信的路由表来实现网通用户与电信用户分别从不同的线路访问。
双线双IP比较常用的两种使用方式:
1.用两个不同的域名解析到这两个IP,在网站上放上不同的连接,网通用户点击访问网通的线路,电信用户点击访问电信的线路。(智能DNS没有广泛应用之前比较常见的一种方式)。
2.智能DNS,所谓的智能就是不需要用户自己去判断,而是交给域名解析服务器。智能判断用户的线路,如果是电信用户就解析到电信IP,网通用户就解析到网通IP。 - 双线单IP。
顾名思义,两条线路一个IP地址。一台服务器上配置一个网卡一个IP地址,此IP是网通IP或是电信IP,通过路由设备设置数据包是通过是电信网络或是网通网络发出来实现的双线技术。此方案也可以提高网通用户与电信用户的访问速度,解决了双IP双线需要在服务器上设置路由的问题,但由于IP地址采用的是网通或电信的IP,访问用户在发送请求数据包时不会自动判别最好的路由。 - BGP双线单IP。
BGP(BorderGatewayProtocol)边界网关协议。BGP具体的功能就是控制路由的传播和选择最佳路由。这个双线路的实现必须是IDC机房运营商与电信、网通能够达成合作协议,通过骨干网络的路由器来给予最优路由选择,所有的一切,对于服务器和用户都无任何负担。服务器仅需单ip且效果最佳。但是这样的合作谈判又怎么会那么容易。所以目前这样的基于BGP的解决方案基本都是针对绝对的高端用户提供的。
二、何谓智能DNS
看到了上面的双线双IP的概念,你应该清楚了智能DNS是为谁准备的了吧!没错,为了不浪费双线双IP,为了更好地用户体验,对访问用户进行智能线路判断,让电信用户走上电信的高速路,让网通用户走上网通的高速路。推荐使用免费智能DNS的服务商——DNSPOD
三、何谓CDN加速
CDN加速=智能DNS+多服务器
如上面公式,CDN是多台服务器加智能DNS的结合体。CDN服务,其实就是把静态页面缓存到不同地区很多台专门的缓存服务器上,然后根据用户线路所在的地区通过CND服务商的智能DNS自动选择一个最近的缓存服务器让用户访问,以此提高速度,这种方案对静态页面效果非常好,同时它也需要智能DNS的帮助才能实现把用户引导到离自己最近的缓存服务器上。好的CND服务提供商必须有好的智能DNS做基础。
优点:本地Cache加速,镜像加速,远程加速,带宽优化,集群抗攻击。
CDN加速又有别与镜像技术。看公式:CDN=更智能的镜像+缓存+流量导流。(爆个料,阿桑奇的“维基解密”网站在风头正紧时,弄出一千多个镜像站点,有图有真相)
各种加速方式对比:(双线双IP与双线单IP对比仅供参考)
综上所述,以上各种双线实现的方式各有优缺点,智能DNS+双线双IP成本较低,但网络不够稳定并且占用大量的服务器资源,普通双线单IP只是实现了部分双线路的效果所以访问速度不佳,CDN方式对静态网页效果很好但对交互性很强的网页效果不太理想,BGP单IP双线路解决了以上所有的问题是最好的实现方式但国内采用此种方案的IDC服务商较少,如果能将BGP单IP双线与CDN加速结合起来将会是最优的解决方案。目前全国已有不少合用BGP技术方案的数据中心,但大多为特殊客户提供服务,很少有针对普通用户和IDC商的机房。
CDN 和 DNS的更多相关文章
- CDN和DNS
相信有很多的朋友会被这几个名词绕的有些头大,很多朋友觉得智能DNS跟双线加速.CDN加速是类似的技术.其实不然,虽然他们的目的都是一个:让用户更快的访问网站.但是他们的应用原理却大相径庭.大家一定很清 ...
- CDN的原理以及其中的一些技术
本质:DNS解析CNAME时最终会请求到阿里CDN的DNS服务器上,阿里CDN的DNS服务器会判断请求ip的物理区域是哪里,同时根据各CDN节点的压力做全局的负载均衡 返回合适CDN节点的ip. ht ...
- CDN学习笔记二(技术详解)
一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...
- 浅析CDN安全
目前CDN技术到处可见.像网宿.蓝讯.加速乐等都依靠CDN过活,连安全宝也都使用了CDN技术,当然很多域名空间商现在也提供CDN服务.从以往互联网的发展上看,CDN是个趋势,很多厂商也都多多少少购买了 ...
- cdn是什么和作用有些
内容分发网络其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快.更稳定.通过在网络各处放置节点服务器所构 成的在现有的互联网基础之上的一层智能虚拟网络,CDN系 ...
- 关于 OneAPM Cloud Test DNS 监控的几个重要问题
你注意到了吗?OneAPM Cloud Test 已经全面开启支持 DNS 监控了! CT 产品自上线以来一直致力于产品完善,希望能够尽可能全面地满足用户需求,为您提供完美的用户体验.目前 Cloud ...
- 监控 DNS 流量,预防安全隐患五大招!
尽管 IT 管理员尽心尽责地监控设备.主机和网络是否存在恶意活动的迹象,却往往出力不讨好.主机入侵检测和端点保护对很多公司来说可能是"必需"的安全措施,但如果要找出 RAT.roo ...
- DNS负载均衡
1)DNS负载均衡的介绍 对于负载均衡的一个典型应用就是DNS负载均衡.庞大的网络地址和网络域名绝对是负载均衡体现优势的地方.那么它的具体原理是如何的呢?本文就将为大家详细介绍一下相关内容. DNS负 ...
- CDN技术详解及实现原理
CDN技术详解 一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精 ...
随机推荐
- iOS数据持久化-OC
沙盒详解 1.IOS沙盒机制 IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文 ...
- 【锁】Oracle锁系列
[锁]Oracle锁系列 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ...
- AutoMapper完成Dto与Model的转换
在实际的软件开发项目中,我们的“业务逻辑”常常需要我们对同样的数据进行各种变换. 例如,一个Web应用通过前端收集用户的输入成为Dto,然后将Dto转换成领域模型并持久化到数据库中.相反,当用户请求数 ...
- 解决12306.cn网站验证码获取提示“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系“的问题
https://dynamic.12306.cn/otsweb/passCodeAction.do?rand=sjrand&0.8967564508222368 这是图片的访问网址 大家看清楚 ...
- Visual Studio 2012完美的拥抱GitHub
详情请查看http://www.aehyok.com/Blog/Detail/73.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链 ...
- C# 动态修改dll的签名 以及修改引用该dll文件的签名
在读取RedisSessionStateProvider配置 提到用mono ceil 来修改程序集以及它的签名,里面GetPublicKey 和GetPubliKeyToken 方法里面那个字符串的 ...
- CSS等高布局
做一些后台项目,和一下带侧边栏项目的时候登高布局很常用,总结了下有几种 1.margin-bottom方法 这里直接介绍我认为的最佳的侧边栏/分栏高度自动相等方法.核心的CSS代码如下(数值不固定): ...
- 一个purge参数引发的惨案——从线上hbase数据被删事故说起
在写这篇blog前,我的心情久久不能平静,虽然明白运维工作如履薄冰,但没有料到这么一个细小的疏漏会带来如此严重的灾难.这是一起其他公司误用puppet参数引发的事故,而且这个参数我也曾被“坑过”. ...
- vim语法高亮不起作用解决
首先将vim更新为最新版yum -y install vim,并安装Vim的加强版vim-enhanced ,以安装支持彩色的组件 yum -y install vim-enhanced 接下来 ...
- AngularJS指令嵌套时link函数执行顺序的问题
今天研究指令嵌套时,发现子指令的link函数先于父指令的link函数执行. 这样和预想的顺序不一样. 也就是说,如果子指令的某个scope变量依赖于父指令传来的参数时,可能一直是undefinded比 ...