基于SIP的跨平台语音终端设计与实现

基于SIP的跨平台语音终端设计与实现

论文摘要

随着互联网的快速发展和迅速普及,用户对网络通信服务的需求也日益提高。在这些网络通信服务中多媒体应用逐渐占据着主导作用,其中以VoIP (Voice over IP)技术尤为突出,而信令又是VoIP的关键技术之一。目前最流行的VoIP信令协议是SIP(Session Initialization Protocol)信令协议和H.323信令协议。SIP由Internet Engineering Task Force (IETF)的Multiparty Multimedia Session Control (MMUSIC)工作组于1999年提出,用来建立、修改、和终止多媒体会话。近年来,SIP凭借其简单、开放、灵活、可扩展等优势[2]在VoIP中得到越来越广泛的应用。本文根据RFC3261对SIP协议及相关扩展协议进行深入的研究与分析,同时对PJSIP开源SIP协议栈的SIP事务、消息解析等模块进行了研究,结合跨平台软件设计的准则,基于PJSIP实现了跨平台的SIP协议栈。该协议栈针对不同的操作系统编译成相应的Python模块,负责底层的SIP协议解析和SIP事务处理等,结合Python虚拟机和PyQt4用户界面框架设计并实现了跨平台的SIP语音通信系统。SIP语音通信系统软终端的设计采用了经典的MVC (Model-View-Controller)设计模式,使得系统各个模块层次清晰,便于扩展。SIP语音通信系统的功能包括SIP账号注册、语音通信、即时消息通信、状态呈现、账户和好友管理等。系统界面实现了添加账号和添加好友的功能,可以在不同的账号之间进行切换;软终端可以从五种状态中选择自己的在线状态;软终端主界面显示好友列表,通过选择列表中的好友进行呼叫通话、发送即时消息等操作;主界面下方的状态栏可以显示当前用户的状态,如注册成功、注册失败、是否处于通话状态。结合互联网电子邮件的广泛应用,SIP语音通信系统在提供语音通信和即时消息通信的功能之外集成了通过Email发送消息和添加附件进行发送的功能,形成了SIP+Email的一种新的通信模式。通过在Ubuntu Linux、Windows XP以及Windows 7等操作系统下的测试表明,SIP语音通信系统的各项功能运行稳定,并且支持多个系统平台的运行。系统还具有良好的可扩展性,后期可以在此基础上进行更多的功能实现。通过与Yate Client等其他SIP终端语音通信等测试表明该SIP语音通信系统也具有兼容性强的特点。

论文目录

  • 摘要
  • Abstract
  • 目录
  • 第1章 绪论
  • 1.1 研究背景及国内外现状
  • 1.2 VoIP概述
  • 1.2.1 VoIP工作基本原理
  • 1.2.2 VoIP网络协议
  • 1.2.3 VoIP基本传输过程
  • 1.3 本文主要工作及内容安排
  • 第2章 SIP协议概述及研究
  • 2.1 SIP协议的发展历史
  • 2.2 SIP协议的功能及结构
  • 2.2.1 SIP协议的功能
  • 2.2.2 SIP协议的结构
  • 2.3 SIP消息的结构
  • 2.3.1 SIP请求消息
  • 2.3.2 SIP响应消息
  • 2.3.3 SIP头字段
  • 2.4 SDP会话初始化协议描述
  • 2.5 SIP扩展
  • 2.5.1 即时消息
  • 2.5.2 状态呈现
  • 2.6 本章小结
  • 第3章 基于SIP协议的语音软终端系统的设计
  • 3.1 系统总体设计框架
  • 3.2 跨平台设计原则
  • 3.3 SIP协议栈框架图及类图
  • 3.4 SIP消息的解析处理
  • 3.5 SIP事务处理
  • 3.5.1 客户端INVITE事务状态机
  • 3.5.2 客户端非INVITE事务状态机
  • 3.5.3 服务器端INVITE事务状态机
  • 3.5.4 服务器端非INVITE事务状态机
  • 3.6 语音处理
  • 3.6.1 媒体流处理过程
  • 3.6.2 音频编解码管理
  • 3.7 协议栈编译过程
  • 3.7.1 Windows平台下编译
  • 3.7.2 Linux平台下编译
  • 3.8 本章小结
  • 第4章 基于SIP协议的语音软终端系统的实现
  • 4.1 软件系统设计思想及框架
  • 4.2 数据库的设计与实现
  • 4.3 界面的设计与实现
  • 4.4 软终端Email功能的实现
  • 4.5 本章小结
  • 第5章 系统测试
  • 5.1 搭建实验环境
  • 5.2 注册功能的测试
  • 5.3 通过代理服务器的通话功能的测试
  • 5.4 即时消息测试
  • 5.5 状态呈现测试
  • 5.6 发送Email的功能测试
  • 5.7 添加账号及好友测试
  • 5.8 兼容性测试
  • 5.9 本章小结
  • 结论
  • 致谢
  • 参考文献
  • 攻读硕士学位期间所发表的学术论文
  • 相关论文文献

    标签:;  ;  

    基于SIP的跨平台语音终端设计与实现
    下载Doc文档

    猜你喜欢