对基于P2P流媒体服务平台技术初探.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
对基于P2P流媒体服务平台技术初探

对基于P2P流媒体服务平台技术初探   摘要:本文初步探讨了P2P流媒体系统的结构设计,并对服务平台系统中主要功能的实现进行了研究。   关键词:流媒体服务;P2P网络;数据传输   一、引言   随着互联网的普及,流媒体技术的出现,在一定程度上使互联网传输音视频难的局面得到改善。同时,使用P2P技术提供高质量和大容量的流媒体服务能力成为可能。本文对基于P2P技术的流媒体服务平台设计展开研究,使服务分散化,减轻服务器负载并支持更大范围流媒体的发布,应有极为美好的应用前景。   二、P2P流媒体服务模型概述   在当前的应用环境下,以BitTorrent,eMule为代表的文件共享P2P系统己经日趋成熟且为用户所广泛接受,其工作特征是“下载后再播放”,而P2P流媒体系统则必须做到“边下载边播放”[1]。因而,P2P流媒体系统更加关注于效率和实时性。由此,设计实现一个高效的、实时的P2P实时流媒体服务平台系统,将主要面对如下三个问题。   首先,一个高效的P2P流媒体系统应该具备合理可靠的结构,特别是在覆盖网上以分布式的方法构建出这种结构。   其次,由于广泛存在的节点上行带宽和下行带宽的不对称性,上行带宽可能小于媒体数据的播放码率。   最后,由于互联网节点处理能力和节点间的网络连接存在着广泛的动态性和异构性,为了确保服务的稳定可靠,系统应能够动态适当的选择媒体内容的供源以及合理高效的调度媒体数据片段的分发。   三、P2P流媒体系统的结构设计   在P2P网络中,节点同时具有服务器和客户机的双重角色。因此,基于P2P模式的流媒体系统设计方案的原则是每个用户既是流媒体数据的消费者,同时又是数据的提供者。设计该系统的目标是充分利用现有的计算资源和网络资源,降低服务器资源和网络带宽的消耗,实现高扩展性和可靠性,提供高质量的网络流媒体播放。   P2P流媒体系统的结构如图3-1所示。P2P流媒体系统由P2P客户端软件和后台管理系统组成,各个客户机之间进行数据交换,并且在视频提供者授权后,可以从其他客户机处获得视频数据。系统中每一个节点既是服务器又是客户机,个体间平等互助,实现资源共享和信息的传递。   服务平台的主要功能是:   (1)流生成:为适应客户机的异构性,服务器把视频流压缩成一定数目的层,假定每层的带宽是固定的。服务器把生成的数据分组标记为主动分组,用IP协议把它们发送到子节点。   (2)对话控制:在对话期间,服务器从主动节点或客户机接受定购的分组,把它们注册成子节点,并记录它们定购的数据层数目。在视频流对话期间,服务器也接受从子节点发来的反馈分组,服务器会对每个相应的子节点调整数据层数目。   (3)分组进度监督:服务器监控每个子节点的输出端口的排队长度,发生拥塞时把分组从高层丢掉。   四、P2P流媒体服务平台的实现   (一)系统的开发工具   采用Java媒体框架(Java Media Framework)实现视频流的传输。JMF是Java2标准版中的一个可选软件包。JMF可以用来开发需要抓取、存储、传输流媒体的应用程序,例如音频应用和视频应用,JMF还可以对媒体进行编码格式转换。并且JMF还支持实时传输协议RTP和实时控制协议RTCP[2]。   (二)媒体编码转换的实现   媒体编码转换的实现主要依靠视频转码技术。视频转码将视频信息从一种编码格式转换为另一种编码格式,共分为两种情况:一种是在同一视频编码标准中转换;第二种是在不同的编码标准中进行转换。   在端到端流媒体传输中,发送端的实现类为VideoTransmit类。为了实现媒体编码的转换功能,在VideoTransmit类文件中添加了一个私有类VideoTransform负责媒体编码的转换工作。其中,实现视频编码转换的核心是JMF中的Processor,它负责对流媒体数据的封装DataSource进行处理,示意代码如下:   TrackControl[] tracks = processor.getTrackControls( );   For ( int i=0; itracks.length; i++ ) {   Format format = tracks[i].getformat( );   If ( tracks[i].isEnable( ) ) {   Supported = tracks[i].getSupportedFormats();   ……   For ( int j=0; jsupported.length; j++ ) {    If ( supported[j] instanceof VideoFormat ) {   Chosen = supported[j];

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档