漫談VoIP網絡中的核心設備-SBC
根據 Infonetics 研究報告指出,托管式IPPBX和融合通信市場將以每年至少20%的增長。由此不難看出,2016年SBC市場將以大幅度增長。統計數據表明用戶需求數量的增加必然帶動廠家設備的銷售額。SBC將是一個井噴的市場。
SBC 是目前VoIP網絡中核心的設備,中文意思是會話邊界控制器。顧名思義,就是在網絡邊界處(內網和外網)對會話進行管理的設備。我們提到的會話當然是指SIP session。
我們將在接下來的章節中簡單討論以下幾個方面的內容:
1)SBC在VoIP網絡中扮演的是什么角色,通俗來說就是實現什么功能
因為我們一直討論的是VoIP領域中SBC核心設備的應用,SBC本身具有很多功能,包括拓隱藏,呼叫路由管理,防攻擊,NAT穿越,QOS,TDM接入,B2BUA,語音編碼處理,SIP注冊等等功能。從大部分的功能來看,主要的功能還是和SIP相關,所以SBC的重點還是針對SIP會話方面的管理。幾個重點討論的技術點包括:SIP 設備終端之間的通信,安全管理,中繼管理。 因此簡單來說,SBC重點負責SIP的安全管理當然包括了內部網絡的拓撲隱藏,SIP加密和防攻擊等等,另外就是對SIP中繼進行管理通信,包括不同編碼轉換,SIP消息規范化處理。
2)VoIP中SBC設備的需求
VoIP網絡中,通常情況下,如果VoIP設備設置在公網或者私網,都會經常遇到網絡攻擊,惡意注冊,IP地址欺騙,電話盜打的等等安全問題,SBC支持了多種安全策略,可以非常安全地解決這些問題。以下圖例是網絡攻擊的*常用的5種方式:
3)SBC的重要作用
SBC在VoIP中扮演著非常重要的角色,或者說是其他設備無法替代的角色。通常*重要的角色是防止網絡攻擊,SBC可以實現一些防火墻的功能,實現黑白名單過濾檢測,SIP信令加密,同時設備本身是一個B2BUA形式,對內網設備進行了隱藏,不會完全對外網用戶暴露,實現了網絡的安全性。
SBC在VoIP網絡環境中核心的功能包括:
3.1)SIP消息的規范化。因為在復雜的網絡環境中,接入的設備終端可能來自于不同廠家,不同的私有協議標準。SCB必須對SIP消息進行規范化處理,確保其他的通信設備可以互相交換。
3.2)編碼轉換,因為多種設備和終端支持不同的語音編碼,而且因為帶寬的語音,語音編碼傳輸方式完全不同。其中各種終端設備對編碼支持的不一樣可能有多種原因,例如廠家的設備暫時還不支持某種編碼,或者可能語音編碼的許可證費用太貴,或者本身設備的CPU性能不能處理一些編碼。SBC 需要對來自不同網絡的會話進行編碼處理,確保雙方可以實現互通。
3.3)無論網絡帶寬如何發展,目前看,帶寬仍然是限制VoIP發展的重要因素之一,因此為了節省帶寬資源,語音傳輸時不得不使用壓縮比比較好的編碼,這樣,SBC就需要對編碼進行轉換處理,確保IPPBX,或者UC可以支持這些編碼。
3.4)對NAT處理,VoIP網絡環境中,絕大部分用戶會面對NAT問題,通常的解決辦法就是使用VPN或者防火墻開多余的端口來進行處理。這樣的話,網絡環境就可能充分暴露在外網的用戶面前,導致安全問題。以下圖例說明NAT狀態下,語音數據通信出現的問題。
3.5)傳真和語音檢測功能。傳真雖然慢慢在實際業務環境中越來越少,但是基本上仍然是企業業務溝通的重要工具,網絡中的T38 傳真需要SBC支持,因此SBC 必須可以檢測傳真音。想象一下,通過外網呼入到企業IPPBX,如果進入IVR或者其他的語音提示系統,用戶需要輸入DTMF進行語音檢測,以便進入到其他的業務流程。因此,SBC必須能夠精確地檢測語音輸入。
3.6)具有良好的性能,性能指標包括CPU的處理能力,可拓展性,會話并發處理,逃生,冗余處理,注冊數處理。性能方面當然需要根據用戶本身網絡的環境進行評估,一些重要指標必須注意,例如逃生功能。如果整個IP側的網絡出現故障,用戶可以通過TDM接口進行通信。或者用戶需要撥打119 等緊急呼叫時,用戶必須可以接通本地的緊急服務電話系統。
3.7)其他的設備無法替代SBC在VoIP網絡中的地位。通常在VoIP網絡中采用的方法包括:VPN隧道處理,或者企業防火墻設置。VPN 隧道在同一網絡環境中具有配置簡單的優勢,但是VPN隧道技術本身不具有SIP會話握手釋放和定時器等等相關功能,尤其在企業融合通信或者IPPBX 的環境下,容易出現連接問題。另外,VPN隧道不會對SIP加密的,解除加密進行處理,SBC 具有這樣的功能,本身SBC支持了SRTP和TLS。防火墻也存在一些問題,SIP網絡環境中,通常的做法是在防火墻打一個洞,或者開發某些端口來支持SIP通信。現實環境中,SIP的狀態保護是非常多樣的,還要支持文本通信,即時通訊工具,文件傳輸等等其他業務,這樣可能導致防火墻管理非常開放,失去了防火墻應有的功能,導致安全問題。
4)SBC對SIP業務的管理更加簡單
SBC 設備本身具有對SIP信令控制的能力,同時支持黑白名單過濾,防止非法用戶侵入系統內部。另外無需部署多個設備,一臺設備可以解決所有問題。
5)利用開源軟交換來開發SBC
利用開源平臺開發SBC圖例
目前市場上主流的SBC 設備廠家相對來說技術實力比較強,同時對底層設備架構性能有充分的了解。硬件設備相對穩定一些。但是目前很多開源的軟交換也具備SBC的某些功能,例如openSIPS, kamailio 或者FreeSWICTH。這些平臺本身具有注冊,路由,NAT處理的能力,但是首先這些軟交換平臺基本都不具有編碼轉換處理的能力,本身沒有對編碼的處理,只能對SIP消息做規范化處理,其次,幾個平臺對接的技術難度很高,維護成本高,所以只能部分實現SBC功能。如果需要對編碼轉換進行處理的話,必須借助第三方DSP處理或者軟轉碼,目前類似的算法基本上都需要通過購買商業許可證來實現。所以嚴格意義上這樣的架構并不是SBC的標準設備。
6)SBC 部署類型 目前SBC部署支持兩種形式:
6.1)設備類型。設備類型支持企業級和運營商級的部署,從400路到2000路以上,或者更高級別的處理。
SBC 在企業語音業務中的應用拓撲圖
6.2)VMware 平臺安裝部署eSBC。這樣的方式適合于中小型企業的IPPBX對接,SIP中繼對接或者企業融合通信的管理。SBC 是以軟件形式安裝在企業內部的虛擬機上,可以根據不同配置來支持編碼轉換,另外一個軟編碼的局限性在于支持的編碼類型非常有限,而且市場上編碼類型又不斷豐富。編碼轉換的處理包括軟件形式的,很多廠家都有自己的算法,但是并發數量和虛擬機的性能有嚴格的要求,同時支持的編碼類型非常有限。Sangoma 的eSBC 則通過外置的編碼DSP設備處理,通過IP對接,來對RTP流進行處理。這樣保證了處理能力,可以根據企業用戶的增加適當拓展并發數量,調整編碼轉換設備的容量。用戶通過ESBC 對接基于云的IPPBX,例如可以部署IPPBX在阿里云,亞馬遜云,百度云,然后在本地進行編碼處理。
SBC 在AWS云平臺部署圖例
7)SBC 在VoIP環境中主要面對的挑戰
VoIP的技術日新月異,筆者不敢輕易斷定網絡會有什么不可預知的問題。當然,以目前的技術水平和網絡環境來看,無論是什么樣的設備,什么樣的功能,面對的一個主要問題就是網絡的穩定性問題,用戶網絡環境復雜等等問題。這些問題通常是廠家不可預知的問題。這些也都是VoIP環境一直面對的難題。比較好的解決辦法就是設備端必須支持完善的排查工具,包括QOS,SIP消息,語音抓包等等工具,用戶可以輕松檢查出問題所在,能夠快速解決問題,或者反饋問題。
總結,從我們介紹的以上內容中我們不難看出,SBC設備是目前VoIP網絡環境中*為可靠的解決方案,具有對SIP完整的支持,同時解決了安全問題。一句話,SBC 就是為SIP所生!
參考資料:
1)http://wiki.sangoma.com/NetBorder-Session-Controller
2)http://www.dummies.com/
3)http://en.wikipedia.org/wiki/Session_border_controller
4)http://en.wikipedia.org/wiki/Back-to-back_user_agent
5)http://blogs.trilogy-lte.com/post/77427158750/how-webrtc-is-revolutionizing-telephony
6)http://www.frafos.com/wp-content/uploads/2012/10/FRAFOS_Underdstanding_SBC.pdf