论文部分内容阅读
近年来,随着互联网的发展,P2P技术凭借其无限度的可扩展性、强大的传输能力,迅速成为各种应用的主要分发手段,甚至成为互联网的重要发展方向之一。流媒体技术是指使用流式传输的方式在网络上传输文件,具有高效实时的特点。但是,在传统的C/S模式下,流媒体服务的发展面临带宽和可扩展性等多方面制约,因此采用P2P模式解决流媒体服务的瓶颈问题受到了广泛的重视。本文对P2P流媒体播放流畅性从两个方面进行了深入研究,一方面改进P2P流媒体自身数据选择算法,另一方面合理降低P2P数据类应用(如BT文件共享)带宽占用率,提高P2P流媒体应用的带宽占用。本文首先分析P2P流媒体的研究现状,然后重点研究基于邻近性的自适应缓存数据选择算法,从改进数据调度策略方面,提高P2P流媒体视频播放的流畅性;接着从传输层分析研究TCP Reno算法,并对Reno算法进行改进,达到降低BitTorrent等P2P文件共享应用的网络带宽占用率,从而进一步提高了P2P流媒体视频的播放流畅性。本文主要做了以下三个方面的工作:一、研究P2P流媒体系统的缓存数据选择机制,提出基于邻近性的自适应缓存数据选择算法。节点在准备下载下一步缓存数据时,首先考虑节点的位置信息,确定节点与邻居节点之间的带宽、延迟等条件,计算节点当前的综合“邻近性”。若“邻近性”较大,则优先下载速率最高的数据块,若“邻近性”较小,则优先下载播放序列最前端的数据块,从而保证流媒体视频播放的流畅性。二、研究TCP Reno算法,合理降低BitTorrent等基于TCP协议的P2P文件共享应用带宽占有率,提高基于UDP协议的P2P流媒体视频带宽占用。在Reno中改进基于丢包反馈的拥塞判断机制,加入对RTT的参考。在拥塞避免阶段,通过对RTT与平均RTT的对比,对网络拥塞进行预判断;在拥塞控制阶段,根据实时RTT,动态减小拥塞窗口阈值,更大程度上减少网络拥塞时TCP的发包量。将改进后的拥塞算法应用于BitTorrent协议,从应用层看,减少了BitTorrent下载时对带宽占用率,提高了P2P流媒体视频流的吞吐量,从而进一步提高P2P流媒体视频的播放流畅性。三、提出了一个基于Android平台的P2P流媒体视频下载与播放的原型系统NexusBT的设计框架,为现实环境下进行P2P流媒体关键技术的研究奠定了基础。本文的研究成果对于提高P2P流媒体视频播放流畅度具有一定的应用价值。