开发SIP协议栈所需的软件


在我们对SIP协议栈进行了解的过程中,我们发现SIP协议的应用在很多平台和设备上都能实现。那么SIP 软电话开发环境的建立要在windows或者linux平台下开发基于SIP的软电话,需要以下软件

服务器端软件: 注册多个客户端到服务器上,可以进行通话测试

SIP客户端软件:主要用于测试,可以对别人已经完成的客户端进行抓包,以比对自己程序的发包数据

SIP协议栈:基于某个现成的SIP协议栈来开发会加快开发进度

RTP栈:传输语言或者视频数据的协议栈

抓包测试工具:调试网络程序最有效的办法

以下介绍这些软件主要以开源软件为主

一 服务器端软件

1. Asterisk:Linux系统下开源的IPPBX,功能强大稳定,主要用c语言开发。配置稍麻烦。

2. Vocal:Linux系统下开源的SIP服务器端。可以作为IPPBX也可以作为运营系统。很多voip虚拟运营商都用这个作为自己的运营系统。提供BS结构的管理界面。

3. YATE:跨平台Linux,Windows)的开源SIP服务器端。在windows下安装非常简单。其他方面没有进行过测试。

4. SER:Linux平台下重量级的SIP服务器断。功能比较丰富,也是很多voip虚拟运营商的系统选择。不过据说配置比较麻烦,具体没有试过。

5. sipX:Linux平台下的SIP服务器。这个好像不能作为客户端再次注册到其他SIP服务器上。提供BS结构的管理界面。

二 SIP客户端软件

1. Windows Messenger 5.1:微软出的SIP客户端,操作方便。

2. YATE Client:跨平台Linux,Windows)的开源SIP客户端软件。安装方便,功能简单。

3. xten:windows平台下的SIP软电话。功能齐全,使用方便。

三 SIP协议栈

1. osip:跨平台的开源SIP协议栈。用c语言实现,体积小。

2. exosip:对osip进行封装,使其方便SIP客户端软件开发。同样开源跨平台。

3. sipXtackLib:由SIPfoundry提供的开源跨平台的SIP协议栈,功能齐全。C++开发,已经被用于开发数个商业SIP终端。

四 RTP栈

1. JRTPLIB: 开源的跨平台rtp栈,用C++语言开发,使用方便。

五 抓包测试工具

1. Wireshark:非常有名的开源跨平台网络抓包工具,以前叫做Ethereal。

相关内容