CDN及P2P技术在流媒体网络中的应用

news/2024/11/2 14:31:07/

新疆电信有限公司信息业务分公司  闫卫东

 

【 来源:《新疆通信》  上传时间:06-10-16 】


 

摘 要: 随着宽带网络的日益普及,流媒体成为了重要的互联网业务之一,完成实时流媒体的分发的主流技术有CDN(内容分发网络)及P2P(点对点)。然而两种技术都有他们各自的局限性,CDN方式需要大量的服务器用于不同层级的分发,同时需要运营商投入人力物力进行维护,在另一方面P2P方式,需要在分发开始就有足够数量的用户对等共享点,启动P2P分发过程。本文结合现状简要描述了CDN及P2P两种技术发展过程和在疆内的应用,讨论了技术实现方式及发展方向。

关键词: CDN(content Distribution/Delivery network) P2P(Peer-to-Peer)

     流媒体 网络 运营 实时直播

 

  1. 引言
  自从上世纪80年代,随着WEB技术在世界的快速普及和蓬勃发展,人们在Internet上的应用已经从初期的ftp,mail,telnet等计算机联通为目标的主要应用,到以WEB为主流应用的转变,进入九十年代末期伴随ADSL等宽带用户接入技术的逐渐成熟,用户在获取信息的习惯上还是倾向于“闻其声见其人”,对视频的需求显得越发强烈。

  网页上文字或图片资料一般采用文件完整下载的方式就可以正常访问,但是流媒体不同于传统的文件,文件常常是体积巨大,甚至有的仅是流的形式,无法迅速地完全下载。这种完全下载完成后才能进行播放方式不适合流媒体。可以看出流媒体具有三个特点:连续性(continuous)、实时性(real-time)、时序性(time-ordered)(即有严格的前后时序关系)。如何在互联网上提供便捷稳定的流,使用户能够所见即所得的边下载边播放,经过业界研究和实践,Real network, Microsoft等一批公司推出各自的实时流媒体的应用技术用于商用,流媒体应用从此也开始成为互联网上流量较大的一部分。此时支持流媒体服务的就是集中分布的专用流媒体服务器。

  根据CNNIC在公布的《第18次中国互联网络发展状况统计报告》国内经常使用在线影视收看及下载(在线电视)从2003年7月的9.0%提高到为2006年7月的37.3%,经常观看流媒体用户数量也从630万到了现在的4500万,在疆内主要流媒体服务提供网站丝路宽频的用户在线时长也比2003年提高了将近40倍,由此可以看出互联网用户对视音频资料的需求越来越强烈,互联网上流媒体资料同时也在以几何级数的数量高速增长,这些资料在传输过程中占用的流量也越来越大,但是流媒体服务提供商带宽增长速率远远没有达到用户对带宽的需求增长,越来越多用户通过采用ADSL或LAN等各种宽带高速接入方式接入Internet解决了“最后一公里”问题,但这些用户还是感觉访问互联网内容的速度愈来愈慢。在流媒体服务器侧带宽不能随着网络流量线性增长的情况下,这些互联网业务自身业务结构上的瓶颈问题就越来越明显地暴露出来。如何提高网民可感知的上网速度,提高用户上网质量,成为包括运营商、设备商思考的一个重要问题。

  以下对用户访问流媒体服务器标准过程作一说明:

图1 Internet 网络基本结构

传统方式用户访问流程:


