论文摘要
本课题在研究各种流媒体数据的传输方式及应用层组播技术的基础上,以现代大学校园网在线直播教学系统为背景,将P2P、流媒体结合起来,实现基于P2P流媒体传输的VOD系统。主要包括组播树的构建算法、系统传输调度策略、消息传输机制、NAT防火墙穿越等内容。本文解决的关键问题如下。1.应用层组播协议的选择。在考虑到整个系统的传输策略中,采用基于层次簇提出的自适应分布式组播树构建协议NICE。2.系统的消息传递机制。P2P覆盖网中,组播树上的消息是以UDP报文的形式传输的,为了提高报文在组播树上传输的效率,本系统设计了一套单独的报文头格式,用于加载到数据包中,当节点接收到流媒体数据采集模块采集来的数据时,它将根据此报文格式重新对数据包进行处理。3.NAT防火墙穿越。本系统结合隧道穿透技术,利用隧道穿透时的消息机制,在传输流媒体数据的计算机之间进行打洞处理,所有消息的传输都使用UDP方式。将汇聚点主机作为一个NAT消息转发的Server,当有节点存在于私网中需要进行NAT穿越时,节点双方会通过汇聚点主机(Server)进行消息转发,最终确定节点所要传输数据的地址和端口号。4.系统实现。主要包括客户端的登陆与注销、客户端列表的获得、客户端节点的加入与退出、客户端缓存策略、资源的定位查找、流接收器和流发送器的实现。本系统采用Java,XML等语言进行开发,系统的跨平台性较强。另外本文提出的基于P2P的VOD系统,当点播的用户越多,传输的速度反而越快,这样在理论上点播下载的用户节点可以无限增加而无须考虑骨干网带宽和服务器的问题。这个系统不仅在技术上容易实现,而且充分利用了用户空闲的上行信道,从而彻底解决对骨干网以及服务器的负载过载的难题。