柴子旺
(河北遠東通信系統工程有限公司,河北 石家莊 050200)
軟交換技術作為下一代網絡體系結構的核心技術,能夠將硬件進行軟件化處理,利用軟件的功能完成交換機控制、接續等多項任務,并有效分離語音流、控制流,實現各種協議內容,為客戶提供更多業務。考慮到現在許多企業都建立專用網絡,也配備了足夠數量的個人計算機(Personal Computer,PC)設備,可以在此基礎上合理引入基于軟交換的專網語音通信系統,為企業進一步發展提供保障。
在詳細分析企業網環境下的語音通信與交換單元后,以內聯網(Intranet)通信環境為基礎,設計使用軟交換技術的企業網語音通信系統(Voice Communication System Based on Softswitch in Intranet,VCSBSI),開發環境為Microsoft Visual C++6.0。將VCSBSI劃分為2個部分,即服務器與客戶端。服務器為系統提供用戶注冊、信息管理、網絡會議室管理、用戶活動日志以及文件管理等功能,而客戶端為系統提供企業網中的通話、網絡會議、文件傳輸、信息收發等功能。通過音頻、視頻實現的網絡會議可以保證與會人員無障礙發言,打破傳統網絡會議通信在同一時間內僅能提供1個人發言的技術障礙。VCSBSI并不需要過高的硬件配置,利用軟件系統即可完成系統與會議服務器的設置,極大降低技術應用難度[1]。服務器與各個客戶端擁有穩定的控制與數據連接,使用傳輸控制協議(Transmission Control Protocol,TCP)與用戶數據報協議(User Datagram Protocol,UDP)對控制流與數據流進行可靠傳輸。通過軟交換技術可以有效分離控制流與數據流,保障系統的穩定運行。對于邏輯結構,則通過分布式構架控制所有企業會議服務器,利用多種線程確保系統可以實時傳輸數據,降低語音通信的等待時間。使用G.729.A語音編碼,實現語音數據流的壓縮與解壓,并利用組播模式合理控制企業網中的數據流量。
VCSBSI系統中,基本運行模式為客戶機/服務器(Client/Server,CS),系統可以劃分為語音通信、網絡會議等模塊,各個模塊都是通過C/S模式完成業務[2]。根據系統功能構建出3種類型服務器,即負責為整個系統提供相應服務的系統服務器、作為溝通語言通信接受方與邀請方的語音通信服務器、用于創建多人語言通信的網絡會議服務器。與此同時,設計與之相對應的3種客戶機,分別是在系統中完成注冊程序的系統客戶機、接受邀請或發出邀請的語音通信客戶機、會議室中與會人員的網絡會議客戶機。對于完成系統注冊程序的人員,在不同場景下可以成為語音通信邀請方或被邀請方,也可以根據業務需求成為創建會議室的建設人員或參與人員[3]。
VCSBSI系統在進行系統交換控制時,使用分布式邏輯結構,如圖1所示。

