
前幾年,筆者發(fā)布過(guò)一個(gè)簡(jiǎn)單的平臺以及其子脈發(fā)展的圖例,隨著(zhù)技術(shù)更迭和市場(chǎng)運作,以及最新語(yǔ)音行業(yè)發(fā)生了新的變革,新的技術(shù)也不斷涌現,例如WebRTC以及基于WebRTC的視頻會(huì )議。因此,新的開(kāi)源項目也開(kāi)始進(jìn)入到了人們的視眼。今天,筆者根據以前的技術(shù)發(fā)展的衍生環(huán)境,結合最新技術(shù)特點(diǎn),再次為讀者提供一個(gè)比較新的開(kāi)源項目的簡(jiǎn)單匯總,希望能夠幫助用戶(hù)快速了解其整個(gè)SIP開(kāi)源項目生態(tài)鏈和旗下產(chǎn)品的功能特點(diǎn)。
筆者匯總或者介紹這些項目,本身是基于以前的使用經(jīng)驗,其他用戶(hù)反饋,當前狀態(tài)和其產(chǎn)品官方定位幾個(gè)方面做的總結,希望客觀(guān)地對項目做一個(gè)介紹。如果有不準確的地方,希望讀者自己親自去查閱和使用這些項目,自己做最終判斷。我們僅從產(chǎn)品功能本身來(lái)加以說(shuō)明介紹,不涉及其未來(lái)判斷,開(kāi)源項目運營(yíng)等其他方面內容。
筆者將將來(lái)根據RFC3261的規范來(lái)從大類(lèi)上做出歸納說(shuō)明,同時(shí)兼顧在具體應用場(chǎng)景中定義加以說(shuō)明。其歸類(lèi)可能不是非常準確,如有不妥之處,請讀者諒解。
基于SIP Proxy 類(lèi)型 開(kāi)源項目:
- Kamailio:運營(yíng)級SIP Proxy, 主要功能為SIP 信令交換,其衍生產(chǎn)品包括運營(yíng)級的SIP 軟交換界面管理系統:dsiprouter和官方維護的Siremis。 前者強調SIP路由和具體的業(yè)務(wù)場(chǎng)景的對接集成,后者是針對Kamalio開(kāi)發(fā)的Kamailio系統管理界面系統。kamailio結合RTPEngine或者RTPProxy實(shí)現NAT轉換或者簡(jiǎn)單SBC功能。
- OpenSIPS: 運營(yíng)級SIP Proxy,出自于同一kamailio母開(kāi)源項目,主要功能和kamailio 幾乎完全類(lèi)似。比較新的功能增加了B2BUA模塊和其他SIP應用功能。opensips GUI 可以支持一般的OpenSIPS配置功能。目前,沒(méi)有發(fā)現開(kāi)源的基于OpenSIPS開(kāi)發(fā)的衍生項目。(讀者補充)。OpenSIPS結合RTPEngine或者RTPProxy實(shí)現NAT轉換或者簡(jiǎn)單SBC功能。
- drachtio / jambonz,運營(yíng)級開(kāi)源交互平臺,目前沒(méi)有發(fā)現很多用戶(hù)使用。其社區是邀請制的管理方式,通過(guò)slack交流。
- FONOS,運營(yíng)級平臺,目前沒(méi)有發(fā)現很多用戶(hù)在使用。
- 2600hz/Kazoo,基于Kamailio和FreeSWITCH開(kāi)發(fā)的開(kāi)源運營(yíng)平臺,整個(gè)項目功能相對比較完整,但是部署運維非常復雜,目前沒(méi)有發(fā)現很多用戶(hù)使用。
- Routr ,輕量級的SIP 服務(wù)器,實(shí)現定位,注冊等功能。目前沒(méi)有太多用戶(hù)關(guān)注此項目。
- Restcomm,完整的CPaaS平臺,支持SIP語(yǔ)音和短信等
- Ivozprovider,基于kamailio的運營(yíng)平臺
基于SIP b2BUA 類(lèi)型 開(kāi)源項目:
- Asterisk, 完整的開(kāi)源SIP 媒體服務(wù)器,因為其項目歷史久遠,很多開(kāi)源項目,設備都是基于此平臺開(kāi)發(fā),包括商業(yè)用途的IPPBX,UC系統。其開(kāi)源衍生產(chǎn)品包括FreePBX,Elastix和Issable,VICIdial ,Astpp開(kāi)源計費系統, Wazo和XiVo。目前最活躍的是FreePBX和VICIdial,分別支持企業(yè)IPPBX和外呼呼叫中心系統。其他項目相對比較小眾,分布在歐洲和南美洲地區。
- FreeSWITCH,完整的開(kāi)源SIP媒體服務(wù)器,比Asterisk稍晚發(fā)布,更多用戶(hù)使用其平臺實(shí)現呼叫中心和運營(yíng)平臺。旗下衍生的比較有名的開(kāi)源項目是FusionPBX和2600hz。FusionPBX使用用戶(hù)相對比較少。它畢竟是一個(gè)基于FreeSWITCH開(kāi)發(fā)的開(kāi)源IPPBX界面管理系統,仍然有用戶(hù)在使用。
- Yate,傳統的老牌開(kāi)源媒體服務(wù)器,旗下融合通信產(chǎn)品包括SIPfoundry和sipXecs,完整的界面管理系統,支持yate 終端。筆者不清楚什么原因,此項目已經(jīng)幾乎已經(jīng)停滯。
針對SIP協(xié)議支持的RTP引擎項目:
- RTPProxy,支持kamailio和OpenSIPS,實(shí)現RTP語(yǔ)音的管理功能。
- RTPEngine,和RTP Proxy相同,其功能也是針對以上兩個(gè)開(kāi)源SIP Proxy實(shí)現RTP流的管理處理,其母公司SIPwise被ALE收購以后,開(kāi)發(fā)了很多開(kāi)源項目,包括運營(yíng)級的IPPBX(Kamailio和asterisk)。
基于SIP開(kāi)源的UAC/UAS項目:
- PJSIP,完整的SIP開(kāi)源協(xié)議棧,目前是市場(chǎng)上最活躍的項目,很多公司使用其項目開(kāi)發(fā)了媒體服務(wù)器平臺和SIP軟電話(huà)終端產(chǎn)品。Asterisk使用其項目作為最新SIP 協(xié)議邀請。Mircosip 軟電話(huà)終端使用其開(kāi)發(fā)了著(zhù)名的軟電話(huà)。
- baresip, 完整的SIP開(kāi)源項目,支持比較多的SIP功能,是比較新的開(kāi)源項目。它增加了比較多的新SIP業(yè)務(wù)支持和音視頻編碼能力支持。
- oSIP, SIP 協(xié)議包,最近幾年一直沒(méi)有太多更新。
- Sofia-SIP,FreeSWITCH的SIP引擎,諾基亞開(kāi)源項目,項目幾年前已經(jīng)停止維護。
- mjSIP, 完整的SIP協(xié)議棧,包括了API接口,可以實(shí)現呼叫控制支持。
- 其他
基于SIP的壓力測試工具和排查工具
- SIPP,壓力測試工具
- sipsak
- sngrep 抓包排查工具
- Ngrep
- TCPdump
- sipgrep
- HOMER,排查,監控工具
- Wireshark
- TCPflow
- 其他
基于SIP/WebRTC相關(guān)開(kāi)源服務(wù)器端和終端
- Jitsi,完整的基于WebRTC的開(kāi)源視頻會(huì )議系統,支持SIP接口。
- anus, 開(kāi)源WebRTC服務(wù)器端,通過(guò)模塊接口實(shí)現各種WebRTC/SIP網(wǎng)關(guān)連接轉換功能。
- Mediasoup,流媒體服務(wù)器,支持WebRTC/SIP接口
- Kurento,WebRTC 服務(wù)器端。
- JSSIP,JavaScript SIP Library,支持WebRTC/SIP終端開(kāi)發(fā)
- EasyRTC, Open-EasyRTC 實(shí)現WebRTC 視頻會(huì )議
- 關(guān)于完整WebRTC 服務(wù)器端詳解,請讀者閱讀歷史文檔參考學(xué)習。
筆者通過(guò)目前市場(chǎng)上SIP技術(shù)開(kāi)源項目使用情況和項目活躍程度,對關(guān)于SIP技術(shù)開(kāi)源項目和webRTC項目中的簡(jiǎn)單匯總。很多開(kāi)源項目因為產(chǎn)品定位和管理,功能問(wèn)題等因素相對不是太活躍,在以上文章中可能有所遺漏,希望讀者自己更新。很多項目筆者在以前已經(jīng)有深入介紹,讀者可以搜索歷史文檔獲得完整詳細說(shuō)明。