论文部分内容阅读
随着科技的发展,互联网上的应用发生了巨大的变化,由传统的文本数据转化为包含图像、视频、音频、文本等多媒体数据。由于用户越来越向往着更高的自主选择权,这使得视频点播技术(VOD)得到了长足的发展。但是传统的C/S模型由于其“孤岛式”的特性而使得服务器的磁盘、I/O、网络带宽等性能逐渐成为了应用的瓶颈。服务端的性能很大程度上决定着某项服务的优劣。CDN具有流量可控,响应迅速,服务可靠等特性,缺点是无法完全克服C/S模型所带来的性能瓶颈,P2P的优势就在于其可以利用网络上主机的资源,克服C/S模式的瓶颈。两者互补,应用在IP点播上,提高了视频点播系统的性能。而基于Cable下行的视频点播则与纯IP点播比较又有很大的差别,它是一种新颖的点播机制。在节目请求时采用IP方式,而数据发送时,则通过有线电缆,它不需要消耗太多的互联网带宽资源,利用廉价的电缆将数据发送给用户。基于IP上行Cable下行的点播是一种下行带宽大的非对称点播。本课题结合CDN与P2P技术以及有线数字电视点播技术,设计一套基于CDN与P2P的IP点播以及基于CDN的Cable点播系统。首先,介绍了CDN、P2P相应的理论,在对CDN与P2P的理论有一定的理解的基础上,分析其各自的优缺点,研究两者对视频点播服务器性能所能带来的益处。另外在设计与实现的过程中,对于现有CDN架构的可能的不足进行了分析,提出一种改进型的CDN架构系统,同时对于P2P缓存以及分块进行了深入分析,得出适合本课题的P2P缓存分块机制。其次,在深入研究了一些服务器设计的相关技术,包括线程池、定时器、交互设计等之后,在Linux平台实现了基于CDN与P2P的IP点播,以及利用CDN架构实现基于IP上行,Cable下行的Cable点播服务器。最后对整个视频点播系统的客户端和服务器进行功能测试和性能测试,客户端播放流畅,服务端运行稳定,能够承载一定的负载量。