论文部分内容阅读
计算机网络带宽的提高为数据传输提供了宽广的通道。利用计算机网络进行音视频数据的实时传输得到了广泛的应用。即时通信软件一般采用私有的通信协议,企业用户不能对系统参数和客户端功能进行修改。而且,传统的视频通信系统在高并发通信情况下,面临并发数不高,容量不足的问题。XMPP是一种以XML为基础的开放式通信协议,Jingle协议是XMPP的扩展协议,添加了P2P会话控制。在Jingle框架下,即使客户端处于NAT设备之后,也能够建立连接,从而提供文件传送、语音、视频等多媒体通信服务。本文基于XMPP/Jingle协议的开源XMPP服务器——Ejabberd,研究并实现了一个能满足企业高并发实时视频通信需求的系统,尤其是那些需要通过XMPP协议来传输业务数据的企业。本文主要研究了网络视频通信系统框架的设计、XMPP服务器并发性能改进和Android客户端实现。主要工作如下:1)对两种主流的音视频传输协议标准以及XMPP服务器进行了对比分析。基于XMPP/Jingle协议框架的优点,选择其作为网络通信系统的通信信令协议。2)设计了一种优化的高并发视频通信系统框架以及系统工作的流程和时序。在满足系统性能的前提下,改变传统的服务器部署方式,将XMPP服务器和STUN服务器集中部署在同一台服务器,从而减少了部署的经济成本。3)利用开源Ejabberd服务器,搭建起了网络视频通信系统的XMPP服务器,对服务器参数进行了优化,消除了影响并发性能提升的一些主要因素。对客户端的工作流程和视频呼叫/应答的流程进行了设计,并在Android平台上实现了客户端的功能。4)对服务器中用于关闭进程的消息数据包的路由方法及代码进行改进后,对比测试了其并发性能。测试结果表明优化后的服务器响应时间更低,并发在线人数更高。最后,对客户端的功能进行了测试,并对测试结果进行了分析。本文从网络系统的架构,XMPP服务器的选择以及消息数据包路由方法的改进等三个方面来综合提升了网络视频通信系统的并发性能。对服务器和客户端的测试表明,本文研究并实现的一种网络视频通信系统能较大程度的提高系统的并发性能,可以满足企业用户对高并发视频通信的需求。同时,此系统通过架构优化,降低了企业的运营成本。