国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于服務(wù)器虛擬化的智慧云桌面系統(tǒng)設(shè)計(jì)與應(yīng)用

2022-10-10 01:23游釤栗熊衛(wèi)華
軟件工程 2022年10期
關(guān)鍵詞:碼率桌面虛擬化

游釤栗,熊衛(wèi)華,應(yīng) 繁

(浙江理工大學(xué)機(jī)械與自動(dòng)控制學(xué)院,浙江 杭州 310018)

1 引言(Introduction)

隨著虛擬化技術(shù)的不斷發(fā)展,現(xiàn)如今已經(jīng)可以將其運(yùn)用到桌面端設(shè)備。它是一種以用戶為中心的計(jì)算模式,通過(guò)消除用戶桌面和特定硬件之間的綁定關(guān)系,使用戶從設(shè)備中解脫出來(lái)。在企業(yè)辦公、高校計(jì)算機(jī)實(shí)驗(yàn)室等諸多領(lǐng)域得到廣泛應(yīng)用。使用硬件虛擬化技術(shù)的物理主機(jī)可以獨(dú)立地為每個(gè)用戶提供服務(wù),提高系統(tǒng)并發(fā)處理能力。再通過(guò)虛擬桌面?zhèn)鬏攨f(xié)議將物理主機(jī)上的資源“發(fā)送”到指定用戶的客戶機(jī)上,可達(dá)到與本地主機(jī)環(huán)境一樣的使用效果。

這樣的部署模式不僅操作簡(jiǎn)單并且抗災(zāi)能力強(qiáng)。當(dāng)機(jī)房想為不同的功能需求添置不同的設(shè)備時(shí),只需要在原物理服務(wù)器上進(jìn)行性能拓展以安裝不同的鏡像,就可以達(dá)到新增服務(wù)的目的,避免了因購(gòu)置新設(shè)備而產(chǎn)生的高昂費(fèi)用問(wèn)題。

與此同時(shí),教育部指出網(wǎng)絡(luò)教育更應(yīng)當(dāng)注重信息傳遞和資源傳遞的優(yōu)勢(shì),實(shí)現(xiàn)能夠在使用云上直播教學(xué)時(shí),也可以充分地將優(yōu)質(zhì)教學(xué)資源同現(xiàn)代化教育平臺(tái)相結(jié)合。針對(duì)上述要求,在智慧云桌面系統(tǒng)中加入了線上直播教學(xué)功能,學(xué)生可以實(shí)時(shí)獲取教師授課信息,教師進(jìn)行課件演示、軟件實(shí)踐教學(xué)等。用戶使用終端設(shè)備時(shí),通過(guò)輸入用戶名和密碼等信息接入到虛擬主機(jī)上的個(gè)人桌面,或者直接輸入房間號(hào)和密碼進(jìn)入線上直播間。這樣的云上拓展方式,激發(fā)了學(xué)生的學(xué)習(xí)興趣,也有效地提高了數(shù)據(jù)安全性和資源利用率。

2 視頻編解碼算法的優(yōu)化(Optimization of video coding and decoding algorithm)

鑒于H.26x系列中的H.264視頻編解碼標(biāo)準(zhǔn)常常用于實(shí)時(shí)流媒體視頻直播系統(tǒng),所以在云桌面系統(tǒng)的線上直播模塊中采用H.264視頻編解碼標(biāo)準(zhǔn)對(duì)推流端的音視頻原始數(shù)據(jù)進(jìn)行編碼,收流端再將數(shù)據(jù)解碼并通過(guò)設(shè)備進(jìn)行播放。

本文通過(guò)優(yōu)化x264編碼器以改進(jìn)FFmpeg框架的功能設(shè)置,以此減少直播中推送流和接收流的延遲。由于本文設(shè)計(jì)的直播需求為實(shí)時(shí)編碼,所以使用了Main Profile的壓縮檔次。然后研究了各種因素對(duì)系統(tǒng)性能的影響。進(jìn)行優(yōu)化研究的測(cè)試序列和平臺(tái)環(huán)境如表1所示。

