一种实现p2p高码流数据直播的方法

文档序号:7945286阅读:485来源:国知局
专利名称:一种实现p2p高码流数据直播的方法
技术领域
本发明属网络流媒体技术领域,特别涉及一种实现P2P高码流数据直播的 方法。
背景技术
近年来,peer-to-peer (简称P2P)在加强网络上人与人的交流、文件 交换、分布计算等方面在计算机领域起到了很大的作用,尤其是基于P2P 的视频直播技术越来越受到人们的关注。
P2P传输数据的原理,与传统的客户端/服务器的模式不同,它采用的是点 对点的方式进行数据传输。在P2P系统中,是用户为用户提供数据,数据源通 过用户复制并转发数据。简单的说,P2P直接将人们联系起来,让人们通过 互联网直接交互。P2P使得网络上的沟通变得容易、更直接共享和交互,真 正地消除中间商。P2P就是用户可以直接连接到其他用户的计算机、交换文 件,而不是像过去那样连接到服务器去浏览与下载。
目前,视频已经成为当今网民的一大需求,也正是各种各样的分享视频 和高清视频占据了大量的网络带宽,P2P流媒体受到用户上行带宽的限制,码 流不能超过大部分主要用户的上行带宽。例如,现在大部分宽带用户是ADSL用 户,上行速率为512Kbps,因此直播的码流无法超过512Kbps,如果需要观看的 是高码流数据视频则会遇到播放不流畅等问题,此时就需要建立服务器来补充 超出部分的数据。由此可以看出,在数据码流高于主要用户的上行带宽的情况下,还需要建立服务器来满足需要,而本身P2P的优点就在于可以不通过服 务器进行点对点的数据传输,因此P2P的优势就被极大的削弱了。

发明内容
本发明旨在克服现有技术的不足之处而提供一种可以在国内普遍上传码率 为512Kbps的情况下,不增加服务器补充超出部分的数据,给终端提供数倍于 上行带宽码流的直播数据,从而实现P2P高码流数据直播的方法。 为达到上述目的,本发明是这样实现的
一种实现P2P高码流数据直播的方法,可按如下步骤依次实施
(1) 若直播数据流的码流是上行带宽的m倍,则将直播数据流拆分成为m 个小于所述上行带宽的子流;
(2) 将步骤(1)所述的子流再次拆分成为s个次级子流;
(3) 使每个能完整接收数据流的终端得到mX s/ (s-1)个终端的协助;
(4) 数据传输终端在接收数据时,将不同的次级子流组合成完整的直播数据流。
作为一种优选方案,本发明所述步骤(2)中次级子流的数量s《10Xm。 作为另一种优选方案,本发明所述m或s为正实数。 本发明与现有技术相比具有如下特点
(1) 通过本方法,可以在国内普遍上传码率为512Kbps的情况下,不增加 服务器补充超出部分的数据,提供数倍于上行带宽的码流的直播数据给终端。
(2) 通过本方法,如果不考虑数据调度的资源消耗,只要有一个数据源就 可以为无限多个用户提供相对于上行带宽较高的码流直播数据流,相对于非P2P 系统,可以节省几乎100%的服务器接入带宽,相比现有的P2P系统,最多能达 到节省百分之七八十不等的服务器接入带宽。如果普通服务器的接入带宽是IOOM, P2P的接入带宽只要25M左右就可以了,而釆用本发明的办法,仅仅只要
1 2M就可以实现。


下面结合附图和具体实施方式
对本发明作进一步说明。本发明的保护范围 不仅局限于下列内容的表述。
图l为本发明的流程框图2为本发明一种实施方式的流程框图。
具体实施例方式
如图1所示, 一种实现P2P高码流数据直播的方法,可按如下步骤依次实

