毅航互聯(lián)vSBC-5000是純軟件實現(xiàn),較多的部署在虛擬機或者云平臺中使用,需要有測試來確定在常見的配置模式下大概的性能數(shù)據(jù),作為現(xiàn)場部署的參考。
由于毅航互聯(lián)vSBC-5000的功能非常多,本測試主要完成最簡單情況下的通話測試,包括:不轉(zhuǎn)碼透傳通話、加密通話和基于sipp的壓力測試。
經(jīng)過上述測試驗證,毅航互聯(lián)vSBC-5000產(chǎn)品支持編碼透傳、基于TLS/SRTP的加密通話和1000并發(fā)通話。
注:用sipp帶媒體做壓力測試,發(fā)現(xiàn)并發(fā)超過500時,sipp就很容易出現(xiàn)出現(xiàn)coredump、沒有響應(yīng)或者控制終端直接和服務(wù)器斷開等現(xiàn)象,網(wǎng)絡(luò)帶寬也嚴(yán)重偏離。因此,在此測試中引入毅航硬件SBC(SBC-2000),sipp只是做信令處理,與SBC-2000對接,由SBC-2000和vSBC-5000對接,保證vSBC-5000具有真實的媒體流量。
1、毅航互聯(lián)vSBC-5000
- 毅航互聯(lián)透傳SBC-5000(簡稱vSBC)提供類似IMS網(wǎng)絡(luò)A-SBC和I-SBC的功能,用于網(wǎng)絡(luò)拓?fù)潆[藏、NAT穿透、內(nèi)外網(wǎng)隔離、VoIP安全和廣域網(wǎng)組網(wǎng)等場景,也可以用于協(xié)議轉(zhuǎn)換、SIP信令整形、視頻會議、WebRTC接入等SBC場景。
- 毅航互聯(lián)vSBC支持雙機主備冗余功能(HA),主備切換不影響通話,現(xiàn)有通話不會中斷,滿足運營級要求。
- 毅航互聯(lián)vSBC支持話單,可用于計費等運營場景。
- 毅航互聯(lián)vSBC是純軟件實現(xiàn),可部署在專用服務(wù)器、通用服務(wù)器、虛擬機(VMware、KVM、VirtualBox)和云平臺(阿里云、騰訊云、百度云、華為云等)。
- 毅航互聯(lián)vSBC具有高性能和大容量的特點。呼叫:500呼叫/秒,5000并發(fā)。注冊:500事務(wù)/秒,5000并發(fā)。
- 毅航互聯(lián)vSBC不執(zhí)行媒體的編解碼轉(zhuǎn)換,并且采用內(nèi)核包轉(zhuǎn)發(fā),具有極高的性能。
2、DELL R720機架式服務(wù)器
本測試的宿主服務(wù)器采用DELL PowerEdge R720機架式服務(wù)器。配置兩顆intel E5-2690 v2 CPU,32G內(nèi)存。
具體參數(shù)見網(wǎng)站:
https://www.dell.com/zh-cn/work/shop/povw/poweredge-r720
注意:DELL此產(chǎn)品已經(jīng)下架,類似產(chǎn)品為R740。
3、CentOS 7.5操作系統(tǒng)
宿主服務(wù)器和虛擬機均使用CentOS 7.5 64bits linux操作系統(tǒng)。
具體性能參數(shù)見網(wǎng)站:
https://www.centos.org
4、毅航互聯(lián)SBC-2000
- 毅航互聯(lián) 硬SBC由SBC 0500,SBC 1000,SBC 2000等系列產(chǎn)品組成,與毅航互聯(lián) TG1000/TG4000網(wǎng)關(guān)共享相同平臺、軟件和架構(gòu)。
- 毅航互聯(lián)SBC面向運營商、互聯(lián)網(wǎng)企業(yè)和呼叫中心,為客戶的SIP網(wǎng)絡(luò)提供強大的安全、編解碼轉(zhuǎn)換、內(nèi)外網(wǎng)穿透、注冊代理、路由、信令流控/轉(zhuǎn)換、QoS/ACL等功能。
- 毅航互聯(lián)SBC秉承毅航互聯(lián)iSX4000多媒體交換機的“雙星網(wǎng)”架構(gòu),采用高性能DSP/VoIP處理芯片、多核嵌入式CPU處理器、千兆無阻塞網(wǎng)絡(luò)交換和高性能主機CPU,構(gòu)成分布式計算網(wǎng)絡(luò),以極低的功耗實現(xiàn)極高的性能。
- 毅航互聯(lián)SBC設(shè)備最大支持2000并發(fā)會話和2000路語音媒體轉(zhuǎn)碼。除傳統(tǒng)電信編解碼(G.711/G.729/G.723),還支持3G/4G編解碼(AMR NB/AMR WB/GSM FR/EFR),以及互聯(lián)網(wǎng)編解碼(OPUS/SILK/iLBC)。另外,毅航互聯(lián)SBC還支持高清語音(G.722編碼)。
- 毅航互聯(lián)SBC在必要時,可以插入中繼模塊或者STM-1光接口板,完成與傳統(tǒng)PSTN網(wǎng)絡(luò)的對接。
- 毅航互聯(lián)SBC支持HA高可用配置,主備切換時信令和語音通話保持不中斷。
二、測試環(huán)境
1、測試整體結(jié)構(gòu)
為了簡化,測試部件分成四個部分:
- vSBC-5000:包括運行vSBC-5000軟件的載體服務(wù)器;
- Eyebeam 1.5:包括運行eyebeam的電腦,模擬電話;
- sipp:壓力測試時,模擬高并發(fā);
- SBC-2000:標(biāo)準(zhǔn)產(chǎn)品,將單純信令的sipp呼叫轉(zhuǎn)換為帶媒體的SIP呼叫。
整體的測試結(jié)構(gòu)簡化如下圖:
功能測試
功能測試時,呼叫直接在vSBC-5000接通和包轉(zhuǎn)發(fā),不涉及到SBC-2000。
sipp壓力測試
sipp壓力測試時,由發(fā)起呼叫的sipp呼叫到SBC-2000,由SBC-2000轉(zhuǎn)呼到vSBC。vSBC接收到呼叫后,再呼出到SBC-2000,然后由SBC-2000呼到應(yīng)答sipp。整體的流程如下圖:
2、vSBC-5000
vSBC-5000軟件
測試版本為:iGatewayPackageRE-1.0.5.release.i386.tar.gz
操作系統(tǒng)
操作系統(tǒng)如下:
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
[root@localhost ~]# cat /etc/system-release
CentOS Linux release 7.5.1804 (Core)
硬件規(guī)格
由于使用虛擬機進行測試,分配的CPU和內(nèi)存如下圖:
注:常規(guī)測試配置為8核,后續(xù)會做基于4核的性能測試。
[root@localhost ~]# free
total used free shared buff/cache available
Mem: 8008980 3520676 3798084 393640 690220 3806660
Swap: 2097148 2048 2095100
3、宿主機的配置
CPU為:
注:服務(wù)器配置了兩顆E5-2690 V2 CPU。
4、Eyebeam 1.5
使用測試版本。
由于eyebeam在counterpath已經(jīng)下線和不提供下載,測試版本是從其他一些網(wǎng)站上下載的測試版本,測試后已經(jīng)不再使用。
具體見:https://www.counterpath.com/
5、硬SIP話機
采用億聯(lián)T21P。
6、SBC-2000硬件SBC
SBC-2000配置8塊MGW-VOIP板,總并發(fā)可以做到4096(alaw/ulaw)。
為了避免NAT穿透對包可能產(chǎn)生影響,本設(shè)備不配置NAT穿透,直接和vSBC-5000做媒體的對接。
三、測試配置
本節(jié)主要列出與呼叫測試相關(guān)的配置,其他常規(guī)的配置見使用手冊。
1、vSBC-5000
配置SIP協(xié)議棧
SIP棧采用缺省配置,IP地址為10.10.99.28,配置完成后,直接激活。
配置SIP注冊中繼組
為測試用的SIP分機配置賬號,如下圖:
從圖上已經(jīng)可以看到兩個分機都已經(jīng)注冊上了SBC。
配置SBC-2000呼叫中繼組
SBC-2000中繼組是雙向的:呼入和應(yīng)答在同一個中繼組中,配置如下圖:
配置分機互打路由
為了保證兩個中繼組間的分機互打,需要配置路由,如下圖:
配置SBC-2000測試路由
從SBC-2000呼入然后再呼出到SBC-2000的路由,如下圖:
2、SBC-2000
配置SIP協(xié)議棧
SIP棧采用缺省配置,IP地址為10.10.210.15,配置完成后,直接激活。
配置sipp壓力測試中繼組
sipp發(fā)起呼叫和接收呼叫的中繼組配置如下圖:
配置vSBC-5000中繼組
中繼組配置如下圖:
路由配置
需要配置兩條路由:sipp_c(發(fā)起呼叫)到vSBC和vSBC到sipp_a(應(yīng)答呼叫)。如下圖:
3、Eyebeam 1.5
Eyebeam的配置較為簡單,見相關(guān)的手冊說明。
4、億聯(lián)T21P配置
億聯(lián)話機的配置也較為簡單,見相關(guān)的手冊說明。
5、sipp腳本
發(fā)起呼叫采用如下的腳本:
由于G.711的包長度比G.729大很多,因此,只用G.711做測試。腳本如下:
./sipp -i 10.10.99.60 -p 6060 -sf ./sipp_uac_basic.xml 10.10.210.15:5060 -d 25000 -r 40 -rp 1000 -aa -m 10000
sipp_uac_basic.xml:本腳本會使用G.711 alaw編解碼做協(xié)商,但是不會發(fā)RTP包。
應(yīng)答呼叫的腳本:
./sipp -sf sipp_uas_basic.xml -i 10.10.99.30
不處理接收RTP包。
四、測試
1、alaw通話測試
兩個SIP電話間通過不同編碼的互打,通話正常。
呼叫
在中繼組配置中,將alaw作為第一優(yōu)先級,此時發(fā)起alaw通話,配置如下圖:
通話時,語音正常,通過抓包,可以確認(rèn)此時為alaw呼叫。
2、加密通話測試
億聯(lián)話機配置成TLS/SRTP模式,然后和eyebeam通話,由vSBC執(zhí)行SRTP/RTP的互相轉(zhuǎn)換。
vSBC-5000配置TLS中繼組
使用vSBC的web配置新的TLS中繼組,以及在中繼組中配置新的用戶號碼:400002。如下圖:
vSBC-5000配置TLS路由
配置SRTP-RTP的轉(zhuǎn)換路由,如下圖:
億聯(lián)話機配置加密通話模式
配置一個新的400002賬號,信令使用TLS傳輸,配置如下:
媒體配置強制加密,這樣就會采用SRTP,如下圖:
vSBC-5000查詢注冊狀態(tài)
在web上可以查詢到話機已經(jīng)注冊,如下圖:
呼叫測試
通過億聯(lián)話機呼叫eyebeam,由vSBC-5000執(zhí)行SRTP-RTP間的相互轉(zhuǎn)換,通話語音清晰。由于億聯(lián)話機和vSBC間通過TLS傳輸,信令不可見,因此在抓包中看不到。
可以通過SIP的日志查詢出億聯(lián)話機的信令:
可以通過SIP的日志查詢出億聯(lián)話機的信令:
信令是TLS傳輸,媒體為SRTP加密。
呼叫給eyebeam時,已經(jīng)將信令轉(zhuǎn)換為UDP傳輸和RTP媒體模式了。
媒體包也可以看到相應(yīng)的轉(zhuǎn)換:
3、壓力測試
壓力測試時,由sipp打滿,然后通過SIP電話抽聽語音是否正常。
alaw呼叫
sipp呼叫保持時間大概是25s,將呼叫頻度改為40CAPS,保證穩(wěn)定的呼叫是1000并發(fā)。在此條件下,用SIP電話抽聽語音正常。
./sipp -i 10.10.99.60 -p 6060 -sf ./sipp_uac_basic.xml 10.10.210.15:5060 -d 25000 -r 40 -rp 1000 -aa -m 10000
從web查看到的呼叫統(tǒng)計如下圖:
單個中繼組的并發(fā)是400CAPS,和計算相符。(40CAPS*25s保持時間=1000并發(fā),由于是收到呼叫在轉(zhuǎn)發(fā)出去,總并發(fā)是2000)
帶寬計算:
整體并發(fā)要2000通道算,共計160M多。下圖的帶寬和計算相符,并且入和出是相同的,表示正常:
從下圖可以看到CPU和內(nèi)存均正常。
Eyebeam客戶端的抓包分析,沒有丟包和延遲,語音正常,如下圖:
G.729呼叫
由于vSBC-5000不做編解碼,只是透傳RTP包,G.729的包更小,負(fù)荷更加輕載。所以本次不做相應(yīng)的測試。
4、壓力測試-降低資源
將CPU減少到4核,進行相應(yīng)的壓力測試,用于評估性能,作為上線的參考。
如下圖,CPU已經(jīng)調(diào)整為4核:
壓力測試情況如下:
從web查看到的呼叫統(tǒng)計如下圖:
表明可以支持1000并發(fā)。
整體并發(fā)要2000通道算,共計160M多。下圖的帶寬和計算相符,并且入和出是相同的,表示正常:
從下圖可以看到CPU和內(nèi)存均正常。
Eyebeam客戶端的抓包分析,沒有丟包和延遲,語音正常,如下圖:
五、測試結(jié)論
由于毅航互聯(lián) vSBC-5000采用內(nèi)核包轉(zhuǎn)發(fā)模式,在4核/8核的KVM/QEUM虛擬機中,可以很好的支持1000并發(fā)。