论文部分内容阅读
Internet上大规模、高并发的音视频信息的传输与播放成为当今网络中的主流应用,P2P流媒体技术也成为当前学术界和工业界研究的热点,它的理论与实践为下一代海量数据存储、分布式计算、搜索引擎开辟了新的思路。然而,由于P2P流媒体系统自身的波动性与无中心性,导致系统中的数据调度算法和节点管理算法成为影响系统性能的关键因素。因此,研究P2P流媒体系统的数据调度和节点管理算法对如何提高系统的服务质量具有重要的意义。论文首先针对P2P网络中大量节点处于NAT设备后而无法直接通信的问题,对NAT穿透技术的原理进行了分析,研究了一种基于UDP的NAT穿透方法;接着研究和分析了当前一些主要的P2P流媒体系统中的数据调度算法,针对当前算法主要从单一的因素去优化调度策略,忽略了其它关键因素对系统性能影响的问题,设计了一种基于数据块优先级和节点能力度的数据调度算法,给出了算法的伪代码并做了实验对比分析;分析了传统集中式节点管理策略的缺点,设计出了一种混合式的节点管理算法,对算法流程进行了阐述,实现了核心代码的设计,并从理论角度证明了算法的可行性。最后给出了P2P流媒体系统的总体架构方案,完成了节点管理、Web服务器模块中数据库的设计以及核心代码的编写;分析了流媒体的编码传输过程,编写了实时视频编码为流媒体的代码。仿真与实验结果表明,文中所提出的数据调度算法由于充分考虑了邻居节点的带宽、在线时间以及节点间的相对距离从而降低了系统的启动延迟、服务器负载,提高了系统的稳定性;理论分析表明节点管理算法是可行且正确的,并且系统受网络的波动影响较小;软件测试表明数据库的设计、核心代码的编写以及实时视频的编码程序是正确的。