您的当前位置:首页正文

内容分发网络_CDN_的发展与应用

来源:画鸵萌宠网
󰀁

中山大学研究生学刊(自然科学、医学版)

第26卷第1期󰀁JOURNALOFTHEGRADUATES󰀁VOL.26󰀂1

2006󰀁SUNYAT-SENUNIVERSITY(NATURALSCIENCES、MEDICINE)󰀁2006

内容分发网络(CDN)的发展与应用

*

佘丹娴

(中山大学电子与通信工程系,05硕,广州510275)

摘󰀁要:内容分发网络(CDN)技术的出现,使传统的Web访问的数据传输

方式得到很大的改进。它通过应用层的内容智能路由技术,保证用户实现就近访问,大大改善了Web访问性能。CDN解决方案用于流媒体服务,有良好的服务质量保证。本文介绍了CDN的基本原理,并介绍了采用CDN技术的一种流媒体服务体系Prism。

关键词:内容分发网络(CDN);流媒体服务;流媒体门户结构(Prism)

随着宽带网络接入的普及以及个人计算机性能的不断提高,促进了用户对网络服务质量更高的要求。用户希望能够更快更好得通过Web浏览器从Web服务器上获得网页,内容分发网络(ContentDistributionNetwork,CDN)应运而生。而现在,CDN不仅在提供静态Web上得到了广泛应用,而且在音频视频这些流媒体服务方面也显现了强劲的发展潜力。

1󰀁CDN简介

CDN是以现有互联网为基础的专业化综合应用平台,它由分布在网络边缘的应用服务器群组成,通过应用层的内容智能路由,自动保证用户实现就近访问,为网站提供高效、稳定、安全的内容和应用的分布服务。如图1-1所示。

举个例子来说,当某用户访问网站时,网站会利用全球负载均衡技术,将用户的访问指向到距离用户最近的正常工作的缓存服务器上,直接响应用户的请求。当用户访问已经使用了CDN服务的网站时,其解析过程与传统解析方式的最大区别就在于网站的授权域名服务器不是以传统的轮询方式来响应本地DNS的解析请求,而是充分考虑用户发起请求的地点和当时网络的情况,来决定把用户的请求定向到离用户最近同时负载相对较轻的节点服务器上。通过用户定位算法和服务器健康检测算法综合后的数据,可以将用户的请求就近定向到分布在网络 边缘!的服务器上,保证用户的访问能得到更及时可靠的响应。由于大量的用户访问都由分布在网络边缘的CDN节点服务器直接

*

收稿日期:2006-03-10

∀研究生学刊#(自然科学、医学版)二∃∃六年第一期

[1]

响应了,这就不仅提高了用户的访问质量,同时有效地降低了源服务器的负载压力。

图1-1󰀁CDN基本结构

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

[2]

1󰀁1󰀁内容路由技术

内容路由技术的作用是将用户请求导向整个CDN网络中的最佳节点。最佳节点的选择可以运用多种评估策略来实现,例如用户与服务器距离最近、服务器负载最轻等。这是CDN的核心,它决定了整个CDN的效率和性能。内容路由技术可以通过多种方法实现,包括DNS、应用层重定向、传输层重定向等。1󰀁2󰀁内容分发技术

内容分发技术指将内容从源到复制缓存到CDN边缘服务器的过程。从实现上看,有两种主流的分发技术:PUSH和PULL。

PUSH是一种主动分发的技术。通常,PUSH由内容管理系统发起,将内容从源或者中心媒体资源库分发到各边缘的Cache节点。分发的协议可以采用HTTP、FTP、RSTP等。对于PUSH分发需要考虑的主要问题是分发策略,即在什么时候分发什么内容,可以根据用户访问的统计信息,以及预定义的内容分发规则来确定。

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

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

对于CDN系统而言,需要考虑两个方面的内容存储问题。一个是内容源的存储,一个是内容在Cache节点中的存储。对存储性能的要求是吞吐量大、可靠性和稳定性。1󰀁4󰀁内容管理技术

