论文部分内容阅读
流媒体应用是互联网和多媒体技术发展的趋势和前沿性研究课题。基于Mesh的P2P网络凭借其高可扩展性和部署成本低等特点,成为了解决流媒体应用的最重要的途径之一。论文主要针对基于Mesh的P2P流媒体的关键技术展开研究,主要包括覆盖网的构建、数据通告策略、流媒体调度以及激励机制等方面。
论文首先系统概述了P2P流媒体的相关研究工作。详细介绍了几种P2P覆盖网络中的资源定位方式和路由模型,并给出了一些代表性的协议和软件。并根据P2P流媒体中的覆盖网拓扑所划分的两种P2P流媒体模型:基于树型的流媒体和基于Mesh的流媒体进行讨论,分析它们的各自的优缺点,得出基于Mesh的流媒体相对于基于树结构的优越性,同时分别给出了此两种模型的代表性协议,并对当前基于Mesh的P2P流媒体协议存在的一些问题进行了探讨。
近乎最优的带宽利用率使得BitTorrent对流媒体传输来说是个很好的选择。通过分析BitTorrent协议与P2P流媒体协议的相似性,论文提出了一个基于BitTorrent的P2P流媒体协议。为了使得BitTorrent协议适合流媒体传输,我们对该协议进行了如下修改。(1)基于数据分片的最后播放时限,我们给予它们不同的优先级别。(2)源节点采用push-based的机制来分发数据。(3)我们引入了block-leveltit-for-tat策略来取代BitTorrent中基于速率的tit-for-tat策略。实验结果表明改进后的BitTorrent协议能有效利用节点带宽,提供好的服务质量并具有很高的可扩展性和鲁棒性。
针对当前基于mesh的P2P流媒体协议中存在的不足之处,论文第四章提出了一个基于Mesh的P2P流媒体协议:FairStreaming。在FairStreaming中,我们首先提出了一种数据块通告策略,源节点向其邻居节点通告不同的可用数据信息,避免了传统的通告策略在低带宽环境下数据的严重丢失。其次我们提出了一个P2P流媒体中数据块调度的简单模型,揭示了数据块调度中,节点的下载速度与数据块大小、缓冲区大小、节点带宽等的关系。并根据该模型,我们提出了一个流媒体调度的贪心算法,根据数据块在邻居中的分布状况和播放时限赋予它们不同的优先级,并优先请求具有最高优先级的数据块,使得这些数据块总是能在最短的时间内得到。最后,我们提出了一个MIMD(Multiplicative Increase MultiplicativeDecrease)激励算法,每个节点计算其与每个邻居节点上传下载的数据块数目,并根据上传与下载的数据块数目之差来决定其下一轮向该邻居节点的发送速度。该算法能有效促使节点贡献出自己的带宽,驱逐自私节点。通过模拟实验等手段,我们对该协议进行了性能评估。实验表明,FairStreaming具有很高的带宽利用率,并且即使在低带宽环境下也能提供很高的服务质量,同时能有效驱逐自私节点,保证了全局吞吐率。