郭勇 GUO Yong;李瀟 LI Xiao;黃振益HUANG Zhen-yi;盧春華LU Chun-hua
(①?gòu)V西壯族自治區(qū)公安廳科技信息化處,南寧530012;②廣西公安計(jì)算機(jī)通訊技術(shù)研究所,南寧530012;③廣西華藍(lán)設(shè)計(jì)(集團(tuán))有限公司,南寧530011)
本文主要介紹了視頻會(huì)議的相關(guān)技術(shù),視頻系統(tǒng)的研究背景和應(yīng)用現(xiàn)狀,探索研究NGImeetings Cluster框架結(jié)構(gòu)及NGImeetings Cluster系統(tǒng)的優(yōu)勢(shì)。NGImeetings Cluster集群框架可以優(yōu)化視頻會(huì)議總體系統(tǒng)框架,使視頻系統(tǒng)被廣泛用于規(guī)模較大且高負(fù)載的網(wǎng)絡(luò)中,給云計(jì)算研究奠定堅(jiān)實(shí)的基礎(chǔ)。
1.1 視頻會(huì)議的簡(jiǎn)單介紹 視頻會(huì)議對(duì)數(shù)據(jù)的傳輸具有較強(qiáng)的時(shí)效性,它要求傳輸?shù)臄?shù)據(jù)速度非??欤邑?fù)載非常大,包括多批量的圖形與聲音,單獨(dú)的服務(wù)器難以達(dá)到視頻會(huì)議的時(shí)效性要求。視頻會(huì)議按實(shí)現(xiàn)會(huì)議方式的不同,可以分硬件視頻會(huì)議與軟件視頻會(huì)議。硬件視頻可以說(shuō)是比較傳統(tǒng)的,它是用硬件模塊對(duì)數(shù)據(jù)進(jìn)行編碼解碼、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)傳輸?shù)?,具有高專用性的特點(diǎn),并且效果很理想,視頻會(huì)議的服務(wù)提供模型如圖1所示。而軟件視頻會(huì)議充分利用PC機(jī)的高性能優(yōu)勢(shì),與其他軟件有效結(jié)合,實(shí)現(xiàn)較強(qiáng)的擴(kuò)展能力,組成差異框架,具有很強(qiáng)的實(shí)用性。
1.2 云計(jì)算的介紹 云計(jì)算可以被理解為是人們通過(guò)網(wǎng)絡(luò)訪問(wèn)計(jì)算機(jī)的“通道”,人們對(duì)計(jì)算機(jī)進(jìn)行訪問(wèn)時(shí),他們不知道所用資源的網(wǎng)絡(luò)位置也可以找到所需的資源與服務(wù),就是這種資源似乎存在云中。云計(jì)算做到了對(duì)多個(gè)機(jī)器的整合,具有大規(guī)模、按需求服務(wù)的特點(diǎn),云計(jì)算提供了一個(gè)虛擬的可以控制的計(jì)算平臺(tái),按資源的需求對(duì)其進(jìn)行使用,可以展開多種業(yè)務(wù)。
圖1 視頻會(huì)議服務(wù)提供模型
視頻會(huì)議在近幾年發(fā)展迅速并被廣泛應(yīng)用,最重要的標(biāo)準(zhǔn)就是國(guó)際上對(duì)視頻編碼的制定,尤其是MPEG4的標(biāo)準(zhǔn)制定,促使會(huì)議可以在帶寬較低的網(wǎng)絡(luò)中也能提供圖像。因?yàn)镮nternet的發(fā)展,網(wǎng)絡(luò)帶寬有所改善,計(jì)算機(jī)也普及到人們的生活中,視頻系統(tǒng)已有很多成熟系統(tǒng),例如:北京億方的Qmeeting,視高科技的會(huì)議系統(tǒng)等。與此同時(shí),軟件視頻也逐漸網(wǎng)絡(luò)化,直接點(diǎn)擊打開參加會(huì)議的網(wǎng)址,就可以簡(jiǎn)單地交換音頻和數(shù)據(jù),使參會(huì)者能相互交流,如同觀看網(wǎng)上的視頻一樣便捷。以Web為基礎(chǔ)的視頻弧已滲透到云計(jì)算的平臺(tái),由云計(jì)算平臺(tái)來(lái)負(fù)責(zé)處理數(shù)據(jù)的儲(chǔ)存與傳輸工作,有效的提高了處理信息的能力與穩(wěn)定性。云計(jì)算正在逐步成為IT工作者的基礎(chǔ)工作,未來(lái)云視頻會(huì)議也會(huì)更受到人們的歡迎。因?yàn)樵朴?jì)算的較強(qiáng)處理能力與良好的管理機(jī)制,未來(lái)它將逐步改變網(wǎng)絡(luò)的使用方式。
3.1 NGImeetings是一種Web會(huì)議系統(tǒng),該系統(tǒng)運(yùn)用Flash發(fā)展人與機(jī)器的交換界面,對(duì)服務(wù)器進(jìn)行后臺(tái)整合管理,利用RTMP協(xié)議和客戶端交換數(shù)據(jù)與指令,具有多種功能,可以實(shí)現(xiàn)文檔轉(zhuǎn)化、音頻通信、文字傳遞等,擁有聊天室、會(huì)議室等多種模式,系統(tǒng)的客戶端打開在瀏覽器前需要安裝插件,才可以在瀏覽時(shí)連接到NGImeetings的服務(wù)器,得到相應(yīng)的會(huì)議服務(wù)。NGImeetings主要有三個(gè)級(jí)層,第一級(jí)層是人與機(jī)器交換的交互層,通過(guò)訪問(wèn)入口進(jìn)去用戶界面,同時(shí)展示系統(tǒng)的內(nèi)部信息給外界;第二個(gè)級(jí)層是業(yè)務(wù)平臺(tái),包括一些基本功能的模塊,如:處理音頻功能,傳遞文字功能等,接入傳輸端口實(shí)現(xiàn)對(duì)不同媒體運(yùn)用不同功能進(jìn)行處理;第三層主要負(fù)責(zé)控制通信,即通信控制層,媒體服務(wù)器負(fù)責(zé)RTMP數(shù)據(jù)的傳送和控制,有秩序的接受客戶端信息并進(jìn)行傳輸。隨著NGImeetings的廣泛使用,單一依靠單服務(wù)器已很難實(shí)現(xiàn)高效率、大容量的要求,所以服務(wù)器集群應(yīng)運(yùn)而生。
3.2 NGImeetings Cluster設(shè)計(jì)的標(biāo)準(zhǔn)。NGImeetings Cluster系統(tǒng)的能用性非常重要,NGImeetings Cluster采用外部動(dòng)態(tài)進(jìn)行注入可以實(shí)現(xiàn)服務(wù)器的集群管理,有效提高系統(tǒng)靈活性。因?yàn)镹GImeetings Cluster是用很多節(jié)點(diǎn)一起工作,一旦某個(gè)節(jié)點(diǎn)失去效力,其他節(jié)點(diǎn)不受影響,能確保系統(tǒng)正常運(yùn)行,具有很強(qiáng)的實(shí)用性。
3.3 NGImeetings Cluster整體構(gòu)架。集群調(diào)度節(jié)點(diǎn)負(fù)責(zé)控制整個(gè)系統(tǒng),當(dāng)出現(xiàn)請(qǐng)求服務(wù)時(shí),調(diào)度節(jié)點(diǎn)先接到信息,傳送信息到適當(dāng)?shù)募汗?jié)點(diǎn),另外,集群節(jié)點(diǎn)可以協(xié)調(diào)分配各個(gè)節(jié)點(diǎn)的數(shù)據(jù)流通,暫存共享的數(shù)據(jù)。通信代理功能由集群節(jié)點(diǎn)實(shí)現(xiàn),當(dāng)它接到客戶端請(qǐng)求后,建立連接,通過(guò)集群節(jié)點(diǎn)得到相應(yīng)服務(wù);集群服務(wù)節(jié)點(diǎn)對(duì)系統(tǒng)提供實(shí)際服務(wù),它負(fù)責(zé)分配內(nèi)容進(jìn)行訪問(wèn)服務(wù)。NGImeetings Cluster系統(tǒng)工作流程可以這樣簡(jiǎn)述,首先客戶端發(fā)送請(qǐng)求到集群調(diào)度節(jié)點(diǎn),集群調(diào)度在了解整個(gè)系統(tǒng)信息的情況下,選擇合適的通信節(jié)點(diǎn)并將客戶請(qǐng)求傳達(dá)給該通信節(jié)點(diǎn),通信節(jié)點(diǎn)收到信息后,會(huì)依據(jù)負(fù)載平衡情況選擇服務(wù)節(jié)點(diǎn)并將請(qǐng)求傳給服務(wù)節(jié)點(diǎn),通信節(jié)點(diǎn)用客戶端地址給服務(wù)節(jié)點(diǎn)發(fā)送請(qǐng)求,待服務(wù)節(jié)點(diǎn)驗(yàn)證后回復(fù)對(duì)應(yīng)的信息,最后,通信節(jié)點(diǎn)再將服務(wù)信息傳至客戶端。當(dāng)有節(jié)點(diǎn)出現(xiàn)失效不能提供服務(wù)時(shí),集群節(jié)點(diǎn)可以保證失效節(jié)點(diǎn)的異常不擴(kuò)散,不會(huì)影響其他節(jié)點(diǎn)正常工作,同時(shí),不會(huì)突然中斷失效節(jié)點(diǎn)用戶的服務(wù)請(qǐng)求。NGImeetings Cluster系統(tǒng)的這種多個(gè)節(jié)點(diǎn)相互協(xié)調(diào)共同工作,最大的優(yōu)點(diǎn)就是節(jié)點(diǎn)之間互不影響異常狀態(tài),保證系統(tǒng)整體有效運(yùn)行。
NGImeetings Cluster系統(tǒng)之所以能順利運(yùn)用是因?yàn)闃?gòu)成它的各個(gè)節(jié)點(diǎn)有配有相關(guān)的應(yīng)用軟件,運(yùn)用軟件有效實(shí)現(xiàn)工作機(jī)制。它主要分三個(gè)大系統(tǒng),即訪問(wèn)控制系統(tǒng)、提供服務(wù)系統(tǒng)、分享數(shù)據(jù)系統(tǒng)。訪問(wèn)控制系統(tǒng)負(fù)責(zé)接收客戶端的請(qǐng)求,有效實(shí)現(xiàn)負(fù)責(zé)均衡和故障轉(zhuǎn)移。服務(wù)提供系統(tǒng)主要對(duì)通信節(jié)點(diǎn)和服務(wù)節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)管理,以及處理客戶端的請(qǐng)求,該系統(tǒng)的通信節(jié)點(diǎn)和服務(wù)節(jié)點(diǎn)都裝有Red5軟件。Red5是具有較強(qiáng)功能的媒體服務(wù)器,可以優(yōu)化結(jié)構(gòu),同時(shí)可實(shí)現(xiàn)通信擴(kuò)展。共享數(shù)據(jù)系統(tǒng)引入Terracotta管理機(jī)制,可以優(yōu)化服務(wù)平臺(tái),構(gòu)建更高效的數(shù)據(jù)共享,完成調(diào)度節(jié)點(diǎn)合理分配共享的數(shù)據(jù),以提高數(shù)據(jù)的傳送效率,同時(shí),也大大降低系統(tǒng)的通信負(fù)荷。
基于云的業(yè)務(wù)與以往的IT系統(tǒng)有所不同,以云平臺(tái)為基礎(chǔ)的業(yè)務(wù)和資源不一定存在聯(lián)系,他們不一定覆蓋硬件資源和軟件資源,云業(yè)務(wù)具有獨(dú)特的優(yōu)點(diǎn)。云資源的共享大大降低了系統(tǒng)投資成本,能適應(yīng)不同的管理要求,面向云的業(yè)務(wù)更為簡(jiǎn)單。創(chuàng)建NGImeetings Cluster虛擬的機(jī)模板后,要服務(wù)外界,還要實(shí)例化NGImeetings Cluster模板,如果將NGImeetings Cluster設(shè)計(jì)在云平臺(tái)的區(qū)域中,不用擔(dān)心跨區(qū)域的通信問(wèn)題,也不用安裝私有接口,只需要公共接口來(lái)進(jìn)行虛擬組網(wǎng)即可。擁有云的NGImeetings Cluster網(wǎng)絡(luò)結(jié)構(gòu)后,集群節(jié)點(diǎn)僅有一個(gè)虛擬機(jī),通信節(jié)點(diǎn)和服務(wù)節(jié)點(diǎn)都至少有一個(gè)虛擬機(jī),它們?cè)谝粋€(gè)區(qū)域中,初化系統(tǒng)時(shí),先啟動(dòng)調(diào)度節(jié)點(diǎn)實(shí)例,再依次啟動(dòng)通信節(jié)點(diǎn)和服務(wù)節(jié)點(diǎn),調(diào)度節(jié)點(diǎn)實(shí)例對(duì)整個(gè)NGImeetings Cluster進(jìn)行監(jiān)控和調(diào)度,提供入口,系統(tǒng)功能特點(diǎn)和服務(wù)流程。運(yùn)行實(shí)際的NGImeetings Cluster時(shí),可以依據(jù)客戶的實(shí)際服務(wù)需要,實(shí)現(xiàn)資源動(dòng)態(tài)化,提高資源可靠性。例如:在某個(gè)節(jié)點(diǎn)實(shí)例不起作用時(shí),運(yùn)用原來(lái)的EMI模板制定和啟動(dòng)新節(jié)點(diǎn)的實(shí)例;在負(fù)載較低時(shí),可以簡(jiǎn)單地放棄利用率不高的節(jié)點(diǎn),相反地在負(fù)載較多時(shí),可以迅速擴(kuò)充資源,確保系統(tǒng)服務(wù)的質(zhì)量。NGImeetings Cluster組織到Pervasive-Service Cloud的虛擬簇中,實(shí)現(xiàn)Gimeetings,遷移到云的基本實(shí)現(xiàn)流程如下圖2所示。
圖2 NGImeetings Cluster遷移到云的基本流程
采取不同數(shù)量的調(diào)度節(jié)點(diǎn)實(shí)例,通信節(jié)點(diǎn)實(shí)例和服務(wù)節(jié)點(diǎn)實(shí)例對(duì)NGImeetings Cluster系統(tǒng)進(jìn)行測(cè)試,可以檢測(cè)各個(gè)節(jié)點(diǎn)間的相互連接情況;可以驗(yàn)證NGImeetings Cluster系統(tǒng)是否可以提供正常視頻服務(wù);可以檢驗(yàn)調(diào)度節(jié)點(diǎn)能否均衡地發(fā)送請(qǐng)求給服務(wù)節(jié)點(diǎn),實(shí)現(xiàn)對(duì)負(fù)載的均衡。
將NGImeetings Cluster系統(tǒng)模型轉(zhuǎn)移到云計(jì)算平臺(tái)的同時(shí),也需要不斷地優(yōu)化,例如如下幾方面需要深入研究:對(duì)負(fù)載實(shí)現(xiàn)均衡的具體方法是構(gòu)建和實(shí)現(xiàn)服務(wù)集群框架,對(duì)均衡負(fù)載的研究要待加深,未來(lái)的研究工作,可以嘗試不同環(huán)境下的負(fù)載均衡方法;備份多臺(tái)調(diào)度節(jié)點(diǎn),NGImeetings Cluster如果在大量用戶同時(shí)訪問(wèn)時(shí),容易產(chǎn)生故障,造成調(diào)度節(jié)點(diǎn)失效。因此,有必要配備多些的調(diào)度節(jié)點(diǎn),增強(qiáng)系統(tǒng)接收訪問(wèn)的功能,Terracotta數(shù)據(jù)管理有待完善。相信通過(guò)人們的不斷研究,面向云的視頻會(huì)議系統(tǒng)會(huì)更加完善,可以更好地為人們提供服務(wù)。
[1]劉會(huì)峰.基于IP網(wǎng)絡(luò)構(gòu)建視頻會(huì)議系統(tǒng)[J].信息系統(tǒng)工程,2010(12).
[2]沈旭磊,蔣瓊燕.UT斯達(dá)康基于云計(jì)算的高清視頻會(huì)議系統(tǒng)[J].電信科學(xué),2011(12).
[3]周巍,陳清金,張?jiān)朴?房秉毅.應(yīng)用云計(jì)算技術(shù)的視頻系統(tǒng)實(shí)現(xiàn)分析[J].電信技術(shù),2011(10).