基于p2p网络的数据下载方法及装置的制造方法

文档序号:10516378阅读:409来源:国知局
基于p2p网络的数据下载方法及装置的制造方法
【专利摘要】本发明实施例提供一种基于P2P网络的数据下载方法及装置,涉及信息技术领域,主要在于解决目前http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷的问题。所述方法包括:在视频播放过程中,开启http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据;判断所述http下载过程中是否存在卡顿;若存在,则关闭http下载并开启P2P下载,以下载所述第一数据。本发明适用于基于P2P网络的数据下载。
【专利说明】
基于P2P网络的数据下载方法及装置
技术领域
[0001]本发明实施例涉及信息技术领域,尤其涉及一种基于P2P网络的数据下载方法及
目.ο
【背景技术】
[0002]点对点(Peer-to-Peer,P2P)技术属于覆盖层网络的范畴,是相对于客户机/服务器(Client/SeVer,C/S)模式来说的一种网络信息交互方式。在C/S模式中,数据的分发采用专门的服务器,多个客户端都从服务器获取数据。这种模式的优点是:数据的一致性容易控制;但是其缺点是:因为服务器的个数只有一个(即便有多个也非常有限),系统容易出现单一失效点;单一服务器面对众多的客户端,由于CPU能力、内存能力、网络带宽的限制,可同时服务的客户端非常有限,可扩展性差。但在P2P网络中,各个节点为平等的同等节点,每个节点既可以从其他节点得到服务,也可以向其他节点提供服务。因此,通过利用庞大的终端资源,解决了 C/S模式中存在的弊端。
[0003]在P2P网络中,P2P节点会将数据分为紧急区数据和非紧急区数据,例如,在播放视频时,视频当前播放数据位置之后的一定区间内的数据会直接影响视频播放的流畅度,该区间内数据即为紧急区数据,在紧急区数据之后的一定区间内数据即为非紧急区间数据。数据的下载方式可以包括P2P下载和超文本传送协议(Hypertext transfer protocol,http)下载,P2P下载是指从其他节点获取数据,http下载是通过http协议从内容分发网络(Content Delivery Network,CDN)服务器获取。
[0004]目前,P2P节点通常开启http下载,以下载紧急区数据,通过http下载能够保证紧急区数据下载的可靠性;开启P2P下载,以非紧急区数据。在播放视频时,视频当前播放数据位置是不断变化的,紧急区数据也是不断变化的,一些非紧急区数据会转换为紧急区数据,当上述数据中存在未下载数据时,也是启动http下载。然而,P2P节点在http下载过程中,CDN服务器可能存在异常,上述数据下载可能会出现卡顿,从而造成P2P节点无法下载紧急区数据,同时无法向其他节点分享紧急区数据。

【发明内容】