本地内容管理主要针对一个CDN节点(由多个CDNCache设备和一个本地负载均衡设备构成)进行,即决定CDN节点中应该存储何种资源以及如何进行节点内容更新。96󰀁内容分发网络(CDN)的发展与应用

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

2󰀁CDN系统的设计原则

为了提高访问服务质量,设计CDN系统,应该综合考虑以下要求

[7]

:

1)安全可靠性:为保证将来的业务应用,网络必须具有高可靠性。可以在采用硬件备份、冗余等可靠性技术的基础上,采用相关的软件技术,提供较强的管理机制、控制手段、事故监控和网络安全保密等技术措施,提高网络系统的安全可靠性。

2)灵活性和可扩展性:网络系统是一个不断发展的系统,所以它必须具有良好的扩展性。能够根据将来信息化的不断深入发展的需要,方便地扩展网络覆盖范围、扩大网络容量和提高网络各层次节点的功能。

3)开放性:具备与多种协议计算机通信网络互连互通的特性,确保网络系统基础设施的作用可以充分发挥。

4)可管理性:能够实现监控、监测整个网络的运行状况,合理分配网络资源、动态配置网络负载,可以迅速确定网络故障等。

3󰀁CDN在流媒体服务中的应用

流媒体服务跟普通的静态Web服务相比,主要有几个不同点。首先,流媒体的数据量大,更新快,这就要求内容分发和管理技术能更加智能地更新相应的服务器内容,并且能够提供良好的服务质量。其次,流媒体服务应该提供良好的用户交互支持,适合用户的使用习惯。例如,用户会希望可以通过指定 频道+时间!的方式来获取音频视频。因此,流媒体服务要提供一种内容名字解析服务,把 频道+时间!的命名方式隐式地转换成相应的URL。

关于利用CDN来提高流媒体服务性能,已经有很多的组织和公司提出了系统的解决方案。本节介绍了在2000年第十届 国际数字音频视频网络和操作系统支持专题会议!上首次提出的一种解决方案%%%流媒体门户结构(PortalInfrastructureforStreamingMedia,Prism)

[3]

。后来,AT&T实验室及Cork大学的研究人员对其进行了完善

[4]

3󰀁1󰀁Prism体系基本结构

Prism体系包括三个基本的组成部分,如图3-1。

1)媒体源(livesource):存储从内容提供商处获得的流媒体内容,并在内容管理服务器的管理下,把内容分发到整个Prism网络。

2)门户(Portal):从媒体源和其他门户处获得流媒体内容,并由它们向客户提供服务。

3)客户端(Client):用户用来访问流媒体内容的设备,譬如PC和机顶盒。它们

97

∀研究生学刊#(自然科学、医学版)二∃∃六年第一期

通过宽带接入到Internet上。

图3-1󰀁Prism体系基本结构

这三者通过数据层面和控制层面进行通信。其中,数据层面控制流媒体数据在三者之间传输。如图3-1,内容分发机制(contentdistributionmechanism)负责从媒体源到门户或者门户之间的数据传输,而内容传送机制(contentdeliverymechanism)负责传送门户与客户端之间的数据。

控制层面,如图3-2,负责内容管理(contentmanagement)、内容发现(contentdiscovery)和内容重定向(content󰀂awareredirection)。

图3-2󰀁Prism控制层面

1)内容管理器(contentmanager):通过衡量服务类型信息、服务质量等级、门户存储容量、门户负载等一系列参数,决定门户的存储内容和内容更新策略。

2)内容发现机制:判断流媒体内容是否存在及其存储地点。内容发现过程由客户端的请求触发,不过这个过程对用户来说是透明的。

3)内容重定向机制:把用户请求转发到合适的门户。转发到哪个门户是由流媒体内容的存储地点,门户负载等参数决定的。所有的门户都具有基本的重定向功能,不过98󰀁内容分发网络(CDN)的发展与应用

Prism体系还设立了专门的重定向服务器。3󰀁2󰀁内容命名(contentnaming)

