论文部分内容阅读
流媒体作为一个新兴的网络业务,在网络服务中所占的份额越来越大,地位也随之变得更为重要。然而面对日益增长的用户群,服务器的服务能力与网络带宽成为C/S架构的流媒体系统的瓶颈。P2P技术利用节点间相互协作,能够充分利用节点资源与网络带宽,为解决瓶颈问题提供了一种有效的途径。流媒体系统中的音视频文件数据量巨大,对数据的调度与缓存管理尤为重要。
传统的数据调度算法采取单一的数据调度策略,这导致了系统各个节点,无论其所处的状态如何,都只能僵化的采用一个策略。而实际情况是,当节点刚刚加入系统的时候,它急需最近的若干块数据用来播放,以保证减小缓冲时延,而对其它的需求不是很敏感,比如带宽的利用率;而当节点进入稳定的播放状态后,节点很可能已经拥有了足够多的近期需要播放的数据,而对于其后数据的需求不再急迫,也不再强调保证连续性。而是转而更多的考虑如何更加有效的利用带宽,获取更多的数据块,从而在系统中扮演着从资源的索取者转向到提供者的角色转变。本文依照节点所处的不同状态,制定不同调度方法和策略,使得调度策略更灵活而且更加符合节点的实际需求。从而更加增强了数据调度的针对性。
缓存管理通常采用的是从左到右依次淘汰算法,这种算易实现,且算法复杂度低,但是其劣势也较为明显,因为从左到右依次淘汰的算法虽然保证了每次淘汰的都是最老旧的数据块,但是却忽略了即使是老旧数据,其伙伴节点也依然会对其发出请求,如果这些数据被淘汰了,那么必将导致相应的请求失败,从而致使请求成功率降低。本文提出了依照数据块供需比和概率淘汰的机制,提高了数据请求的成功率。
采用Peersim平台对数据调度和缓存管理算法进行仿真实验。通过在系统中加入大批量的节点,并在不同的实验环境中进行测试,最终确定了比较理想的参数设置。实验过程中,系统各项指标,诸如缓冲时延,播放流畅度均不受系统中节点总数变化的影响,表明了这两个算法的有效性。