摘 要: 提出了一種基于自適應(yīng)多速率算法的新VoIP系統(tǒng)方案,,該方案可以根據(jù)網(wǎng)絡(luò)信道質(zhì)量的好壞來自適應(yīng)地選擇一種最佳的語音傳輸模式,,從而在一定程度上保障了重構(gòu)后的語音質(zhì)量。在NS-2仿真平臺下,,通過與傳統(tǒng)VoIP體系比較發(fā)現(xiàn),,所提出的新VoIP系統(tǒng)方案在語音QoS保障方面明要顯優(yōu)于傳統(tǒng)VoIP系統(tǒng)。
關(guān)鍵詞: VoIP,;自適應(yīng)多速率算法,;自適應(yīng);NS-2
隨著Internet的迅速發(fā)展,,網(wǎng)絡(luò)多媒體的數(shù)據(jù)傳輸越來越成為研究熱點,,其中IP電話系統(tǒng)(VoIP)就是其中一個重要分支[1]。但是由于VoIP要求會話雙方要實時傳輸語音數(shù)據(jù),,對語音的實時性要求條件較高,,而VoIP又是建立在沒有QoS保障的UDP/IP協(xié)議之上,所采用的語音編碼方案一般都是單速率的語音編碼方案,,如G.729,,這就使得傳統(tǒng)的VoIP很難適應(yīng)不斷變化的網(wǎng)絡(luò)資源環(huán)境。當網(wǎng)絡(luò)資源比較充足時,,重構(gòu)后的語音質(zhì)量還能有一定的保障,。但是當網(wǎng)絡(luò)業(yè)務(wù)量很大或者當網(wǎng)絡(luò)發(fā)生擁塞時,連續(xù)的語音包丟失現(xiàn)象就會很嚴重,,從而導致重構(gòu)后的語音質(zhì)量出現(xiàn)急劇下降的現(xiàn)象,。雖然國內(nèi)外學者對此也提出了若干應(yīng)對策略,如在網(wǎng)絡(luò)協(xié)議方面的呼叫允許控制,、資源預(yù)留機制(RSVP)協(xié)議,、差分服務(wù)等,但是這些策略在對實時語音起到保障作用的同時,,又導致了核心路由器的嚴重開銷,,最終使得整個VoIP系統(tǒng)的可擴展性變差。本文提出了一種基于AMR語音編解碼算法的新VoIP系統(tǒng),該系統(tǒng)可以根據(jù)網(wǎng)絡(luò)信道質(zhì)量的好壞來自適應(yīng)地選擇一種最佳的傳輸速率,,從而使得合成后的語音質(zhì)量有了更加良好的QoS保障,。通過NS-2平臺下的仿真,,實驗結(jié)果表明:新VoIP系統(tǒng)在網(wǎng)絡(luò)延時和數(shù)據(jù)包丟失率方面均要明顯優(yōu)于采用G.729算法的傳統(tǒng)VoIP系統(tǒng),。
1 NS-2和AMR相關(guān)技術(shù)
1.1 NS-2網(wǎng)絡(luò)模擬器
NS-2(Network Simulator,version 2)是由加州大學伯克利分校開發(fā)的面向?qū)ο蟮?、離散事件驅(qū)動的網(wǎng)絡(luò)模擬器,,主要用于解決網(wǎng)絡(luò)研究方面的問題,目前NS-2可以用于模擬各種不同的通信網(wǎng)絡(luò),。它功能強大,,模塊豐富,已經(jīng)實現(xiàn)的主要模塊有:網(wǎng)絡(luò)傳輸協(xié)議(如TCP和UDP),,業(yè)務(wù)源流量產(chǎn)生器(如FTP,、Telnet、Web,、CBR和VBR),,路由隊列管理機制(如Droptail、FQ,、RED和CBQ),,路由算法(如Dijkstra),無線網(wǎng)絡(luò)WLAN,、移動IP,、衛(wèi)星通信網(wǎng)絡(luò)模塊、多播協(xié)議以及一些MAC子層協(xié)議等,。
NS-2使用了被稱為分裂對象模型的開發(fā)機制,,采用C++和OTcl兩種開發(fā)語言進行開發(fā),它們之間采用TclCL進行自動連接和映射,。NS-2的模擬可分為2個層次,,其中第一個層次是基于OTcl的模擬,主要利用NS-2現(xiàn)有的網(wǎng)絡(luò)元素來實現(xiàn)模擬,,因此無需對NS-2本身做任何修改,,只需要編寫一個完整的OTcl腳本程序即可;另外一個層次是基于C++和OTcl的模擬,,該層次中沒有所需的網(wǎng)絡(luò)元素,,因此需要對NS-2進行擴展,添加所需要的網(wǎng)絡(luò)元素,。一般來說,,NS-2的模擬需要與Nam﹙Network animater﹚配合使用。Nam是基于Tcl/Tk的動畫演示工具,以把模擬的過程用可視化的方式呈現(xiàn)出來[2],。
1.2 AMR自適應(yīng)技術(shù)的介紹
自適應(yīng)多速率語音編碼(AMR)有8種信源編碼模式,2種信道模式(即全速率信道模式和半速率信道模式)以及不同信道模式下所對應(yīng)的不同信道編碼模式,。其中,全速率信道模式下所對應(yīng)的信道編碼模式為8種,,半速率信道模式下所對應(yīng)的信道編碼模式為6種,,每種信道編碼模式都有一種信源編碼模式與之相對應(yīng)。此外為了降低算法的復(fù)雜度,,8種信源編碼模式均采用ACELP(Algebraic Code Excited Linear Prediction)模型,,不同的只是參量的量化碼本和量化比特數(shù)。在移動通信中,,當信道模式固定后,,通過測量歸一化的載(載波信號)干(干擾信號)比來估計當前信道的質(zhì)量,度量級別為4個級別,,分別為很差,、差、好,、很好,。如果當前信道質(zhì)量估計為較好或者好,則降低信道編碼速率,、提高信源編碼速率,,以此來提高重構(gòu)后的語音質(zhì)量;如果當前信道質(zhì)量估計為差或者較差,,則提高信道編碼速率,、降低信源編碼速率,以此來保障通話質(zhì)量,。所以高模式下的信源編碼(如MR122),,雖然可以提供優(yōu)良的語音可懂度和自然度,但是抗噪能力差,;而低模式下的信源編碼(如MR475),,由于多數(shù)比特被用作信道編碼,因此具有很強的糾錯能力,,但是重構(gòu)后的語音質(zhì)量不佳[3],。
2 AMR算法下的VoIP系統(tǒng)
VoIP傳輸?shù)幕具^程可分為4種:PC-PC模型、PC-Phone模型,、Phone-PC模型和Phone-Phone模型[4],。本文中仿真的是Phone-Phone模型,具體過程如圖1所示,。在該模型中,,語音的傳輸過程可以拆分為2個階段,。第一個階段,語音數(shù)據(jù)通過UDP協(xié)議打包從源點pc0-T開始發(fā)送,,通過網(wǎng)關(guān)gk0,、gk1轉(zhuǎn)發(fā),將語音數(shù)據(jù)包轉(zhuǎn)發(fā)到目的地點pc0-R,,從而實現(xiàn)節(jié)點0~5之間的語音數(shù)據(jù)通信,;第二個階段,語音數(shù)據(jù)通過UDP協(xié)議打包從源點pc1-T開始發(fā)送,,通過網(wǎng)關(guān)gk1和gk0轉(zhuǎn)發(fā),,將語音數(shù)據(jù)包轉(zhuǎn)發(fā)到目的地點pc1-R,,從而實現(xiàn)節(jié)點6~1之間的語音數(shù)據(jù)通信,。2個階段連續(xù)的傳輸過程構(gòu)成了VoIP中語音數(shù)據(jù)的基本傳輸過程。此外,,為了更加真實地模擬網(wǎng)絡(luò)資源的變化,,設(shè)置了一個pc到pc的網(wǎng)絡(luò)數(shù)據(jù)量的傳輸過程。該過程為:網(wǎng)絡(luò)數(shù)據(jù)通過TCP協(xié)議打包從源點pc2-T開始發(fā)送,,通過網(wǎng)關(guān)gk0和gk1轉(zhuǎn)發(fā),,將網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到目的地點pc2-R,從而實現(xiàn)節(jié)點2~7之間的網(wǎng)絡(luò)數(shù)據(jù)的傳輸,。通過設(shè)置不同的網(wǎng)絡(luò)數(shù)據(jù)流量可以來模擬當前網(wǎng)絡(luò)信道質(zhì)量的好壞,,從而為選擇不同的AMR信源編碼模式做準備。
為了檢測網(wǎng)絡(luò)擁塞下新VoIP系統(tǒng)的性能,,需要對上述語音模型的一些參數(shù)進行調(diào)整:(1)公共交換網(wǎng)(PSTN)傳輸帶寬的設(shè)定,。節(jié)點0~3之間的鏈路是用來模擬PSTN的,而PSTN中最大的語音傳輸速率(無損語音編碼方案G.711)為64 Kb/s,,因此為了體現(xiàn)帶寬資源的寶貴性,,設(shè)置此鏈路的傳輸帶寬為64 Kb,同理節(jié)點1~3之間,、節(jié)點5~4之間,、節(jié)點6~4之間的傳輸帶寬也設(shè)為64 Kb;(2)Internet網(wǎng)傳輸帶寬的設(shè)定,。節(jié)點3~4之間的鏈路是用來模擬Internet網(wǎng)的,,由于Internet網(wǎng)中傳輸數(shù)據(jù)量往往很大,而分配給每個用戶之間的傳輸帶寬是有限的,,因此為了體現(xiàn)網(wǎng)絡(luò)帶寬的有限性,,設(shè)置此鏈路的傳輸帶寬為1 Mb。同理節(jié)點2~3之間,、節(jié)點4~7之間的傳輸帶寬也設(shè)為1 Mb,;(3)當前網(wǎng)絡(luò)信道質(zhì)量的度量,。為了度量當前網(wǎng)絡(luò)信道質(zhì)量,選取衡量VoIP系統(tǒng)性能的參數(shù)如時延,、抖動,、數(shù)據(jù)包丟失率等來作為衡量當前信道質(zhì)量的參數(shù)。在本實驗中,,選取的是在一定時間內(nèi)的語音數(shù)據(jù)丟包率,,其計算公式為:λ=Sd/SRTT,式中Sd為固定時間內(nèi)丟失的語音包數(shù)目,,SRTT為固定時間內(nèi)發(fā)送的語音包數(shù)目[4],;(4)AMR信源編碼模式的選擇。由于AMR有8種信源編碼模式,,且8種信源編碼模式均是基于ACELP模型,,各個模式下重構(gòu)后的語音MOS值相差也不大,但是AMR總的代碼量卻很大,,所以綜合衡量起來,,可以根據(jù)不同的語音數(shù)據(jù)包丟失率來自適應(yīng)地選取其中的3種,即:MR122,、MR74,、MR475[3]。選擇標準為:當λ≤1%時,,選取MR122模式,;當1%<λ≤3%時,選取MR74模式,;當λ>3%時,,選取MR475模式;初始信源編碼模式為MR122,。
3 實驗結(jié)果與分析
新VoIP系統(tǒng)在NS-2平臺下的運行情況如圖2所示,。在該運行模型中,節(jié)點2~7之間流量的大小代表了網(wǎng)關(guān)節(jié)點3~4之間鏈路的狀況,。即當節(jié)點2~7之間傳送的網(wǎng)絡(luò)數(shù)據(jù)很大時(>1 Mb),,則認為節(jié)點3~4之間的鏈路發(fā)生了擁塞狀況;當節(jié)點2~7之間傳送的數(shù)據(jù)量較小時(<1 Mb),,則認為不會發(fā)生擁塞狀況,。節(jié)點0~6是語音數(shù)據(jù)包的發(fā)送節(jié)點,且具有根據(jù)網(wǎng)絡(luò)質(zhì)量來自適應(yīng)地調(diào)整語音發(fā)送速率的功能,,其中初始發(fā)送速率為12.2 Kb/s,;數(shù)據(jù)包的發(fā)送用NS-2自帶的Pareto分布流量產(chǎn)生器,這主要是考慮到話音激活檢測技術(shù)(VAD)對IP話音的影響[2],。
此外,,為了更加方便和有效地分析實驗數(shù)據(jù),,需要對上述VoIP模型進行簡化處理,簡化后的VoIP傳輸模型如圖3所示,。其中節(jié)點2為網(wǎng)關(guān),,節(jié)點3既是網(wǎng)關(guān)也是所有網(wǎng)絡(luò)數(shù)據(jù)的接收節(jié)點;節(jié)點0為語音數(shù)據(jù)包的發(fā)送節(jié)點,,節(jié)點1為網(wǎng)絡(luò)數(shù)據(jù)量的發(fā)送節(jié)點,。
圖4為采用不同語音算法的網(wǎng)絡(luò)數(shù)據(jù)的時延圖和丟包率圖。
通過實驗結(jié)果可知,,網(wǎng)絡(luò)擁塞下的新VoIP系統(tǒng)在時延和丟包率方面均要比基于G.729的VoIP系統(tǒng)優(yōu)越,,因而在重構(gòu)后的IP語音MOS值上,新VoIP系統(tǒng)要比原系統(tǒng)更加具備QoS保障性能,。
其中在網(wǎng)絡(luò)時延方面,,兩者基本上都處于上升階段,但是其最大值均沒有超過250 ms(實時語音傳輸?shù)淖畲髸r延要求),。此外由于新VoIP系統(tǒng)采用了自適應(yīng)機制,,故而在上升的趨勢上,,前者沒有后者的上升趨勢快,,時延時間在整體上要小于后者,如圖4(a)和圖4(b)所示,。
在丟包率方面,,兩者均隨著數(shù)據(jù)包的增加而呈現(xiàn)出波浪形的發(fā)展趨勢,其中基于G.729算法的VoIP系統(tǒng)的包丟失率在整體上將穩(wěn)定于4%左右,,如圖4(d)所示,。而基于AMR算法的新VoIP系統(tǒng)由于采用了自適應(yīng)機制,其可以隨著信道質(zhì)量的變化而自適應(yīng)地調(diào)節(jié)發(fā)送速率,,但是由于初始速率為MR122模式,,這就使得第一次出現(xiàn)的數(shù)據(jù)包丟失率比較大,而后由于采用了自適應(yīng)機制,,減小了信源發(fā)送速率,,在一定程度上緩解了網(wǎng)絡(luò)擁塞的情況,從而降低了數(shù)據(jù)包丟失率,。但是當數(shù)據(jù)包丟失率小于3%時,,由于用到了MR74模式,之后數(shù)據(jù)包丟失率又有了一個上升趨勢,,但是很快就又降了下來,,最后將基本保持在3%左右,如圖4(c)所示,。
本文介紹了一種基于AMR算法的新VoIP系統(tǒng),,該系統(tǒng)可以隨著網(wǎng)絡(luò)信道質(zhì)量的好壞來自適應(yīng)地調(diào)整發(fā)送端的發(fā)送速率,。實驗結(jié)果證明,新系統(tǒng)在網(wǎng)絡(luò)時延和包丟失率上均要優(yōu)于傳統(tǒng)VoIP系統(tǒng),。因而新系統(tǒng)在網(wǎng)絡(luò)擁塞的情況下可以更好地保障重構(gòu)后的語音質(zhì)量,,具有良好的應(yīng)用前景。
參考文獻
[1] 張磊.VoIP語音技術(shù)與應(yīng)用[M].北京:機械工業(yè)出版社,,2000.
[2] 方路平,,劉世華,陳盼,,等.NS-2網(wǎng)絡(luò)模擬基礎(chǔ)與應(yīng)用[M].北京:國防工業(yè)出版社,,2008.
[3] 王炳錫,王洪.變速率語音編碼[M].西安:西安電子科技大學出版社,,2004.
[4] 舒華英,,李勇.VoIP技術(shù)與應(yīng)用[M].北京:人民郵電出版社,2003.
[5] 3GPP TS 26. 090 V8.1.0 Adaptive multi-rate (AMR) speech codec,, 2009.
[6] 于斌.NS2與網(wǎng)絡(luò)模擬[M].北京:人民郵電出版社,,2007.
[7] http://www.isi.edu/nsnam/repository/topics.html.2009.
[8] 李艷,來智勇,,朱峰.NS-2與網(wǎng)絡(luò)模擬器的應(yīng)用研究[J].內(nèi)蒙古農(nóng)業(yè)學報,,2008(9):152-154.
[9] 賈龍濤,鮑長春.基于NS的自適應(yīng)多速率網(wǎng)絡(luò)語音通信的性能分析[J].通信學報,,2006(2):121-125.