摘 要: 视频点播系统的客户端功能管理对流媒体视频点播系统的性能有重要的影响。本文通过对客户端功能的设计,给出一种适应流媒体点播系统的缓存管理策略和缓存替换算法。结果表明系统资源利用率和节目的播放质量和流畅性都得到了提高,证实了算法在流媒体点播系统中的可行性和有效性。
关键词:流媒体;视频点播;数据缓存
1. 引言
新兴的流媒体技术具有连续性、实时性及时序性的特点,它使得声音、影像、动画等媒体数据可以由服务器向用户计算机连续、实时传送,客户端不必等到整个媒体文件全部下载完毕就可观看到媒体。客户端的主要功能是节目视频内容呈现与实现P2P数据共享,它是最终呈现给用户的一个模块。
2. 客户端功能设计
客户端的主要功能是负责媒体数据的接收,发送和播放。客户端本身不仅需要实现视频信息的播放,同时还要实现视频信息的共享即提供数据上传功能。
客户端的具体功能如下:
(1)媒体数据的回放
(2)视频共享
(3)用户注册及登陆功能
(4)提供视频内容截图
3. 客户端数据缓存策略
在视频点播系统中,视频图像在播放时,经常受到网络延时和抖动的影响,从而使得到的数据包存在延迟和失序等问题,为解决这一问题,客户端采用一定容量的硬盘空间来存储已下载过的缓存数据。缓存问题的研究就是在有限的条件下决定去缓存哪些数据,要使单位缓存空间的使用价值最大,应缓存最有价值的数据,也就是使用最频繁的数据。文献[4]定义了数据的价值函数如式(3-1)所示。
(3-1)
其中表示数据在未来的使用概率,指获取数据的代价,是数据的大小。的大小可以根据历史数据得到相应的估计。但是由于网络的不稳定性,系统对的估算难度比较大,如何才能够正确估计出Pi(t)的值是成为缓存研究的关键问题之一。因为用户机器的内存比较有限,而且用户机器的数据缓存也非常的有限,文件读取的频率没有点播源服务器那么频繁,所以目前只在内存中缓存当前用户正在播放的数据块,为提高系统性可以考虑再为文件缓存增加一级在内存中的缓存,提出了二级缓存区策略来解决这一问题。二级缓存策略设计实现的传输过程如图3-1所示。
图3-1 数据传输流程
(1)该流程图数据发送端是源节点A和源节点B,数据接收端节点为节点C,设置二级缓存区,包括缓存区A和缓存区B来缓存媒体数据。源节点A和接收节点C之间建立一条传输路径A,在源节点B和接收节点C之间建立一条传输路径B。路径A获得数据的速率为VA,路径B获得数据的速率为VB,播放器实时播放需求速率为V。
(2)常用缓存区A内被数据填满时,缓存区A中的数据以先入先出(FIFO:Firse In First Out)方式开始下溢到缓存区B,同时缓存区A继续通过路径A获得数据。紧急缓存区B获得数据后按流媒体实时播放顺序和视频帧播放速率推送给播放器,同时通过路径B获得数据,当缓存区B内填满数据时,路径B停止传输,这时缓存区B只通过缓存区A获得数据。
(3)当VA≥V时,路径B处于待命状态,不传输数据。当VA
通过分析可以知道,在P2P网络环境下由于需要考虑节点异构性,为实现客户端节点能够接收到比较满意的服务效果,设置二级缓存区相对于设置单级缓存区能更好的平衡P2P网络的负载。
4. 客户端缓存替代算法设计
由于用户的存储空间有限,程序也不可能无限度的占用硬盘空间作为客户端缓存,在系统中设定客户端最大使用的缓存容量为512MB,当数据缓存容量到达这个限定值以后,程序必须选择删除一个缓存分块文件或不将新的缓存数据写入硬盘中,这个选择过程就称为客户端缓存替换算法[4]。
采用的缓存替换算法是一种基于统计分析的方法,在这种方法中,规定新的缓存数据是必须写入硬盘中的,这时由于新缓存数据没有历史统计信息,无法做出任何推断。对于存储在客户端机器上的每个分块文件,设置了一个引用次数的整数值,每当分块文件被调用时,程序会对这个文件自动增加1次引用,并将最近几天内的引用次数记录起来。当客户端数据缓存达到限定值时,程序为当前所有的分块文件计算平均每天引用次数,再经过排序比较选择出引用次数最少的分块文件进行删除,如果有多个分块文件引用次数相近,则优先删除最旧的分块文件。相对于一般的缓存替换算法(如FIFO先进先出、LIFO后进先出、LRU最近未曾使用等算法),基于统计的缓存替换算法更具有预测性,
5. 结论
本文首先对流媒体视频点播系统的进行了分析,给出了客户端需要实现的主要功能,设计出了一种适应流媒体点播系统的二级缓存管理策略和一种基于统计的缓存替换算法。经研究表明,该策略及算法可使系统资源利用率和节目的播放质量和流畅性得到保证和提高。
参考文献:
[1]H. Schulzrinne. Real Time Streaming Protocol. IETF, 1998:68-74
[2]钟玉琢, 向哲. 流媒体与视频服务器. 北京: 清华大学出版社, 2003:1-8
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。