專利名稱:一種基于虛擬化主機的廣告展示方法與系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及廣告投放技術(shù)領(lǐng)域與計算機虛擬化平臺技術(shù)領(lǐng)域,尤其涉及一種基于虛擬化主機的廣告展示方法與系統(tǒng)。
背景技術(shù):
廣告展示已經(jīng)成為當(dāng)今互聯(lián)網(wǎng)的ー項重要增值服務(wù)。各種投放廣告方式被廣泛地應(yīng)用于視頻網(wǎng)站,如:土豆、優(yōu)酷等。這些廣告的投放手段分為內(nèi)容前后放置和播放過程疊カロ。疊加廣告即將廣告直接放置在當(dāng)前信息內(nèi)容區(qū)域?qū)又希屖褂谜咴谟^看播放內(nèi)容吋,必須看到廣告。在移動應(yīng)用中投放廣告,橫幅式廣告以及屏幕彈出廣告也得到了廣泛地應(yīng)用。對于這些投放方法,均存在以下問題。一,以視頻網(wǎng)站廣告為例,這些廣告只能在瀏覽器觀看該網(wǎng)頁的時候被看到。ニ,廣告的投放依賴于顯示設(shè)備分辨率,操作系統(tǒng)版本,瀏覽器版本等條件。三,由于廣告的彈出會造成用戶體驗的下降,使得大量的反廣告軟件、插件的出現(xiàn)從而阻止廣告的正常投放。同時,隨著硬件虛擬化技術(shù)的成熟以及云平臺的普及,虛擬主機資源將變得越來越廉價,應(yīng)用也將越來越廣泛,可以通過引入廣告投放的方式來為虛擬平臺運轉(zhuǎn)提供收入。因此,需要研究ー種方法,能夠克服以上三種問題,提出ー種完全不同于現(xiàn)有的廣告投放方法,向用戶發(fā)送廣告信息。
發(fā)明內(nèi)容
“ー種基于虛擬化主機的廣告展示方法與系統(tǒng)”是在虛擬化平臺研究與實踐過程中針對現(xiàn)有技術(shù)問題基礎(chǔ)上所提出的發(fā)明。本發(fā)明的ー個目標(biāo)是提供一個基于虛擬化平臺的廣告投放方法,它可以根據(jù)用戶配置,向虛擬主機使用者提供相應(yīng)的廣告信息。所投放的廣告圖像與文字將直接位于顯卡顯存當(dāng)中,不依賴于瀏覽器,操作系統(tǒng),顯示器分辨率。并且不需要在投放機中加裝任何代理程序。為了實現(xiàn)上述目標(biāo),本發(fā)明提供了一種基于虛擬化平臺的廣告展示系統(tǒng),該系統(tǒng)運行于支持虛擬化硬件設(shè)備之上,能與遠程或本地計算機網(wǎng)絡(luò)相連,能夠投遞廣告至運行于該系統(tǒng)之上的賓客操作系統(tǒng)之中。該系統(tǒng)包含了:ー個配置端,用于管理廣告投放器,可設(shè)置廣告內(nèi)容、持續(xù)時間和廣告投放目標(biāo)賓客操作系統(tǒng)(GUEST OS);多個虛擬機監(jiān)視器層(VMM)廣告投放器,即輕量級的虛擬機監(jiān)視器(Hypervisor),用于在配置端發(fā)出顯示廣告指令后繪制和顯示賓客操作系統(tǒng)的廣告圖像;多個賓客操作系統(tǒng)(GUEST OS),即用戶使用的可以接收顯示廣告圖像的虛擬主機。
從下面結(jié)合附圖的詳細描述中,將會更清楚地理解本發(fā)明的上述和其他目標(biāo)、優(yōu)點和特性,其中。圖1是展示本發(fā)明的一個虛擬機監(jiān)視器層的廣告投放器和ー個管理端通信網(wǎng)絡(luò)連接的圖。圖2是ー個展示本發(fā)明的虛擬機監(jiān)視器層廣告投放器架構(gòu)層次圖。圖3是ー個展示本發(fā)明廣告管理端的組成結(jié)構(gòu)的方框圖。圖4是ー個展示本發(fā)明虛擬機監(jiān)視層廣告投放器的組成結(jié)構(gòu)的方框圖。圖5是ー個說明了本發(fā)明提供的廣告展示方式的示意圖。圖6是ー個說明了根據(jù)本發(fā)明的廣告提供方法的流程圖。
具體實施例方式在本發(fā)明中披露的廣告消息具有原始圖像的格式,或者為點陣字符、包括文本,靜態(tài)圖像、動態(tài)圖像中的任意ー種或他們的組合。下面 將參考附圖對本發(fā)明的一個實施例程進行詳細描述。圖1是展示本發(fā)明在一個基于虛擬化主機的廣告投放系統(tǒng)和ー個管理端通信網(wǎng)絡(luò)連接的圖。廣告管理端從廣告數(shù)據(jù)庫中存儲取出廣告信息,通過網(wǎng)絡(luò)連接發(fā)送至虛擬機監(jiān)視器層的廣告投放器,并支持用戶對發(fā)送的廣告進行條件配置,能夠發(fā)送到指定虛擬機監(jiān)視器層的廣告投放器上的指定虛擬主機上。在此情況下,虛擬機監(jiān)視器層廣告投放器將接收到的廣告圖像以及配置信息存儲于位于虛擬機監(jiān)視器層廣告投放器中的存儲單元當(dāng)中。每條廣告信息具有獨立的配置管理信息,其中有廣告內(nèi)容,持續(xù)時間,相對于屏幕的顯示位置,投遞后是否刪除信息。虛擬監(jiān)視器層廣告投放器將根據(jù)配置顯示廣告。圖1中所示的廣告管理端可以連接到多個位于局域網(wǎng)中的虛擬機監(jiān)視器層廣告投放器,也可以通過VPN或安全網(wǎng)絡(luò)連接連接到廣域網(wǎng)部署的虛擬機層廣告投放器中。虛擬機監(jiān)視器層廣告投放器,可以是帶有操作系統(tǒng)功能的獨立的虛擬機監(jiān)視器(VMM),也可以是開源虛擬機監(jiān)視器的一個插件功能,同時也可以為非開源虛擬機監(jiān)視器系統(tǒng)的ー個功倉^:。圖2是ー個描述本發(fā)明系統(tǒng)的整體架構(gòu)圖。如圖2所示,虛擬機監(jiān)視器層廣告投放器,安裝于系統(tǒng)硬件之上,位于操作系統(tǒng)之下。一個虛擬機監(jiān)視器層廣告投放器之上能夠同時運行多個操作系統(tǒng),操作系統(tǒng)不僅限于主流的Windows,也可以是Linux, MacOS以及Android操作系統(tǒng)。運行于其之上的操作系統(tǒng),用戶可以通過VNC,RDP等遠程連接進行接入,也可以直接操作安裝有虛擬機監(jiān)視器層廣告投放器的物理主機。圖3是ー個詳細示出了根據(jù)本發(fā)明的用于廣告配置管理端的系統(tǒng)結(jié)構(gòu)的方框圖。如圖3中所示,廣告管理端包括了一個網(wǎng)絡(luò)通信単元,一個廣告展示條件設(shè)置單兀和ー個廣告數(shù)據(jù)庫。網(wǎng)絡(luò)通信単元負責(zé)建立與遠端虛擬機監(jiān)視器層廣告投放器的連接。連接通信支持安全加密方式,并且能夠同時支持局域網(wǎng)與廣域網(wǎng)的點到點連接。網(wǎng)絡(luò)通信単元不依賴操作系統(tǒng),由運行于虛擬機監(jiān)視器層代碼通過對網(wǎng)絡(luò)設(shè)備直接進行I/O操作完成數(shù)據(jù)發(fā)送接收。網(wǎng)絡(luò)通信単元實現(xiàn)了私有的TCP/IP協(xié)議棧,能夠與廣域網(wǎng)其他計算機進行通信。
廣告展示條件設(shè)置單元從廣告數(shù)據(jù)庫中讀取所有廣告信息,其中附帯有廣告的配置信息以及定向投遞目標(biāo)的信息。通過用戶設(shè)置,廣告展示條件設(shè)置單元能夠更改所有配置信息,并將信息保存入廣告數(shù)據(jù)庫中。廣告發(fā)送単元在廣告展示條件設(shè)置單元完成設(shè)置以后,從廣告數(shù)據(jù)庫中獲取當(dāng)前條件下應(yīng)發(fā)送的廣告信息,并將這些廣告信息進行編碼壓縮處理,如果配置中需要加密,則對廣告內(nèi)容進行加密處理,接下來調(diào)用網(wǎng)絡(luò)通信単元將編碼或加密后的廣告信息發(fā)送到與廣告管理端已經(jīng)建立連接的虛擬機監(jiān)視器層廣告投放器。圖4示出了本發(fā)明用于投放廣告的虛擬機監(jiān)視器層廣告投放器的結(jié)構(gòu)的方框圖。如圖4中所示,虛擬機監(jiān)視器層廣告投放器包括了一個網(wǎng)絡(luò)通信単元,一個廣告解析単元,一個廣告顯示單元和一個存儲単元。網(wǎng)絡(luò)通信単元負責(zé)與廣告管理端建立連接。連接通信支持安全加密方式,能夠支持局域網(wǎng)與廣域網(wǎng)的點到點連接。該網(wǎng)絡(luò)通信単元獨立實現(xiàn)了 TCP/IP協(xié)議棧,支持由廣告管理端發(fā)起的連接,也支持由該廣告投放器通過IP或域名反向連接到廣告管理端建立的連接。廣告解析單元從與廣告管理端建立的通信信道獲取編碼或加密的廣告數(shù)據(jù),然后通過解密解碼過程,將原始廣告數(shù)據(jù)還原。之后,廣告解析単元將廣告和其相應(yīng)的配置信息置于存儲器當(dāng)中。存儲器単元用于存儲廣告信息,存儲器分為磁盤存儲與內(nèi)存存儲。根據(jù)廣告條目的配置,依據(jù)廣告顯示的頻率來選擇存儲位置。顯示單元,為該發(fā)明主要功能部件。首先,顯示單元判斷當(dāng)前狀態(tài)是否需要顯示廣告,然后從存儲中按照預(yù)先配置的廣告顯示列表中選取第一條廣告。首先獲取硬件和PCI總線的配置,找到用于顯卡使用的內(nèi)存地址區(qū)域與寄存器區(qū)段。當(dāng)?shù)玫斤@存(幀緩沖內(nèi)存,VRAM)區(qū)域以后,監(jiān)控該區(qū)域的I/O (輸入輸出)操作,判斷為幀緩沖區(qū)域,則直接將廣告替換寫在指定的VRAM中。該過程僅依賴于內(nèi)存操作,與操作系統(tǒng)本身無關(guān)。通過以上步驟能夠得到一個疊加于屏幕之上的廣告圖像,并且操作系統(tǒng)本身無法通過重繪或關(guān)閉手段終止顯示。顯示單元通過系統(tǒng)的VMEXIT (虛擬機退出事件)次數(shù),與CPU硬件RDTSC計數(shù)完成定時判斷。展示時間達到以后,顯示單元停止寫入VRAM,廣告在操作系統(tǒng)再次刷新VRAM時消失。圖5是ー個示出了系統(tǒng)展示方式的圖。展示廣告按照設(shè)置可以位于屏幕任意位置,并且廣告位于操作系統(tǒng)顯示界面之上。廣告展示方式可以為帶底色圖像、透明圖像、動態(tài)圖像。圖6是ー個說明了更具本發(fā)明提供的廣告展示方法的流程圖。在步驟1,廣告管理端初始化網(wǎng)絡(luò),方法有兩種:一是用戶指定虛擬機監(jiān)視器層廣告投放器網(wǎng)絡(luò)位置發(fā)起連接;ニ是等待虛擬機監(jiān)視器層廣告投放器回連至廣告管理端。此后,廣告管理端從用戶處獲得待發(fā)送的廣告內(nèi)容及配置信息,通過廣告展示條件設(shè)置單元配置并保存信息至廣告數(shù)據(jù)庫。此后,管理端按照立即發(fā)送和定時發(fā)送分類,將立即與即將發(fā)出的廣告進行編碼,如有需要,之后則進行加密處理。在步驟2,廣告發(fā)送単元通過已經(jīng)建立連接的網(wǎng)絡(luò)通信單元將當(dāng)前廣告信息發(fā)送至虛擬機監(jiān)視器層廣告投放器。
在步驟3,虛擬機監(jiān)視器層廣告投放器通過網(wǎng)絡(luò)通信単元,獲得來自廣告管理端的廣告數(shù)據(jù)以及廣告配置數(shù)據(jù)。根據(jù)配置數(shù)據(jù),將接收到的數(shù)據(jù)交由廣告解析単元。廣告解析單元經(jīng)過對收到數(shù)據(jù)進行解密(如果設(shè)置)后再進行解碼操作,得到原始廣告圖像和配置信息數(shù)據(jù)。廣告解析單元將數(shù)據(jù)存入位于虛擬機監(jiān)視器層廣告投放器的存儲單元中。在步驟4,顯示單元通過讀取配置信息,選擇將要顯示的廣告圖像。顯示單元將通過讀取配置信息,選取運行于其上的將要展示廣告的操作系統(tǒng)信息。此后,顯示單元將在系統(tǒng)I/O的觸發(fā)條件下,將該操作系統(tǒng)的顯存地址空間VRAM直接寫入廣告圖像的位圖像素。同時,顯示單元設(shè)置一個定時器,當(dāng)定時器達到配置時間間隔以后,取消對該操作系統(tǒng)顯存區(qū)域的更新寫入操作。由于從虛擬機監(jiān)視器層(VMM)更新顯存VRAM的方式可以有多種,所以如權(quán)利要求5所述,不僅限于在I/O端ロ捕獲并修改寫入操作的方式,也包括Vt-d技木、IOMMU技術(shù)支持的直接映射內(nèi)存進行快速讀寫的實現(xiàn)方法。如上所述,該發(fā)明通過直接在虛擬機監(jiān)視器層對運行于其上的虛擬操作系統(tǒng)進行廣告投放,使其優(yōu)點在于,可以不同于現(xiàn)有的互聯(lián)網(wǎng)廣告形式,不依賴于操作系統(tǒng),不依賴于瀏覽器,并且對于廣告受眾,無法通過關(guān)閉操作或者加裝屏蔽插件或破解軟件屏蔽廣告服務(wù)器IP地址等手段干擾廣告投放,因此能夠大大提高廣告效果。盡管出于說明的目的描述了本發(fā)明的優(yōu)選實施例子,本領(lǐng)域人員將理解,在不脫離如附屬權(quán)利要求所披露的本發(fā)明的范圍和精神的情況下,各種修改、増加和替換都是可能的。
權(quán)利要求
1.一種基于虛擬化主機的廣告展示方法,其特征在于,所述方法包括如下步驟: A、虛擬機監(jiān)視器層廣告投放器連接至廣告管理端; B、廣告管理端配置廣告展示方式,存儲于廣告數(shù)據(jù)庫中; C、根據(jù)廣告管理端需要,投放廣告,虛擬機監(jiān)視器層廣告投放器接收并解析將要展示的廣告內(nèi)容,并存儲于存儲器中; D、虛擬機監(jiān)視器層廣告投放器從存儲器選取要展示廣告內(nèi)容; E、虛擬機監(jiān)視器層廣告投放器向虛擬機顯示設(shè)備投放廣告。
2.根據(jù)權(quán)利要求1所述的ー種基于虛擬化主機的廣告展示方法,其特征在于,所述的步驟A進ー步包括如下: Al、通過網(wǎng)絡(luò)通信単元不依賴操作系統(tǒng)通信棧,獨立完成通信連接; A2、通信通信単元能夠支持正向連接與反向連接,當(dāng)配置連接方式為正向連接吋,網(wǎng)絡(luò)通信單元監(jiān)聽設(shè)定的IP地址的網(wǎng)絡(luò)端ロ等待管理端接入;當(dāng)配置為反向連接時,網(wǎng)絡(luò)通信單元將主動發(fā)起向管理端地址的連接; A3、廣告管理端可運行于本地局域網(wǎng)中的主機之上,廣告管理端也可運行于廣域網(wǎng)中的主機上。
3.根據(jù)權(quán)利要求1所述的ー種基于虛擬化主機的廣告展示方法,其特征在于,所述的步驟B進ー步包括如下: B1、廣告管理端通過 Al中建立的連接,能夠加密傳送廣告及配置信息至虛擬機監(jiān)視器層廣告投放器; B2、廣告管理端將原始廣告圖像或動畫,進行編碼壓縮,如果有設(shè)置要求,則完成編碼壓縮后,進行加密操作,并將處理結(jié)果置于廣告數(shù)據(jù)庫中。
4.根據(jù)權(quán)利要求1所述的ー種基于虛擬化主機的廣告展示方法,其特征在于,所述的步驟D進ー步包括如下: 虛擬機監(jiān)視器層廣告投放器從存儲器取得解析來自步驟C中的廣告后, D1、虛擬機監(jiān)視器層廣告投放器按照配置的顯示方式中的顯示時間長短,將廣告進行計時顯示; D2、虛擬機監(jiān)視器層廣告投放器按照配置的顯示方式中的顯示坐標(biāo),即顯示相對于屏幕位置,將廣告定點顯示; D3、虛擬機監(jiān)視器層廣告投放器按照配置的顯示方式中的顯示類型,將廣告予按照動畫或者靜態(tài)圖片進行顯示。
5.根據(jù)權(quán)利要求1所述的ー種基于虛擬化主機的廣告展示方法,其特征在于,步驟E中的投放實現(xiàn)方式,所述的步驟包括如下: El虛擬機監(jiān)視器層廣告投放器的顯示單元獲取硬件和PCI總線的配置,并找到虛擬機用于顯示使用的顯存地址區(qū)域; E2當(dāng)?shù)玫斤@存地址區(qū)域后,監(jiān)控該區(qū)域的寫入操作,若判斷為應(yīng)覆蓋的幀緩沖區(qū)域,則使用廣告圖像數(shù)據(jù)替換該部分內(nèi)存區(qū)域內(nèi)容; E3顯示單元設(shè)置ー個定時器,當(dāng)定時器達到配置時間間隔以后,取消對該操作系統(tǒng)顯存區(qū)域的更新寫入操作,完成廣告顯示過程。
6.根據(jù)權(quán)利要求4所述的ー種基于虛擬化主機的廣告展示方法,其特征在于,步驟E2所述替換內(nèi)存區(qū)域內(nèi)容具體是指以下情況: 顯示單元在虛擬機監(jiān)視器層捕獲運行于其上層的操作系統(tǒng)內(nèi)存I/o操作,在操作系統(tǒng)寫入步驟B所配置的區(qū)域內(nèi)的顯存內(nèi)容吋,按照顯存在屏幕上的對應(yīng)關(guān)系,修改配置的顯存地址內(nèi)容為廣告圖像;更新顯存VRAM的方式可以有多種,所以實現(xiàn)不僅限于在I/O端ロ捕獲并修改寫入操作的方式,也包括捕獲Vt-d技術(shù)、IOMMU技術(shù)所支持的直接映射快速讀寫方法。
7.根據(jù)權(quán)利要求4所述的ー種基于虛擬化主機的廣告展示方法,其特征在干,步驟E3所述設(shè)置定時器具體是指以下步驟: 顯示單元通過系統(tǒng)的VMEXIT計數(shù),結(jié)合CPU硬件RDTSC計數(shù)完成定時判斷,展示時間達到步驟B中配置以后,顯示單元停止替換步驟E2所監(jiān)控顯存區(qū)域的顯存寫入內(nèi)容。
8.一種基于虛擬化主機的廣告展不系統(tǒng),其特征在于,所述的系統(tǒng)包括: F、廣告管理端 G、虛擬機監(jiān)視器層廣告投放器 其特征在于,所述的系統(tǒng)還包括 Gl位于虛擬機監(jiān)視器層的網(wǎng)絡(luò)通信単元,用于實現(xiàn)虛擬機層廣告投放器接入網(wǎng)絡(luò)從廣告管理端獲取廣告配置信息; G2位于虛擬機監(jiān)視器層的存儲器,用于保存該次啟動后接收到的廣告信息; G3位于虛擬機監(jiān)視器層的廣告解析単元,用于實現(xiàn)安全的加密廣告內(nèi)容以及可指定時間指定位置的廣告展示的功能; G4位于虛擬機監(jiān)視器層的顯示単元,用于在虛擬化主機中顯示廣告; Fl位于廣告管理端的網(wǎng)絡(luò)通信単元,用于連接虛擬機監(jiān)視器層廣告投放器; F2位于廣告管理端的廣告數(shù)據(jù)庫,用于存儲廣告內(nèi)容與配置信息; F3位于廣告管理端的廣告展示條件設(shè)置單元,用于給用戶提供配置管理的接ロ ; F4位于廣告管理端的廣告發(fā)送単元,用于編碼與加密投送至虛擬機監(jiān)視器層廣告投放器的廣告內(nèi)容。
9.一種基于虛擬化主機的廣告展示系統(tǒng),其特征在干,所述的G虛擬機監(jiān)視器層廣告投放器,運行于虛擬機 監(jiān)視器層(Virtual Machine Monitor),位于計算機硬件層之上,位于操作系統(tǒng)層之下。
全文摘要
本發(fā)明涉及廣告投放技術(shù)領(lǐng)域與計算機虛擬化平臺技術(shù)領(lǐng)域,旨在提供一種基于虛擬化主機的廣告展示方法與系統(tǒng)。該方法包括使用基于TCP/IP遠程連接的管理方式對繼續(xù)虛擬機監(jiān)視器層廣告投放器進行配置與廣告內(nèi)容分發(fā);實現(xiàn)虛擬機監(jiān)視層廣告投放器在加密的安全通信機制條件下接收廣告內(nèi)容;通過虛擬機監(jiān)視器層廣告投放器,監(jiān)控虛擬機圖像內(nèi)存操作,向虛擬機顯示內(nèi)存寫入廣告內(nèi)容;該系統(tǒng)能夠獨立運行于硬件之上,對操作系統(tǒng)無依賴,所展示的廣告無法通過其他程序屏蔽或非法關(guān)閉。本發(fā)明為虛擬化平臺環(huán)境下廣告投放與展示提供了新穎的解決方案。
文檔編號G06F9/455GK103092679SQ201310032449
公開日2013年5月8日 申請日期2013年1月29日 優(yōu)先權(quán)日2013年1月29日
發(fā)明者方勇, 左政 , 賈鵬 申請人:四川大學(xué)