摘要:基于 网络 电话理论研究的成果提出了基于SSL VPN的SIP网络电话系统,将SSL VPN虚拟通道应用到网络电话上来,以提高网络电话的安全性能,并构建了一个基于SSL VPN的SIP网络电话系统的模型,并对该系统模型进行了测试。结果显示对网络电话采用SSL VPN的方案可行。
关键词:SIP网络电话;仿真;测试
1开源软件介绍
1.1sip与eXsip
sip是一个开源的标准的RF 3261的SIP协议栈,sip协议栈采用ANSI编写,结构简单而小巧,所以速度特别快。它主要提供一些解析SIP/SDP消息的API和事务处理的状态机,负责生成和解析SIP信令。sip可以用来开发LserAgent,IP sft-phne和SIP Prxy等等。sip总体结构主要包括三大模块:状态机模块、解析器模块和工具模块,如图1所示。
图1sip模块结构
sip把各种SIP消息统一封装到一个SIP_ESSAGE_T结构体中。sip的核心是基于事务层的,一个事务层从逻辑上可以分为客户和服务器两部分,客户端发送请求,服务器端发送响应。
一方面sip的各个模块相对清晰、独立,且词法解析器提供了较完善的API。但另一方面由于sip结构简单,外围相关模块需要用户自己开发,如SIP消息的接收和发送,RTP/RTP语音数据处理等;协议栈的调试和维护功能比较简单。我们可以配合使用sip的扩展协议栈eXsip eXsip部分封装了sip协议栈,提供了网络数据传输模块,另外还增加了all,dialg,registratin,subsriptin等过程,使之实用性更强。
eXsip的基本思想是在封装sip词法解析模块的基础上,增加一个SKET传输模块,通过称之为JEVENT的消息管道实现sip事务状态机和SKET传输层之间的通信,从而实现SIP信令在网络上发送、接收。eXsip结构模块如图2所示:
图2eXsip模块结构
eXsip充分重用sip协议栈的解析器、消息封装API、状态机三个模块,保证SIP消息格式和状态转移的正确性。提供了面向呼叫和应答呼叫的API,并实现了SKET传输模块和SDP协商模块,结构简单清晰。
1.2penVPN
penVPN是基于数据包封装技术,利用SSL协议结合强加密算法和身份认证技术构建而成的可靠安全的VPN。其工作原理可描述为:服务器和客户端通过SSL握手过程进行身份认证和密钥交换,完成隧道初始化,数据在隧道中传输时,借鉴ESP协议的封装原理对数据进行封装。
penVPN利用数据分层机制分成两种数据通道:
(1)数据隧道。
数据隧道是传输用户应用数据的安全通道。控制通道用于建立、维护、拆除数据隧道,传输SSL会话消息和各种指令性信息。根据两者对传输数据可靠性的要求不同,对数据进行分层处理。
(2)控制通道。
控制通道数据由UDP层上模拟的可靠层来保证其可靠性,隧道数据不要提供可靠性保障,直接由UDP层处理。两种通道中的数据通过“多路器”进行识别和分流。控制通道完成很多重要的事情,如隧道密钥的确立、各种控制指令的收发与处理、HA防火墙、在UDP上模拟的可靠层、密钥磋商与变更等。
2测试及分析
2.1测试环境
本系统SIP电话的代理服务器、注册服务器、定位服务器、重定位服务器及SSL VPN服务器在物理上是一台服务器,分别为服务器A和服务器B,SIP软终端分别是终端A和终端B。终端A和终端B所在的局域网分别通过服务器A和服务器B与Internet连接。
服务器A,B的配置分别为:
服务器A(harit nsle):
本系统通过harit测试软件进行测试。harit是由NetIQ公司推出的一款 网络 测试软件。它的出色之处在于,它可提供端到端、多操作系统、多协议测试、多应用模拟测试,应用范围包括有线网、无线网、广域网及各种网络设备。可以进行网络故障定位、用户投诉分析、系统评估、网络优化等,能从用户角度测试网络或网络参数(吞吐量、反应时间、延时、抖动、丢包率等)。支持6种VIP de(G.711a,G.711b,G.723.1-AELP,G.723.1-PLQ,G.726,G.729),支持S评分,便于对VIP网络进行实时分析。它通过模拟真实的网络流量来测试网络上的点对点、复杂架构以及分布式结构系统的性能。由于它具备验证网络性能、设备性能、应用程序性能、系统执行状况记录等多项功能,并且其验证的公正性得到了众多网络实验室以及各大网络产品生产商的认可,NetIQ harit已经成为应用层网络性能的评估标准。
未完...点击下方链接下载完整文档