理论教育 P2P流媒体播放平台优化方案

P2P流媒体播放平台优化方案

时间:2023-06-22 理论教育 版权反馈
【摘要】:流媒体负载均衡要求高。在这种背景下,P2P技术走入了人们的视野,一些厂商开始尝试在流媒体领域引入业界先进的P2P技术。

P2P流媒体播放平台优化方案

3.3.1 P2P流媒体概述

传统流媒体服务都是C/S模式,即用户从流媒体服务器点击观看节目,然后流媒体服务器以单播方式把媒体流推送给用户。这种C/S模式加单播方式的缺陷在流媒体业务发展到一定阶段,用户量上来后就会显现出来。主要有下面几个问题。

流媒体服务器带宽占用大。不同于电台和电视台使用广播形式发送节目。流媒体业务使用了单播形式,即一个用户一份流。所以用户数和服务器带宽消耗成正比,用户越多,需要的带宽就越多。当用户到达一定规模后,带宽就会成为业务发展的瓶颈,这时就需要投入大量费用购买带宽以满足要求。

流媒体服务器处理能力要求高。用户量上来后,流媒体服务器处理能力也会成问题,这时候需要购置服务器以支持更多用户。

流媒体负载均衡要求高。为减少骨干网络带宽占用、保证服务质量和就近提供服务,一般流媒体服务都需要部署复杂的内容分发网络。这样就大大增加了系统投资和管理复杂度

流媒体业务在到达一定阶段后,就需要大规模扩充带宽、服务器和内容分发网络以满足需求,这些举措无疑都会大大增加开销。同时这种用户量上来了就扩容,扩容完了再大力发展用户的模式实质上是一种面多了掺水,水多了掺面的思路。这只是一种权宜之计。它无法从根本上解决流媒体业务发展所遭遇到的瓶颈问题。

在这种背景下,P2P技术走入了人们的视野,一些厂商开始尝试在流媒体领域引入业界先进的P2P技术。P2P流媒体和传统流媒体的不同之处在于在P2P技术下用户在播放过程中不仅可以从流媒体服务器取得媒体流,还可以从其他用户那里取得媒体流,与此同时,用户还会向其他用户提供自己拥有的、别人需要的媒体流。从图3-19可以清楚地看出二者的区别。

该方法有两个优点。第一,这种技术并不需要互联网路由器和网络基础设施的支持,因此性价比高且易于部署;第二,在这种技术下,流媒体用户不只是下载媒体流,而且还把媒体流上传给其他用户,因此,这种方法可以扩大用户组的规模,且更多的需求也带来了更多的资源。

图3-19 传统流媒体和P2P流媒体的网络架构对比

3.3.2 P2P流媒体系统网络结构

目前存在很多P2P流媒体的研究成果及实际系统,它们在其覆盖网络的组织结构上可以被大体分成两大类,即基于树 (Tree-based)的覆盖网络结构和数据驱动随机化的覆盖网络结构。

1.基于树的方法

大部分系统可以归类为基于树的方法。在这种方法中,节点被组织成某种传输数据的拓扑 (通常是树),每个数据分组都在同一拓扑上被传输。拓扑结构上的节点有明确定义的关系。例如,树结构中的 “父节点-子节点”关系。这种方法属于典型的推送方法,即当节点收到数据包后,它就把该数据包的拷贝转发到它的每一个子节点。只有所有的数据包都遵循这一结构,才能保证这一结构在给所有接收节点提供服务时是最优的。更进一步,当节点随意加入或离开时,该结构必须得以维持。特别地,如果某节点突然崩溃或者其性能显著下降,则它在该树结构上所有的后代节点都应停止接收数据,且该树结构必须被修复。当组建基于树的结构时,避免出现环是一个需要解决的重要问题。基于树的方法可能是最自然的方法,不需要复杂的视频编码算法。然而,其中需要重点考虑的一个问题是节点失效,特别地,靠近树根的节点失效将中断大量用户的数据传输,潜在地带来瞬时低性能的结果。此外,在该结构中大多数节点是叶子节点,它们的上行带宽没有被使用到。为了解决这些问题,已有研究提出了一些带有弹性的结构,如基于多重树的方法。