(1) 若Mkbps码流的直播数据流是普通终端上行带宽512kbps的m倍,则 将直播数据流拆分成为m个小于所述上行带宽的子流;
(2) 将步骤(1)所述的子流再次拆分成为s个次级子流,则将整个直播 数据流拆分为mXs个子流;
(3) 使每个能完整接收数据流的终端得到mXs/(s-l)个终端的协助;每个 终端在接收一个子流的同时,还可以为s个终端再分别提供一个子流,因此P2P 系统每引入一个终端,将可以新增s-l个子流;由于完整的数据流包含mXs个 子流,因此每个能够完整接收数据流的终端,将需要得到mXs/(s-l)^m+m/(s-l) 个终端的协助。
(4) 数据传输终端在接收数据时,将不同的次级子流组合成完整的直播数 据流。当子流组合成为完整的直播数据流时,就可流畅的观看视频文件。
由此可以看出,在线但没有使用直播数据流的客户端即可为正在使用直播 数据流的客户提供协助。在达到同样效果的情况下,自然希望能够尽量少的使用其他终端的协助。
减小m和扩大s都能够达到这个目的。减小m将降低直播数据流的码率,需要 慎重权衡;扩大s没有显著的弊病,不过也没有必要盲目扩大s,当s大于10 Xm后,对减少协助终端数量的意义已经不大,其中m、 s可为正实数。
由此也可看出,直播数据流虽然可以大于上传码流,但是m不适合过大, 需要根据特定产品的使用率和产品在线率决定。 实施例
具体实施步骤同上,参见图2所示,1Mbps码流的直播数据流,是普通终端 上行带宽512kbps的2倍"=2),则将整个直播数据流拆分为2个子流,把每 个子流再分成2份(s=2),则将整个直播数据流拆分成为4个子流(mXS=2X 2二4)。每个终端在接收一个子流的同时,还可以为2个终端再分别提供一个子 流,因此P2P系统每引入一个终端,将可以新增2-1=1个子流;若有12个辅助 终端,除了原始提供的1个完整的直播数据流还能够提供3个完整的直播数据 流,平均每个完整的流需要4个终端辅助,通过公式计算, m+m/(S-l)=2+2/(2-1)=4。使用数据的终端在完整接收数据时,需要不同的子流 的组合,此时,如图2所示,终端1 4为终端5 12提供了 8个子流,终端5 12在接受子流的同时,又为终端13 16提供了 16个子流,每四个不同的子流 可以组合为一个完整的直播数据流,此时终端13 16就可以得到完整的直播数 据流。
可以理解地是,以上关于本发明的具体描述,仅用于说明本发明而并非受 限于本发明实施例所描述的技术方案,本领域的普通技术人员应当理解,仍然 可以对本发明进行修改或等同替换,以达到相同的技术效果;只要满足使用需 要,都在本发明的保护范围之内。
权利要求
1、一种实现P2P高码流数据直播的方法,其特征在于按如下步骤依次实施(1)若直播数据流的码流是上行带宽的m倍,则将直播数据流拆分成为m个小于所述上行带宽的子流;(2)将步骤(1)所述的子流再次拆分成为s个次级子流;(3)使每个能完整接收数据流的终端得到m×s/(s-1)个终端的协助;(4)数据传输终端在接收数据时,将不同的次级子流组合成完整的直播数据流。
2、 根据权利要求1所述的实现P2P高码流数据直播的方法,其特征在于 所述步骤(2)中次级子流的数量s《10Xm。
3、 根据权利要求1或2所述的实现P2P高码流数据直播的方法,其特征在 于所述m或s为正实数。
全文摘要
本发明属网络流媒体技术领域,特别涉及一种实现P2P高码流数据直播的方法,可按如下步骤依次实施(1)若直播数据流的码流是上行带宽的m倍,则将直播数据流拆分成为m个小于所述上行带宽的子流;(2)将步骤(1)所述的子流再次拆分成为s个次级子流;(3)使每个能完整接收数据流的终端得到m×s/(s-1)个终端的协助;(4)数据传输终端在完整接收数据时,将不同的次级子流组合成完整的直播数据流。本发明可以在国内普遍上传码率为512Kbps的情况下,不增加服务器补充超出部分的数据,给终端提供数倍于上行带宽码流的直播数据,从而实现P2P高码流数据直播。
文档编号H04L29/06GK101640674SQ20091001358
公开日2010年2月3日 申请日期2009年9月3日 优先权日2009年9月3日
发明者园 田 申请人:园 田
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1