CN102811221B - 一种基于Push机制的对等网络直播流媒体数据包调度方法 - Google Patents

一种基于Push机制的对等网络直播流媒体数据包调度方法 Download PDF

Info

Publication number
CN102811221B
CN102811221B CN201210274385.1A CN201210274385A CN102811221B CN 102811221 B CN102811221 B CN 102811221B CN 201210274385 A CN201210274385 A CN 201210274385A CN 102811221 B CN102811221 B CN 102811221B
Authority
CN
China
Prior art keywords
peer
packet
node
father node
data package
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
Application number
CN201210274385.1A
Other languages
English (en)
Other versions
CN102811221A (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.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
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 Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN201210274385.1A priority Critical patent/CN102811221B/zh
Publication of CN102811221A publication Critical patent/CN102811221A/zh
Application granted granted Critical
Publication of CN102811221B publication Critical patent/CN102811221B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明的一种基于Push机制的对等网络直播流媒体数据包调度方法,属于网络流媒体传输的技术领域。本发明的目的是提供一种数据包调度方法,包括核心调度算法和数据包修复机制,其中数据包修复机制包括选择后备父节点和修复数据包两方面的内容。本发明结合Push数据传输机制和对等网络技术,通过网络每个节点对其后备父节点缓冲器中数据包的合理调度,对流媒体内容传输过程和播放过程进行优化,降低父节点带宽多样化、父节点缓冲器容量有限、数据包传输延时多样化、数据包重复传输和网络不稳定等不良因素的影响,解决数据包传输延时过高、数据包丢失、数据包重复、数据包乱序、控制信息量过大、带宽浪费等问题。本发明为对等网络直播流媒体服务质量的提高和用户体验的改善起到积极促进作用。

Description

一种基于Push机制的对等网络直播流媒体数据包调度方法
技术领域
本发明涉及一种基于Push机制的对等网络直播流媒体数据包调度方法,具体来说,是涉及一种采用Push数据传输机制作为基础,在对等网络环境下,通过合理调度数据包,对直播流媒体传输过程进行优化的方法。
背景技术
本方法是在Push机制的基础之上,将网络流媒体直播服务与P2P技术结合起来,在节点级别上进行调度,统筹协调各节点之间的数据传输,消除网络环境以及传输策略带来的不利影响,进而提高网络流媒体数据的传输效率,降低流媒体的播放延时。
目前,网络流媒体服务使用比较广泛的数据传输机制是Pull机制,子节点和父节点之间存在周期性的请求和响应过程,这将耗费一定的时间。同时,数据包在父节点的缓冲器中等待子节点请求也会增加数据传输延时和流媒体播放延时。网络流媒体直播相对于点播,更看重播放的实时性,而在与用户的交互方面要求较低。Push机制可以通过消除周期性的请求和响应过程,以及减少数据包的等待时间,来降低网络流媒体直播的播放延时。
P2P技术的迅猛发展和日趋成熟为许多网络应用提供了一个更广阔的平台。P2P技术使得网络中的参与者不再只是依赖少数的几台服务器。在P2P网络环境中,不同的节点可以直接相连,共享资源,进行交互,这将大大提升流媒体数据的传输效率,减少播放延时,提高服务质量。将P2P技术和网络流媒体应用结合起来,对于促进网络流媒体应用的发展,改善用户体验有较大帮助。
在流媒体数据包调度过程中,由于受到父节点带宽多样化、父节点缓冲器容量有限、数据包传输延时多样化、数据包重复传输和网络不稳定等因素的影响,往往会出现数据包传输延时过高、数据包丢失、数据包重复、数据包乱序、控制信息量过大、带宽浪费等问题。
发明内容
针对上述问题,本发明提供一种基于Push机制的对等网络直播流媒体数据包调度方法,提供实时高效的流媒体数据传输。
本发明的目的是尽可能降低流媒体数据传输的延时、减少数据包丢失、节约带宽资源,进而提供高质量的直播流媒体服务,内容包括核心算法和数据包修复机制。
核心算法内容如下:
(1)计算传输周期内传输的数据包个数。
每当网络环境发生变化,每个子节点i将执行数据包调度算法。选择节点i的所有父节点中上传带宽最小的节点,用单个数据包的大小S去除以它,得到传输周期T,即其中j∈Pi。T是保证每个父节点至少向子节点传送一个数据包的最小时间,也是最小上传带宽父节点向子节点传送单个数据包的最小传输周期。当网络环境发生变化时,节点i中的调度器根据调度算法,将节点i在未来T时间内会接收到的M个数据包按一定规则分配给各个父节点。其中数据包个数M等于流媒体数据在网络中的传输速率R与时间T的乘积再除以数据包的大小S得到的数值取整,即的。
(2)计算数据包端对端延时。
节点j是i的父节点之一,Gji(z)代表了数据包z在节点j和节点i之间的网络传输介质中传播所用的时间。Cj(z)代表了在父节点j被选择的数据包之中,数据包z的序号,即z是父节点j将要向子节点i传送的第Cj(z)个数据包。那么,为了保证父节点的带宽得到充分利用以及最小的端对端延时,必须让数据包被不间断地传送出去。数据包z从节点i传输到节点j的最小端对端延时为Eji(z)min=Cj(z)S/Bji+Gji(z)。
据包中网络传输介质中传播的时间Gji(z)是不受人为控制的,无法通过调度算法进行优化以减少这部分的时间。另外,数据在网络传输介质中的传播速度是非常快的,有时可以接近光速,远远大于网络节点自身的传输数据的速度,因此可以忽略不计。本方法用Eji(z)min的近似值E’ji(z)来计算数据包z在节点j和i之间的端对端延时,即E′ji(z)≈Cj(z)S/Bji
(3)数据包端对端延时排序。
将选择的所有数据包按照端对端延时大小进行排序,端对端延时较小的数据包排序的序号较小。如果出现不同数据包的端对端延时大小相同的情况,来自上传带宽较大的父节点的数据包序号排前。
(4)产生调度映射信息。
排序后数据包z的调度顺序为f(z),数据包z来自于父节点p(z),父节点节点j收到的调度序列为H(j),H(j)[x]代表序列的第x个数的值。其中,数据包z来自的父节点为子节点i发给父节点j的调度映射信息为
(5)发送调度信息。
子节点i将自身缓冲器中存在的最后一个数据包L(i)的下一个数据包L(i)+1,即执行调度算法之后将会收到第一个数据包,连同各个父节点的调度映射信息,组成调度信息,一起回馈给相应的节点。接着,各父节点将会根据收到的调度信息,相互协作,从数据包L(i)+1开始,把合适的数据包发送给节点i。
数据包修复机制内容如下:
(1)选择后备父节点。
节点i只有在网络环境发生变化的时候才进行数据包的调度。在每次调度之前,节点i先从所有父节点中选择一个上传带宽最大的节点j作为后备父节点,为修复丢失的数据包提供数据来源和带宽资源。当选定后备父节点之后,子节点i将该节点带宽的一部分预留下来,作为修复数据包的专用带宽Brecv(j)。在调度的过程中,遇到需要利用该后备父节点上传带宽的时候,均按上传带宽减去数据包修复专用带宽的剩余带宽Brest(j)计算。其中,数据包修复专用带宽的大小等于网络系统的丢包率乘以传输速率,也就是单位时间内可能丢失的数据量,即Brecv(j)=lR。
节点i的后备父节点的剩余带宽大小等于该后备父节点的上传带宽减去预留下来的数据包修复专用带宽,即Brest(j)=Bji-Brecv(j)。
(2)修复数据包。
每当节点i收到一个数据包,将其放入缓冲器中对应的位置之后,需要对缓冲器进行一次轮询。在轮询的过程中检查缓冲器中是否存在“空洞”,即是否存在过了截止时间却还没到达的数据包。如果存在,则确认后备父节点缓冲器中是否有该数据包,有则向后备父节点请求该数据包。缓冲器中可能存在多个“空洞”,每个“空洞”有一个以上的数据包的位置,这些位置与丢失的数据包的序号一一对应。
附图说明
图1为本发明的一种基于Push机制的对等网络直播流媒体数据包调度方法的调度过程示意图;
图2为本发明的一种基于Push机制的对等网络直播流媒体数据包调度方法的核心算法流程图;
图3为本发明的一种基于Push机制的对等网络直播流媒体数据包调度方法选择后备父节点流程图;
图4为本发明的一种基于Push机制的对等网络直播流媒体数据包调度方法修复数据包流程图。
具体实施方式
以下结合附图对本发明做进一步说明,但并不对本发明造成任何限制。
本发明是基于Push机制的对等网络直播流媒体数据包调度方法,本方法调度过程如图1所示。子节点只有在网络环境变化时,如父节点数量增减、父节点带宽变化或其他情况,才向父节点反馈必要的调度信息,父节点则根据调度信息,将合适的数据包发送给子节点。在这种Push机制中,只要网络环境稳定,子节点就只需要向父节点反馈一次调度信息,父节点会根据调度信息不停地向子节点发送数据包,直至网络环境发生变化,子节点再次向父节点反馈新的调度信息。
本方法核心算法的具体步骤如图2所示:
(1)计算传输周期T;
(2)计算T时间内子节点i将会接收到的数据包个数M;
(3)根据各个父节点的上传带宽确定分配给各个父节点的数据包个数M(j);
(4)计算所有父节点各个数据包的端对端延时E’ji
(5)将所有数据包按照端对端延时大小进行排序;
(6)确定各个数据包排序后的序号f(z),以及它们来自哪个父节点p(z);
(7)生成各个父节点的调度序列H(j);
(8)将第一个要发送的数据包L(i)+1和和各个父节点的调度序列H(j)反馈给相应的节点j;
(9)各个父节点根据子节点i回馈的调度信息发送数据;
(10)如果子节点i所处的网络环境发生变化,则继续到第(11)步;否则跳回第(9)步;
(11)如果子节点i退出网络,则继续到(12)步;否则跳回第(1)步;
(12)结束。
本方法基于单个后备父节点的数据包修复机制包括选择后备父节点和修复数据包两部分,其中选择后备父节点的具体步骤如图3所示:
(1)指针指向节点i的父节点列表中的第一个节点;
(2)将当前节点标记为后备父节点;
(3)判断该节点是否是父节点列表中的最后一个节点,如果是则跳到第(6)步,否则跳到第(4)步;
(4)将指针指向下一个节点;
(5)判断当前节点上传带宽是否大于后备父节点的上传带宽,如果是则跳回第(2)步,否则跳回第(3)步;
(6)设置后备父节点的剩余带宽Brest(j);
(7)结束。
修复数据包具体步骤如图4所示:
(1)判断缓冲器中是否存在“空洞”,如果是,则继续跳到第(2)步,否则跳到第(10)步;
(2)指针1指向第一个“空洞”;
(3)指针2指向当前“空洞”的第一个位置;
(4)判断该位置的截止时间是否到期且后备父节点缓冲器中是否存在该位置对应的数据包,是则继续跳到第(5)步,否则跳到第(10)步;
(5)向后备父节点发出该位置数据包的请求,更新该位置对应数据包的截止时间;
(6)判断该位置是否当前“空洞”的最后一个位置,是则跳到第(8)步,否则继续跳到第(7)步;
(7)指针2指向当前“空洞”的下一个位置,跳回第(4)步;
(8)判断当前“空洞”是否缓冲器中的最后一个“空洞”,是则跳到第(10)步,否则继续跳到第(9)步;
(9)指针1指向下一个“空洞”,跳到第(3)步;
(10)结束。
本方法可以较好地解决传输延时过高、数据包丢失、数据包重复、数据包乱序、控制信息量过大、带宽浪费等问题,对提高网络流媒体直播服务的质量和改善用户体验有重要意义。

Claims (7)

1.一种基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:使用Push数据传输机制作为调度方法的基础,适用于对等网络直播流媒体应用中,通过对流媒体数据包进行合理调度达到优化流媒体内容传输和播放过程的目的;
所述的调度方法中,每个节点对其父节点数据包进行合理调度,从而对流媒体内容的传输过程和播放过程进行优化;
所述的节点对父节点数据包的合理调度,是节点根据各个父节点上传带宽的大小以及数据包的延时大小,确定未来一段时间内,每个父节点必须向其发送的数据包和发送数据包的时间间隔,生成调度映射信息;根据节点自身缓冲器的情况,确定父节点向其传输的第一个数据包;将调度映射信息和第一个数据包的信息发送给各个父节点;节点没有及时收到需要的数据包,则需要进行丢失数据包的修复工作;
所述的传输过程和播放过程的优化,借鉴贪婪算法的思路,通过各个节点的局部优化,达到整个网络数据包传输优化的根本目的。
2.根据权利要求1所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述的调度方法所用的数据传输机制为Push机制,以避免采用Pul l机制会产生的较高传输和播放延时,所述的调度方法适用的网络环境为对等网络。
3.根据权利要求1所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述的调度方法适用的网络流媒体应用类型为直播服务,直播服务相对于点播服务,对传输和播放的实时性要求较高,对用户交互方面的性能要求较低。
4.根据权利要求1所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述的流媒体内容播放过程的优化是由传输过程优化产生的直接效果,其效果由网络的平均端对端延时、平均端对端峰值、平均带宽利用率、平均剩余丢包率和平均控制流量等量化指标进行评估。
5.根据权利要求1所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述丢失数据包的修复工作,使用一种基于单个后备父节点的数据包修复机制,包括两个部分,后备父节点的选择和数据包修复。
6.根据权利要求5所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述后备父节点的选择工作,是节点在其父节点中寻找上传带宽最大的节点作为其后备父节点。
7.根据权利要求5所述的基于Push机制的对等网络直播流媒体数据包调度方法,其特征在于:所述数据包修复工作,是节点在发现某个数据包没有及时到达自身缓冲器时,向后备父节点请求该数据包。
CN201210274385.1A 2012-08-02 2012-08-02 一种基于Push机制的对等网络直播流媒体数据包调度方法 Expired - Fee Related CN102811221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210274385.1A CN102811221B (zh) 2012-08-02 2012-08-02 一种基于Push机制的对等网络直播流媒体数据包调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210274385.1A CN102811221B (zh) 2012-08-02 2012-08-02 一种基于Push机制的对等网络直播流媒体数据包调度方法

Publications (2)

Publication Number Publication Date
CN102811221A CN102811221A (zh) 2012-12-05
CN102811221B true CN102811221B (zh) 2015-05-27

Family

ID=47234796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210274385.1A Expired - Fee Related CN102811221B (zh) 2012-08-02 2012-08-02 一种基于Push机制的对等网络直播流媒体数据包调度方法

Country Status (1)

Country Link
CN (1) CN102811221B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103124292B (zh) * 2012-12-21 2015-10-28 东莞中山大学研究院 一种p2p流媒体系统中的数据调度方法及其装置
CN103118277B (zh) * 2013-02-22 2016-04-06 北京暴风科技股份有限公司 一种视频加速方法
US9002991B2 (en) * 2013-04-06 2015-04-07 Miranda Technologies Partnership System and methods for cloud-based media play out
TWI500315B (zh) 2013-12-25 2015-09-11 Ind Tech Res Inst 串流分享方法、串流分享裝置與串流分享系統
CN103873561A (zh) * 2014-02-19 2014-06-18 东莞中山大学研究院 一种基于网络编码的p2p模式推送调度方法
CN104967873A (zh) * 2015-06-29 2015-10-07 上海帝联信息科技股份有限公司 流媒体直播调度方法、系统和调度服务器
CN109005011B (zh) * 2018-08-10 2021-03-12 深圳市智慧海洋科技有限公司 一种用于水声网络的数据传输方法、系统及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1758313A1 (en) * 2005-08-22 2007-02-28 BRITISH TELECOMMUNICATIONS public limited company Policing networks
CN101304437A (zh) * 2008-06-20 2008-11-12 南京大学 具有高播放连续度的p2p流媒体系统的设计方法
CN101938505A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种P2P流媒体数据分发的方法、系统和proxy节点
CN101945129A (zh) * 2010-09-10 2011-01-12 北京易视腾科技有限公司 P2p流媒体直播的低延时传输方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1758313A1 (en) * 2005-08-22 2007-02-28 BRITISH TELECOMMUNICATIONS public limited company Policing networks
CN101304437A (zh) * 2008-06-20 2008-11-12 南京大学 具有高播放连续度的p2p流媒体系统的设计方法
CN101938505A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种P2P流媒体数据分发的方法、系统和proxy节点
CN101945129A (zh) * 2010-09-10 2011-01-12 北京易视腾科技有限公司 P2p流媒体直播的低延时传输方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Guifeng Zheng, et al;.Pattern-push:A low-delay mesh-push scheduling for live peer-to-peer streaming.《Multimedia and Expo,2009》.2009, *

Also Published As

Publication number Publication date
CN102811221A (zh) 2012-12-05

Similar Documents

Publication Publication Date Title
CN102811221B (zh) 一种基于Push机制的对等网络直播流媒体数据包调度方法
Wu et al. Orchestrating bulk data transfers across geo-distributed datacenters
CN101888664B (zh) 无线自组织网络中视频多路并行传送方法
TWI654563B (zh) Computing resource expansion and release method and device thereof for real-time stream computing
CN102833168B (zh) 一种基于时间触发机制的数据传输方法及装置
CN103053146B (zh) 数据迁移方法和设备
CN103476062A (zh) 一种数据流调度的方法、设备和系统
Jiang et al. Enhancing traffic capacity of scale-free networks by employing hybrid routing strategy
Jin et al. Latency and energy-consumption optimized task allocation in wireless sensor networks
CN103428803A (zh) 一种联合机会网络编码的机会路由方法
CN101296152A (zh) 对等连接网络的数据调度方法和系统
US20140119363A1 (en) Waved Time Multiplexing
CN112804151B (zh) 一种数据处理的方法、装置以及电子设备
CN101674242A (zh) 一种业务报文发送控制方法及装置
CN101977414A (zh) 一种无线传感器网络的同传时隙分配方法
CN103124292B (zh) 一种p2p流媒体系统中的数据调度方法及其装置
CN102724064A (zh) 一种网络应用仿真系统构建方法
Rezgui et al. Smart charge scheduling for evs based on two-way communication
CN103326916A (zh) 智能变电站自动划分并优化vlan的系统及方法
CN110086870A (zh) 面向数据中心网络的多路径并行可靠传输方法
Huang et al. A hierarchical pseudonyms management approach for software-defined vehicular networks
CN101645932B (zh) 一种p2p流媒体启发式数据调度方法
Wang et al. A game theoretical bandwidth allocation mechanism for cloud robotics
CN104869113A (zh) 基于最小化完成时间的网络传输方法及系统
CN103685260A (zh) 覆盖多播的区文件传送方法及系统

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150527

Termination date: 20210802

CF01 Termination of patent right due to non-payment of annual fee