CDN

被刻印的时光 ゝ 提交于 2020-01-18 09:54:30

CDN是什么?

CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

CDN的关键技术主要有内容存储和分发技术。

,内容分发网络(CDN)是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。
内容服务基于缓存服务器,也称作代理缓存(Surrogate),它位于网络的边缘,距用户仅有"一跳"(Single Hop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。

关键技术:

(1)内容发布:它借助于建立索引、缓存、流分裂、组播(Multicast)等技术,将内容发布或投递到距离用户最近的远程服务点(POP)处;
(2)内容路由:它是整体性的网络负载均衡技术,通过内容路由器中的重定向(DNS)机制,在多个远程POP上均衡用户的请求,以使用户请求得到最近内容源的响应;
(3)内容交换:它根据内容的可用性、服务器的可用性以及用户的背景,在POP的缓存服务器上,利用应用层交换、流分裂、重定向(ICP、WCCP)等技术,智能地平衡负载流量;
(4)性能管理:它通过内部和外部监控系统,获取网络部件的状况信息,测量内容发布的端到端性能(如包丢失、延时、平均带宽、启动时间、帧速率等),保证网络处于最佳的运行状态。
CDN需要考虑两个方面的内容存储问题,一个是内容源的集中存储,另一个是内容在Cache节点中的分布式存储。由于内容的规模比较大,内容的吞吐量较大,因此,通常采用海量存储架构。目前常用的存储技术主要有直连附加存储(DAS)、网络附加存储(NAS)和存储区域网(SAN)。
DAS是直接连接在各种服务器或客户端扩展接口下的数据存储设备,完全以服务器为中心,寄生在相应服务器或客户端上
NAS可以提供高速的数据I/O访问,降低了媒体服务器由于相应数据访问请求而承担的CPU负荷,使媒体服务器性能得到大幅提升,NAS把数据放在同一个服务器里让不同用户共享
SAN允许服务器在共享存储装置的同时仍能高速传送数据,共享式区域网络通过高速连接将服务器与存储介质相互连通,具有可扩展性高、可用性高和容错能力强的优点,
负载均衡技术
负载均衡是整个CDN的核心,负载均衡的准确性和效率直接决定了整个CDN的效率和性能。
负载均衡技术将网络的流量尽可能均匀地分配到几个能完成相同任务的服务器或网络节点上进行处理,避免部分网络节点过载而另一部分节点空闲的不利状况,既可以提高网络流量,又可以提高网络的整体性能。

主要特点

1、本地Cache加速 提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,并大大提高以上性质站点的稳定性
2、镜像服务 消除了不同运营商之间互联的瓶颈造成的影响,实现了跨运营商的网络加速,保证不同网络中的用户都能得到良好的访问质量。
3、远程加速 远程访问用户根据DNS负载均衡技术智能自动选择Cache服务器,选择最快的Cache服务器,加快远程访问的速度
4、带宽优化 自动生成服务器的远程Mirror(镜像)cache服务器,远程用户访问时从cache服务器上读取数据,减少远程访问的带宽、分担网络流量、减轻原站点WEB服务器负载等功能。
5、集群抗攻击 广泛分布的CDN节点加上节点之间的智能冗余机制,可以有效地预防黑客入侵以及降低各种D.D.o.S攻击对网站的影响,同时保证较好的服务质量 。
国内较为有名的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中携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。基于以上这些条件的综合分析之后,区域负载均衡设备会向全局负载均衡设备返回一台缓存服务器的IP地址。
6.全局负载均衡设备把服务器的IP地址返回给用户。
7.用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容,而区域均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉到本地。
http://blog.csdn.net/wxl1555/article/details/52736498
或者这样描述:
1.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求;
2.网站的DNS域名解析器设置了CNAME,指向了www.web.51cdn.com,请求指向了CDN网络中的智能DNS负载均衡系统;
3.智能DNS负载均衡系统解析域名,把对用户响应速度最快的IP节点返回给用户;
4.用户向该IP节点(CDN服务器)发出请求;
5.由于是第一次访问,CDN服务器会向原web站点请求,并缓存内容;
6.请求结果发给用户

CDN的好与坏,有如下几点:

1,基础建设的投入,也就是节点的质量和数量;(因此小型CDN服务商自然在资金方面是劣势)
2,技术研发投入,对新技术的敏感,对互联网流量的敏感,对IP网络底层技术的敏感;动态数据越来越多,如何针对动态技术进行加速,如何真正高效的动静态分离,如何针对不同业务自动进行识别和区分,如何真正智能的调度流量,等等
3,对互联网公司业务的深刻理解,针对游戏、视频、门户、电商等等互联网公司,不同业务类型有哪些独特的需求,服务和产品该如何实际解决问题,如何让客户真正感觉到方便、实用、高效。
4,服务意识,如何不断提升后台系统的效率,如何给客户一个真正方便简洁的操作界面,如何能利用带宽等数据统计出更有价值的信息给予反馈,如何让CDN服务变得相对透明,而不是成为运维部门的一种工作压力。
5,数据说话,积累了如此多的数据,有什么样的反馈,有什么样的汇总和归纳,能提炼出哪些对客户更有附加价值的东西,是否能发现现在系统的问题从而第一时间解决。
6,运营经验,做运维的朋友们都知道,经验非常重要。因此,一个CDN服务商的服务时间很关键,就像一句老话,吃的盐比你走的路都多,能一样么? 当然,经验不是单纯时间的累计,应该是不断总结、不断改进的过程,漫长确意义非凡。
(1)“稳定派”认为CDN服务应保持内容分发的稳定性,在一体化技术、弱网加速技术、服务质量性能波动监测、智能故障诊断等强化技术积累,而非刻意追求最新的功能特效,比如客户有防盗链更新时可以第一时间告知客户,并降低故障影响,对于赛事、演唱会等直播及短视频场景中较有吸引力,主要代表厂商是网宿。
(2)“全能派”即提供直播、点播的端到端的完整解决方案,除了CDN服务以外,还包括域名注册、网站开发、IDC、云通信、移动服务、云安全、监控与管理等综合化一站式服务,主要代表厂家就是阿里云、腾讯云等。
(3)“性能派” 即通过自研核心、优化节点选择和网络部署,达到提升性能的目标,同时稳定性兼顾。实际上,哪怕网速整体提升0.1秒,就需要在提升核心Cache的响应速度、提升调度系统的响应速度、降低网络节点的延迟、提升下载速度、缩小网络节点距离用户的距离等方面进行研发和投入;而单一环节的性能提升可以满足直播和短视频平台对于CDN的苛刻需求,这方面的典型厂商是白山云,以及兼顾稳定考虑的视界云。

一般需要CDN服务的网站会选择以下的组织方案:

1.通过租用的IDC提供额外的CDN服务;
2…购买专业的CDN服务商的服务;
3.自己组建CDN网络;成本依次增高。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!