幾種開源SIP協議棧對比其他開發語言

 

隨着VoIP和NGN技術的發展,H.323時代即將過渡到SIP時代,在H.323的開源協議棧中,Openh323佔統治地位,它把一個複雜而又先進的H.323協議棧展現在普通程序員的眼前,爲H.323普及立下了汗馬功勞。而然當在SIP時代,則出現了羣雄割據的狀況,SIP相對於H.323簡單,靈活,於是各種協議棧層出不窮,下面將詳細對比最具有代表性的5個開源項目:OPAL,VOCAL,sipX,ReSIProcate,oSIP

OPAL是Open Phone Abstraction Library,是Openh323的下一個版本,它仍然使用了Openh323的體系結構,並在其基礎上進行擴展,同時實現了SIP,H.323,但在音頻和視頻的編碼和傳輸部分有較大改動。OPAL初衷設計是包含任何電話通信協議,所以其底層進行了高度的抽象化,所以也能夠很容易的支持MGCP,PSTN和將來會出現的協議。不過由於Openh323的最後一個版本還在開發中,所以原本6月發佈的OPAL也被推遲,現有的OPAL還非常不完善,BUG也非常多,不過相信以Openh323的開發班底,一定能讓OPAL十分優秀。
CVS : :pserver:[email protected]:/cvsroot/openh323/opal
Language : C++
VxWorks port : Yes
Win32 port : Yes
Linux port : Yes
Supports RFC 3261 : Yes
Supports RFC 2327 : Yes
Supports RFC 3264 : Yes
Supports RFC 3263 : No
Supports RFC 3515 : Yes
Supports RFC 3262 : No
Supports RFC 3311 : No
TCP : Yes
UDP : Yes
SIZE :  8MB
License : MPL
Document : None
Samples : UA,GK

VOCAL是vovida.org開發的SIP系統,VOCAL應該是目前功能最完善,使用者最多的開源SIP協議棧了.它不只包括了協議棧,還包括了h323與sip轉換網關,對SIP的各種Server的功能支持也非常完善.不過很可惜,不支持windows平臺,而且自從vovida被CISCO收購以後就停止了開發,最後的版本是2003年4月的1.5.0。
CVS : :pserver:[email protected]:/cvsroot/vocal
Language : C++
VxWorks port : No
Win32 port : Partial
Linux port : Yes
Supports RFC 3261 : Partial
Supports RFC 2327 : Yes
Supports RFC 3264 :
Supports RFC 3263 :
Supports RFC 3515 : Yes
Supports RFC 3262 :
Supports RFC 3311 :
TCP : Yes
UDP : Yes
SIZE : 6MB
License: Vovida software licencse
Document : Few
Samples : UA,GK,GW

sipX是一個SIP系統,由SIPFoundry開發。sipX是從reSIProcate分離出來的,sipX除了包括SIP stack外,還包括了sipXphone,sipXproxy,sipXregistry等等...,由它們構成了完整的SIP系統,而且sipx還支持嵌入式系統,各個模塊可以按需取捨。不過可惜是幾乎沒有任何開發文檔。
SVN : http://scm.sipfoundry.org/viewsvn/
Language : C++
VxWorks port : Yes
Win32 port : Yes
Linux port : Yes
Supports RFC 3261 : Yes
Supports RFC 2327 : Yes
Supports RFC 3264 : Yes
Supports RFC 3263 : Yes
Supports RFC 3515 : Yes
Supports RFC 3262 : No
Supports RFC 3311 : No
TCP : Yes
UDP : Yes
SIZE : <4 Mb
License : LGPL
Document : None
Samples : UA,GK,GW

ReSIProcate同樣也是由SIPFoundry開發,ReSIProcate最開始起源於Vocal,由於Vocal開始只支持rfc3254,爲了支持最新的rfc3261,ReSIProcate誕生了,但現在,ReSIProcate已經成爲一個獨立SIP協議棧了,它十分穩定,並且很多商業程序都在使用。
SVN : http://scm.sipfoundry.org/viewsvn/resiprocate/main/sip/
Language : C++
VxWorks port : No
Win32 port : Yes
Linux port : Yes
Supports RFC 3261 : Yes
Supports RFC 2327 : Yes
Supports RFC 3264 : Yes
Supports RFC 3263 : Partial
Supports RFC 3515 : Yes
Supports RFC 3262 : No
Supports RFC 3311 : No
TCP : Yes
UDP : Yes
SIZE : < 2.5 Mb
License : Vovida
Document : Few
Samples : None

oSIP的開發開始於2000年7月,第一個版本在2001年5月發佈,到現在已經發展到2.0.9了。它採用ANSI C編寫,而且結構簡單小巧,所以速度特別快,它並不提供高層的SIP會話控制API,它主要提供一些解析SIP/SDP消息的API和事務處理的狀態機,oSIP的作者還開發了基於oSIP的UA lib:exosip和proxy server lib:partysip.
CVS : :ext:[email protected]:/cvsroot/osip
Language : C
VxWorks port : Yes
Win32 port : Yes
Linux port : Yes
Supports RFC 3261 : Yes
Supports RFC 2327 : Yes
Supports RFC 3264 : Yes
Supports RFC 3263 : Yes
Supports RFC 3515 : No
Supports RFC 3262 : No
Supports RFC 3311 : Yes
TCP : Yes
UDP : Yes
SIZE : 400kb
License : LGPL
Samples : UA,GK

綜合上述評測,可以看出5種SIP協議棧各有千秋,OPAL有發展潛力,VOCAL比較完善,sipX兼容性好,ReSIProcate教穩定,oSIP小巧而快速。所以要根據應用的不同選擇恰當的協議棧進行研究開發。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章