论文部分内容阅读
目前在互联网上有许多多媒体实时交流软件(IM),大部分实现了文本、语音、视频的实时交流,但是这些交流工具却普遍存在以下两个问题:首先,各IM各成体系,之间没有统一的呼叫过程,难以在IP网中相互沟通,更难以与传统电话网中的电话终端进行交流。其次,许多IM都难以适应复杂的网络环境,尤其是在网络代理(NAT)的穿透问题上,遇到了许多障碍,以致无法实现成功交流。 本文目标也是实现一多媒体交流系统,但将试图解决上述问题。本文所设计的多媒体交流系统包括三个子系统,分别对应三种独立功能,并在整个系统中占据不同的角色和地位。第一子系统为基于SIP协议的控制子系统。SIP(Session Initiation Protocol,会话发起协议)是由IETF(Interne工程任务组)提出的IP电话呼叫信令协议。是软交换中的核心协议。作为下一代网络(NGN)软交换的关键协议,具有极强的业务融合能力。确立以SIP协议为基础呼叫协议,将解决第一问题。该子系统的主要功能是呼叫控制,处于会话控制地位。第二子系统为基于DirectShow技术的多媒体交流子系统。DirectShow采用组件化的开发模式,能够加快多媒体软件开发过程并能够灵活高效地满足各种业务需求。该子系统主要功能是语音视频捕获、解压缩与传输,在整个系统中属于业务内容。第三子系统为针对上述代理穿透问题的传输子系统。本文在对NAT的理论形态和各种现实形态的分析基础上,提出了一种解决方案。该子系统在整个系统中处于基本服务层。最后将各子系统整合为一完整系统。 本文所作主要工作为引入了SIP协议,设计了SIP协议栈,并有SIP用户代理的粗步实现;运用软件工程思想,采用DirectShow技术,组件化设计并实现了语音视频交流功能;结合NAT理论在实践中摸索各种代理的特性,总结出一种穿透代理的解决方案。 本文设计并基本实现了一多媒体交流系统,而且从一定程度上解决了上述两问题,在实践中证明具有较强的实用价值。