Prism结构中,流媒体内容由统一资源名字(UniformResourceName,URN)进行标志,而不是通过一般的统一资源定位(UniformResourceLocation,URL)来标志。用URN标志内容的好处是用户可以通过多种途径指定内容,而无需知道Prism的架构。图3-3指示了URN的语法。URN包含了频道名(channelname)和选项(specification)。其中,频道名指明了流媒体内容提供商的名字、内容版本、方位等。用户还可以在选项中增加其它要求的说明,例如通过 start!指定节目开始时间,通过 end!指定结束时间等。

图3-3󰀁URN语法

3󰀁3󰀁内容管理

内容管理器通过特定的策略协调流媒体内容在各个门户中的存放,这些策略可以是由管理员预先制定的,也可以由内容管理器按照一定算法,根据服务类型信息、服务质量等级、门户存储容量、门户负载等一系列参数自动制定。目前,已有很多不同的算法制定了各种内容分配和复制的策略,例如,利用内容访问频度的算法有合作缓存贪婪算法

[5]

内容管理器利用两种消息在内容源和门户之间通信,如图3-4。

图3-4󰀁内容管理消息

99

∀研究生学刊#(自然科学、医学版)二∃∃六年第一期

1)更新(update)消息:内容管理器通过更新消息告诉门户应该负责存储和管理哪些流媒体内容。

2)报告(report)消息:门户向内容管理器定期发送报告消息,内容管理器在需要时也可以请求门户发送。通过报告消息,门户向内容管理器通告了它具有的资源,资源利用率和负载情况。报告消息使得内容管理器可以动态确定内容的分发。例如,一个拥有某部电影的门户收到大量访问这部电影的请求,它会把这种情况告诉内容管理器,然后内容管理器指示其他门户进行同样内容的接收和存储。

更新消息和报告消息可以包含在可扩展标记语言(XML)中。如图3-5的更新消息。内容管理器通过这个消息告诉门户立刻去下载并存储RSTPURL中指定的内容,然后在2001年10月1日24:00删除。

图3-5󰀁更新消息示例

Prism体系中可以布置多个内容管理器,一方面保证CDN系统的可靠性,一方面可以进行负载均衡。不同的管理器负责不同类别流媒体内容的管理。不同域之间的内容管理器之间可以互相通信,如图2-4所示,这样,不同的CDN域之间可以进行内容共享。

3󰀁4󰀁内容发现

当客户端请求内容时,重定向服务器启用内容发现机制来定位内容,然后把用户请求转发给定位到的门户。当门户负载很重时,重定向服务器可以动态地把部分在此门户上的请求转移到其它门户上。

[6]

内容发现机制是基于映射服务(mappingservice)的。映射服务器把由URN标志的内容映射为一系列URL,以便把用户的请求重定向合适的服务器。映射服务器还存储了内容类型、内容编码和描述信息等,以便更好地匹配用户的请求。映射服务器与重定向服务器之间使用统一资源标志映射协议(UniformResourceIdentifierMappingProtoco,lUMP)来进行映射更新和请求。

UMP是一种请求-应答型的协议,它把URN影射为URL。当一个门户收到映射服务器的请求,如果它有所请求的内容,它发送一个响应包,否则,它会把请求转给另一个节点。UMP数据包中包含了一个标志符,以便响应包可以正确地对应到请求包。UMP也包含更新消息,由门户向映射服务器通告内容更新情况。100󰀁内容分发网络(CDN)的发展与应用

映射服务体系可以组织成一种等级结构,如图3-6。

图3-6󰀁映射服务等级结构

映射服务体系划分为多个域,域与域之间组织成等级结构。每个域中都有一台本地映射服务器。门户负责向本域的映射服务器更新资料,而本地映射服务器负责向上一级的服务器更新。本地映射服务器通过组播向本地门户查询,同时也通过组播向其他域的映射服务器查询不在本地的流媒体内容。通过这样的等级结构,可以高效地进行URN与URL的映射。3󰀁5󰀁内容重定向

默认下Prism把用户请求重定向于本地门户,以获得最快的响应。但是本地门户当时不一定拥有用户所请求的内容,或者只存储了一部分内容。在这种情况下,重定向服务器把用户请求传送给其他门户。这与目前的CDN重定向系统是相似的。

Prism体系重定向步骤如下:

1)用户通过Web浏览器或其它工具获得内容URN。

