- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
SLOP系统中数据块请求调度算法的研究
3.4 选择数据块
在计算出该秒该邻居应该提供多少数据块之后,邻居管理器利用邻居对象的数据块状态信息选取块。为了保证数据的及时性,我们把缓冲窗口分为两个部分,前1000 个块必须是立即获取的,而后3000 个块依据最少优先的选取策略,最少优先的选取策略为首先选择邻居数目最少的块,如果遇到多个块有相同的邻居数据就随机选择,同时把C 设定为实际选出的块数目,修改邻居管理器中数据块的状态为请求中,再向邻居发起请求。
结点与邻居断开时,若还有请求没有完成时结点通知邻居管理器恢复请求中的这些块为未请求状态,以便给其它的邻居提供。
结点收到邻居发来的数据后,将数据写入邻居管理器中的缓冲窗口中,同时更新该块数据的状态为已获得。这种信息将在交换数据块状态信息的处理中发送给其它的邻居结点。

图2 实验结构图
4 性能*价
我们从频道质量、交换状态信息开销量和源负载量三个方面来*价该算法。我们定义频道质量为结点播放频道时一段时间内丢失的数据量和全部数据量的比值,用Q 表示。交换状态信息开销量用状态信息交换的数据量和实际传输数据的量之间的比值来描述,用O 表示。源的负载量定义为源当前输出的带宽对频道码率的倍数,用L 表示。质量越好,用户的感观效果越好就更能满足应用的要求,当Q 为1 时表示没有任何数据的丢失或延迟到达。交换状态信息的数据量越小,O 也就越小。对于客户端/服务器模式系统该值随着用户数增加同比率增加,而对于SLOP 系统来说该值增长缓慢而且到达一定值后不再增大。
在模拟实验中难以模拟结点之间的带宽变化情况,所以该算法的性能我们通过采集系统实际运行的数据所得。因实际运行中条件和环境的限制,目前系统的用户数最高仅在30 人左右。但是这些数据也可以真实的反映算法的性能。下面所得的数据在局域网内部完成即每个机器都能够被访问到且具有类似的带宽。如图2 所示,直播源放在一台单独的服务器上并使用NetMeter 软件测量从某时刻开始一段时间内的带宽值。SLOP 系统中使用突发的方式进行数据传输,因而我们测量10 分钟内的平均带宽值代表系统在这段稳定时间内服务器输出的带宽。Tracker 部署在另一台服务器上。每台PC 机上运行0-5 个客户端。当K=20KB 时,每个客户端需要80MB 左右的内存。我们的PC 机内存为512,为保证系统的正常运行因此每个PC 机最多运行5 个客户端。每个客户端负责记录一段时间内丢失的数据块和收到的数据块数,以及该客户端与所有邻居交换的数据量以及数据块状态信息量。在系统测试中,我们选择能达到VHS 半屏质量的320kbps 码率,块的大小分为4KB 和20KB 两种情况。
(1) 频道质量
在 SLOP 系统的测试中,无论K 为4KB 还是20KB,频道的质量都在100%。在Internet 环境中,频道会因为部分结点接入带宽低而导致质量下降,但目前都大于90%。
(2) 源负载量
对于客户端/服务器模式的视频直播系统而言,源负载量为系统当前的用户数,如图3 中三角形标记的直线。而对于P2P系统来说,源负载量将远远小于系统中的用户数。从图3 中可以看到用户数为30 时,K 为4KB 的源负载仅为7.6,K 为20KB 的源负载仅为9.6。同时曲线随着用户数的增加其增长幅度越来越缓慢。我们也可以看出K 为20KB 和4KB 时它们在用户数大于15时出现差异,K=20KB 的曲线增长更快。这是因为K=20KB 时,块比较大导致结点随机交换数据时分布不均匀从而被迫从源获取更多的数据。在我们的实际中也发现,K=4KB 时更加适合Internet中的用户。从源负载的降低上,我们可以看出数据块在结点之间的分布是均匀的,结点相互利用了彼此的上传带宽。

(3) 交换状态信息开销
图 4 给出结点邻居数不同时交换状态信息的开销。结点与每个邻居都要进行状态信息的交换,因而邻居数的增加这种状态信息必然增多。上文中我们分析指出块越大交换状态信息开销就越少,从图4 中我们也可以看出。系统的测试中,结点的最大邻居数为23 时,K 为4KB 时开销为0.440‰,K 为20KB 时开销为0.394‰。SLOP 的实际运行中,结点的邻居数一般设定在30 左右,因此交换状态信息的开销不超过0.500‰。从图4 的曲线中我们可以看出曲线的增长随着邻居数的增加而变缓慢。一方面是因为结点邻居数增多它就能更快的获得数据块,使得数据块连续而降低其描述信息。另一方面是差值法的状态信息交换方法,使得结点与邻居之间同时发送相同信息的概率降低。

图4 邻居数与数据块信息开销
5 结束语
从上面的分析和实验结果来看,首先SLOP 视频直播传输系统能够正确完成传输视频流数据。其次,SLOP 系统极大的减轻了直播源的负载,而且有效的利用了邻居结点的上传带宽。最后,数据块状态信息的交换量不超过0.500‰,这个值远小于现有的任何系统。
本文作者创新点:作者在研究分析了现有基于P2P视频直播系统的基础上,在SLOP 系统中提出了最少优先的动态数据量请求调度算法,不仅有效的降低了直播源的负载,提供了系统的扩展性,同时该算法产生的额外信息开销被降低到0.500‰。
来源:维库开发网
上一篇:新颖的教学用稳压电源的设计
下一篇:共站型电源低成本解决方案