表1 測(cè)試環(huán)境Tab.1 The test environment

2.1 量化步長(zhǎng)研究

在量化過(guò)程中實(shí)際用于計(jì)算的參數(shù)是Qstep量化步長(zhǎng),其范圍為0-51。該數(shù)字越小,圖像質(zhì)量越好。通常是在保證可接受視頻質(zhì)量的前提下選擇一個(gè)最大的值,如果輸出視頻質(zhì)量很好,那就嘗試一個(gè)更大的值,如果看起來(lái)很差,那就嘗試一個(gè)小點(diǎn)的值。為了找到一個(gè)更適用于直播實(shí)時(shí)編碼的Qstep值,本文利用命令行預(yù)先設(shè)置編碼器的量化步長(zhǎng),以下對(duì)Qstep設(shè)置不同的值,通過(guò)峰值信噪比(Peak Signal to Noise Ratio,PSNR)和碼率等指標(biāo)來(lái)查看對(duì)系統(tǒng)性能的影響,測(cè)試結(jié)果見(jiàn)表2。

表2 Qstep測(cè)試結(jié)果Tab.2 Qstep test results

圖1中的六張圖像分別對(duì)應(yīng)Qstep設(shè)置不同參數(shù)值時(shí)的編碼圖像。PSNR值和視頻編碼的碼率可以從一定程度上反映畫(huà)質(zhì)的好壞,由表1統(tǒng)計(jì)出的數(shù)據(jù)可以得出,對(duì)于此視頻序列,隨著Qstep的增大PSNR值逐步減小,碼率相應(yīng)降低,但編碼速度有相應(yīng)提升。但是當(dāng)取值在30以上時(shí),視頻的碼率下降得很快,這表明畫(huà)面質(zhì)量下降很明顯。在保證視頻質(zhì)量的前提下,可以通過(guò)設(shè)置適當(dāng)?shù)腝step值提升編碼速度,經(jīng)過(guò)多次測(cè)試分析,本項(xiàng)目將量化步長(zhǎng)Qstep值設(shè)為27。

圖1 測(cè)試Qstep時(shí)編碼圖像Fig.1 Encode images when testing Qstep

2.2 參考幀數(shù)目研究

H.264標(biāo)準(zhǔn)為幀間預(yù)測(cè)創(chuàng)建了兩個(gè)參考幀隊(duì)列,用來(lái)保存用于預(yù)測(cè)的解碼幀。當(dāng)使用較少的參考幀時(shí),所需的計(jì)算量也較少,但預(yù)測(cè)精度會(huì)降低,影響畫(huà)質(zhì)和碼率。在x264編碼器中對(duì)于它的測(cè)試結(jié)果,如表3所示。

表3 參考幀數(shù)目測(cè)試結(jié)果Tab.3 Test results with reference to frame number

由表3中的數(shù)據(jù)可以看出,當(dāng)參考幀的數(shù)目逐漸增加時(shí),碼率會(huì)下降,但是當(dāng)參考幀數(shù)目超過(guò)一定值時(shí),碼率下降的效果就不明顯了,同時(shí)對(duì)PSNR的影響幾乎沒(méi)有。結(jié)合這一測(cè)試的結(jié)果,我們將本項(xiàng)目中的參考幀數(shù)目設(shè)為4。

2.3 運(yùn)動(dòng)估計(jì)算法

運(yùn)動(dòng)估計(jì)是x264編碼器編碼過(guò)程的一個(gè)重要部分,x264編碼器可以控制多種搜索算法。

