CN101924793A - 基于p2p流媒体的二次编码播放方法及系统 - Google Patents

基于p2p流媒体的二次编码播放方法及系统 Download PDF

Info

Publication number
CN101924793A
CN101924793A CN2010102563120A CN201010256312A CN101924793A CN 101924793 A CN101924793 A CN 101924793A CN 2010102563120 A CN2010102563120 A CN 2010102563120A CN 201010256312 A CN201010256312 A CN 201010256312A CN 101924793 A CN101924793 A CN 101924793A
Authority
CN
China
Prior art keywords
node
secondary coding
neighbor node
request
streaming media
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010102563120A
Other languages
English (en)
Other versions
CN101924793B (zh
Inventor
华仁红
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yi Teng Teng Polytron Technologies Inc
Original Assignee
BEIJING YSTEN TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING YSTEN TECHNOLOGY Co Ltd filed Critical BEIJING YSTEN TECHNOLOGY Co Ltd
Priority to CN2010102563120A priority Critical patent/CN101924793B/zh
Publication of CN101924793A publication Critical patent/CN101924793A/zh
Application granted granted Critical
Publication of CN101924793B publication Critical patent/CN101924793B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种基于P2P流媒体的二次编码播放方法,包括:当前节点向邻居节点发出播放连接请求,并播放媒体流;播放过程中,所述当前节点实时估算自己的接收带宽;所述接收带宽低于预定值,则当前节点请求其邻居节点对播放的媒体流进行二次编码;所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。还公开了一种基于P2P流媒体的二次编码播放系统,包括:播放请求模块、接收带宽估算模块、二次编码请求模块、二次编码模块和邻居节点传输带宽估算模块。本发明避免了由于客户端受接收带宽限制的情况下产生丢包-重传-再丢包的问题,从而使客户端享受到连续、平稳、高质量的流媒体服务。

Description

基于P2P流媒体的二次编码播放方法及系统
技术领域
本发明涉及网络流媒体传输技术领域,特别涉及一种基于P2P流媒体的二次编码播放方法及系统。
背景技术
对等网络(Peer to peer network)是近几年新兴的网络技术,相对于传统的C/S模式,P2P模式一个非常显著的特点就是节点无需依赖集中式服务器资源,各节点可以直接进行通信。每个节点具有相同的地位,既可以请求服务,也可以提供服务,同时扮演着C/S模式中服务器和客户端的双重角色,甚至还可以具有路由器和高速缓存的功能。在P2P模式下,由于每个节点都具有客户端和服务器的功能,这样,每个节点在从别的节点接收数据流的同时还向其他节点发送数据流。由于这个特点,P2P网络技术目前被广泛应用于互联网上大规模网络流媒体播放系统。
异构网络特点:目前网络的发展呈现规模性、异构性、动态性的特点。随着网络技术迅猛发展,网络的异构性会越来越突出。就有线网络和无线网络自身而言,也存在异构。尤其是近年来3G、WLAN、WiMAX、UWB等各种无线技术纷纷涌现,未来网络的异构性更加突出。不仅在无线接入方面具有这样的趋势,在终端技术、网络技术和业务平台技术等方面异构化、多样化的趋势也愈加明显。针对互联网上不同类型客户端的接入,如ADSL用户、Modem用户、无线网络用户等,其网络环境各不相同,其各个节点在P2P流媒体网络中的带宽能力也各不相同,有些节点带宽能力较强,称为强节点(强客户端),有些较差,称为弱节点(弱客户端),弱节点一般在P2P网络中处于叶子节点。
传统的P2P流媒体直播系统中传播算法对节点间存在的异构性均考虑不足,即无论节点的网络访问带宽如何,传输的节目源带宽不会因为接收节点的带宽能力受限而降低。传统的P2P流媒体直播数据来源于父节点,数据传输策略上主要考虑不同节点之间的数据传输网络服务质量(Quality of Service,Qos)保障,例如防止网络抖动、丢包重传机制、低延时效果等方法,但这些策略并未考虑低带宽弱客户端的收看能力,对于弱客户端,其收看能力会因为下行带宽的限制而存在大量的丢包-重传-再丢包的现象,最终导致弱节点客户端无法正常收看。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:在P2P流媒体直播过程中,在节点接收带宽受限的情况下,如何避免丢包-重传-再丢包导致无法正常播放的问题。
(二)技术方案
一种基于P2P流媒体的二次编码播放方法,包括以下步骤:
S1:当前节点向邻居节点发出播放连接请求,并播放邻居节点发来的媒体流;
S2:播放过程中,所述当前节点实时估算自己的接收带宽;
S3:若所述接收带宽低于预定值,则当前节点请求其邻居节点对播放的媒体流进行二次编码;
S4:所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。
其中,所述步骤S1之前还包括当前节点估算各个邻居节点的传输带宽的步骤:
所述当前节点定期的向全部邻居节点发送数据请求;
所述当前节点接收所述邻居节点在两次请求的间隔t内发来的数据包,将该数据包数量作为该邻居节点传输带宽;
在规定的时间T内,T≥t,统计发送数据包数量大于或等于请求的数据包总数的邻居节点。
其中,当邻居节点在一次请求后发来的数据包数量等于请求的数据包的数量时,所述当前节点在下次请求时增加请求数据包的数量。
其中,所述步骤S3中请求所述统计的邻居节点中传输带宽最大的邻居节点进行二次编码,并通过所述请求将自己的接收带宽通知给所述传输带宽最大的邻居节点。
其中,所述步骤S2中当前节点通过实时统计媒体流数据接收缓冲区中的丢包率估算自己的接收带宽。
其中,所述步骤S4中对播放的媒体流二次编码的步骤包括:
对播放的媒体流进行下采样;
按所述当前节点可接收带宽对下采样后的媒体流进行重新编码。
其中,所述预定值为媒体流发布源的发送带宽。
其中,若进行二次编码的邻居节点退出P2P流媒体直播网络,则所述当前节点重复步骤S3和S4。
一种基于P2P流媒体的二次编码播放系统,包括:
播放请求模块,用于当前节点向邻居节点发出播放连接请求,并播放邻居节点发来的媒体流;
接收带宽估算模块,用于在播放过程中,所述当前节点实时估算自己的接收带宽;
二次编码请求模块,用于在所述接收带宽低于预定值时,当前节点请求其邻居节点对播放的媒体流进行二次编码;
二次编码模块,用于所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。
其中,还包括邻居节点传输带宽估算模块,具体包括:
定期请求模块,用于所述当前节点定期的向邻居节点发送数据请求;
数据包接收模块,用于所述当前节点接收所述邻居节点在两次请求的间隔t内发来的数据包,将该数据包数量作为该邻居节点传输带宽;
数据包数量判断模块,用于在规定的时间T内,T≥t,统计发送数据包数量大于或等于请求的数据包总数的邻居节点。
(三)有益效果
本发明通过请求传输带宽较强的节点对媒体流进行二次编码,在将二次编码后的媒体流传送给接收带宽较弱的节点,避免了在接收带宽较弱的节点处出现丢包-重传-再丢包的现象,使得在剧烈变化的网络环境下,仍能确保客户端享受到连续的、平稳的、高质量的流媒体服务。
附图说明
图1是本发明实施例的基于P2P流媒体的二次编码播放方法流程图;
图2是图1中强节点对弱节点进行二次编码时的示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明实施例中,判断节点的带宽强弱,通过接收带宽小的节点(简称弱节点,一般指接收带宽小于媒体流发布源的发送带宽的节点)请求传输带宽大的节点(简称强节点)对流媒体进行二次编码,然后强节点将二次编码后的媒体流传输给弱节点,从而避免丢包-重传-再丢包的现象,达到流畅观看视频的目的。具体方法流程如图1所示。
步骤S101,加入P2P媒体流直播网络的当前节点估算其邻居节点的传输带宽,其中,传输带宽包括邻居节点的数据处理能力以及邻居的处理负载等因素。具体估算方法如下:
在P2P视频直播过程中,当前节点定期的向邻居节点发送数据请求。邻居节点在当前节点两次请求的间隔内返回给当前节点的数据包的最大数量作为邻居节点的网络传输带宽。当前节点在每次执行调度算法之前都需要计算每个邻居节点的传输带宽。邻居节点传输带宽的计算公式如下:
Cap snd i = N rec if ( N req < = N rec ) 0 if ( N req > N rec )
其中表示第i个邻居节点的传输带宽,Nreq表示当前节点请求的邻居节点的发包个数,Nrec表示实际接收的数据包个数,如果在指定的时间T(如:5秒)内,接收的数据包个数大于或等于请求的数据包个数,即Nrec≥Nreq,则表示当前邻居节点具有的传输带宽为Nrec,如果接收的数据包个数小于请求的数据包个数,即Nrec<Nreq,则表示当前邻居节点的带宽上行发送能力不够,需要减小Nreq重新测试,一直到Nrec≥Nreq为止,。则Nrec表示当前邻居节点的上行带宽能力。当前节点通过比较接收到的数据包数量和请求的数据包数量来动态更改邻居的传输带宽,如果指定的时间内接收的数据包数量不能够达到请求数据包的数量,那么邻居的节点的带宽较低,上行传输带宽不能满足要求,邻居的传输能力降低。如果接收到的数据包数量大于或等于请求的包的数量,这时要判断请求的数据包的数量是否等于邻居节点的发送数据包的数量,如果等于,则说明邻居现在可能有原始码流以上的能力,那么就要对邻居的带宽动态增长。对邻居节点最大带宽的限制,可以减轻对某一节点的依赖程度,减少该邻居节点出现异常对当前节点的影响。
步骤S102,当前节点向各邻居节点发出播放连接请求,建立连接后,播放邻居节点发来的媒体流。
步骤S103,在播放过程中,当前节点实时地估算自己的接收带宽,确定自己的带宽大小,以确定自己是否为弱节点。估算方式如下:
为保证播放的顺利,本系统采用接收缓冲区和播放缓冲区双缓冲机制,用来控制数据包的接收和播放调度。接收缓冲区中接收多个上层节点传过来的流媒体数据,并按序列号进行数据重新排序,如果在一定时间内数据未完全到达,则请求上层节点进行数据包重传,找回网络丢失的数据包。另外,接收缓冲区还能根据接收数据的速度和数量来统计本节点的数据包丢包率,用来表示本节点网络可用带宽状态,如果统计丢包率很低或者为0,则表示本节点的带宽能力较强,可正常观看节目;如果一段时间统计丢包率很高,则表示本节点的带宽能力较差,需要请求更低带宽的编码码流,根据统计的状态来动态调整连接策略。
步骤S104,根据S103中带宽的大小判断当前节点是否为弱节点,即接收带宽是否低于预定值,该预定值一般为媒体流发布源的发送带宽,若是,则执行步骤S105,否则执行步骤S106。判断过程如下:
步骤S105,若该当前节点不为弱节点,则按媒体流发布源的发送带宽播放媒体流。
步骤S106,当前节点若为弱节点,其统计的带宽能力远远小于目前传过来的媒体流带宽,该弱节点向邻居节点中的强节点提出二次编码请求,优选请求最近最强带宽的节点进行二次编码,并通过所述请求将自己的接收带宽通知给所述强节点。
步骤S107,强节点按若弱点的带宽进行二次编码后的数据传递到弱节点播放。如图2所示,为对音频进行二次编码的数据调度过程示意图。选用原始发送带宽为512kbits/s,此传输带宽对于目前互联网上大多数用户(如ADSL用户)基本可以满足其正常观看要求,但对于很多弱节点客户端(如电话Modem上网用户、无线用户),其可用带宽低至几十k,原始的512kbits/s多媒体数据大大超过其接收能力,此时在弱节点的请求下,强节点对音频媒体流进行下采样,然后按弱节点可接收带宽56kbits/s对下采样后的媒体流进行重新编码,并将编码后的媒体流发送给弱节点。
步骤S108,弱节点接收到强节点发来的二次编码后的媒体流,并播放。
步骤S109,在播放过程中,若进行二次编码的强节点退出该P2P媒体流直播网络,则弱节点从邻居节点中重新请求强节点进行媒体流二次编码,即返回步骤S106执行,否则一直执行步骤S108直到播放完成。
本发明还公开了一种基于P2P流媒体的二次编码播放系统系统,包括:播放请求模块,用于当前节点向邻居节点发出播放连接请求,并播放媒体流;接收带宽估算模块,用于在播放过程中,所述当前节点实时估算自己的接收带宽;二次编码请求模块,用于在所述接收带宽低于预定值时,当前节点请求其邻居节点对播放的媒体流进行二次编码;二次编码模块,用于所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。
其中,还包括邻居节点传输带宽估算模块,具体包括:定期请求模块,用于所述当前节点定期的向邻居节点发送数据请求;数据包接收模块,用于所述当前节点接收所述邻居节点在两次请求的间隔之间发来的数据包;数据报数量判断模块,用于在规定的时间内比较若邻居节点发来的数据包数量是否大于等于请求的数据包的数量,若是,则将该邻居节点发来的数据包数量作为其传输带宽。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (10)

1.一种基于P2P流媒体的二次编码播放方法,其特征在于,包括以下步骤:
S1:当前节点向邻居节点发出播放连接请求,并播放邻居节点发来的媒体流;
S2:播放过程中,所述当前节点实时估算自己的接收带宽;
S3:若所述接收带宽低于预定值,则当前节点请求其邻居节点对播放的媒体流进行二次编码;
S4:所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。
2.如权利要求1所述的基于P2P流媒体的二次编码播放方法,其特征在于,所述步骤S1之前还包括当前节点估算各个邻居节点的传输带宽的步骤:
所述当前节点定期的向全部邻居节点发送数据请求;
所述当前节点接收所述邻居节点在两次请求的间隔t内发来的数据包,将该数据包数量作为该邻居节点传输带宽;
在规定的时间T内,T≥t,统计发送数据包数量大于或等于请求的数据包总数的邻居节点。
3.如权利要求2所述的基于P2P流媒体的二次编码播放方法,其特征在于,当邻居节点在一次请求后发来的数据包数量等于请求的数据包的数量时,所述当前节点在下次请求时增加请求数据包的数量。
4.如权利要求2所述的基于P2P流媒体的二次编码播放方法,其特征在于,所述步骤S3中请求所述统计的邻居节点中传输带宽最大的邻居节点进行二次编码,并通过所述请求将自己的接收带宽通知给所述传输带宽最大的邻居节点。
5.如权利要求1所述的基于P2P流媒体的二次编码播放方法,其特征在于,所述步骤S2中当前节点通过实时统计媒体流数据接收缓冲区中的丢包率估算自己的接收带宽。
6.如权利要求1所述的基于P2P流媒体的二次编码播放方法,其特征在于,所述步骤S4中对播放的媒体流二次编码的步骤包括:
对播放的媒体流进行下采样;
按所述当前节点可接收带宽对下采样后的媒体流进行重新编码。
7.如权利要求1所述的基于P2P流媒体的二次编码播放方法,其特征在于,所述预定值为媒体流发布源的发送带宽。
8.如权利要求1~7中任一项所述的基于P2P流媒体的二次编码播放方法,其特征在于,若进行二次编码的邻居节点退出P2P流媒体直播网络,则所述当前节点重复步骤S3和S4。
9.一种基于P2P流媒体的二次编码播放系统,其特征在于,包括:
播放请求模块,用于当前节点向邻居节点发出播放连接请求,并播放邻居节点发来的媒体流;
接收带宽估算模块,用于在播放过程中,所述当前节点实时估算自己的接收带宽;
二次编码请求模块,用于在所述接收带宽低于预定值时,当前节点请求其邻居节点对播放的媒体流进行二次编码;
二次编码模块,用于所述邻居节点对播放的媒体流进行二次编码后,将二次编码后的媒体流传输给当前节点。
10.如权利要求9所述的基于P2P流媒体的二次编码播放系统,其特征在于,还包括邻居节点传输带宽估算模块,具体包括:
定期请求模块,用于所述当前节点定期的向邻居节点发送数据请求;
数据包接收模块,用于所述当前节点接收所述邻居节点在两次请求的间隔t内发来的数据包,将该数据包数量作为该邻居节点传输带宽;
数据包数量判断模块,用于在规定的时间T内,T≥t,统计发送数据包数量大于或等于请求的数据包总数的邻居节点。
CN2010102563120A 2010-08-17 2010-08-17 基于p2p流媒体的二次编码播放方法及系统 Active CN101924793B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102563120A CN101924793B (zh) 2010-08-17 2010-08-17 基于p2p流媒体的二次编码播放方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102563120A CN101924793B (zh) 2010-08-17 2010-08-17 基于p2p流媒体的二次编码播放方法及系统

Publications (2)

Publication Number Publication Date
CN101924793A true CN101924793A (zh) 2010-12-22
CN101924793B CN101924793B (zh) 2013-03-13

Family

ID=43339432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102563120A Active CN101924793B (zh) 2010-08-17 2010-08-17 基于p2p流媒体的二次编码播放方法及系统

Country Status (1)

Country Link
CN (1) CN101924793B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103269493A (zh) * 2013-05-27 2013-08-28 华为技术有限公司 一种推送带宽业务的方法及设备
CN108833591A (zh) * 2018-07-13 2018-11-16 广州虎牙信息科技有限公司 P2p网络中数据传输的方法、电子设备、装置、网络架构

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064504A1 (en) * 2002-08-12 2004-04-01 Alcatel Method and devices for implementing highly interactive entertainment services using interactive media-streaming technology, enabling remote provisioning of virtual reality services
CN101184016A (zh) * 2007-12-10 2008-05-21 华中科技大学 混杂式对等网络环境下的通用资源管理方法
CN101800751A (zh) * 2010-03-09 2010-08-11 上海雅海网络科技有限公司 分布式实时数据编码传输方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064504A1 (en) * 2002-08-12 2004-04-01 Alcatel Method and devices for implementing highly interactive entertainment services using interactive media-streaming technology, enabling remote provisioning of virtual reality services
CN101184016A (zh) * 2007-12-10 2008-05-21 华中科技大学 混杂式对等网络环境下的通用资源管理方法
CN101800751A (zh) * 2010-03-09 2010-08-11 上海雅海网络科技有限公司 分布式实时数据编码传输方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103269493A (zh) * 2013-05-27 2013-08-28 华为技术有限公司 一种推送带宽业务的方法及设备
CN108833591A (zh) * 2018-07-13 2018-11-16 广州虎牙信息科技有限公司 P2p网络中数据传输的方法、电子设备、装置、网络架构
CN108833591B (zh) * 2018-07-13 2019-12-06 广州虎牙信息科技有限公司 P2p网络中数据传输的方法、电子设备、装置、网络架构

Also Published As

Publication number Publication date
CN101924793B (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
US9813933B2 (en) Multi-stream service concurrent transmission method, subsystem, system and multi-interface terminal
Zhu et al. Video streaming over wireless networks
Shah et al. Cross-layer framework for QoS support in wireless multimedia sensor networks
TW200935818A (en) System and method for power savings in a wireless communication network
Zhang et al. Congestion control and packet scheduling for multipath real time video streaming
WO2014190642A1 (zh) 一种媒体数据的传输方法、装置和系统
CN113329413B (zh) 用于高铁场景的多路径传输数据预调度方法及系统
CN100514955C (zh) 动态控制实时多媒体数据生成速率的方法和装置
Agarwal et al. Cognitive multihoming system for energy and cost aware video transmission
Abbasi et al. Multimedia streaming using D2D in 5G ultra dense networks
Cui et al. DASH+: Download multiple video segments with stream multiplexing of QUIC
Kolios et al. Energy-aware mobile video transmission utilizing mobility
Chow et al. EMS: Encoded multipath streaming for real-time live streaming applications
CN101924793B (zh) 基于p2p流媒体的二次编码播放方法及系统
CN107251487A (zh) 网络中的带宽分发
KR101151848B1 (ko) 복수의 멀티캐스트 그룹을 구비하는 멀티캐스트 환경에서 통신단말로 컨텐츠를 제공하는 방법과 그 방법을 위한 스트리밍 장치 및 통신단말
Kuo et al. Supporting real-time VBR video transport on WiMedia-based wireless personal area networks
Kim et al. Segment scheduling scheme for efficient bandwidth utilization of HTTP adaptive streaming in multipath environments
Zhu et al. Cloud-assisted streaming for low-latency applications
Zhu et al. Distributed rate allocation for video streaming over wireless networks with heterogeneous link speeds
KR101474781B1 (ko) 무선 p2p 네트워크에서의 통신 방법
Ozcan et al. Multipath transmission aware ABR algorithm for SVC HAS
Liu et al. A Novel Adaptive Data Prefetching Scheme in Satellite-ground Integrated Networks with Edge Caching
Kim et al. Extremely Low Latency Interactive Streaming over an 802.11 Wireless Link
US11438786B1 (en) Bandwidth estimation and management for connected devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 214000 Jiangsu Province, Wuxi City Linghu Wuxi national hi tech Industrial Development Zone, Road No. 111 Wuxi Software Park, whale D building room 701

Patentee after: YST TECHNOLOGY CO., LTD.

Address before: 100101, Beijing, Beichen East Road, Beichen Times Building, 18, 1801, Chaoyang District

Patentee before: Beijing Ysten Technology Co., Ltd.

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: 214000 Jiangsu Province, Wuxi City Linghu Wuxi national hi tech Industrial Development Zone, Road No. 111 Wuxi Software Park, whale D building room 701

Patentee after: Yi Teng Teng Polytron Technologies Inc

Address before: 214000 Jiangsu Province, Wuxi City Linghu Wuxi national hi tech Industrial Development Zone, Road No. 111 Wuxi Software Park, whale D building room 701

Patentee before: YST TECHNOLOGY CO., LTD.