图2 用户直接访问镜像站(抓包结果)

  (1)用户在自己的浏览器或播放器中输入或超链接至要访问的SP网站文件地址;
  (2)浏览器向DNS请求对该域名的解析;
  (3)本地DNS将请求发到SP的网站的授权DNS;
  (4)授权DNS将服务器的地址作为解析结果(IP地址)送给本地DNS;
  (5)本地DNS再将解析结果返还给用户;
  (6)用户得到网站的服务器IP地址后,就可以直接进行访问。

  我们可以清晰地看到传统的访问模式执行虽然简单,但当用户达到一定数量会严重影响访问效率和质量,主要存在以下几个问题:
  (1)传统的DNS解析,在将主机名转换为IP地址时,并不预先判断网络的状态,当到达服务器网络中断或服务器宕机时,来自用户的访问请求仍将被发往这台不能提供服务的主机,造成SP内容服务的中断;
  (2)另一个严重的隐患是访问效率无法提高。用户对同一网站的内容的访问必须经过许多路由器的转接,才能最终到达网站,中间需要跨过多个ISP网络。即使在理想情况下,由于路由器的每一次转发,都会造成一个延迟,虽然单个这样的延迟时间较少,但当网络规模很大时,中转数会大量增加,造成的延迟也会更加明显。同时根据连续性的原则不允许中间的任意路由器拥塞,当任何一个路由器故障或者拥塞都会造成访问的中断,严重影响用户访问的质量;
  (3)当用户到达一定量时,超越访SP网站负荷,将会导致SP服务器系统或是网络的过载而完全瘫痪,影响SP的服务质量。

  2. CDN及P2P技术阐述:
  解决以上问题,目前有两种较好的办法。一种是建设覆盖全网的内容分发网络(CDN),一种是采用P2P点对点技术分散网络流量。下面分别对这两种技术作阐述:
  2.1 CDN(Content Distribution/Delivery Network)内容分发网络
  CDN的历史可上溯到1998年,当时美国MIT研究人员最早提出了CDN的概念。在Internet发展初期网络上的信息主要以简单的文字和图片为主,为了使网民更快的访问, WEB 加速的设备出现了,主要通过在用户接入节点附近建立对于文字和图片内容的缓存。当互联网用户请求访问某个远端服务器上的网页内容时,用户的客户端实际上并不是到网页的所在的原网站或服务器,而是到已预先存储此内容的WEB加速设备(业界一般称之为“WEB cache” )上获取内容,此过程对于用户来说是完全透明的,通过以上过程用户就近访问数据,不需要跨越运营商的网络,减少了网络时延从而达到WEB内容加速的目的。随着各种以浏览文字和图片为主的互联网应用的进一步发展,这种WEB加速设备在网络上越来越多,多台WEB加速设备与提供完成进行组网,完成WEB内容的分发和调度,形成了一套完整的WEB加速网络,这就是CDN内容分发网络(Content Distribution/Delivery Network)的概念,此时的CDN网络服务的对象主要是一个以文字和图片为主要内容WEB。自从1999年,雅虎正式开始使用CDN服务后,各大门户网站纷纷开始使用CDN提高自己的服务质量;2000年,中国第一个专业CDN服务网络ChinaCache(蓝汛)正式运行,新浪成为其第一个CDN用户。
但从WEB业务和流媒体业务来看,他们两者对网络设备要求是不一样的,特别是对于Cache设备的技术要求是不一样的。在这种情况下,CDN技术也为了适应流媒体业务作出了改善,更多的公司参与流媒体CDN网络的开发及应用。由于使用既支持WEB业务的设备来支持大的流媒体的并发比较困难,同时由于基于IA(Intel Architecture)架构服务器的价格降低,国内包括思华、华为等一些设备厂商研发基于IA架构的支持流媒体业务的Cache设备推出了较为成熟的CDN/MDN产品:如华为MDN解决方案中的ES-200、ES-500的Cache设备,就是这种设备的典型代表。同时,原有的设备调度模式,因为其较低的命中率,并且在命中后,由于负载等原因可能不能提供稳定高质量的码流,就决定了流媒体网络需要更加智能的调度设备。在综合考虑DNS、负载均衡、重定向、支持多协议内容路由等方面的要求,设备厂商设计具有支持DNS方式、基于HTTP、MMS、RTSP重定向、DNS和重定向结合的调度方式RRS设备实现各种复杂调度策略。

   下面以疆内某互联网运营商CDN网络现状举例说明,CDN技术实现的基本原理。


 