不同的搜索策略將對(duì)運(yùn)動(dòng)估計(jì)的計(jì)算規(guī)模產(chǎn)生影響,進(jìn)而對(duì)視頻壓縮精度和處理速度產(chǎn)生影響。菱形搜索、正六邊形搜索、可變半徑六邊形搜索和全局搜索是x264中可以指定的四個(gè)參數(shù)值,可以在x264中進(jìn)行配置。由表4的數(shù)據(jù)可以看出,對(duì)于此測(cè)試序列,使用全局搜索算法時(shí)運(yùn)動(dòng)估計(jì)的計(jì)算量最大,采用菱形搜索時(shí)編碼速度最快。因此在設(shè)計(jì)本項(xiàng)目時(shí)使用菱形搜索算法,以獲得較快的編碼速度和較高的幀率。

表4 搜索算法測(cè)試結(jié)果Tab.4 Test results of search algorithm

從前面的測(cè)試中可以看出,量化步長(zhǎng)、參考幀的數(shù)目和運(yùn)動(dòng)搜索算法都對(duì)編碼性能有很大影響。PSNR在很大程度上受量化步長(zhǎng)的影響。本測(cè)試的主要目標(biāo)是在保持視頻質(zhì)量的同時(shí)提高編碼速度和碼率。通過(guò)考慮各種因素對(duì)系統(tǒng)性能的影響,并根據(jù)本測(cè)試的標(biāo)準(zhǔn)適當(dāng)?shù)卣{(diào)整參數(shù),可以提高視頻編碼性能。

3 云桌面系統(tǒng)搭建(Setting up the cloud desktop system)

3.1 Proxmox虛擬化服務(wù)器部署

本文將Proxmox公司開(kāi)發(fā)的虛擬化平臺(tái)作為云桌面系統(tǒng)服務(wù)器的虛擬化框架。Proxmox VE是一個(gè)運(yùn)行虛擬機(jī)和容器的平臺(tái)環(huán)境,它的內(nèi)核基于Debian Linux系統(tǒng)。安裝Proxmox VE的物理主機(jī)就具備了硬件虛擬化的能力,它允許多客戶操作系統(tǒng)共享相同的硬件,Proxmox VE就像是在物理硬件上安裝的一套虛擬機(jī)管理程序,然后在此基礎(chǔ)上安裝各種虛擬機(jī)客體供用戶使用。該虛擬化平臺(tái)管理著主機(jī)的所有物理資源,如CPU、內(nèi)存、網(wǎng)絡(luò)和存儲(chǔ)。

Proxmox直接安裝在服務(wù)器裸機(jī)上,安裝版本是PVE 5.11.22-8。系統(tǒng)的部署需在至少一臺(tái)物理服務(wù)器上安裝Proxmox系統(tǒng)。本文先采用一臺(tái)物理服務(wù)器安裝Proxmox,安裝完成后,管理員可以通過(guò)這個(gè)終端連接并管理集群上開(kāi)辟的所有虛擬機(jī)和容器資源。Proxmox安裝完成后,當(dāng)QEMU進(jìn)程啟動(dòng)時(shí),就會(huì)調(diào)用獨(dú)立計(jì)算環(huán)境簡(jiǎn)單協(xié)議(Simple Protocol for Independent Computing Environment,SPICE)中的Server動(dòng)態(tài)鏈接庫(kù),利用SPICE協(xié)議和SPICE Client進(jìn)行連接。

3.2 流媒體服務(wù)器搭建

在進(jìn)行線上直播的過(guò)程中,通常是一個(gè)老師面對(duì)多個(gè)學(xué)生進(jìn)行授課。在這種情況下,流媒體服務(wù)器應(yīng)保持足夠的數(shù)據(jù)發(fā)送處理能力。由于Nginx在面對(duì)高并發(fā)性時(shí)能夠保持良好的數(shù)據(jù)轉(zhuǎn)發(fā)能力,且支持添加第三方實(shí)時(shí)消息傳輸協(xié)議(Real Time Messaging Protocol,RTMP)模塊、內(nèi)存利用率低、功能豐富可擴(kuò)展,因此本項(xiàng)目選擇將Nginx部署在由Proxmox創(chuàng)建的Ubuntu 16.04上,作為云桌面系統(tǒng)線上直播功能的流媒體服務(wù)器。

3.3 流媒體推流鑒權(quán)實(shí)現(xiàn)

在設(shè)計(jì)線上直播教學(xué)模塊的過(guò)程中,還使用了流媒體推流鑒權(quán)技術(shù)。這樣可以有效防止流氓用戶向流媒體服務(wù)器推送危險(xiǎn)信息或不良材料。Nginx的on publish命令主要負(fù)責(zé)推送流認(rèn)證。在系統(tǒng)開(kāi)始運(yùn)行時(shí),推送流向服務(wù)器請(qǐng)求并接收數(shù)據(jù)。服務(wù)器在收到推送流的請(qǐng)求后,將推送流攜帶的識(shí)別信息發(fā)送到on publish命令給定的地址。這個(gè)地址指向一個(gè)包含信息處理腳本的文件,該文件的主要目的是驗(yàn)證用戶的個(gè)人信息。Nginx服務(wù)器將提供一個(gè)狀態(tài)碼作為驗(yàn)證結(jié)果,其中2xx表示驗(yàn)證成功,并使信息流能夠推送數(shù)據(jù)到服務(wù)器上。地址重定向,通常被稱為3xx,是將流端推送的信息發(fā)送到其他地址的過(guò)程。如果收到任何其他狀態(tài)代碼,流媒體端就會(huì)拒絕傳送流媒體數(shù)據(jù)。

4 云桌面系統(tǒng)測(cè)試(Cloud desktop system construction)

在完成云桌面相關(guān)的設(shè)計(jì)和系統(tǒng)搭建后,針對(duì)智慧云桌面的桌面連接功能和線上直播功能設(shè)計(jì)了相關(guān)的測(cè)試和性能分析。在不斷測(cè)試的過(guò)程中,發(fā)現(xiàn)并解決在實(shí)現(xiàn)和應(yīng)用上的不完善之處,系統(tǒng)內(nèi)部的一些參數(shù)和變量在多次測(cè)試的基礎(chǔ)上不斷進(jìn)行修改和完善。

4.1 系統(tǒng)基本功能和穩(wěn)定性測(cè)試

本節(jié)主要對(duì)智慧云桌面的基本功能進(jìn)行測(cè)試,檢驗(yàn)系統(tǒng)能否正常連接,能否滿足使用的正常要求。測(cè)試使用的系統(tǒng)硬件配置如表5所示。

表5 設(shè)備配置Tab.5 Device configuration

鏡像類型為Windows 10專業(yè)版,對(duì)應(yīng)的端口號(hào)為61009。打開(kāi)客戶端,輸入對(duì)應(yīng)的地址192.168.199.61:61010,輸入對(duì)應(yīng)的用戶賬戶及密碼,即可成功登錄云桌面,如圖2所示。

圖2 Windows 10系統(tǒng)云桌面運(yùn)行Fig.2 Windows 10 cloud desktop running

為了確保智慧云桌面系統(tǒng)可以在承擔(dān)一定業(yè)務(wù)壓力的條件下仍正常工作,對(duì)系統(tǒng)進(jìn)行了穩(wěn)定性測(cè)試,在主服務(wù)器上開(kāi)啟一定數(shù)量的云桌面資源用來(lái)模擬業(yè)務(wù)壓力,對(duì)系統(tǒng)穩(wěn)定性進(jìn)行測(cè)試。測(cè)試方法為在Proxmox服務(wù)器上,同時(shí)開(kāi)啟Windows 10、Windows 7、Ubuntu、CentOS云桌面,連續(xù)工作12 小時(shí)。

圖3為連續(xù)運(yùn)行的系統(tǒng)輸入/輸出(Input/Output,I/O)延遲情況,這個(gè)指標(biāo)的好壞影響著用戶利用客戶端和主服務(wù)器進(jìn)行通信時(shí)的流暢程度。

圖3 系統(tǒng)I/O延遲Fig.3 System I/O delay

從圖3可以看出,智慧云桌面系統(tǒng)在用戶開(kāi)啟云桌面資源的時(shí)候,系統(tǒng)I/O延遲能夠穩(wěn)定在1 秒以內(nèi),可以滿足用戶在云桌面資源上正常使用的需求。

4.2 線上直播模塊延遲測(cè)試

對(duì)于智慧云桌面系統(tǒng)的線上直播模塊延遲測(cè)試,除表5列出的設(shè)備之外,外加一臺(tái)Windows系統(tǒng)設(shè)備,該設(shè)備是老師用來(lái)進(jìn)行直播授課的設(shè)備,作為直播系統(tǒng)的推流端,學(xué)生自己使用的電腦作為收流端,用來(lái)模擬線上直播的情景。一般越小的視頻延遲,用戶的體驗(yàn)程度也越好。為了檢測(cè)視頻播放時(shí)的延遲時(shí)間,對(duì)線上直播模塊進(jìn)行了延遲測(cè)試,如圖4所示。

圖4 視頻播放延時(shí)Fig.4 Video playback delay

由圖4可以看出,選取60 秒的直播視頻進(jìn)行測(cè)試,獲取從推流端到收流端的流數(shù)據(jù)延遲,最大延遲92 毫秒,視頻播放的延遲均在1 秒以內(nèi),可以滿足用戶在云桌面系統(tǒng)上正常使用直播功能的需求。

5 結(jié)論(Conclusion)

本文設(shè)計(jì)了一種基于服務(wù)器虛擬化技術(shù)和FFmpeg音視頻處理技術(shù)相結(jié)合的智慧云桌面系統(tǒng)。介紹了實(shí)現(xiàn)云桌面需要用到的虛擬化平臺(tái)Proxmox及相關(guān)的虛擬化技術(shù),重點(diǎn)解釋了有關(guān)視頻編解碼的優(yōu)化。本系統(tǒng)在流媒體數(shù)據(jù)編解碼、線上直播、網(wǎng)絡(luò)延遲等方面取得了一些創(chuàng)新。測(cè)試結(jié)果證明,智慧云桌面系統(tǒng)在資源多元化分配方面較傳統(tǒng)桌面有了很大的性能提升,其線上直播教學(xué)模塊的播放延遲能夠控制在100毫秒以下,可以滿足用戶在使用直播功能時(shí)的需求,具有一定的應(yīng)用前景。

猜你喜歡
碼率桌面虛擬化
桌面舞龍
基于APP在線控制雙擠出頭FDM桌面3D打印機(jī)的研制
桌面云技術(shù)在鐵路行業(yè)中的應(yīng)用
基于OpenStack虛擬化網(wǎng)絡(luò)管理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
基于狀態(tài)機(jī)的視頻碼率自適應(yīng)算法
對(duì)基于Docker的虛擬化技術(shù)的幾點(diǎn)探討
虛擬化技術(shù)在計(jì)算機(jī)技術(shù)創(chuàng)造中的應(yīng)用
基于場(chǎng)景突變的碼率控制算法
存儲(chǔ)虛擬化還有優(yōu)勢(shì)嗎?
X264多線程下碼率控制算法的優(yōu)化
洞头县| 五常市| 白玉县| 星座| 无锡市| 武穴市| 庐江县| 洛隆县| 景谷| 霍林郭勒市| 靖西县| 武冈市| 招远市| 崇左市| 韩城市| 天镇县| 紫阳县| 龙里县| 宕昌县| 宜章县| 锡林郭勒盟| 克什克腾旗| 石林| 广东省| 台前县| 尉犁县| 吉林省| 都江堰市| 开化县| 宁安市| 张家界市| 诸暨市| 博白县| 洛南县| 叶城县| 晋中市| 淄博市| 奉化市| 奇台县| 丹寨县| 宜黄县|