论文部分内容阅读
近年来,流媒体在Internet上得到了迅猛的发展,成为推动未来宽带应用的主动力。然而,传统的流媒体分发方案如C/S模式、CDN、IP组播等,在系统的可扩展性、可靠性和经济性等方面存在瓶颈,不能满足大规模流媒体分发服务的需求。基于P2P网络的流媒体分发技术,将流媒体数据分发的中心从服务器转向众多普通的节点,在不改变现有网络配置的前提下具有很高的性价比,同时具有良好的可扩展性和鲁棒性,是一种具有广泛应用前景的流媒体分发方案。
本文主要研究P2P流媒体分发服务的相关理论和技术,在研究分析了几种典型的P2P流媒体分发模型的基础上,提出了一种QoS保证的P2P流媒体分发模型——QCast模型。QCast模型是基于单组播树拓扑模型的,同时结合了网状拓扑模型的多邻居节点结构,这样既具有单组播树拓扑模型中组播树控制方式简单的优点,又具有网状拓扑模型中鲁棒性高的优点。
QCast是基于分布式哈希表(DHT)的应用层组播模型,在模型的设计上充分利用了DHT的路由、容错等机制。在QCast模型中,通过采用一种QoS保证的节点ID分配算法,考虑了网络中节点的异构性,使得组播树的构建过程具有“QOS感知”(QoS-aware)的特点;同时,在节点的加入算法上也考虑了OoS因素,通过计算优先级函数来挑选节点的数据发送节点。多邻居节点结构的采用,减少了因单个节点退出系统而造成的数据传输延迟,提高了系统的鲁棒性。针对这种多数据发送者的结构,在节点的数据传输上,QCast模型提出了推拉结合的数据传输调度算法,该算法能够提高系统中节点的数据下载带宽,保证流媒体分发的连续性和稳定性。
此外,本文还实现了QCast模型的系统原型,并针对模型中的主要性能指标设计了仿真实验,实验结果表明了QCast模型对系统的服务质量保证、数据传输延时、鲁棒性、可扩展性等性能进行了优化,并且在这些性能指标之间做出了较好的平衡。