――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:
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 NATURL: http://www.vovida.org/applications/downloads/sipset/index.html
2.3 使用芬兰wirlab的KPhone
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对于文本消息功能不支持,但是他基于Vocal的SIP协议栈,使用的人最多,可扩展性较好,但是目前已经没有更新;
Kphone综合比较性能最优,但是只是有UA的open source, 同时对于instance message 的发好像有些bug。
推荐使用: Kphone(如果只是做UA)
SIPSet(如果还会扩展做服务器)
后补:
1)后期我们重新看了LinPhone的开发文档,发觉前期我们测试UA老core dump是因为linux的版本不对,后来更正后work,但是GUI程序还是容易core dump
2)Kphone的移植性比较worse,因此。。。
本文地址:http://com.8s8s.com/it/it24612.htm