圖1 VCSBSI系統控制邏輯結構
系統服務器負責管理系統中的所有客戶端,通過TCP控制模式和客戶端構建連接。客戶端可以為用戶提供語音通信服務,此時的服務器負責等待邀請。此外,服務器也可以成為邀請方,向客戶端發出邀請[4]。在服務器和客戶端構建TCP控制與UDP語音數據連接后,控制流與數據流在用戶語音通話期間可以省略通過系統服務器這個步驟,而是在2個節點之間進行通信數據傳輸。利用這種方式對整個系統控制程序進行大幅檢查,對于控制系統的數據流量也有較大幫助。網絡會議與語音通信的運行模式類似,但是為滿足用戶會議需求,會使用分散型會議結構。用戶可以在VCSBSI系統中的任何客戶端創建會議室,而其他用戶使用客戶端加入會議室,不用通過系統服務器,直接查看企業的本地在線會議室鏈表,并從中找到相應的會議服務器IP地址,向該會議室對應的服務器提交加入申請即可,創建會議室的用戶確認加入申請,即可實現多個用戶聚集在1個會議室進行網絡會議。會議服務器通過TCP控制與UDP語音數據連接,將創建會議室與接入會議室的服務器進行有效連接。會議服務器負責向系統服務器提交建立網絡會議申請,在完成本次網絡會議后需要向系統服務器提交撤銷網絡會議的申請。除了這2個步驟外,系統服務器不會干涉該網絡會議。在網絡會議運行期間,會議服務器擁有這個會議室的所有管理權限。通過這種管理模式,讓系統服務器的運行負載合理分配給各個會議服務器,而會議服務器也可以選擇合適的用戶節點構建網絡會議,保證會議室的高效管理。
客戶端節點則是擁有屬于自己的媒體處理模式,用戶節點會獲得同個組播組中的所有語音數據,用戶節點依據使用需求選擇需要用到的語音通信數據。通過接收線程完成數據的接收,并使用解碼線程對數據進行解碼處理,利用合音線程完成語音數據的合音化,再使用播放線程對PC設備的聲卡進行控制,播放語音數據。客戶終端表現的的功能和H.323協議媒體處理功能相近。如果應用分散型會議模式,網絡節點會在企業本地構建專屬節點使用的媒體處理環境,但是會導致用戶在進行網絡會議時,網絡節點存在較大的運行負荷,影響網絡會議的高效使用。而使用分布式VCSBSI系統可以充分利用網絡節點服務器,讓系統服務的運行負載處于平衡狀態,從而降低VCSBSI系統的通信時間延遲,提升VCSBSI系統的運行效率[5]。
VCSBSI系統利用錄音、播音、發送、接收等工作線程對網絡會議與語音通信產生的語音數據流進行處理,保障通信雙方或會議多方可以實現實時交流,提升語音通信應用效果[6]。各個工作線程的通信業務、線程函數均通過消息機制進行驅動,在各個線程中的成員函數需要在接受相應消息后才能進入激活狀態,再由系統服務器進行調用。如果系統服務器可以滿足線程函數預設的某個條件時,線程函數會發送消息給其他線程,激活其他線程與條件相關的線程函數,完成多個線程的同步控制。在VCSBSI系統實際運行時,語音流會持續生成,增加系統服務器的運行負荷,因此需要設置多個線程,以并行模式共同處理VCSBSI系統運行時產生的語音數據,滿足業務實時處理需求。
各個線程與整體網絡提供語音數據的傳輸條件,但線程處理存在時延,網絡傳輸也無法避免這個問題,這就需要所有線程一定要設置合適規格的語音數據處理緩沖區,降低時延產生的負面影響,讓用戶在接收語音流時可以連續播放語音數據,即在聽覺層面感覺不到時延。如果語音數據處理緩沖區規格過大,雖然可以提升語音播放連續效果,但是會讓服務器花費更多時間用于語音數據的采集與播放,用戶也會感覺到較為明顯的時延影響;如果語音數據處理緩沖區規格過小,盡管會降低語音播放的時延,但是網絡在傳輸語音數據時無法保證出現穩定的延時,會發生較為強烈的時延抖動現象,降低語音播放連續性,用戶收聽語音數據時會感覺到斷斷續續。如果VCSBSI系統出現較為嚴重的網絡擁塞問題,會發生語音數據大量丟失問題,用戶將難以聽清另一個語音通信用戶傳遞的信息,網絡會議運行效果也會受到直接影響。在設置緩沖區規格時,VCSBSI系統的語音流處理長度要進行優化調整,確保語音數據播放的連續性,也要保證語音時延低于250 ms,避免被用戶察覺。在對VCSBSI系統的語音數據緩沖區規格進行多次試驗后,發現緩沖區規格設為10 ms可以有效平衡語音數據的時延問題,滿足連續播放需求[7]。
對于資源管理,VCSBSI系統的資源管理器是通過集成方式設置在系統服務器中,其功能是對VCSBSI系統各類資源(例如呼叫鏈路、應用程序等)進行集中管理。會議服務器負責管理網絡會議使用的各類資源,例如會議席位分配、信息廣播、構建與撤銷視頻鏈路等。
對于認證計費,VCSBSI系統服務器上擁有認證模塊,主要負責認證訪問系統的用戶身份,分析用戶擁有的系統使用權限[8]。VCSCSI系統以企業為對象,設計的語音通信系統讓企業網內部獲得穩定的電話會議效果,構建多個部門協同合作的工作環境,用戶在企業網內部進行語言通話時暫時設為免費。VCSBSI系統的計費項目針對企業網外部語音通信,將計費服務器和系統服務器進行連接,并將計費點放置在計費服務器上。從企業網內部向外撥打的所有語音通信都需要經過計費服務器,并記錄語音通信費用數據,例如通信對象所在的區域、通話時間等。每隔一段時間,由計費服務器激活相應的計費程序,根據程序設置的計費模式對用戶語音通信進行計費[9]。除此之外,對于會議服務器與VCSBSI系統的資源服務器,也會詳細記錄網絡會議、文件下載信息,可以根據會議規模、時長或文件規模、下載所需流量等進行計費。如果是特殊會議或有關企業的重要文件,可以適當調整必要計費標準,保證資源的合理應用[10]。
在企業使用環境中,對基于軟交換的專網語音通信系統進行全面分析,具有一定的參考價值。實際應用時需要以企業軟硬件條件、通信需求、業務內容為準,設計結構穩定、內容豐富的專網語音通信系統。通過對基于軟交換的專網語音通信系統進行深入研究,為我國經濟社會可持續發展貢獻力量。