开源SIP协议栈开发UA的调查报告

――04-12

 

1 介绍

目前几种开源SIP协议栈的比较见《几种开源SIP协议栈对比》,下面就已经测试过的三种主流open source UA进行简单比较

 

测试环境:Linux Fedora2, windows 2K, OnDo SIP server, windows messager

测试人:stiger, happy, alexis zhang

2 UA资源说明

2.1 使用oSIP协议栈的 LinPhone

Linphone is a web phone: it let us phone to our friends anywhere in the whole world, freely, simply by using the internet. The cost of the phone call is the cost that you spend connected to the internet.

Here are the main features of linphone:

  • Works with the Gnome Desktop under linux, (maybe some others Unixes, but this has never been tested). Nevertheless you can use linphone under KDE, of course !

  • Since version 0.9.0, linphone can be compiled and used without gnome, in console mode, by using the program called "linphonec"

  • Works as simply as a cellular phone. Two buttons, no more.

  • Linphones includes a large variety of codecs (G711-ulaw, G711-alaw, LPC10-15, GSM, and SPEEX). Thanks to the Speex codec it is able to provide high quality talks even with slow internet connections, like 28k modems.

  • Understands the SIP protocol. SIP is a standardised protocol from the IETF (http://www.ietf.org), that is the organisation that made most of the protocols used in the internet. This guaranties compatibility with most SIP - compatible web phones.

  • You just require a soundcard to use linphone.

  • Other technical functionnalities include DTMF (dial tones) support though RFC2833 and ENUM support (to use SIP numbers instead of SIP addresses).

  • Linphone is free software, released under the General Public Licence.

  • Linphone is documented: there is a complete user manual readable from the application that explains you all you need to know.

  • Linphone includes a sip test server called "sipomatic" that automatically answers to calls by playing a pre-recorded message.

Compatibility:
Linphone is mostly sip compliant. It works successfully with these implementations:

  • eStara softphone (commercial software for windows)

  • Pingtel phones (with DNS enabled and VLAN QOS support disabled).

  • Hotsip, a free of charge phone for Windows.

  • Vocal, an open source SIP stack from Vovida that includes a SIP proxy that works with linphone since version 0.7.1.

  • Siproxd is a free sip proxy being developped by Thomas Ries because he would like to have linphone working behind his firewall. Siproxd is simple to setup and works perfectly with linphone.

  • Partysip aims at being a generic and fully functionnal SIP proxy. Visit the web page for more details on its functionalities.

Linphone may work also with other sip phones, but this has not been tested yet. So if you want to complete the list by testing with your own sip phone, contact me.
Linphone uses the SIP protocol to establish calls, for that reason it cannot work with H323 phones, because SIP and H323 are different and opposite protocols. H323 phones are Netmeeting (for windows), Gnome-meeting (Unix), OpenPhone...

 

URL: http://www.linphone.org/?lang=us&rubrique=1

2.2 使用vocal协议栈的 SipSet

SIPSet is a SIP User Agent with a GUI front end that works with the Vovida SIP stack. You can use the SIPSet as a soft phone, to make and receives phone calls from your Linux PC.

 

This release implements these new features and functionality:

SIPSet can make calls through a SIP proxy. 

SIPSet can register to receive calls through a SIP proxy. 

SIPSet can make and receive calls directly with another User Agent.

Status:

The current status of this release is as follows:

  • Supports Video by using MPEG4IP

  • Support for pluggable codecs

  • Supports IPv6

  • Provision for NAT

URL: http://www.vovida.org/applications/downloads/sipset/index.html

2.3 使用芬兰wirlabKPhone

KPhone is a SIP (Session Initiation Protocol) user agent for Linux, with which you can initiate VoIP (Voice over IP) connections over the Internet. It supports Presence and Instant Messaging, and to some extent also video calls between two hosts.

Status:

       Instance message

       Voice communication

 

URL: http://www.wirlab.net/kphone/index.html

3. 总结

测试结果显示:

1 UA测试结果

名称

Instance Message

Voice

版本更新

LinPhone

Y

Y

Y

Kphone

Y

Y

Y

SIPSet

N

Y

No

 

根据我们的测试Linphone以及Kphone支持的功能较全,同时界面较友好;

Linphone的稳定性不够,基本不能work

SIPSet对于文本消息功能不支持,但是他基于VocalSIP协议栈,使用的人最多,可扩展性较好,但是目前已经没有更新;

Kphone综合比较性能最优,但是只是有UAopen source, 同时对于instance message 的发好像有些bug

 

推荐使用: Kphone(如果只是做UA

                 SIPSet(如果还会扩展做服务器)

 

 

后补:

1)后期我们重新看了LinPhone的开发文档,发觉前期我们测试UA老core dump是因为linux的版本不对,后来更正后work,但是GUI程序还是容易core dump

2)Kphone的移植性比较worse,因此。。。

你可能感兴趣的:(VoIP)