`

CDN内容分发网络架构与四大关键技术

阅读更多


             随着宽带网络 和宽带流媒体应用 的兴起,CDN (通常被称为内容分发网络Content distribution network,有时也被称作内容传递网络Contentdeliverynetwork)作为一种提高网络内容,特别是提高流媒体内容传输的服务质量、节省骨干网络带宽的技术 ,在国内外得到越来越广泛的应用(linuxtone)

  CDN网络架构 主要由两大部分,分为中心和边缘两部分,中心指CDN网管中心和DNS重定向解析中心,负责全局负载 均衡,设备系统 安装在管理 中心机房,边缘主要指异地节点,CDN分发的载体,主要由Cache和负载均衡器等组成。

  当用户 访问 加入CDN服务的网站时,域名解析请求将最终交给全局负载均衡DNS进行处理。全局负载均衡DNS通过一组预先定义好的策略,将当时最接近用户的节点地址提供给用户,使用户能够得到快速的服务。同时,它还与分布在世界各地的所有CDNC节点保持通信,搜集各节点的通信状态 ,确保不将用户的请求分配到不可用的CDN节点上,实际上是通过DNS做全局负载均衡。

  对于普通的Internet用户来讲,每个CDN节点就相当于一个放置在它周围的WEB。通过全局负载均衡DNS的控制,用户的请求被透明地指向离他最近的节点,节点中CDN服务器 会像网站的原始服务器一样,响应用户的请求。由于它离用户更近,因而响应时间必然更快。

  每个CDN节点由两部分组成:负载均衡设备和高速缓存服务器

  负载均衡设备负责每个节点中各个Cache的负载均衡,保证节点的工作效率;同时,负载均衡设备还负责收集节点与周围环境的信息,保持与全局负载DNS的通信,实现整个系统的负载均衡。

  高速缓存服务器(Cache)负责存储客户网站的大量信息,就像一个靠近用户的网站服务器一样响应本地用户的访问请求。

  CDN的管理系统是整个系统能够正常运转的保证。它不仅能对系统中的各个子系统和设备进行实时监控,对各种故障产生相应的告警,还可以实时监测到系统中总的流量和各节点的流量,并保存在系统的数据 库中,使网管人员能够方便地进行进一步分析。通过完善的网管系统,用户可以对系统配置进行修改。

  理论上,最简单的CDN网络有一个负责全局负载均衡的DNS和各节点一台Cache,即可运行。DNS支持根据用户源IP地址解析不同的IP,实现就近访问。为了保证高可用性等,需要监视各节点的流量、健康状况等。一个节点的单台Cache承载数量不够时,才需要多台Cache,多台Cache同时工作,才需要负载均衡器,使Cache群协同工作。

  而CDN的关键技术主要有内容路由技术、内容分发技术、内容存储技术、内容管理技术等。

内容路由技术

  CDN负载均衡系统实现CDN的内容路由功能。它的作用是将用户的请求导向整个CDN网络中的最佳节点。最佳节点的选定可以根据多种策略,例如距离最近、节点负载最轻等。负载均衡系统是整个CDN的核心,负载均衡的准确性和效率直接决定了整个CDN的效率和性能

  通常负载均衡可以分为两个层次:全局负载均衡(GSLB)和本地负载均衡(SLB)。全局负载均衡(GSLB)主要的目的是在整个网络范围内将用户的请求定向到最近的节点(或者区域)。因此,就近性判断是全局负载均衡的主要功能。本地负载均衡一般局限于一定的区域范围内,其目标是在特定的区域范围内寻找一台最适合的节点提供服务,因此,CDN节点的健康性、负载情况、支持的媒体格式等运行状态是本地负载均衡进行决策的主要依据。

  负载均衡可以通过多种方法实现,主要的方法包括DNS、应用层重定向、传输层重定向等等。

  对于全局负载均衡而言,为了执行就近性判断,通常可以采用两种方式,一种是静态的配置,例如根据静态的IP地址配置表进行IP地址到CDN节点的映射。另一种方式是动态的检测,例如实时地让CDN节点探测到目标IP的距离(可以采用RRT,Hops作为度量单位),然后比较探测结果进行负载均衡。当然,静态和动态的方式也可以综合起来使用。

  对于本地负载均衡而言,为了执行有效的决策,需要实时地获取Cache设备的运行状态。获取的方法一般有两种,一种是主动探测,一种是协议交互。主动探测针对SLB设备和Cache设备没有协议交互接口的情况,通过ping等命令 主动发起探测,根据返回结果分析状态。另一种是协议交互,即SLB和 Cache根据事先定义好的协议实时交换运行状态信息,以便进行负载均衡。比较而言,协议交互比探测方式要准确可靠,但是目前尚没有标准的协议,各厂家的实现一般仅是私有协议,互通比较困难。

内容分发技术

  内容分发包含从内容源到CDN边缘的Cache的过程。从实现上看,有两种主流的内容分发技术:PUSH和PULL.

  PUSH是一种主动分发的技术。通常,PUSH由内容管理系统发起,将内容从源或者中心媒体资源库分发到各边缘的Cache节点。分发的协议可以采用 HTTP/FTP等。通过PUSH分发的内容一般是比较热点的内容,这些内容通过PUSH方式预分发(Preload)到边缘Cache,可以实现有针对的内容提供。对于PUSH分发需要考虑的主要问题是分发策略,即在什么时候分发什么内容。一般来说,内容分发可以由CP(内容提供商)或者CDN内容管理员人工确定,也可以通过智能的方式决定,即所谓的智能分发。它根据用户访问的统计信息,以及预定义的内容分发的规则,确定内容分发的过程。

  PULL是一种被动的分发技术,PULL分发通常由用户请求驱动。当用户请求的内容在本地的边缘Cache上不存在(未命中)时,Cache启动PULL方法从内容源或者其他CDN节点实时获取内容。在PULL方式下,内容的分发是按需的。

  在实际的CDN系统中,一般两种分发方式都支持,但是根据内容的类型和业务模式的不同,在选择主要的内容分发方式时会有所不同。通常,PUSH的方式适合内容访问比较集中的情况,如热点的影视流媒体内容;PULL方式比较适合内容访问分散的情况。

  在内容分发的过程中,对于Cache设备而言,关键的是需要建立内容源URL、内容发布的URL、用户访问的URL,以及内容在Cache中存储的位置之间的映射关系。

内容存储技术

  对于CDN系统而言,需要考虑两个方面的内容存储问题。一个是内容源的存储,一个是内容在Cache节点中的存储。

  对于内容源的存储,由于内容的规模比较大(通常可以达到几个甚至几十个TB),而且内容的吞吐量较大,因此,通常采用海量存储架构。如NAS和SON.

  对于在Cache节点中的存储,是Cache设计的一个关键问题。需要考虑的因素包括功能和性能两个方面:在功能上包括对各种内容格式的支持、对部分缓存的支持,在性能上包括支持的容量、多文件 吞吐率、可靠性、稳定性。

  其中,多种内容格式的支持要求存储系统根据不同文件格式的读写特点进行优化 ,以提高文件内容读写的效率,特别是对流媒体文件的读写。

  部分缓存能力指流媒体内容可以以不完整的方式存储和读取。部分缓存的需求来自用户访问行为的随机性,因为许多用户并不会完整地收看整个流媒体节目,事实上,许多用户访问单个流媒体节目的时间不超过10分钟。因此,部分缓存能力能够大大提高存储空间的利用率,并有效地提高用户请求的响应时间。但是部分缓存可能导致内容出现碎片问题,需要进行良好的设计和控制。

  Cache存储的另一个重要因素是存储的可靠性,目前,多数存储系统都采用了RAID技术进行可靠存储。但是不同设备使用的RAID方式各有不同。

内容管理技术

  内容管理在广义上涵盖了从内容的发布、注入、分发、调整、传递等一系列过程。在这里,内容管理重点强调内容进入Cache点后的内容管理,我们称为本地内容管理。

  本地内容管理主要针对一个CDN节点(由多个CDN Cache设备和一个SLB设备构成)进行。本地内容管理的主要目标是提高内容服务的效率,提高本地节点的存储利用率。通过本地内容管理,可以在CDN节点实现基于内容感知的调度,通过内容感知的调度,可以避免将用户重定向到没有该内容的Cache设备上,从而提高负载均衡的效率。通过本地内容管理还可以有效地实现在CDN节点内容的存储共享,提高存储空间的利用率。

  在实现上,本地内容管理主要包括如下几个方面。

  一是本地内容索引。本地内容管理首先依赖于对本地内容的了解。包括每个Cache设备上内容的名称、URL、更新时间、内容信息等。本地内容索引是实现基于内容感知的调度的关键。

  二是本地内容拷贝。通常,为了提高存储效率,同一个内容在一个CDN节点中仅存储一份,即仅存储在某个特定的Cache上。但是一旦对该内容的访问超过该Cache的服务提供能力,就需要在本地(而不是通过PUSL的方式)实现内容的分发。这样可以大大提高效率。

  三是本地内容访问状态信息收集。搜集各个Cache设备上各个内容访问的统计信息,Cache设备的可用服务提供能力及内容变化的情况。

  可以看出,通过本地内容管理,可以将内容的管理从原来的Cache设备一级,提高到CDN节点一级,从而大大增加了CDN的可扩展性和综合能力。

  综上所述,CDN作为一种支持大规模高质量的流媒体服务的关键技术,目前已经基本成熟,具备了广泛应用的能力。

 

转自:http://blog.sina.com.cn/s/blog_5dcf5ccb0100dm80.html

分享到:
评论

相关推荐

    内容分发网络的四大关键技术简介.doc

    总之,CDN的四大关键技术——内容路由、内容分发、内容存储与内容管理,共同构建了一个高效、稳定、可扩展的内容传输网络,为全球用户提供流畅、无延迟的多媒体体验。随着技术的不断进步与创新,CDN将继续在宽带网络...

    行业分类-设备装置-基于移动用户的实时视频分发系统及方法.zip

    再者,实时视频分发还涉及CDN(内容分发网络)技术,它通过在全球范围内部署边缘服务器,将视频内容缓存到离用户最近的节点,大大减少延迟,提高服务质量。同时,P2P(对等网络)技术也可能被利用,通过用户之间的...

    IPTV培训--华为

    内容分发网络(CDN)是IPTV网络中的关键技术,它通过分布式架构提高了媒体内容的传输效率,使得内容能够快速准确地达到用户端。 在IPTV网络方案中,还包括了承载网络和家庭网络的部署。承载网络主要包括IP网络和...

    藏经阁-一站式短视频技术架构的新解读.pdf

    本文将围绕内容上传、存储、处理以及分发四大关键环节进行详细阐述。 首先,面对短视频内容的快速增长,如何实现快速上传成为首要问题。传统方式可能面临带宽限制和上传速度慢的问题,但通过优化的上传策略,如...

    保利威POLYV云直播产品介绍 v1.0.docx

    为了解决这些问题,保利威公司推出了POLYV云直播产品,该产品采用了安全技术、平台智能技术、系统融合技术和视频大数据技术等四大关键技术,旨在提高企业视频应用的质量和安全性。 其中,安全技术是POLYV云直播产品...

    千万级规模高性能、高并发的网络架构经验分享.docx

    CDN(内容分发网络)通过网络智能调度和多级缓存优化提升网络传输速度。服务化则是将大系统拆分为小服务,提高模块化程度和灵活性。消息队列用于异步处理,减少系统间的耦合,提高系统的响应速度。 以新浪微博为例...

    专题资料(2021-2022年)IPTV网络电视产业化运营要点探析doc18.doc

    与传统电视不同,IPTV具备直播、时移、点播等多种功能,用户可以自由选择观看内容,并与内容提供商进行互动。 IPTV的技术平台是一个复杂而完整的体系,包括前端系统、存储系统、流媒体服务器、运营管理系统和承载与...

    视频点播服务的对等网络的理论模型 外文翻译

    视频点播服务通常分为集中式、基于代理、内容分发网络(CDN)和混合架构这四大类。集中式架构中,源服务器负责所有客户服务,但存在单点故障风险,且需要高性能服务器。基于代理的架构通过在关键位置部署代理服务器...

    计算机行业边缘计算专题报告:云计算体系新助力,拆解边缘计算寻找新机会-20191122-东莞证券-24页.pdf

    边缘计算的架构通常包括基础设备、计算机平台和CDN(内容分发网络)等核心要素。边缘数据中心和边缘网络构成边缘计算的基础,它们与中心云协同工作,提供实时、动态和智能的服务。边缘计算模型中的基础资源、边缘...

    Openstack企业级云服务架构.pptx

    在OpenStack的企业级应用中,四大核心业务线包括互联网数据中心(IDC)、云计算、大数据以及内容分发网络(CDN)。该平台提供的服务涵盖云主机、云存储、云备份、云接入、云路由器、云负载均衡器和云安全网关等,...

    网上商城系统的设计与实现

    同时,为了提高性能和安全性,会运用缓存技术、CDN内容分发网络、SSL加密等手段。此外,考虑到并发处理和大数据量,可能还需要采用分布式计算、负载均衡和NoSQL数据库等技术。 实施过程中,首先进行需求分析,明确...

    从云计算跨越到边缘计算.pdf

    云计算的历史可追溯至早期的网络架构理念,最初由Sun公司于1983年提出的“网络即是电脑”概念,到21世纪初的四大开源云计算平台——OpenNebula、Eucalyptus、CloudStack和OpenStack。其中,OpenStack最终成为了...

    后端开发秋招复习资料

    - 负载均衡与CDN:提高服务可用性和内容分发效率。 2. **操作系统**: - 进程与线程:创建、调度、通信机制及其异同。 - 内存管理:虚拟内存、页面替换算法(如LRU)。 - 文件系统:目录结构、磁盘I/O操作。 -...

    大湿手机直播系统php源码.zip_php视频_源码_电视直播_电视直播源码_直播

    为了保证直播的流畅性,源码可能还涉及到CDN(内容分发网络)的使用,通过分布式节点将视频内容缓存到离用户更近的地方,减少延迟,提高播放体验。此外,还会针对带宽占用、服务器负载等问题进行优化。 六、学习与...

    智慧国电、智慧电力(物联网、大数据、云计算)方案.ppt

    此外,沃云还具备云网一体化的优势,结合CDN服务,实现了网站/应用加速、视频分发加速等功能,确保了服务的稳定性和高效性。 4. **安全服务**是智慧国电方案的重要组成部分。某某公司获得了多项安全认证,其云平台...

    重要基础知识.docx

    3. **CDN与反向代理**:CDN(Content Delivery Network)加速静态资源的访问,通过全局的缓存节点减少网络延迟;反向代理则隐藏真实服务器,提高安全性,同时可进行负载均衡。 4. **Spring的IOC(Inversion of ...

Global site tag (gtag.js) - Google Analytics