CDN内容分发网络及实现原理

2022-6-16 287 6/16

什么是CDN

CDN的全称是Content Delivery Network,即内容分发网络。当代网络流量的高并发和大流量特点,使得如果多个用户同时请求同一个服务,会对服务器造成巨大压力甚至崩溃,用户访问也会变得卡顿、加载失败等。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。

CDN网络的构成

CDN是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理是CDN的核心所在,也就是我们常说的CDN加速节点,也叫CDN边缘节点。

工作原理

CDN的基本原理是在用户访问相对集中的地区和网络设置一些缓存服务器。当用户访问网站时,利用全局的负载均衡技术将用户的访问指向距离最近的缓存服务器,由缓存服务器代替源站响应用户的访问请求。这样一方面减轻了源站服务器的工作压力,另一方面使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

CDN内容分发网络及实现原理

如图,源站通过CDN内容分发网络将数据分发到全国各地的CDN节点上,各地的用户访问时,就能访问就近的CDN节点了。

当没用CDN时,用户访问一个站点的过程为:用户提交域名→浏览器对域名进行解释→DNS 解析得到目的主机的IP地址→根据IP地址访问发出请求→得到请求数据并回复。

使用CDN时,DNS 返回的不再是 IP 地址,而是一个CNAME(Canonical Name ) 别名记录,指向CDN的全局负载均衡,之后CDN全局负载均衡会智能分配距离请求用户最近的CDN节点的ip给用户来访问。

CDN使用的主要技术

负载均衡技术

负载均衡技术就是将网络中的流量尽可能平均分配到多个能完成相同任务的服务器或网络节点,由此来避免单个或部分网络节点过载瘫痪,影响正常的网络访问。

动态内容分发与复制技术

在多数情况下,网站响应速度和访问者与网站服务器之间的距离有着密切的关系。如果访问者和网站之间的距离过远,之间的通信要经过多次路由转发和处理,网络延迟会大大增加。而内容分发和复制技术就是将网站主体中的大部分静态页面、图像和流媒体数据等分发复制到各地的加速节点上。所以,动态内容分发与复制技术也是CDN所需的一个重要技术。

缓存技术

缓存技术是一项常用技术了,Web缓存服务通过几种方式来改善用户的响应时间,如代理缓存服务、透明代理缓存服务、使用重定向服务的透明代理缓存服务 等。通过Web缓存服务,用户访问网页时可以将广域网的流量降至最低。对于公司内联网用户来说,这意味着将内容在本地缓存,而无须通过专用的广域网来检索 网页。对于Internet用户来说,这意味着将内容存储在他们的ISP的缓存器中,而无须通过Internet来检索网页。这样无疑会提高用户的访问速度。CDN的核心作用正是提高网络的访问速度,所以,缓存技术将是CDN所采用的又一个主要技术。

应用场景

CDN的应用场景广泛,如手机App更新、游戏包更新、视频点播(长视频、短视频)、图文网站等,具体可分为三类:

图片小文件:适用于网站或应用中小文件的加速分发,例如各种门户网站、电子商务类网站、新闻资讯类网站或应用、娱乐游戏类网站等。

大文件下载: 适用于各类大文件的下载和分发加速,例如游戏安装包、应用更新、手机ROM升级、应用程序包下载等,平均单个文件大小在20 MB以上。

视音频点播:适用于各类视音频网站,例如影视类视频网站、在线教育类视频网站、新闻类视频网站、短视频社交类网站以及音频类相关网站和应用,支持MP4、FLV等主流视频格式。

使用限制

可以看到,CDN加速的节点主要为用户加速了数据的“读”操作,即静态资源,如浏览图片、音视频,下载文件、音乐、电影等,所以一般CDN加速只支持HTTP、HTTPS协议,而如果涉及到“写”(post)操作,数据是需要返回到源站进行数据库写入的,此时CDN就显得很吃力了,此时就需要用到全站加速,如阿里云的DCND,腾讯云的ECDN等,全站加速本篇就不展开讲解。

SCDN

SCDN(Secure Content Delivery Network),即拥有安全防护能力的CDN/全站加速服务,提供稳定加速的同时,提供各种安全防护措施,如DDOS防护、CC防护、WAF防护等, 相当于在访问CDN节点前在增加了安全防护措施。

- THE END -
Tag:

Tenkms

12月01日00:08

最后修改:2023年12月1日
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论