2)Web浏览器把URN和重定向服务器的URL一起发给Prism媒体播放器。3)媒体播放器连接了重定向服务器,利用RTSP向服务器请求URN指定的内容。4)重定向服务器向映射服务器发送一个UMP请求,以便获知URN指定内容是否可用及其存储位置。

5)重定向服务器接收到映射服务器的相应,通常可能有几个查询结果。重定向服务器衡量当前负载、门户位置,然后把客户端重定向到最优的门户。

6)客户端媒体播放器接收到重定向服务器的回应后,利用RTSP向门户请求内容,开始流传输。

7)如果门户没有后续媒体内容,它会从其他门户那里获取。

101∀研究生学刊#(自然科学、医学版)二∃∃六年第一期

为了避免客户重复向映射服务器发送请求,重定向服务器在它向客户发送的响应客户端的消息中包含初始URN和门户URL。这样,如果门户需要重定向到其他门户,它可以通过初始URN向映射服务器提出请求。

例如:响应消息rtsp://portal3/prismurn/cctv/*/*/*?=url=rtsp://portal2/33.m2t表示用户请求CCTV内容,并且其内容可以从URL标记中所指示的服务器获取。同时,初始URN也包含在这个消息中,便允许门户在必要的时候,利用初始URN直接向映射服务器发送请求,而不用客户重新请求。

4󰀁总󰀁结

CDN的出现,大大提高了Web访问的响应速度。尤其是流媒体放到CDN上以后,有了更可靠的服务质量保证。目前CDN在国内外都发展很快,吸引了众多内容服务提供商的注意。随着新的多媒体业务模型的增长,内容分发技术与CDN将成为以高可靠性的、可扩展的与安全的方式提供托管业务的关键,在保障网络的可访问性(速度、安全、完整性)方面发挥出更大的作用。参考文献:

[1]王松.中国CDN的发展与ChinaCache的成长之路[J].中国传媒科技,[2]杨明川.内容分发网络的四大关键技术[J].人民邮电报,

2005-6-17.

2005-6-13.

[3]A.Bassoeta.l Prism:anIP󰀂BasedArchitectureforBroadbandAccesstoTVandotherStreaming

Media,![J].Proc.10thInt󰀁lWorkshopNetworkandOperatingSystemSupportforDigitalAudioandVideo.Univ.ofNorthCarolinaatChapelHil,lJune,[4]CharlesD.Cranor,MattewGreen,ChuckKalmanek.

ContentDistributionNetwork,![J].ScaleDistributedCaches,![J].

2000.

EnhancedStreamingServicesina

eta.l

IEEEInternetComputing,July&August,2001.

[5]MadhukarR.KorupoluandMichaelDahlin. CoordinatedPlacementandReplacementforLarge󰀂

IEEETransactiononKnowledgeandDataEngineering,VOL.14,

NO.6,November&December,2002.

[6]SyamGadde,MichaelRabinovich,JeffChase. Reduce,Reuse,Recycle:AnApproachtoBuilding

LargeInternetCaches,![J].

Proc.

SixthWorkshopHotTopicsinOperatingSystems,

IEEE

ComputerSoc.Press,May,1997.

[7]张海航.网络优化的新宠󰀂CDN[N].天极网.

TheDevelopmentandApplicationofContentDistributionNetwork

SheDanxian

(DepartmentofElectronicsandCommunication,SunYat󰀂senUniversity,Guangzhou,510275)

Abstract:Thetechnologyofcontentdistributionnetwork(CDN)hasgreatlyimprovedthetraditionalWebservicequality.Withintelligentcontentredirectionintheapplicationlayer,itensuresWebuserstoaccessto

102󰀁内容分发网络(CDN)的发展与应用

itwillsatisfythehigh󰀂quality

thenearestserver.WhenCDNisappliedinstreamingmediaservice,PrismthatadoptsthetechnologyofCDN.

requirement.WeintroducetheprincipleofCDNinthispaper.Also,weanalyzeastreamingmediasystemKeywords:ContentDistributionNetwork(CDN);StreamingMediaService;Prism

103

因篇幅问题不能全部显示,请点此查看更多更全内容

Top