2.数据驱动方法

数据驱动方法与基于树的方法的最大不同在于它不组建和维护一个传输数据的明显拓扑结构,它用数据的可用性去引导数据流,而不是在高度动态的P2P环境下不断地修复拓扑结构。

一个不用明确维护拓扑结构的数据分发方法是使用Gossip协议。在典型的Gossip协议中,节点给一组被随机选择的节点发送最近生成的消息;这些节点在下一次做同样的动作,其他节点也做同样的动作,直到该消息传送到所有节点。对Gossip目标节点进行随机选择可以在存在随机失效的情况下使系统获得较好的健壮性,另外还可以避免中心化操作。然而,Gossip不能直接用做视频广播,因为其随机推送可能导致高带宽视频的大量冗余。此外,在没有明确的拓扑结构支持下,最小化启动和传输时延成为主要问题。为了解决这些问题,可以采用拉取技术,即:节点维持一组伙伴并周期性地同伙伴交换数据可用性信息,接着节点可以从一个或多个伙伴那里找回没有获得的数据,或者提供可用数据给伙伴。由于节点只在没有数据时才主动获取,所以避免了冗余。此外,由于任一数据块可能在多个伙伴上使用,所以覆盖网络对时效是健壮的。最后,随机化的伙伴关系意味着节点间的潜在的可用带宽可以被完全利用。

3.3.3 P2P流媒体中的关键技术

1.文件定位技术

流媒体服务实时性强,快速准确的文件定位是流媒体系统要解决的基本问题之一。在P2P流媒体系统中,新加入的客户在覆盖网络中以P2P的文件查找方式,找到可提供所需媒体内容的节点并建立连接,以接受这些节点提供的媒体内容。

P2P方式的文件查找研究是近年来P2P计算的一个研究热点。在P2P网络结构中常用的文件定位方式是通过分布式哈希表 (DHT)算法来实现的,每个文件经哈希运算后得到一个唯一的标志符,每个节点也对应一个标志符,文件存储到与其标志符相近的节点中。查找文件时,首先哈希运算文件名得到该文件的标志符,通过不同的路由算法找到存放该文件的节点。虽然DHT方式查找文件快速有效,但是也存在一些固有的问题,如DHT是将文件均匀分布在各个节点上,不能反映媒体文件的热门度,导致负载不均衡;其次DHT不能提供关键字的搜索,如同时包含媒体文件名、媒体类型等丰富信息的文件的查询。

文献在泛洪机制基础上做了改进,在无结构的P2P网络中采用了或然性的泛洪技术,通过或然性的分析选取优化的分支进行泛洪操作,从而使其伸缩性比正常泛洪机制提高99%。DirectStream是一个基于目录的P2P流媒体点播系统,其媒体文件的查找方式是通过目录服务器来维护所有媒体服务器信息和客户信息 (包括IP地址、缓冲大小等)。当新客户的请求到达时,在目录中查找被请求的媒体文件,快速返回候选节点,候选节点可以是媒体服务器,也可以是可提供该影片片段的客户,从而具有P2P的特性。但是由于其目录服务器的集中式管理,DirectStream系统的规模受到了限制。

2.节点选择技术

在一个典型的P2P覆盖网络中,网络中的节点来自各个不同自治域,节点可以在任一时间自由地加入或离开覆盖网络,导致覆盖网络具有很大的动态性和不可控性。因此,如何在服务会话初始时,确定一个相对稳定的可提供一定服务质量保证的服务节点或节点集合是P2P流媒体系统迫切需要解决的问题。

节点的选择可以根据不同的服务质量要求采取不同的策略。若希望服务延迟小,则可以选择邻近的节点快速建立会话,如在局域网内有提供服务的节点,就不选择互联网上的节点,这也可以避免互联网上的带宽波动和拥塞;若希望得到高质量服务,则可选择能够提供高带宽、CPU能力强的节点,如在宽带接入的PC机和不对称数字用户线 (ADSL)接入的终端之间选择前者;若希望得到较稳定的服务,则应选择相对稳定的节点,如在系统中停留时间较长,不会频繁加入或退出系统的或正在接受服务的节点。通常选择的策略是上述几种情况的折中。具有代表性的节点选择机制有:PROMISE体系中的端到端的选择机制和感知拓扑的选择机制、P2Cast系统的 “最合适” (Best Fit,BF)节点选择算法等。