图3 CDN网络结构图

  这个CDN系统由三个部分构成:中心内容平台、内容路由系统、边缘节点网络。扩展模块包括内容源管理(媒体资源库)、用户终端(媒体播放器)、SP接口和管理、用户认证、授权和计费(AAA)、内容版权管理(DRM)等。
  为解决用户访问问题,该运营商向各个SP提出了内容/媒体推送CDN平台为基础的解决方案。当用户访问已经使用了内容推送服务的SP网站时,其解析过程与传统解析方式的最大区别就在于不直接访问媒体服务器。

  用户访问过程简述如下:
  (1)用户访问SP/CP WEB页面,点击一媒体内容的URL;
  (2)用户终端请求 DNS对其所点击的URL进行解析;
  (3)DNS返回RRS(媒体调度服务器/重定向服务器)的IP地址;
  (4)用户通过HTTP协议访问RRS(媒体调度服务器/重定向服务器);RRS(媒体调度服务器/重定向服务器)对用户临近的ES边缘节点进行探测,(测试信息包括服务器负载,链路时延,影片分布等);
  (5) 根据RRS调度策略把用户的访问重定向到最适合该用户的ES;
  (6) ES通过对用户授权验证,向用户提供流媒体内容服务。

  下图说明了一个用户访问使用CDN/MDN服务的网站的完整过程。(如图4)


图4 用户访问CDN服务器流程示意图

  使用CuteSniffer 查看访问情况进一步表现以下结果。


图5用户访问CDN流程示意图(抓包结果)

  2.2 P2P (Peer-to-Peer)点对点
  P2P(Peer-to-Peer)点对点是一种分布式网络技术,打破了CDN传统的Client/Server (C/S)模式,使在分发过程的参与者共享他们所拥有的一部分资源,这些共享资源互相通过网络直接连接,每个结点既充当服务器为其他结点提供服务,同时也享用其他结点提供的服务,具备客户端和服务器双重特性。这些对等节点(Peer)能被其它对等节点(Peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)获取者(Client),又是资源(服务和内容)提供者(Server)。


图6 P2P网络模式和C/S网络模式

  利用P2P技术传输流媒体节目时,文件被分解为很多小的片段,每个用户下载存储若干片段再互相对接交换,最后每个用户都得到完整的拷贝,这种方法同时下载用户越多,下载速度越快而所有节目文件实际上被分散存储在用户终端中。

  目前的P2P流媒体系统网络结构模型分为纯分散型、半集中型、混合分散型三种。通常P2P网络主要由两类主机节点组成:流媒体分发服务器(源)和客户端(对等点)。源端程序将原始的流媒体数据按照P2P网络传输协议(如PPLIVE使用的Synacast协议)进行封装,并以P2P的方式分发到网络上。每一个电视频道对应一个源端程序。客户端程序启动后,会自动登陆到对应的流媒体分发网络内,寻找并连接到多个对等节点,然后根据双方的资源状况和网络情况,进行数据的上传和下载。通常情况下一台标准的企业级PC服务器可以支持多套电视节目。

  由于采用了P2P技术进行流媒体内容的分发,P2P直播系统对服务器端的要求比较低。通常情况下,每一个源分发服务程序只占用5%左右的CPU负载,20 MB的内存和10 Mb/s的网络带宽。相比传统的Windows Media流媒体网站,在一般情况下一台100 Mb/s服务器以单播方式提供一路节目的直播,最多可支持200~300个用户并发访问;当采用了P2P方式后,一台100 Mb/s接入互联网的普通PC服务器可以同时提供10路视频节目的直播,每一路节目均可以支持超过几千用户或是更多同时收视。


图 7 PPlive 2006年世锦赛截图


