作者:王洪波,马轶慧 英文关键字:P2P network; streaming media; scalability; data-driven 关键字:对等网络;流媒体;可扩展性;数据驱动 摘要:基于P2P的流媒体技术是一项非常有前途的技术,该技术有两方面的优点:不需要互联网路由器和网络基础设施的支持,因此性价比高且易于部署;流媒体用户不只是下载媒体流,而且还把媒体流上载给其他用户,因此,这种方法可以扩大用户组的规模,且由更多的需求带来更多的资源。由于P2P流媒体系统中节点存在不稳定性,因此P2P流媒体系统需要在文件定位技术、节点选择技术、容错以及安全机制方面有所突破。此外在如何管理节点并建立发布树、如何应付不可预知的节点失效、如何适应网络状态变化方面也面临着一些挑战。 英文摘要:The P2P-based streaming media technology is very promising and has two advantages. First, because P2P-based streaming media network can distribute media data without the support of routers and specific network infrastructure, it is cost-effective and easy to deploy. Second, a streaming media user can not only download streaming media, but also supply streaming media to other users. Therefore, the user groups' scale can be expanded, and the more the demands increase, the more the available resources increase. As the peers in the P2P-based streaming media network are not stable, the P2P streaming media system needs improvement in the fields of file location technology, peer selection technology, fault-tolerance and security mechanism. Moreover, challenges such as managing the nodes, constructing a distribution tree, coping with the unpredictable failure of nodes, and adapting to changes in the network, also exist.
基金项目:国家自然科学基金资助项目(863计划)(No.90604019、60502037、60603060) 随着互联网的日趋普及和新技术的迅速发展,一大批新兴的网络多媒体应用开始涌现并成为人们工作、生活中重要的组成部分,例如:网络电视、体育赛事广播、在线游戏、远程教育等。而这些多媒体应用需要流媒体技术的支持。 流媒体是指在数据网络上按时间先后次序传输和播放的连续音、视频数据流。流媒体数据流具有3个特点:连续性、实时性、时序性,即其数据流具有严格的前后时序关系。由于流媒体的这些特点,它已经成为在互联网上实时传输音、视频的主要方式。本质上,流媒体技术是一种在数据网络上传递多媒体信息的技术。目前数据网络具有无连接、无确定路径、无质量保证的特点,给多媒体实时数据在数据网络上的传输带来了极大的困难,流媒体技术的主要目标就是:通过一定的技术手段实现在数据网络上有效地传递多媒体信息流。 传统的流媒体服务大都是客户/ 服务器(C/S)模式,即用户从流媒体服务器点击观看节目,然后流媒体服务器以单播方式把媒体流推送给用户。当流媒体业务发展到一定阶段后,用户总数大幅度增加,这种C/S模式加单播方式来推送媒体流的缺陷便明显地显现出来(如流媒体服务器带宽占用大、流媒体服务器处理能力要求高等),带宽、服务器等常常成为系统瓶颈,系统的可扩展性差。 近年来,人们把P2P技术引入到流媒体传输中而形成了P2P流媒体技术,该方法有两方面的优点。首先,这种技术并不需要互联网路由器和网络基础设施的支持,因此性价比高且易于部署;第二,在这种技术中,流媒体用户不只是下载媒体流,而且还把媒体流上载给其他用户,因此,这种方法可以扩大用户组的规模,且更多的需求也带来了更多的资源。 1 P2P流媒体系统 1.1 P2P流媒体系统播送方式 1.1.1 直播 P2P直播是最能体现P2P价值的表现,用户观看同一个节目,内容趋同,因此可以充分利用P2P的传递能力,理论上,在上/下行带宽对等的基础上,在线用户数可以无限扩展。 1.1.2 点播 与P2P流媒体直播不同,P2P流媒体点播终端必须拥有硬盘,其成本高于直播终端。目前P2P点播系统还需在技术上进一步探索,期望大规模分布式数字版权保护(DRM)系统的研究,以及底层编码技术的发展能为P2P点播系统的实施铺平道路。 1.2 P2P流媒体系统网络结构 (1)基于树的方法
(2)数据驱动方法 一个不用明确维护拓扑结构的数据分发方法是使用Gossip协议。在典型的Gossip协议中,节点给一组随机选择的节点发送最近生成的消息;这些节点在下一次做同样的动作,其他节点也做同样的动作,直到该消息传送到所有节点。对Gossip目标节点进行随机选择可以在存在随机失效的情况下使系统获得较好的健壮性,另外还可以避免中心化操作。然而,Gossip不能直接用作视频广播,因为其随机推送可能导致高带宽视频的大量冗余。此外,在没有明确的拓扑结构支持下,最小化启动和传输时延成为主要问题。为了解决这些问题,一些解决方案,例如Chainsaw[4]、Cool-Streaming[5]采用拉取技术,即:节点维持一组伙伴并周期性地同伙伴交换数据可用性信息,接着节点可以从一个或多个伙伴找回没有获得的数据,或着提供可用数据给伙伴。由于节点只在没有数据时去主动获取,所以避免了冗余。此外,由于任一数据块可能在多个伙伴上可用,所以覆盖网络对时效是健壮的。最后,随机化的伙伴关系意味着节点间的潜在的可用带宽可以被完全利用。 2 P2P流媒体中的关键技术 2.1文件定位技术 P2P方式的文件查找研究是近年来P2P计算的一个研究热点。在P2P网络结构中常用的文件定位方式是通过分布式哈希表(DHT)算法[7]来实现,每个文件经哈希运算后得到一个唯一的标识符,每个节点也对应一个标识符,文件存储到与其标识符相近的节点中。查找文件时,首先哈希运算文件名得到该文件的标识符,通过不同的路由算法找到存放该文件的节点。虽然DHT方式查找文件快速有效,但是也存在一些固有的问题,如DHT是将文件均匀分布在各个节点上,不能反映媒体文件的热门度,导致负载的不均衡;其次DHT不能提供关键字的搜索,如同时包含媒体文件名、媒体类型等丰富信息的文件的查询。 文献[8]在泛洪机制基础上做了改进,在无结构的P2P网络中采用了或然性的泛洪技术,通过或然性的分析选取优化的分支进行泛洪操作,从而使其伸缩性比正常泛洪机制提高99%。DirectStream[9]是一个基于目录的P2P流媒体点播系统,其媒体文件的查找方式是通过目录服务器来维护所有媒体服务器信息和客户信息(包括IP地址、缓冲大小等)。当新客户的请求到达时,在目录中查找请求的媒体文件,快速返回侯选节点,侯选节点可以是媒体服务器,也可以是可提供该影片片段的客户,从而具有P2P的特性。但是由于其目录服务器的集中式管理,DirectStream系统的规模受到了限制。 2.2 节点的选择 节点的选择可以根据不同的 QoS需求采取不同的选择策略。若希望服务延迟小,可以选择邻近的节点快速建立会话,如在局域网内有提供服务的节点,就不选择互联网上的节点,这也可以避免互联网上的带宽波动和拥塞;若希望高质量服务,则可选择能够提供高带宽、CPU能力强的节点,如在宽带接入的PC机和不对称数字用户线(ADSL)接入的终端之间选择前者;若希望得到较稳定的服务,应选择相对稳定的节点,如在系统中停留时间较长,不会频繁加入或退出系统的或正在接受服务的节点。通常选择的策略是上述几种需求的折衷。具有代表性的节点选择机制有:PROMISE体系中的端到端的选择机制和感知拓扑的选择机制、P2Cast系统的“最合适” (Best Fit,简称BF)节点选择算法等。 2.3 容错机制 对于节点失效的问题,可以采取主备用节点的方式容错。在选择发送节点时,应选择多个服务节点,其中某个节点(集)作为活动节点(集),其余节点则作为备用节点。当活动节点失效时则由备用节点继续提供服务。值得研究的问题是如何快速有效地检测节点的失效,以及如何保证在主备用节点切换的过程中流媒体服务的连续性。流媒体服务的实时性较强,因此节点的故障检测时间应尽可能短,才能保证服务不中断。目前有大量关于如何缩短故障检测时间的研究,大都是采用软状态协议询问节点的存在,需要考虑询问频度与询问消息开销之间的折衷。 数据的编码技术也可以提供系统的容错性,如前向错误编码(FEC)和多描述编码(MDC)。FEC通过给压缩后的媒体码流加上一定的冗余信息来有效地提高系统的容错性,而MDC的基本思想是对同一媒体流的内容采用多种方式进行描述,每一种描述都可以单独解码并获得可以接受的解码质量,多个描述方式结合起来可以使解码质量得到增强。这两种编码都能适应客户异构性的特点,客户可以根据自己的能力选择收取多少数据进行解码。此外,将FEC和MDC结合,能取得更好的容错效果。 2.4 安全机制 3 P2P流媒体的应用 (1)视频点播(VOD):这是最常见、最流行的流媒体应用类型。 (2)视频广播:视频广播可以看作是视频点播的扩展,它把节目源组织成频道,以广播的方式提供。 (3)交互式网络电视(IPTV):IPTV利用流媒体技术通过宽带网络传输数字电视信号给用户,这种应用有效地将电视、电信和计算机3个领域结合在一起,具有很好的发展前景。 (4)远程教学:远程教学目前应用也比较广泛,而且具有很好的市场应用前景。远程教学可以看作是前面多种应用类型的综合,在远程教学中,可以采用多种模式,甚至混合的方式实现。远程教学以应用对象明确、内容丰富实用、运营模式成熟,成为目前商业上较为成功的流媒体应用. (5)交互游戏:需要通过流媒体的方式传递游戏场景的交互游戏近年来得到了迅速的发展。 4 结束语 (1)管理节点并建立发布树 (2)应付不可预知的节点失效 (3)适应网络状态变化 尽管P2P流媒体系统的设计方面仍存在一些需要解决的问题,但其优越性仍然引起了许多大学、研究机构以及商业机构的重视,随着运营商的加入,P2P流媒体的研究势必取得更大的进展并将更加广泛地应用于商业领域。 5 参考文献 收稿日期:2007-09-27 |