3.容错机制

由于P2P流媒体系统中节点的动态性,正在提供服务的节点可能会离开系统,传输链路也可能因拥塞而失效。为了保证接受服务的连续性,必须建立一些容错机制使系统的服务能力不受影响或尽快恢复。

对于节点失效的问题,可以采取主备用节点的方式容错。在选择发送节点时,应选择多个服务节点,其中某个节点 (集)作为活动节点 (集),其余节点则作为备用节点。当活动节点失效时由备用节点继续提供服务。值得研究的问题是如何快速有效地检测节点是否失效以及如何保证在主备用节点切换的过程中流媒体服务的连续性。流媒体服务的实时性较强,因此节点的故障检测时间应尽可能短,才能保证服务不中断。目前有大量关于如何缩短故障检测时间的研究,大多是采用软状态协议询问节点的存在,需要在询问频度与询问消息开销之间进行折中。

数据的编码技术也可以提供系统的容错性,如前向错误编码 (FEC)和多描述编码(MDC)。FEC通过给压缩后的媒体码流加上一定的冗余信息来有效地提高系统的容错性,而MDC的基本思想是对同一媒体流的内容采用多种方式进行描述,每一种描述都可以单独解码并获得可以接受的解码质量,多个描述方式结合起来可以使解码质量得到提高。这两种编码都能适应客户异构性的特点,客户可以根据自己的能力选择收取多少数据进行解码。此外,将FEC和MDC结合,能取得更好的容错效果。(www.daowen.com)

4.安全机制

网络安全是P2P流媒体系统的基本要求,必须通过安全领域的身份识别认证、授权、数据完整性、保密性和不可否认性等技术,对P2P信息进行安全控制。对产权的控制,现阶段可采用DRM技术控制;对于基于企业级的P2P流媒体播出系统可以安装防火墙阻止非法用户访问;因特网上的P2P流媒体系统可以通过数据包加密方式保证安全。在P2P流媒体系统内,可采用用户分级授权的办法,阻止非法访问。

3.3.4 P2P流媒体的应用

网络技术和使用人次的迅猛发展为P2P流媒体业务的发展提供了可预见的广阔市场环境,P2P流媒体技术的应用正在为网络信息交流系统带来革命性变化。目前常见的P2P流媒体的应用主要有:

1.视频点播 (VOD)

视频点播是最常见、最流行的流媒体应用类型。点播与直播领域相对应,在P2P流媒体点播服务中,用户可以选择节目列表中的任意节目观看。在点播领域,P2P技术的发展速度相对缓慢,一方面是因为点播当中的高度交互性实现的复杂程度较高;另一方面是节目源版权因素对P2P点播技术的阻碍。目前,P2P点播技术主要朝着适用于点播的应用层传输协议技术、底层编码技术以及数字版权技术等方面发展。

与P2P流媒体直播不同,P2P流媒体点播终端必须拥有硬盘,其成本高于直播终端。目前P2P点播系统还需在技术上进一步探索,期望大规模分布式数字版权保护 (DRM)系统的研究以及底层编码技术的发展能为P2P点播系统的实施铺平道路。

2.视频广播

视频直播可以看做视频点播的扩展,它把节目源组织成频道,以广播的方式提供。比如专家访谈节目、体育赛事转播、电视购物等。

P2P流媒体直播是利用P2P的原理来建立播放网络,从而达到节省服务端带宽消耗、减轻服务端处理压力的目的。采用该技术可以使单一服务器轻松负荷起成千上万的用户同时在线观看节目。不管在线用户有多少,服务端的带宽消耗都是基本一样的,那就是提供作为P2P传播的种子所需要的几个流的带宽。

