幾類SIP協(xié)議棧大比拼
網(wǎng)絡(luò)通訊的發(fā)展是讓人吃驚的。那么各種技術(shù)的產(chǎn)生,也給固有通訊帶來了沖擊,這里我們就介紹一下其中的SIP協(xié)議棧內(nèi)容。隨著VoIP和NGN技術(shù)的發(fā)展,H.323時(shí)代即將過渡到SIP時(shí)代,在H.323的開源協(xié)議棧中,Openh323占統(tǒng)治地位,它把一個(gè)復(fù)雜而又先進(jìn)的H.323協(xié)議棧展現(xiàn)在普通程序員的眼前,為H.323普及立下了汗馬功勞。而然當(dāng)在SIP時(shí)代,則出現(xiàn)了群雄割據(jù)的狀況,SIP相對于H.323 簡單,靈活,于是各種協(xié)議棧層出不窮,下面將詳細(xì)對比***有代表性的5個(gè)開源項(xiàng)目:OPAL,VOCAL,sipX,ReSIProcate,oSIP。
OPAL是Open Phone Abstraction Library,是Openh323的下一個(gè)版本,它仍然使用了Openh323的體系結(jié)構(gòu),并在其基礎(chǔ)上進(jìn)行擴(kuò)展,同時(shí)實(shí)現(xiàn)了SIP,H.323,但在音頻和視頻的編碼和傳輸部分有較大改動(dòng)。OPAL初衷設(shè)計(jì)是包含任何電話通信協(xié)議,所以其底層進(jìn)行了高度的抽象化,所以也能夠很容易的支持MGCP, PSTN和將來會(huì)出現(xiàn)的協(xié)議。不過由于Openh323的***一個(gè)版本還在開發(fā)中,所以原本6月發(fā)布的OPAL也被推遲,現(xiàn)有的OPAL還非常不完善, BUG也非常多,不過相信以O(shè)penh323的開發(fā)班底,一定能讓OPAL十分優(yōu)秀。
- CVS : :pserver:anonymous@cvs.sourceforge.net:/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開發(fā)的SIP系統(tǒng),VOCAL應(yīng)該是目前功能最完善,使用者最多的開源SIP協(xié)議棧了.它不只包括了協(xié)議棧,還包括了 h323與sip轉(zhuǎn)換網(wǎng)關(guān),對SIP的各種Server的功能支持也非常完善.不過很可惜,不支持windows平臺(tái),而且自從vovida被CISCO 收購以后就停止了開發(fā),***的版本是2003年4月的1.5.0。
- CVS : :pserver:anonymous@cvs.vovida.org:/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是一個(gè)SIP系統(tǒng),由SIPFoundry開發(fā)。sipX是從reSIProcate分離出來的,sipX除了包括SIP stack外,還包括了sipXphone,sipXproxy,sipXregistry等等...,由它們構(gòu)成了完整的SIP系統(tǒng),而且sipx還支持嵌入式系統(tǒng),各個(gè)模塊可以按需取舍。不過可惜是幾乎沒有任何開發(fā)文檔。
- 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開發(fā),ReSIProcate最開始起源于Vocal,由于Vocal開始只支持 rfc3254,為了支持***的rfc3261,ReSIProcate誕生了,但現(xiàn)在,ReSIProcate已經(jīng)成為一個(gè)獨(dú)立SIP協(xié)議棧了,它十分穩(wěn)定,并且很多商業(yè)程序都在使用。
- 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的開發(fā)開始于2000年7月,***個(gè)版本在2001年5月發(fā)布,到現(xiàn)在已經(jīng)發(fā)展到2.0.9了。它采用ANSI C編寫,而且結(jié)構(gòu)簡單小巧,所以速度特別快,它并不提供高層的SIP會(huì)話控制API,它主要提供一些解析SIP/SDP消息的API和事務(wù)處理的狀態(tài)機(jī), oSIP的作者還開發(fā)了基于oSIP的UA lib:exosip和proxy server lib:partysip.
- CVS : :ext:anoncvs@savannah.gnu.org:/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協(xié)議棧各有千秋,OPAL有發(fā)展?jié)摿?,VOCAL比較完善,sipX兼容性好,ReSIProcate教穩(wěn)定,oSIP小巧而快速。所以要根據(jù)應(yīng)用的不同選擇恰當(dāng)?shù)膮f(xié)議棧進(jìn)行研究開發(fā)。















 
 
 



 
 
 
 