[0005]本发明实施例提供一种基于P2P网络的数据下载方法和装置,用以解决现有技术中http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷。
[0006]本发明实施例提供一种基于P2P网络的数据下载方法,包括:
[0007]在视频播放过程中,开启超文本传送协议http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据;
[0008]判断所述http下载过程中是否存在卡顿;
[0009]若存在,则关闭http下载并开启点对点P2P下载,以下载所述第一数据。
[0010]进一步地,所述开启http下载,以下载第一数据之前,还包括:
[0011]判断紧急区数据中是否存在第一数据;
[0012]所述开启http下载,以下载第一数据包括:
[0013]若存在,则开启http下载,以下载所述第一数据。
[OOM]所述判断所述http下载过程中是否存在卡顿包括:
[0015]进一步地,判断http下载的速度是否小于预置阈值,如果是,则http下载过程中存在卡顿。
[0016]进一步地,所述开启P2P下载,以下载所述第一数据包括:
[0017]确定P2P下载速度最大的节点;
[0018]从所述节点中下载所述第一数据。
[0019]本发明实施例提供一种基于P2P网络的数据下载装置,包括:
[0020]开启单元,用于在视频播放过程中,开启超文本传送协议http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据;
[0021]判断单元,用于判断所述http下载过程中是否存在卡顿;
[0022]关闭单元,用于若所述http下载过程中存在卡顿,则关闭http下载;
[0023]所述开启单元,用于开启点对点P2P下载,以下载所述第一数据。
[0024]进一步地,所述判断单元,还用于判断紧急区数据中是否存在第一数据;
[0025]进一步地,所述开启单元,具体用于若紧急区数据中存在第一数据,则开启http下载,以下载所述第一数据。
[0026]进一步地,所述判断单元,具体用于判断http下载的速度是否小于预置阈值,如果是,则http下载过程中存在卡顿。
[0027]进一步地,所述开启单元还包括:
[0028]确定模块,用于确定P2P下载速度最大的节点;
[0029]下载单元,用于从所述节点中下载所述第一数据。
[0030]进一步地,所述判断单元,还用于在视频起播时,判断紧急区数据中是否存在未下载的数据;
[0031]进一步地,所述开启单元,还用于若紧急区数据中是否存在未下载的数据,则开启P2P下载,以所述下载紧急区数据。
[0032]本发明实施例提供的基于P2P网络的数据下载方法和装置,当http下载存在卡顿时,通过关闭http下载和开启P2P下载,以下载由非紧急区数据转变的且未下载的紧急区数据,改变了现有技术中http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷,实现了紧急区数据下载,进而能够向其他节点分享紧急区数据。
【附图说明】
[0033]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034]图1为本发明实施例提供的一种基于P2P网络的数据下载方法流程图;
[0035]图2为本发明实施例提供的另一种基于P2P网络的数据下载方法流程图;
[0036]图3为本发明实施例提供的一种基于P2P网络的数据下载装置的结构示意图;
[0037]图4为本发明实施例提供的一种基于P2P网络的数据下载装置的结构示意图。
【具体实施方式】
[0038]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0039]本发明实施例提供了一种基于P2P网络的数据下载方法,可以应用于P2P节点,如图1所示,所述方法包括:
[0040]101、在视频播放过程中,开启http下载,以下载第一数据。
[0041]其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据。随着视频数据的播放,视频当前播放数据的位置也会变化。
[0042]例如,视频数据包括500个数据块,数据块1-数据块500。紧急区数据为视频当前播放数据位置之后的10个数据块。当前播放数据位置为数据块10,数据块11-数据块20为紧急区数据,通常通过http下载,数据块20-数据块500为非紧急区数据,通常通过P2P下载。当前播放数据位置转变为数据块15时,数据块21-数据块25由非紧急区数据转变为紧急区数据,当数据块24和数据块25未下载时,P2P节点开启http下载,以下载数据块24和数据块25。
[0043]102、判断http下载过程中是否存在卡顿。
[0044]其中,当http下载过程的下载速度小于视频正常播放所需要的码率时,http下载出现卡顿。
[0045]103、若http下载过程中存在卡顿,则关闭http下载并开启P2P下载,以下载第一数据。
[0046]由于第一数据距离视频当前播放位置较远,当http下载过程中存在卡顿时,通过关闭http下载,能够减少下载第一数据所消耗的网络带宽和网络资源。此外,通过开启P2P下载,以下载所述第一数据,能够实现紧急区数据下载,进而能够向其他节点分享紧急区数据。
[0047]本发明实施例提供的一种基于P2P网络的数据下载方法,当http下载存在卡顿时,通过关闭http下载和开启P2P下载,以下载由非紧急区数据转变的且未下载的紧急区数据,改变了现有技术中http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷,实现了紧急区数据下载,进而能够向其他节点分享紧急区数据。
[0048]本发明实施例提供了另一种基于P2P网络的数据下载方法,可以应用于P2P节点,如图2所示,所述方法包括:
[0049]201、在视频播放过程中,判断紧急区数据中是否存在第一数据。
[0050]其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据。
[0051]对于本发明实施例,步骤201之前还可以包括:在视频起播时,判断紧急区数据中是否存在未下载的数据;若存在,则开启P2P下载,以下载所述紧急区数据。在视频起播时,通过开启P2P下载,下载所述紧急区数据中未下载的数据,能够提高视频起播速度,能够提升用户的体验。
[0052]202、若紧急区数据中存在第一数据,则开启http下载,以下载第一数据。
[0053]203、判断http下载的速度是否小于预置阈值。
[0054]其中,所述预置阈值可以为视频正常播放所需要的码率。
[0055]204、若http下载的速度小于预置阈值,则关闭http下载并开启P2P下载,以下载第一数据。
[0056]当http下载的速度小于预置阈值时,说明http下载过程中存在卡顿,通过关闭http下载,能够减少下载第一数据所消耗的网络带宽和网络资源。此外,通过开启P2P下载,以下载所述第一数据,能够实现紧急区数据下载,进而能够向其他节点分享紧急区数据。
[0057]对于本发明实施例,开启P2P下载,以下载第一数据具体可以包括:确定P2P下载速度最大的节点;从所述节点中下载所述第一数据。通过确定P2P下载速度最大的节点;从所述节点中下载所述第一数据,能够保证第一数据的下载数据,从而能够提高视频播放的效果,进而能够提升用户体验。
[0058]本发明实施例提供的另一种基于P2P网络的数据下载方法,当http下载存在卡顿时,通过关闭http下载和开启P2P下载,以下载由非紧急区数据转变的且未下载的紧急区数据,改变了现有技术中http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷,实现了紧急区数据下载,进而能够向其他节点分享紧急区数据。
[0059]进一步地,作为图1和图2所示方法的具体实现,本发明实施例提供了一种基于P2P网络的数据下载装置,如图3所示,所述装置包括:开启单元31、判断单元32、关闭单元33。
[0060]开启单元31,用于在视频播放过程中,开启http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据。开启单元31是基于P2P网络的数据下载装置中开启http下载的主要功能模块。
[0061 ] 判断单元32,用于判断所述http下载过程中是否存在卡顿。判断单元32是基于P2P网络的数据下载装置中判断所述http下载过程中是否存在卡顿的主要功能模块。
[0062]关闭单元33,用于若所述http下载过程中存在卡顿,则关闭http下载。关闭单元33是基于P2P网络的数据下载装置中关闭http下载的主要功能模块。
[0063]所述开启单元31,用于开启P2P下载,以下载所述第一数据。开启单元31还是基于P2P网络的数据下载装置中开启P2P下载的主要功能模块。
[0064]所述判断单元32,还用于判断紧急区数据中是否存在第一数据;
[0065]所述开启单元31,具体用于若紧急区数据中存在第一数据,则开启http下载,以下载所述第一数据。
[0066]所述判断单元32,具体用于判断http下载的速度是否小于预置阈值,预置阈值为视频正常播放所需要的速度。
[0067]如图4,所述开启单元31还包括:确定模块3101和下载模块3102。
[0068]确定模块3101,用于确定P2P下载速度最大的节点;
[0069]下载模块3102,用于从所述节点中下载所述第一数据。
[0070]所述判断单元32,还用于在视频起播时,判断紧急区数据中是否存在未下载的数据;
[0071]所述开启单元31,还用于若紧急区数据中是否存在未下载的数据,则开启P2P下载,以所述下载紧急区数据。
[0072]需要说明的是,本发明实施例提供的一种基于P2P网络的数据下载装置所涉及各功能单元的其他对应描述,可以参考图1和图2中的相应描述,在此不再赘述。本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
[0073]本发明实施例提供的一种基于P2P网络的数据下载装置,当http下载存在卡顿时,通过关闭http下载和开启P2P下载,以下载由非紧急区数据转变的且未下载的紧急区数据,改变了现有技术中http下载过程中存在卡顿时,无法下载紧急区数据和无法向其他节点分享紧急区数据的缺陷,实现了紧急区数据下载,进而能够向其他节点分享紧急区数据。
[0074]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0075]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0076]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种基于P2P网络的数据下载方法,其特征在于,包括: 在视频播放过程中,开启超文本传送协议http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据; 判断所述http下载过程中是否存在卡顿; 若存在,则关闭http下载并开启点对点P2P下载,以下载所述第一数据。2.根据权利要求1所述的方法,其特征在于,所述开启http下载,以下载第一数据之前,还包括: 判断紧急区数据中是否存在第一数据; 所述开启http下载,以下载第一数据包括: 若存在,则开启http下载,以下载所述第一数据。3.根据权利要求1所述的方法,其特征在于,所述判断所述http下载过程中是否存在卡顿包括: 判断http下载的速度是否小于预置阈值,如果是,则http下载过程中存在卡顿。4.根据权利要求1所述的方法,其特征在于,所述开启P2P下载,以下载所述第一数据包括: 确定P2P下载速度最大的节点; 从所述节点中下载所述第一数据。5.根据权利要求1所述的方法,其特征在于,所述在视频播放过程中,开启http下载,以下载第一数据之前,所述方法还包括: 在视频起播时,判断紧急区数据中是否存在未下载的数据; 若存在,则开启P2P下载,以下载所述紧急区数据。6.一种基于P2P网络的数据下载装置,其特征在于,包括: 开启单元,用于在视频播放过程中,开启超文本传送协议http下载,以下载第一数据,其中,所述第一数据为由非紧急区数据转变的且未下载的紧急区数据; 判断单元,用于判断所述http下载过程中是否存在卡顿; 关闭单元,用于若所述http下载过程中存在卡顿,则关闭http下载; 所述开启单元,用于开启点对点P2P下载,以下载所述第一数据。7.根据权利要求6所述的装置,其特征在于, 所述判断单元,还用于判断紧急区数据中是否存在第一数据; 所述开启单元,具体用于若紧急区数据中存在第一数据,则开启http下载,以下载所述第一数据。8.根据权利要求6所述的装置,其特征在于, 所述判断单元,具体用于判断http下载的速度是否小于预置阈值,如果是,则http下载过程中存在卡顿。9.根据权利要求6所述的装置,其特征在于,所述开启单元还包括: 确定模块,用于确定P2P下载速度最大的节点; 下载模块,用于从所述节点中下载所述第一数据。10.根据权利要求6所述的装置,其特征在于, 所述判断单元,还用于在视频起播时,判断紧急区数据中是否存在未下载的数据; 所述开启单元,还用于若紧急区数据中是否存在未下载的数据,则开启P2P下载,以所述下载紧急区数据。
【文档编号】H04N21/63GK105872764SQ201510967806
【公开日】2016年8月17日
【申请日】2015年12月21日
【发明人】李卓
【申请人】乐视云计算有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1