“CDN的全称是Content Delivery Network,即内容分发网络。”
CDN具备内容存储和分发两个关键要素。其基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。
举个例子理解一下CDN的含义:
在你的家里有一袋花生米放在门口,你馋了,就在门口抓了一把走到客厅,看着电视就把这一把花生吃完了,但吃的不够尽兴,你又跑到门口抓了一把,回到客厅继续吃,不一会,又吃完了。如此反复,你的腿都快跑细了。这时你往果盘里装花生米,端到了客厅去吃,这次你就不需要来回跑了,直接从盘子里面拿了。
CDN就是把这远距离的花生米放在面前,而不用每次起身去拿而是伸手就可以够到!
简单地说CDN是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户的就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。基础架构CDN网络中包含的功能实体包括内容缓存设备、内容交换机、内容路由器、CDN内容管理系统等组成。最简单的CDN网络由一个DNS服务器和几台缓存服务器组成:
1、当用户点击网站页面上的内容URL,经过本地DNS系统解析,DNS系统会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。
2、CDN的DNS服务器将CDN的全局负载均衡设备IP地址返回用户。
3、用户向CDN的全局负载均衡设备发起内容URL访问请求。
4、CDN全局负载均衡设备根据用户IP地址,以及用户请求的内容URL,选择一台用户所属区域的区域负载均衡设备,告诉用户向这台设备发起请求。
5、区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务,选择的依据包括:根据用户IP地址,判断哪一台服务器距用户最近;根据用户所请求的URL中携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。
6、全局负载均衡设备把服务器的IP地址返回给用户。
7、用户向缓存服务器发起访问请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容,而区域均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉到本地。
国内访问量较高的网站、直播、视频平台,均使用CDN网络加速技术,虽然网站的访问巨大,但无论在什么地方访问都会感觉速度很快。而一般的网站如果服务器在网通,电信用户访问很慢,如果服务器在电信,网通用户访问又很慢。通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的cache服务器内,通过DNS负载均衡的技术,判断用户来源就近访问cache服务器取得所需的内容,解决Internet网络拥塞状况,提高用户访问网站的响应速度,如同提供了多个分布在各地的加速器,以达到快速、可冗余的为多个网站加速的目的。
主要特点:
1、本地Cache加速
提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,并大大提高以上性质站点的稳定性
2、镜像服务
镜像服务消除了不同运营商之间互联的瓶颈造成的影响,实现了跨运营商的网络加速,保证不同网络中的用户都能得到良好的访问质量。
3、远程加速
远程访问用户根据DNS负载均衡技术,智能自动选择Cache服务器,选择最快的Cache服务器,加快远程访问的速度。
4、带宽优化
自动生成服务器的远程Mirror(镜像)cache服务器,远程用户访问时从cache服务器上读取数据,减少远程访问的带宽、分担网络流量、减轻原站点WEB服务器负载等功能。
5、集群抗攻击
广泛分布的CDN节点加上节点之间的智能冗余机制,可以有效地预防黑客入侵以及降低各种D.D.o.S攻击对网站的影响,同时保证较好的服务质量 。
关键技术:
内容发布:它借助于建立索引、缓存、流分裂、组播(Multicast)等技术;
内容路由:它是整体性的网络负载均衡技术,通过内容路由器中的重定向(DNS)机制,在多个远程POP上均衡用户的请求,以使用户请求得到最近内容源的响应;
内容交换:它根据内容的可用性、服务器的可用性以及用户的背景,在POP的缓存服务器上,利用应用层交换、流分裂、重定向(ICP、WCCP)等技术,智能地平衡负载流量;
性能管理:它通过内部和外部监控系统,获取网络部件的状况信息,测量内容发布的端到端性能(如包丢失、延时、平均带宽、启动时间、帧速率等),保证网络处于最佳的运行状态。
CDN使用举例
第一步:开通CDN服务
https://www.aliyun.com/product/cdn/?spm=a2c4g.11186623.2.1.AOrIMA进入CDN页面,点击“立即开通”后,再购买HTTPS请求包;
第二步: 添加加速域名
登录CDN控制台,域名管理 - 添加域名
第三步: 配置CNAME
获取加速域名的CNAME,在域名列表中复制加速域名的CNAME值;
解析设置-添加记录
有时候会出现以下请求失败的现象,则需要删除www的A记录,然后再添加CNAME;
第四步: 验证CDN生效
在电脑的开始-运行-输入“cmd.exe”-输入“ping www.域名” (换成你的加速域名)。如果被转向*.*kunlun*.com,即表示CNAME配置成功,CDN功能也已生效:
Google及其它网站的研究表明,一个网站每慢一秒钟,就会丢失许多访客,甚至这些访客永远不会再次光顾这些网站。可以想像,如果网站是你的盈利渠道或是品牌窗口,那么网站速度慢将是一个致命的打击。这就是你使用CDN的第一个也是最重要的原因:为了加速网站的访问!