基于SIP協(xié)議的IP電話(huà)通信系統的組成原理
3 系統軟件設計
軟件方面的工作主要是驅動(dòng)程序的編寫(xiě)、任務(wù)的劃分和任務(wù)的編寫(xiě)等三個(gè)方面。由于μC/OS-II基本上不提供API接口庫或者需要額外購買(mǎi),因此,*中需要編寫(xiě)的主要驅動(dòng)軟件有包括TCP/IP、液晶驅動(dòng)、EEPROM驅動(dòng)、鍵盤(pán)驅動(dòng)、IO驅動(dòng)、USB驅動(dòng)等程序。這些驅動(dòng)程序的編寫(xiě)一般都有固定的模式和套路。一般情況下,IP電話(huà)軟件應包括完成語(yǔ)音通話(huà)所需的所有功能。該軟件按功能可劃分為圖3所示的四部分。

3.1 呼叫處理模塊
呼叫處理模塊主要完成呼叫的建立與拆除功能。呼叫控制可采用SIP協(xié)議建立會(huì )話(huà)。呼叫建立過(guò)程通常是先由一個(gè)SIP終端向本地的代理服務(wù)器發(fā)出呼叫請求,本地的代理服務(wù)器則通過(guò)查詢(xún)本地的重定向服務(wù)器來(lái)查找下一個(gè)代理服務(wù)器的地址,并向其轉發(fā)呼叫請求。當下一個(gè)代理服務(wù)器收到呼叫請求后,首先通過(guò)定向服務(wù)器查找被叫所在網(wǎng)絡(luò )的代理服務(wù)器,然后向該代理服務(wù)器轉發(fā)呼叫請求。被叫所在網(wǎng)絡(luò )的代理服務(wù)器確定被叫終端后,再向被叫終端轉發(fā)呼叫請求。最后由被叫終端應答,從而實(shí)現連接。
3.2 語(yǔ)音編碼/解碼模塊
雖然語(yǔ)音采集所得到的PCM編碼數據能夠提供較好的長(cháng)途通信語(yǔ)音質(zhì)量,但其速率往往過(guò)高,因而占用網(wǎng)絡(luò )帶寬資源過(guò)高。為此,一般都需要對語(yǔ)音數據進(jìn)一步壓縮,以降低語(yǔ)音編碼的速率。這樣,相應的,在接收端也就需要同樣的解壓算法來(lái)恢復原始語(yǔ)音數據。編制這部分代碼可采用現在比較成熟的語(yǔ)音編解碼算法,并進(jìn)行一定的改進(jìn),以提高語(yǔ)音通話(huà)質(zhì)量。
3.3 數據封包/拆包模塊
數據封包/拆包軟件模塊主要對壓縮編碼后的語(yǔ)音數據進(jìn)行打包,包括添加包頭、時(shí)標和其他信息,以使其形成語(yǔ)音包。在接收時(shí)。則應進(jìn)行相應的拆包,并提取語(yǔ)音壓縮包。
3.4 數據傳輸模塊
該模塊主要完成語(yǔ)音包的發(fā)送和接收。因為把音頻數據實(shí)時(shí)地傳輸給對方才是保證實(shí)時(shí)語(yǔ)音通信的關(guān)鍵。所以,在考慮可靠性和實(shí)時(shí)性方面,更應注重速度和實(shí)時(shí)性。故在選擇協(xié)議時(shí),可采用UDP協(xié)議,并在編程時(shí)使用對應的數據報套接字。
4 結束語(yǔ)
IP電話(huà)通信系統是利用現有計算機網(wǎng)絡(luò )資源組成的電話(huà)通信系統,它無(wú)需鋪設電話(huà)線(xiàn)和購置電話(huà)通信網(wǎng)絡(luò )設備,故可節省大量建設電話(huà)網(wǎng)絡(luò )的設備費、線(xiàn)路費和工程費用,可在不需要鋪設電話(huà)線(xiàn)的情況下,方便地實(shí)現電話(huà)通信,增加電話(huà)用戶(hù),縮短安裝工程周期,提高計算機網(wǎng)絡(luò )資源的利用率,擴大電話(huà)的普及范圍,同時(shí)可加大信息傳遞量,因而具有良好的社會(huì )和經(jīng)濟效益。本文引用地址:http://dyxdggzs.com/article/155368.htm
tcp/ip相關(guān)文章:tcp/ip是什么
評論