用于网状点对点串流系统的播放延迟时间调整方法及装置的制作方法

文档序号:7921276阅读:121来源:国知局
专利名称:用于网状点对点串流系统的播放延迟时间调整方法及装置的制作方法
技术领域
本发明是关于 一 种应用于网状点对点串流系统(mesh-based P2P streamingsystem)的播放延迟时间的调整方法及装置。
背景技术
过去使用者欲观看网络上所提供的视频内容时,需先储存所述视频内容于计算机 上,因而需耗费动辄数小时的下载时间。然而随着网际网络的蓬勃发展以及网络带宽的不 断增加,一种新的串流服务便应运而生。视频串流服务能让使用者同时观看及下载视频内 容,其中从下载至观看时间差距仅数十秒至数分钟,真正达到实时观看(real time)的目 的。此外,由于串流服务不需完全下载便能观看内容,故其所需的储存空间大幅降低,且其 实时观看的特性能让使用者如同电视般可自行选择欲观看的频道。 最初网络串流系统多采用客户端/服务器(client/server)的架构。如图l所示, 在所述架构下,网络封包是由一串流服务器11单向传输至多个客户端节点12-15。然而所 述架构的缺点在于所有客户端节点的封包数据皆是从单一或单一群串流服务器11下载而 来,故所述串流服务器11至负载能力和网络带宽将会影响所述网络串流服务的品质。换言 之,在主从式架构下,所述串流系统所能提供的服务能力是固定的。 一旦使用者的数目超过 所述串流系统所能提供的服务能力时,轻则某些使用者无法取得服务,重则所述串流服务 器11会当机而造成整个串流服务的瘫痪。 为克服主从式架构的问题, 一种点对点架构(pear-to-pear,或简称P2P)便应运 而生。如图2所示,在所述架构下,每一网络节点会同时担任服务器21和客户端22-25的 角色,亦即每一网络节点不只从其他网络节点取得所需服务,其亦提供服务给其他网络节 点。因此,在点对点架构下,所述串流系统所能提供的服务能力将不再局限于特定网络节点 的负载能力或网络带宽。故,此一特性使点对点架构相当适合用以提供串流服务。
—般点对点串流系统可分为三种架构树型(tree)、森林型(forest)和网状型 (mesh)。然而由于网状型架构的点对点串流系统在错误容忍率和实作上皆较其他两者具有 优势,故目前常见的点对点串流系统皆采用网状型架构。在网状型架构下,每一网络节点皆 会分配一缓冲区,称之为数据交换缓冲区(exchanging buffer) 32,以储存来自其他网络节 点的封包和提供其他网络节点所需的封包。此外,每一网络节点另包括一位图(bitmap) 31 和一播放缓冲器(playout buffer)41。所述位图31是用以表示对应的数据交换缓冲区32 是否有储存封包。如图3和图4所示,所述位图31的其中一位为1时,表示其对应的数据 交换缓冲区32在对应的位置上有储存封包,反之亦然。此外,各网络节点会定时互相交换 彼此位图31的信息以得知应从何网络节点撷取所需的封包。所述播放缓冲器41是用以储 存欲播放的封包。当一封包储存至一播放缓冲器41时,需延迟一段时间才会播出,此延迟 时间即为播放延迟时间(playout delay)。图4显示播放缓冲器41和数据交换缓冲区32 的关系。如图4所示,封包通常并非依照其播放次序到达数据交换缓冲区32,故数据交换缓 冲区32所存的封包会有不连续的现象。待数据交换缓冲区32收集一定数量且符合播放次序的封包后,即将其存入所述播放缓冲器41。因此,播放缓冲器41的封包皆依照其播放次序储存。在目前设计中,数据交换缓冲区32的容量通常远大于播放缓冲器41的容量。
然而,点对点串流系统会有频道切换时间过长(约为40秒)以及实时播放延迟时间过长的问题(约为60-120秒)。此两者发生的主因皆为播放延迟时间过长。 一般而言,播放延迟时间代表当播放缓冲器41全满时,播放缓冲器41播放所有储存封包所需的时间。因此,播放缓冲器41的容量会正比于播放延迟时间的长短。由于点对点网络架构相较于主从式网络架构更难预测网络状况,而网状点对点网络架构又是点对点网络架构中最难预测其网络状况的架构。换言之,在网状点对点网络架构下,一网络节点的加入和离开是相当频繁而不可预期的,故也难以预测所需的封包何时到达及来自何方。因此,一般网状点对点网络架构多会安排一较大的播放缓冲器41或是较长的播放延迟时间以避免封包遗失而造成视频影音中断。然而,较大的播放缓冲器41却又产生上述两种问题。 据此,实有必要设计一应用于网状点对点串流系统的播放延迟时间的调整方法,其可根据网络状况动态调整所需的播放延迟时间,进而达到縮短频道切换时间及实时播放的目的。

