CN104967866B - 一种动态自适应的p2p直播流媒体子流调度方法 - Google Patents
一种动态自适应的p2p直播流媒体子流调度方法 Download PDFInfo
- Publication number
- CN104967866B CN104967866B CN201510241352.0A CN201510241352A CN104967866B CN 104967866 B CN104967866 B CN 104967866B CN 201510241352 A CN201510241352 A CN 201510241352A CN 104967866 B CN104967866 B CN 104967866B
- Authority
- CN
- China
- Prior art keywords
- subflow
- peer
- father node
- data block
- subflows
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26216—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
Abstract
本发明公开了一种基于P2P直播流媒体系统中的动态自适应子流调度方法,该方法能根据对等网络的状况进行相应的子流分裂和合并操作,从而更好地利用对等网络资源。该方法的基本思想是:直播流媒体系统在划分子流时不再采用静态和大小固定的方式,而是将其分割成大小为16KB的不可再分传输单元;对等方在向父结点请求流媒体数据时,根据父结点的可用带宽和网络的动态性等情况确定,当父结点的可用带宽较高或者网络动态性不强时,子流的粒度较粗,从而节省系统开销,降低分发时延,反之则子流的力度越细,从而保证系统的健壮性。本发明在视频数据分发时延、数据块到达率以及系统健壮性方面比现有方法具有更好的性能。
Description
技术领域
本发明涉及一种对网络中对等方资源调度和利用的方法,具体的说是一种动态自适应的P2P直播流媒体子流调度方法,属于网络数据通信技术领域。
背景技术
采用P2P技术将直播视频数据传输给因特网中的大量用户是一种经济和便捷的方法,它能够有效利用网络边缘普通接入用户的带宽资源从而极大降低视频源服务器的压力,具有较好的可扩展性,当前实现大规模部署的直播流系统,如PPLive、UUSee等,都采用了这种方法。然而,普通终端主机相对于服务器来说,具有较大的动态性,会随时加入和退出系统,因此P2P直播流系统目前主要面临的挑战就是如何在动态网络环境下满足用户流畅收看直播节目的服务质量需求。
一般而言,在设计P2P直播流系统时,需要重点考虑的两个方面是对等方构建的覆盖网结构以及视频数据的调度和分发机制。覆盖网结构是P2P直播流系统的基础,视频数据传输都是在覆盖网之上进行,典型的覆盖网结构包括单树结构、多树结构和网状结构。树状覆盖网的优点是与数据的分发过程具有相同的结构,利于数据的扩散,但是具有特定结构的覆盖网在高动态性的网络环境中较难维护,因此它的健壮性不强,而且也无法利用叶子节点的带宽资源。网状覆盖网采用数据驱动的方式进行构建,也被称为无结构的网络,它会随着对等方的加入和退出不断调整,这种覆盖网能有效应对节点扰动给系统带来的影响。
视频数据调度和分发机制则在覆盖网的基础上对将视频数据多播传输给各个对等方,而在对视频流进行调度和分发时,目标对象可以是整个视频流[1]、划分后的子流[2]或者单个数据块[3]。直接对整个视频流进行调度时,采用的方式是单树结构的覆盖网,系统健壮性差、对等网络资源利用率低,而将视频流划分为细粒度的数据块进行分发时,可以在对等网络中有效利用对等方的上传能力进行并发传输,但这种细粒度的调度方式无法同时兼顾系统开销和数据分发时延方面的性能,一种折衷的方案是将视频流划分为更粗粒度的单元,也即子流,进行传输,然而这种方法也存在着划分方式不灵活、对等方带宽利用率不高、难以应对高动态网络环境的问题。
参考文献
[1] Y-H Chu, S. G. Rao, S. Seshan, et al. A case for end systemmulticast [J]. IEEE Journal on Selected Area in Communications, 2002, 20(8):1456-1471.
[2] C. Hu, M. Chen, C. Xing, et al. Exploring the Optimal SubstreamScheduling and Distribution Mechanism for Data-Driven P2P Media Streaming[J]. Computer Communications, 2014, 44:14-25.
[3] X. Zhang, J. Liu, B. Li, et al. Coolstreaming/DONet: a data-driven overlay network for efficient live media streaming [C]. IEEE INFOCOM,Miami, USA, 2005: 2102-2111。
发明内容
发明目的:针对目前基于P2P的直播流媒体系统存在缺乏高效的资源调度机制、用户体验质量难以得到保证等问题,提出一种以灵活调度对等网络资源为目标的动态自适应子流调度方法。
技术方案:一种动态自适应的P2P直播流媒体子流调度方法,该方法着重描述了对等方在划分子流和进行子流调度时所采用的方法,包括以下步骤:
A.视频流服务器对原始的视频流进行初始化处理,所有的视频数据都按照16KB大小划分为数据块,每个数据块都附加报头信息,标识数据块的序号,然后转入步骤B;
B.对等方按照视频数据块的序号将所有数据块划分到16条子流中,其中数据块序号可转换为16N+K(其中N为自然数,K为小于16的自然数)模式的数据块,属于第K+1条子流,然后对每条子流采用二元组(G, K)标识,其中G表示子流数目,这里为16,K表示子流序号,此外,子流数目相同且K/2的值取整后相等的两条子流称为相邻子流,然后转入步骤C;
C.对等方与其他对等方交互缓存映射表,并从中选择部分对等方作为邻居集合NeighborSet,然后从NeighborSet中选择16个包含较新数据块(也即数据块的序号更大)的对等方作为父结点,并向这些父结点发送子流请求,每个父结点请求一条子流,然后转入步骤D;
D.对等方在接收父结点发送过来的子流同时,对各条子流的传输速率进行监视,如果某条子流的下载速率持续10秒都低于子流的码率,转入步骤E,如果某条子流中各个数据块的平均传输速率在20秒内都高于子流码率的2倍,转入步骤F,否则继续对各条子流的传输速率进行监视;
E.对等方从NeighborSet中找到另一个已获得该条子流的对等方作为一个新的父结点,然后对该条传输速率较低的子流进行分裂,其中K为偶数的数据块仍从原来的父结点下载,K为奇数的数据块从新的父结点下载,两条子流的子流数目G值都修改为原来的2倍,同时对K值进行更新,然后返回步骤D;
F.对等方将该子流与其相邻子流进行合并,如果相邻子流已经经过分裂,则同时中断所有被分裂出来的子流的传输,从而形成一条新的子流,并继续向该父节点请求新的子流,新子流的子流数目G值改为原来的一半,同时对K值进行更新,然后返回步骤D。
有益效果:与现有技术相比,本发明相对现有技术具有以下优点:
1.避免了木桶效应:较之当前已有的子流调度方法,本方法增强了对等方对子流进行灵活划分的能力,从而提高特定子流的传输速率,避免了当某条子流传输速率较低时带来的整个直播节目无法连贯播放问题。
2.实现了系统性能和健壮性的统一:子流粒度划分过粗会导致不少对等方的资源难以利用,而且难以应对高动态的网络环境,而如果子流粒度划分过细又会产生不少额外的调度开销,降低视频分发速率,对系统性能产生影响。本方法能够根据父结点的可用带宽和网络状况动态调整子流的粒度,从而实现系统性能和健壮性同时达到较高水平。
附图说明
图1为本发明实施例子流初始化、分裂及合并过程;
图2为本发明实施例对等方缓存映射表的数据结构;
图3为本发明实施例进行子流调度处理的流程图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
首先需要给出本发明提供的直播流媒体系统动态自适应子流调度方法所需要的环境,如图1所示:在一台Intel-Linux架构的PC机上安装并运行能够分发流媒体数据的服务器端软件,同时在若干台Intel-Linux架构的PC机上安装并运行具有本发明vStream子流调度方法的软件,将这些PC机的100/1000Mbps以太网卡连接到接入因特网的局域网交换机上,使之与因特网上的其他PC机之间能够相互进行通信。
运行本发明提供的基于P2P直播流媒体子流调度方法的PC机系统配置如下:在Intel-Linux架构的PC机上安装并运行基于本发明的vStream软件,PC机的100/1000Mbps以太网卡与网络交换机相连。这些PC机硬件的主频4.0GHz及以上的Core双核CPU的PC机,内存≥2GB,硬盘120GB,运行Red Hat 6.1操作系统。
图2给出了本发明基于vStream方法的对等方缓存映射表的数据结构,其中子流数目用4个字节表示,子流序号用4个字节表示,该条子流中最新数据块序号用8个字节表示。
图3给出了对等方进行子流调度的流程,该流程开始于步骤S101,对等方对原始视频流进行初始化,并将所有数据块划分为16条子流,然后转S102。
在步骤S102中,对等方与网络中的其他对等方建立应用层连接,从中选择部分对等方作为邻居,子流数目相同且K/2(K表示子流序号)的值取整后相等的两条子流认为相邻子流,构建邻居集合NeighborSet,并定期与集合中的邻居交互缓存映射表,然后转S103。
在步骤S103中,对等方从NeighborSet中选择16个邻居作为父结点,并向它们请求各条子流,然后转S104。
在步骤S104中,对等方对各条子流的传输速率进行实时监测,然后转S105。
在步骤S105中,如果当某条子流的传输速率连续10秒钟都低于子流的码率时,转S106,否则转S108。
在步骤S106中,对等方从NeighborSet中选择一个新的邻居作为父结点,然后转S107。
在步骤S107中,对等方将原来的子流分裂为2条新子流,并分别向原来的父结点和新的父结点分别请求1条子流,然后转S104。
在步骤S108中,如果某条子流的传输速率连续20秒钟都高于子流码率的2倍时,转S109,否则转S104。
在步骤S109中,对等方找到该子流的相邻子流,然后转S110。
在步骤S110中,对等方将该子流与其相邻子流进行合并,并向该子流的父结点请求合并后的新子流,然后转S104。
本方法可以通过中断方式退出。
实施例
本实施例给出了在某个ISP中部署若干PC机运行基于本发明的软件对直播流媒体系统资源进行调度,以掌握本发明的运行状况,为制定合理的子流调度方法提供科学依据。
假定各个PC机经100/1000Mbps速率的以太网链路与因特网相连。在一台PC上运行视频流服务器端软件,在若干PC上运行基于本发明的vStream软件,通过收集和统计各个运行vStream软件的视频数据块到达信息,就能分析出直播流媒体的丢包率等性能测度,从而判断出系统的服务质量和健壮性是否得到提高。
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。
Claims (3)
1.一种动态自适应的P2P直播流媒体子流调度方法,其特征在于,包括以下步骤:
A.视频流服务器对原始的视频流进行初始化处理,所有的视频数据都按照16KB大小划分为数据块,每个数据块都附加报头信息,标识数据块的序号,然后转入步骤B;
B.对等方按照视频数据块的序号将所有数据块划分到16条子流中,然后转入步骤C;
C.对等方与其他对等方交互缓存映射表,并从中选择部分对等方作为邻居集合NeighborSet,然后从NeighborSet中选择16个对等方作为父结点,并向这些父结点发送子流请求,每个父结点请求一条子流,然后转入步骤D;
D.对等方在接收父结点发送过来的子流同时,对各条子流的传输速率进行监视,如果某条子流的下载速率持续10秒都低于子流的码率,转入步骤E,如果某条子流中各个数据块的平均传输速率在20秒内都高于子流码率的2倍,转入步骤F,否则继续对各条子流的传输速率进行监视;
E.对等方从NeighborSet中找到另一个已获得该条子流的对等方作为一个新的父结点,然后对该条子流进行分裂,其中K为偶数的数据块仍从原来的父结点下载,K为奇数的数据块从新的父结点下载,两条子流的子流数目G值都修改为原来的2倍,同时对K值进行更新,然后返回步骤D;其中G表示子流数目,K表示子流序号;
F.对等方将该子流与其相邻子流进行合并,如果相邻子流已经经过分裂,则同时中断所有被分裂出来的子流的传输,从而形成一条新的子流,并继续向该父结点 请求新的子流,新子流的子流数目G值改为原来的一半,同时对K值进行更新,然后返回步骤D;
对等方进行子流调度的流程,开始于步骤S101,对等方对原始视频流进行初始化,并将所有数据块划分为16条子流,然后转S102;
在步骤S102中,对等方与网络中的其他对等方建立应用层连接,从中选择部分对等方作为邻居,子流数目相同且K/2(K表示子流序号)的值取整后相等的两条子流认为相邻子流,构建邻居集合NeighborSet,并定期与集合中的邻居交互缓存映射表,然后转S103;
在步骤S103中,对等方从NeighborSet中选择16个邻居作为父结点,并向它们请求各条子流,然后转S104;
在步骤S104中,对等方对各条子流的传输速率进行实时监测,然后转S105;
在步骤S105中,如果当某条子流的传输速率连续10秒钟都低于子流的码率时,转S106,否则转S108;
在步骤S106中,对等方从NeighborSet中选择一个新的邻居作为父结点,然后转S107;
在步骤S107中,对等方将原来的子流分裂为2条新子流,并分别向原来的父结点和新的父结点分别请求1条子流,然后转S104;
在步骤S108中,如果某条子流的传输速率连续20秒钟都高于子流码率的2倍时,转S109,否则转S104;
在步骤S109中,对等方找到该子流的相邻子流,然后转S110;
在步骤S110中,对等方将该子流与其相邻子流进行合并,并向该子流的父结点请求合并后的新子流,然后转S104。
2.如权利要求1所述的动态自适应的P2P直播流媒体子流调度方法,其特征在于,步骤B中,对等方按照视频数据块的序号将所有数据块划分到16条子流中,其中数据块序号可转换为16N+K模式的数据块,属于第K+1条子流,其中N为自然数,K为小于16的自然数,然后对每条子流采用二元组(G,K)标识,其中G表示子流数目,这里为16,K表示子流序号,此外,子流数目相同且K/2的值取整后相等的两条子流称为相邻子流。
3.如权利要求1所述的动态自适应的P2P直播流媒体子流调度方法,其特征在于,从NeighborSet中选择16个对等方作为父结点,其中父结点为包含较新数据块也即数据块的序号更大的对等方。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510241352.0A CN104967866B (zh) | 2015-05-13 | 2015-05-13 | 一种动态自适应的p2p直播流媒体子流调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510241352.0A CN104967866B (zh) | 2015-05-13 | 2015-05-13 | 一种动态自适应的p2p直播流媒体子流调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104967866A CN104967866A (zh) | 2015-10-07 |
CN104967866B true CN104967866B (zh) | 2018-04-06 |
Family
ID=54221790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510241352.0A Expired - Fee Related CN104967866B (zh) | 2015-05-13 | 2015-05-13 | 一种动态自适应的p2p直播流媒体子流调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104967866B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306280B (zh) * | 2015-12-03 | 2018-06-19 | 中国人民解放军理工大学 | 面向高效子流传输的数据驱动网络构建维护系统和方法 |
CN106792269B (zh) * | 2016-08-16 | 2020-01-24 | 炫熵(上海)互联网科技有限公司 | P2p直播的延时控制系统及方法 |
CN108306827B (zh) * | 2017-01-12 | 2021-06-01 | 华为技术有限公司 | 传输数据的方法和服务器 |
CN109889543B (zh) * | 2019-03-26 | 2020-11-13 | 广州华多网络科技有限公司 | 视频传输的方法、根节点、子节点、p2p服务器和系统 |
CN111193936B (zh) * | 2019-12-27 | 2021-11-12 | 腾讯科技(深圳)有限公司 | 视频流传输方法、装置、电子设备及计算机可读存储介质 |
WO2022252083A1 (zh) * | 2021-05-31 | 2022-12-08 | 华为技术有限公司 | 一种数据传输方法、装置、电子设备及存储介质 |
CN113905248B (zh) * | 2021-09-29 | 2024-03-22 | 乐视云网络技术(北京)有限公司 | 直播视频数据传输方法、装置、设备以及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101501682A (zh) * | 2006-07-20 | 2009-08-05 | 汤姆森许可贸易公司 | 多方合作对等视频成流 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7970932B2 (en) * | 2008-12-16 | 2011-06-28 | Polytechnic Institute Of New York University | View-upload decoupled peer-to-peer video distribution systems and methods |
-
2015
- 2015-05-13 CN CN201510241352.0A patent/CN104967866B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101501682A (zh) * | 2006-07-20 | 2009-08-05 | 汤姆森许可贸易公司 | 多方合作对等视频成流 |
Non-Patent Citations (2)
Title |
---|
P2P流媒体直播系统多子流传输机制及性能分析;刘娜;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130715;摘要,正文第17页第1行-第36页第7行,图3-1至图4-1 * |
基于多数据子流的P2P流媒体直播客户端的设计与实现;张宗国;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104967866A (zh) | 2015-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104967866B (zh) | 一种动态自适应的p2p直播流媒体子流调度方法 | |
EP3120523B1 (en) | Bandwidth management in a content distribution network | |
Wang et al. | CALMS: Cloud-assisted live media streaming for globalized demands with time/region diversities | |
US9660922B2 (en) | Network assisted rate shifting for adaptive bit rate streaming | |
US20080316923A1 (en) | Distributing intelligence across networks | |
Tang et al. | The role of cloud computing in content-centric mobile networking | |
CN103634692A (zh) | 基于cdn和p2p的混合流媒体视频点播系统 | |
US20200136926A1 (en) | Dynamic adaptive network | |
Roverso et al. | Smoothcache 2.0: Cdn-quality adaptive http live streaming on peer-to-peer overlays | |
CN101132390A (zh) | 基于p2p技术的流媒体系统 | |
CN105392025B (zh) | 用户侧带宽聚合的方法、设备和内容分发系统 | |
Wu et al. | Diverse: application-layer service differentiation in peer-to-peer communications | |
Zhou et al. | An adaptive cloud downloading service | |
CN105577646A (zh) | 用户侧带宽聚合的方法、设备和内容分发系统 | |
Chen et al. | Zebroid: using IPTV data to support STB-assisted VoD content delivery | |
Erfanian et al. | On maximizing QoE in AVC-based HTTP adaptive streaming: An SDN approach | |
CN115580619A (zh) | 数据处理系统和数据处理方法 | |
He et al. | Modeling and analysis of multi-channel P2P VoD systems | |
Tosic et al. | Soft sensors in wireless networking as enablers for SDN based management of content delivery | |
Tong et al. | Efficient broadcast scheduling at mobile cloud edges for supporting news-broadcast-on-demand over P2P streaming | |
KR100523359B1 (ko) | 비대칭 트래픽 스위칭 시스템 | |
CN105306280B (zh) | 面向高效子流传输的数据驱动网络构建维护系统和方法 | |
Aparicio-Pardo et al. | A green video control plane with fixed-mobile convergence and Cloud-RAN | |
KhudaBukhsh et al. | Analysing and leveraging client heterogeneity in swarming-based live streaming | |
Silvestre et al. | Boosting streaming video delivery with wisereplica |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180406 Termination date: 20210513 |
|
CF01 | Termination of patent right due to non-payment of annual fee |