在流媒体直播服务中,用户只能按照节目列表收看当前正在播放的节目。在直播领域,交互性较少,技术实现相对简单,因此P2P技术在直播服务中发展迅速。2004年,香港科技大学开发的CoolStreaming原型系统将高可扩展和高可靠性的网状多播协议应用在了P2P直播系统当中,被誉为流媒体直播方面的里程碑,后期出现的PPLive和PPStream等系统都沿用了其网状多播模式。P2P直播是最能体现P2P价值的,用户观看同一个节目,内容趋同,因此可以充分利用P2P的传递能力,理论上,在上/下行带宽对等的基础上,在线用户数可以无限扩展。

3.交互式网络电视 (IPTV)

IPTV即交互式网络电视,是一种利用宽带有线电视网,集互联网、多媒体、通信等多种技术于一体,向家庭用户提供包括数字电视在内的多种交互式服务的崭新技术。它能够很好地适应当今网络飞速发展的趋势,充分有效地利用网络资源。IPTV既不同于传统的模拟式有线电视,也不同于经典的数字电视。传统的模拟式有线电视和经典的数字电视都具有频分制、定时、单向广播等特点;尽管经典的数字电视相对于传统的模拟式有线电视有许多技术革新,但它只是信号形式的改变,而没有触及媒体内容的传播方式。

IPTV利用流媒体技术通过宽带网络传输数字电视信号给用户,这种应用有效地将电视、电信和计算机3个领域结合在一起,具有很好的发展前景。

IPTV利用计算机或机顶盒和电视完成接收视频点播节目、视频广播及网上冲浪等功能。它采用高效的视频压缩技术,使视频流传输带宽在800Kb/s时可以有接近DVD的收视效果 (通常DVD的视频流传输带宽需要3Mb/s),对今后开展视频类业务如因特网上视频直播、远距离真视频点播、节目源制作等来讲,有很强的优势,是一个全新的技术概念。IPTV是利用宽带有线电视网的基础设施,以家用电视机作为主要终端电器,通过互联网络协议来提供包括电视节目在内的多种数字媒体服务。

P2P技术可以设计一个运营商级的音频、视频业务系统,采用P2P技术的播放软件促进了网络电视的发展。目前主要的应用有:网络电视下载类的PPStream、沸点网络电视、TVKoo、猫眼网络电视、QQ直播;影视歌曲下载类的bt、百宝、酷狗 (KuGoo)、电骡 (eMule)等;通信类的Skype等。网络电视的发展吸引了众多的网民,它可以为用户提供极为丰富的业务,如VOD点播、互联网浏览、电子邮件、多种在线信息咨询、游戏、个人视频录制、电子商务、VOIP、即时通信等。P2P技术在网络电视领域中更是如鱼得水,主要体现在以下几个方面:

(1)资源共享

在传统的Web方式中,实现文件交换需要通过服务器,通过把文件上传到某个特定网站,用户再到该网站搜索其需要的文件,然后下载,这种方式需要Web服务器能够对大量用户的访问提供有效服务。而P2P模式下,用户可以从任何一个在线用户的计算机中直接下载,从而真正实现了个人计算机与服务器的对等。

(2)在线交流

通过使用P2P客户端软件,用户之间可以进行即时交谈,也可以就网络节目进行讨论,从而实现实时互动。这样既增加了用户收看网络电视的积极性,又促进了媒体提供者和媒体消费者之间的互动。

(3)快捷搜索

P2P网络模式中节点之间的动态而又对等的互联关系使得搜索可以在对等点之间直接地、实时地进行,这样既可以保证搜索的实时性,又超过了传统目录式搜索引擎的深度、速度、幅度。

(4)远程教学

远程教学目前应用也比较广泛,而且具有很好的市场应用前景。远程教学可以看做前面多种应用类型的综合,在远程教学中,可以采用多种模式,甚至混合方式。远程教学由于应用对象明确、内容丰富实用、运营模式成熟,成为目前商业上较为成功的流媒体应用。

(5)交互游戏

需要通过流媒体的方式传递游戏场景的交互游戏近年来得到了迅速的发展。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