图8 用户使用PPLIVE建立连接图(抓包结果)

  从上图可以看出PPLIVE等P2P流媒体软件其数据来源于多个对等的用户,同时这些用户不仅仅来自疆内,此时流媒体的分发和访问不再受单个用户服务器的影响,而是来自用户附近的对等用户数量及可利用的带宽等综合指标。
  这种方式由于其节目源丰富。在国内应用增长迅速。从2004年开始出现采用P2P流媒体技术在互联网上进行电视直播的网站,到目前中国已有十多个网站使用各自发展的软件提供P2P流媒体直播业务,掀起了一股P2P Internet TV浪潮。主要Internet TV系统有:
  * PPLive网络
  * PPStream网络
  * QQ直播网络(已与新版QQ进行了捆绑)
  * 猫眼网络电视(猫扑网)
  * TVKoo网络(沸点网络电视)
  * Rox磊客网(原CoolStreaming、光芒传媒Roxbeam)
  * Tvants网络(电视蚂蚁)
  * Gridmedia网络(清华大学)
  * Uusee网络(悠视网)
  * Mysee网络(美视网)
  目前P2P流行的流媒体直播平台的主要性能如下:
  (1)放的电视节目的码率一般为300~500 kb/s,352×288分辨率,有些频道已经开始提供800 kb/s的码率,达到了准DVD的画面质量;
  (2)数据缓冲时间少于1 分钟,可以给用户提供稳定、清晰的直播电视节目或影视节目轮播;
  (3)可靠性好由于音视频源来自多个对等节点一般不会因为单个节点失效出现播放停顿的问题;
  (4)连接方便,大部分软件具有完善内网穿越功能,从而保障内网用户的使用。 
  目前P2P流媒体电视直播普遍采用计算机终端,由于仅在用户计算机中存储的内容仅几分钟,使用内存即可完成数据临时存储,不需要使用硬盘,可以看出这种对硬件的需求有可能制造廉价的机顶盒终端。
  可以看出P2P方式有效地解决了用户不断增长给流媒体服务器带来的压力的问题,同时由于用户的增加反到加强了P2P方式的健壮性,目前利用P2P方式在直播节目中有较大的优势。

  3. CDN与P2P的对比:
  3.1 CDN与P2P技术实现流媒体分发对比
  CDN作为目前较为成熟的流媒体分发手段属于分布式C/S结构,主要用于各类直播和点播业务,同时也能够兼容实现作为WEB cache 的功能,目前由运营商和SP主导建设,有较为清晰的业务模式,而P2P采用分布式对等结构,在进行流媒体直播方面有较大的优势,同时在文件交换中它也给互联网带来了前所未有的便捷。但从业务可运营性上来说,除了广告以外暂时没有别的直接盈利手段,业务模式不明确。
  相对来说CDN在可靠服务质量保证,可用性,可管理性, 可运营能力,节省网络资源具有明显的优势,P2P在成本、扩展性、全网可靠性、和支持突发访问上具有良好的特点。同时两种技术也都存在明显的不足,CDN投资较高,管理复杂,受媒体格式影响大互通性不好,在处理大文件时分发效率很低,而P2P方式在全网QoS上缺乏必要的保证,同时由于天生版权的缺陷无法被内容提供商接受,并且在用户未达到一定数量时会出现该区域内用户均缺少某个关键片断的极端情况,造成流媒体播放中断。但P2P技术使用得当将有效的加速分发的渠道,并避免服务器瓶颈;用得不好则成为浪费带宽、盗版泛滥的平台。国内外都曾出现过互联网服务提供商“封杀”P2P的事件。在目前的商业模式下,如何将内容提供商和互联网服务提供商纳入P2P利益链条当中,已成为P2P技术市场发展的一大考验。

  4. 总结 
  目前结合两种技术的优点,一种新型的融合模型在讨论过程中,利用客户端按照纯分散型结构模型构建一个自组织、可扩展性强的P2P网络,同时,加入CDN中代理缓存服务器,使其相当于一个中心节点,在使用一些集中式的控制策略后可以明显地提高分发效率。同时CDN可参考P2P分包的形式,仿照存储技术中的RAID技术将内容分割成多个子片,分布在不同的peer节点,客户端获取该内容时,可以通过多条路径同时从这些peer节点下载对应节目子片断,并在本地将这些节目子片断重新拼装来实现。通过这样还提高了内容的可用性。


