CDN加速原理详解

电子说

1.3w人已加入

描述

一、CDN加速是什么意思

CDN是Content Delivery Network)英文首字母的缩写,中文翻译为内容分发网络,由于CDN是为加快网络访问速度而被优化的网络覆盖层,因此被形象地称为”网络加速器”,即CDN加速。CDN加速是通过将网站源服务器的内容缓存在距离访问用户最近的网络服务器上。用户在访问内容的时候,通过CDN规则将最近的服务器提供于用户访问,为用户提供了快速访问的途径。

二、CDN加速原理

CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。

1、传统访问过程

网络

传统访问过程

由上图可见,用户访问未使用CDN缓存网站的过程为:

(1)、用户输入访问的域名,操作系统向 LocalDns 查询域名的IP地址;

(2)、LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期);

(3)、ROOT DNS将域名授权dns记录回应给 LocalDns;

(4)、LocalDns得到域名的授权dns记录后,继续向域名授权dns查询域名的ip地址;

(5)、域名授权dns 查询域名记录后,回应给 LocalDns;

(6)、LocalDns 将得到的域名ip地址,回应给 用户端;

(7)、用户得到域名ip地址后,访问站点服务器;

(8)、站点服务器应答请求,将内容返回给客户端。

2、CDN加速访问过程

网络

CDN加速访问过程

通过上图,我们可以了解到,使用了CDN缓存后的网站的访问过程变为:

(1)、用户输入访问的域名,操作系统向 LocalDns 查询域名的ip地址;

(2)、LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期);

(3)、ROOT DNS将域名授权dns记录回应给 LocalDns;

(4)、LocalDns得到域名的授权dns记录后,继续向域名授权dns查询域名的ip地址;

(5)、域名授权dns 查询域名记录后(一般是CNAME),回应给 LocalDns;

(6)、LocalDns 得到域名记录后,向智能调度DNS查询域名的ip地址;

(7)、智能调度DNS 根据一定的算法和策略(比如静态拓扑,容量等),将最适合的CDN节点ip地址回应给 LocalDns;

(8)、LocalDns 将得到的域名ip地址,回应给 用户端;

(9)、用户得到域名ip地址后,访问站点服务器;

(10)、CDN节点服务器应答请求,将内容返回给客户端.(缓存服务器一方面在本地进行保存,以备以后使用,二方面把获取的数据返回给客户端,完成数据服务过程)。

三、CDN加速的组成

CDN加速网络中包含的功能实体包括内容缓存设备、内容交换机、内容路由器、CDN内容管理系统等组成。

内容缓存为CDN网络节点,位于用户接入点,是面向最终用户的内容提供设备,可缓存静态Web内容和流媒体内容,实现内容的边缘传播和存储,以便用户的就近访问。

内容交换机处于用户接入集中点,可以均衡单点多个内容缓存设备的负载,并对内容进行缓存负载平衡及访问控制。

内容路由器负责将用户的请求调度到适当的设备上。内容路由通常通过负载均衡系统来实现,动态均衡各个内容缓存站点的载荷分配,为用户的请求选择最佳的访问站点,同时提高网站的可用性。内容路由器可根据多种因素制定路由,包括站点与用户的临近度、内容的可用性、网络负载、设备状况等。负载均衡系统是整个CDN的核心。负载均衡的准确性和效率直接决定了整个CDN的效率和性能。

内容管理系统负责整个CDN的管理,是可选部件,作用是进行内容管理,如内容的注入和发布、内容的分发、内容的审核、内容的服务等。

四、CDN加速服务模式

内容分发网络(CDN)是一种新型网络构建方式,它是为能在传统的IP网发布宽带丰富媒体而特别优化的网络覆盖层;而从广义的角度,CDN代表了一种基于质量与秩序的网络服务模式。

简单地说,内容分发网络(CDN)是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。

总的来说,内容服务基于缓存服务器,也称作代理缓存(Surrogate),它位于网络的边缘,距用户仅有”一跳”(Single Hop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。

五、CDN加速的好处

CDN加速能几乎涵盖国内所有线路。而在可靠性上,CDN 在结构上实现了多点的冗余,即使某一个节点由于意外发生故障,对网站的访问能够被自动导向其他的健康节点进行响应。CDN加速能轻松实现网站的全国铺设,不必考虑服务器的投入与托管、不必考虑新增带宽的成本、不必考虑多台服务器的镜像同步、不必考虑更多的管理维护技术人员。

1、不用担心自己网站访客,在任何时间,任何地点,任何网络运营商,都能快速打开网站。

2、各种服务器虚拟主机带宽等采购成本,包括后期运维成本都会大大减少。

3、给网站直接带来的好处就是:流量,咨询量,客户量,成单量,都会得到大幅度提升。

六、CDN加速常见问题

1、CDN加速是对网站所在服务器加速,还是对其域名加速?

CDN是只对网站的某一个具体的域名加速。如果同一个网站有多个域名,则访客访问加入CDN的域名获得加速效果,访问未加入CDN的域名,或者直接访问IP地址,则无法获得CDN效果。

2、CDN加速和镜像站点比较有何优势?

CDN加速对网站的访客完全透明,不需要访客手动选择要访问的镜像站点,保证了网站对访客的友好性。

CDN加速对每个节点都有可用性检查,不合格的节点会第一时间剔出,从而保证了极高的可用率,而镜像站点无法实现这一点。

CDN加速部署简单,对原站基本不做任何改动即可生效。

3、CDN加速和双线机房相比有何优势?

常见的双线机房只能解决网通和电信互相访问慢的问题,其它ISP(譬如教育网,移动网,铁通)互通的问题还是没得到解决。

而CDN加速是访问者就近取数据,而CDN的节点遍布各ISP,从而保证了网站到任意ISP的访问速度。另外CDN因为其流量分流到各节点的原理,天然获得抵抗网络攻击的能力。

总结

CDN加速是通过在现有的Internet的节点,使用户可以就近取得所需的内容,一般而言,网站无需任何修改即可使用CDN获得加速效果,全面提高用户访问网站的响应速度。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分