发明内容
本发明利用动态调整一网状点对点串流系统的播放延迟时间达到縮短频道切换时间及实时播放延迟时间的目的。
本发明的应用于网状点对点串流系统的播放延迟时间的调整方法包括下列步骤
根据一网络节点的一数据交换缓冲区所存封包,动态决定及更新所述数据交换缓冲区所存
封包的一完整度;若所述完整度较更新前的完整度高,则减少所述网络节点的一播放延迟
时间;以及若所述完整度较更新前的完整度低,则增加所述播放延迟时间。 本发明的有益效果在于本发明提供的应用于网状点对点串流系统的播放延迟时
间的调整方法及装置,可根据网络状况动态调整所需的播放延迟时间,进而达到縮短频道
切换时间及实时播放。


图1显示一已知的主从式架构的网络系统; 图2显示一已知的点对点架构的网络系统; 图3显示一已知的点对点网络系统架构下一网络节点的位图; 图4显示一已知的点对点网络系统架构下一网络节点的播放缓冲器和数据交换缓冲区的关系; 图5显示本发明的一实施例的应用于网状点对点串流系统的播放延迟时间的调整方法; 图6显示本发明的一实施例的封包对应其权重值的关系;及 图7显示本发明的一实施例的一点对点网络系统架构下一网络节点的位图; 图8显示本发明的一实施例的完整度对应其播放延迟时间调整值的关系。 附图标号 11 串流服务器 12-15 客户端节点
21服务器22-25客户端31位图32数据交换缓冲区41播放缓冲器71位图72数据交换缓冲区501-506步骤
具体实施例方式
图5显示本发明的一实施例的应用于网状点对点串流系统的播放延迟时间的调 整方法。在步骤501时,依照一网络节点所连接的其他网络节点的初始网络状态决定一播 放延迟时间的初始值,并进入步骤502。在步骤502时,动态决定及更新所述网络节点的一 数据交换缓冲区所存封包的完整度,并进入步骤503。在步骤503时,判断是否所述更新的 完整度和更新前的完整度的差值超过一临界值。若步骤503的结果为是,则进入步骤504, 否则回到步骤502。在步骤504时,判断是否所述更新后的完整度高于更新前的完整度。若 步骤504的结果为是,则进入步骤505,否则进入步骤506。在步骤505时,减少所述网络节 点的播放延迟时间,并回到步骤502。在步骤506时,增加所述网络节点的播放延迟时间,并 回到步骤502。 在步骤501中,所述初始值的设定为所述这些其他网络节点的最大传递延迟时间 和最小传递延迟时间的差值乘上一常数,并可由下列式子表示
初始播放延迟时间=a * (max {PD_V_S} -min {PD_V_S}) 其中PD_V_S为所述这些其他网络节点的传递延迟时间的集合。较佳的,所述常数 a为1。 在步骤502中,本实施例提供三种计算数据交换缓冲区所存封包的完整度的方 法。第一种决定完整度的方法是根据所述数据交换缓冲区所存封包的个数。易言之,每一 储存的封包皆具有一权重值,而播放次序越优先的封包其权重值越高。所述完整度便为所 有储存封包的权重值总和,并可由下列式子表示
完整度工=E数据交换缓冲区储存封包的权重值 其中E代表所含元素的累加,而所述数据交换缓冲区所存封包的权重值和其播放 次序呈线性、阶梯性或指数性的关系,如图6所示。 第二种决定完整度的方法是根据所述数据交换缓冲区所存封包的数据量。易言 之,每一储存的封包皆具有一权重值,而数据量越大的封包其权重值越高。目前影音帧 (frame)可分为三类,分别为I帧、P帧和B帧,其中I帧的数据量大于P帧,而P帧的数据 量大于B帧。此三种帧分别对应一权重值,而所述完整度便为所有储存封包的权重值总和, 并可由下列式子表示 完整度2 = I帧的权重值X I帧的个数+P帧的权重值X P帧的个数+B帧的权重 值XB帧的个数 其中所述数据交换缓冲区所存封包的权重值和其数据量呈线性、阶梯性或指数性 的关系,如图6所示。 为记录数据交换缓冲区所存封包的帧种类,可修改位图的储存方式,如图7所示。 所述位图71的每一栏位由1位增为3位,其中最高有效位记录对应的数据交换缓冲区72是否有储存封包,后两位则记录所述储存封包的数据种类01代表I帧,10代表P帧,11代
表B帧,而OO代表未知。 第三种决定完整度的方法是根据所述数据交换缓冲区所存封包的连续性。在播放影音视频时,一连串封包遗失远较于多个单一封包分别遗失严重。因此,在计算完整度时,除依照不连续封包位置的优先次序决定其权重值外,另依照所述这些不连续封包位置的不连续封包个数决定其权重值,并可由下列式子表示 完整度3 = (n数据交换缓冲区储存封包的权重值)/( E所述这些不连续封包位置(n所述不连续封包位置的权重值)) 其中n代表所含元素的乘积,而所述数据交换缓冲区封包的权重值和其播放次序
呈线性、阶梯性或指数性的关系,如图6所示。 在步骤502中,本实施例并不局限于此三种完整度计算方法,而可以根据此三种
完整度的任意权重的加总,并可由下列式子表示 完整度=巧X完整度l+r2 X完整度2+r3X完整度3 其中巧、r2和r3为此三种完整度的权重值。 在步骤504中,本实施例比较所述完整度的方式是比较更新后的完整度以及更新前所有完整度的平均值。在步骤505和506中,本实施例是根据所述完整度更新前后的差值,将所述这些播放延迟时间作线性、阶梯性或指数性的调整,如图8所示。步骤505和506的调整播放延迟时间的方法可通过调整所述播放缓冲器内的封包播放速度或调整所述播放缓冲器的容量。在调整所述播放缓冲器内的封包播放速度时,可依照储存封包的运动向量(motionvector)和音量分类,并优先调整对于播放速度较不敏感的封包,以减少对于播放品质的影响。 综上所述,本实施例在初始加入一网状点对点网络系统群组时,是设定一较短的初始播放延迟时间以解决频道切换速度过长的问题。之后,本实施例再通过观察真实的网络状态,亦即所述数据交换缓冲区所存封包的完整度动态,调整播放延迟时间以解决实时播放延迟时间过长的问题。本实施例的方法可设计成一计算机程序产品,以供计算机载入时加以执行。 本发明的技术内容及技术特点已揭示如上,然而本领域技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰。因此,本发明的保护范围应不限于实施例所揭示者,而应包括各种不背离本发明的替换及修饰,并为以权利要求所涵盖。
权利要求
一种应用于网状点对点串流系统的播放延迟时间的调整方法,其特征在于,所述调整方法包括下列步骤根据一网络节点的一数据交换缓冲区内所存封包而动态决定及更新所述数据交换缓冲区所存封包的一完整度;若更新后的完整度较更新前的完整度高,则减少所述网络节点的播放延迟时间;以及若更新后的完整度较更新前的完整度低,则增加所述播放延迟时间。
2. 根据权利要求1的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区所 存封包的个数决定。
3. 根据权利要求2的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区所 存封包的权重值的总和所决定,而播放次序越优先的封包其权重值越高。
4. 根据权利要求3的调整方法,其特征在于,所述数据交换缓冲区所存封包的权重值 和其播放次序呈线性、阶梯性或指数性的关系。
5. 根据权利要求l的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区所 存封包的数据量决定。
6. 根据权利要求5的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区所 存封包的权重值的总和所决定,而数据量越大的封包其权重值越高。
7. 根据权利要求6的调整方法,其特征在于,所述数据交换缓冲区所存封包依数据量 分为I帧、P帧和B帧,其分别对应不同的权重值。
8. 根据权利要求l的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区所 存封包的连续性决定。
9. 根据权利要求8的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区内 封包不连续的次数以及所述这些不连续区域的封包数决定。
10. 根据权利要求9的调整方法,其特征在于,所述完整度是由所述数据交换缓冲区内 所存封包的权重值的乘积再除以各不连续区域的封包的权重值的乘积的总和决定,而所述 数据交换缓冲区的封包的权重值和其播放次序呈线性、阶梯性或指数性的关系。
11. 根据权利要求l的调整方法,其特征在于,所述更新前完整度是指更新前所有完整 度的平均值或更新前固定次数完整度的平均值。
12. 根据权利要求1的调整方法,其特征在于,所述这些播放延迟时间调整的步骤是于 所述完整度更新前后的差值超过一临界值时进行。
13. 根据权利要求1的调整方法,其特征在于,所述这些播放延迟时间调整的步骤是根 据所述完整度更新前后的差值,将所述这些播放延迟时间作线性、阶梯性或指数性的调整。
14. 根据权利要求1的调整方法,其特征在于,所述这些调整播放延迟时间的步骤是调 整所述网络节点的一播放缓冲器内的封包播放速度。
15. 根据权利要求1的调整方法,其特征在于,所述这些调整播放延迟时间的步骤是调 整所述网络节点的一播放缓冲器的容量。
16. 根据权利要求1的调整方法,其特征在于,所述调整方法进一步包括下列步骤 依照所述网络节点所连接的其他网络节点的初始网络状态而决定所述播放延迟时间的初始值。
17. 根据权利要求16的调整方法,其特征在于,所述初始值是所述这些其他网络节点的最大传递延迟时间和最小传递延迟时间的差值乘上一常数。
18. —种应用于网状点对点串流系统的播放延迟时间的调整装置,包括用于根据一网络节点的一数据交换缓冲区内所存封包而动态决定及更新所述数据交换缓冲区所存封包的一完整度的装置;用于若更新后的完整度较更新前的完整度高,则减少所述网络节点的播放延迟时间的装置;以及用于若更新后的完整度较更新前的完整度低,则增加所述播放延迟时间的装置。
19. 根据权利要求18的调整装置,其特征在于,所述这些播放延迟时间调整的步骤是根据所述完整度更新前后的差值,将所述这些播放延迟时间作线性、阶梯性或指数性的调整。
全文摘要
本发明牵涉一种应用于网状点对点串流系统的播放延迟时间的调整方法及其装置。所述调整方法包括下列步骤根据一网络节点的一数据交换缓冲区所存封包,动态决定及更新所述数据交换缓冲区所存封包的一完整度;若所述完整度较更新前的完整度高,则减少所述网络节点的一播放延迟时间;以及若所述完整度较更新前的完整度低,则增加所述播放延迟时间。
文档编号H04L1/00GK101729375SQ20081017494
公开日2010年6月9日 申请日期2008年10月24日 优先权日2008年10月24日
发明者吴奕纬, 谢春勇, 黄思贤 申请人:财团法人工业技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1