图9 用户使用CDN-P2P融合方式建立连接图

  如图9所示融合P2P方式的CDN内容分发网络,利用CDN网络的ES边缘节点作为存放流媒体完整片断的种子用户,同区域内的客户端通过共享机制,共同实现对流媒体的分发,采用此方式既通过了P2P技术有效保证了各个客户端采用就近分享数据,降低了跨域访问带来的不确定性,又通过CDN的ES边缘节点上的种子文件保证了数据的完整性。
  随着互联网技术的发展及网络的日益拥塞,既需要建立一个有秩序和有规则的互联网环境,又要满足广大用户对流媒体信息的迫切需求,在这样的环境下,通过两种技术的结合或融合应该会产生更有效、更完善的内容分发技术。

相关参考文献及统计数据来源
1) 中国互联网络信息中心CNNIC 《第18次中国互联网络发展状况统计报告》
2)ChinaCache CDN 技术白皮书 2005年6月 ,p4
3)华为MDN流媒体分发网络产品白皮书 , p10
4) Simon Pietro Romano Content Delivery Networks (CDN) Peer-to-Peer Networks (P2P)
5) Dongyan Xuyz_, Sunil Suresh Kulkarniz, Catherine Rosenbergz, Heung-Keung Chaiz A CDN-P2P Hybrid Architecture for Cost-Effective Streaming Media Distribution ,p2-4

【审核:陶智】



http://www.ppmy.cn/news/132258.html

相关文章

P2P流媒体技术原理及应用

作者:王洪波,马轶慧 英文关键字:P2P network; streaming media; scalability; data-driven 关键字:对等网络;流媒体;可扩展性;数据驱动 摘要:基于P2P的流媒体技术是一项非常有前途的技术,该技术有两方面的优点:不需要互…

计算机网络④-③/④:流媒体协议:编码/推流/拉流、 P2P协议:.torrent/DHT

应用层(OSI 模型的第七层, TCP 模型的第四层, 即应用层,)还有RTMP、P2P等协议。 1 流媒体协议 视频流中的图片存在:空间冗余、时间冗余、视觉冗余、编码冗余。可以通过编码来压缩视频。 编码应该具有一定…

PPEasy(P2P+流媒体)传输系统简介

现在有很多人架设视频网站,要缓解视频网站服务器带宽的压力,最好的办法是使用p2p的方式。从头写一个p2p系统,要花费太多功夫,不如直接用第三方开发包。本文介绍开源的p2p直播系统PPeasy,并给出一些有用信息。 PPeasy是…

几种P2P流媒体开源项目介绍

P2P流媒体开源项目介绍 1. PeerCast 2002年成立,最早的开源P2P流媒体项目。PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据。节点离根节点越远,传输时延就越大&#x…

【p2p】p2p streaming capturer based on flv

传统的p2p架构:边缘服务器p2p seed支持客户端p2pplayer直接拉取服务端的streaming 负责给p2pcapturer 喂数据 p2pcapture 收到的是标准流媒体协议, – 有可能,streaming还得做转码p2pcapture 把收到的流都mux 为flvp2pcapturer 负责生成p2p包给到supperpeer服务 p2pcapturer…

p2p传输实时视频流

HYP2P是好游科技开发的p2p sdk,利用nat穿透的原理实现p2p打洞,主要用于实时音视频的传输。使用时可以配置成tcp模式或udp模式,tcp模式会自动帮您解决丢包、乱序、重传问题。中转模式则是基于tcp实现的。您可以灵活的自定义通信双方的协议&…

什么是p2p流媒体技术?

P2P是英文Peer-to-Peer(对等)的简称,又被称为“点对点”。“”。“对等”技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。德国互联网调研机构ipoque称&…

让流媒体服务SRS支持P2P通信

# srs支持p2p通信简介 流媒体服务srs是国内开发且开源的一款功能强大,性能强劲的优秀的流媒体服务器,目前正被越来越广泛的使用。srs一般被用户部署在公网上的云主机,这样方便用户进行推拉流等各种操作。但将srs部署在公网的云主机上也会带来…