張?chǎng)斡睢『螐V慶 趙笑馳 叢家爽
[摘要]在視頻點(diǎn)播系統(tǒng)中,緩存管理是極其重要的一個(gè)部分。但現(xiàn)有的緩存管理機(jī)制,存在消息發(fā)送量過(guò)大、緩存命中率低、分布均勻度不均勻等很多不足。通過(guò)現(xiàn)有的緩存機(jī)制的不足,使用預(yù)測(cè)緩存和靜態(tài)緩存技術(shù),提出一種消息發(fā)送量少、命中率高、分布均勻的新型緩存機(jī)制。通過(guò)仿真試驗(yàn)可以證明,該緩存機(jī)制能有效地提升系統(tǒng)整體性能,減低對(duì)服務(wù)器的壓力。
[關(guān)鍵詞]P2PVOD視頻點(diǎn)播緩存
中圖分類號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0710072-01
近年來(lái),隨著P2P技術(shù)的廣泛應(yīng)用,基于P2P的視頻點(diǎn)播軟件逐漸熱門(mén)起來(lái),引起了社會(huì)的廣泛關(guān)注。但是,現(xiàn)有的視頻點(diǎn)播系統(tǒng)由于緩沖區(qū)管理機(jī)制的不完善,仍然會(huì)出現(xiàn)播放視頻不連續(xù)等諸多問(wèn)題。所以,設(shè)計(jì)出一種合理的緩存機(jī)制就尤為重要了。
本文在研究現(xiàn)有的緩存技術(shù)的基礎(chǔ)上,采用靜態(tài)緩沖區(qū)技術(shù),由區(qū)域服務(wù)器指定該節(jié)點(diǎn)要緩存的數(shù)據(jù)塊,使數(shù)據(jù)分布更加均勻。在動(dòng)態(tài)緩存區(qū)中引入了預(yù)測(cè)機(jī)制,通過(guò)伙伴節(jié)點(diǎn)的播放位置,預(yù)測(cè)其伙伴節(jié)點(diǎn)所緩存的數(shù)據(jù)塊。從而避免了向伙伴節(jié)點(diǎn)查詢所帶來(lái)的消息通信次數(shù),降低了消息發(fā)送量。
一、緩沖區(qū)的組成
本文將緩沖區(qū)分為三部分。靜態(tài)緩沖區(qū)(Static-Cache):緩存內(nèi)容由區(qū)域服務(wù)器指定,在點(diǎn)播過(guò)程中固定上傳影片的指定數(shù)據(jù)塊。動(dòng)態(tài)緩沖區(qū)(Dynamic-Cache):為正常的下載、播放所使用的緩沖區(qū)。隨著視頻的播放,緩沖區(qū)的內(nèi)容動(dòng)態(tài)地發(fā)生改變。硬盤(pán)緩沖區(qū)(Hard-Cache):是內(nèi)存緩沖的擴(kuò)展,將觀看后的數(shù)據(jù)塊采用一定的置換策略,置換到硬盤(pán)區(qū)上。當(dāng)節(jié)點(diǎn)需要硬盤(pán)上的數(shù)據(jù)時(shí),可將硬盤(pán)上的數(shù)據(jù)調(diào)回到動(dòng)態(tài)緩沖區(qū)中。為了研究的方便,初始時(shí)設(shè)定每個(gè)節(jié)點(diǎn)緩存的SC和DC的大小相等,HC等于整個(gè)視頻影片的大小。
二、靜態(tài)緩沖區(qū)
每個(gè)Peer的靜態(tài)緩存區(qū)所緩存的數(shù)據(jù)是由所在的區(qū)域服務(wù)器指定。也由這個(gè)區(qū)域服務(wù)器統(tǒng)一管理。區(qū)域服務(wù)器上維護(hù)一個(gè)緩存狀態(tài)圖,用于維護(hù)每個(gè)Peer的SC中緩存的狀態(tài)。SC是固定不變的,只有節(jié)點(diǎn)加入和離開(kāi)時(shí),才更新?tīng)顟B(tài)圖。
(一)數(shù)據(jù)分配策略。在傳統(tǒng)的視頻點(diǎn)播系統(tǒng)中,因?yàn)橛捌狞c(diǎn)播率不同,當(dāng)系統(tǒng)運(yùn)行一段時(shí)間后,熱門(mén)影片的數(shù)據(jù)塊副本遠(yuǎn)高于冷門(mén)影片的數(shù)據(jù)塊副本。導(dǎo)致了冷熱數(shù)據(jù)塊分布的不均勻。所以,在新的緩沖機(jī)制中,考慮讓熱門(mén)影片小組里,有剩余緩存能力的節(jié)點(diǎn)緩存服務(wù)器負(fù)載較重的冷門(mén)影片數(shù)據(jù)。當(dāng)有新節(jié)點(diǎn)加入系統(tǒng)時(shí),區(qū)域服務(wù)器判斷這個(gè)節(jié)點(diǎn)是否有剩余緩存的能力并查看緩存狀態(tài)圖,如果新節(jié)點(diǎn)所點(diǎn)播的影片副本充足且節(jié)點(diǎn)有剩余緩存能力的話,區(qū)域服務(wù)器將挑選系統(tǒng)中副本較小的冷門(mén)影片的數(shù)據(jù)塊,拷貝在新Peer的SC上。
(二)數(shù)據(jù)查找策略。對(duì)于靜態(tài)緩沖區(qū),每個(gè)節(jié)點(diǎn)通過(guò)與伙伴節(jié)點(diǎn)進(jìn)行信息交互,獲得其伙伴節(jié)點(diǎn)的靜態(tài)緩沖區(qū)的數(shù)據(jù)信息。建立一個(gè)伙伴節(jié)點(diǎn)矩陣,用來(lái)描述伙伴節(jié)點(diǎn)的SC中有哪些數(shù)據(jù)塊。當(dāng)用戶進(jìn)行數(shù)據(jù)塊下載時(shí),首先通過(guò)這個(gè)矩陣查找伙伴節(jié)點(diǎn)在SC中所緩存的數(shù)據(jù)塊。
三、動(dòng)態(tài)緩沖區(qū)(基于預(yù)測(cè)的數(shù)據(jù)查找)
在傳統(tǒng)的緩存狀態(tài)傳遞方式中,需要近乎與實(shí)時(shí)的將本節(jié)點(diǎn)現(xiàn)有的緩存狀態(tài)發(fā)送給伙伴節(jié)點(diǎn)。這是因?yàn)?如果在發(fā)送消息后緩存的狀態(tài)發(fā)生改變的話,之前發(fā)送的狀態(tài)消息就失去了意義。所以消息的發(fā)送周期短。且發(fā)送的消息是該P(yáng)eer的完整緩存狀態(tài)。即發(fā)送的內(nèi)容較大。可見(jiàn),傳統(tǒng)的消息傳遞通信量是巨大的。
視頻點(diǎn)播是規(guī)律性很強(qiáng)的行為。在系統(tǒng)中,大部分人是點(diǎn)播后,從頭到尾欣賞的。即在大部分情況下,影片的播放過(guò)程是可以預(yù)測(cè)的。故本文在新緩存機(jī)制的動(dòng)態(tài)緩沖區(qū)中,引入預(yù)測(cè)機(jī)制。
Peer之間需要每隔周期T傳遞一次消息,這個(gè)信息就包括其該節(jié)點(diǎn)正在播放的狀態(tài)信息。Peer收到這個(gè)信息后,將其存放在伙伴節(jié)點(diǎn)矩陣中。其他Peer通過(guò)這個(gè)播放狀態(tài)信息可以預(yù)測(cè)這個(gè)Peer當(dāng)前的播放狀態(tài)。從而預(yù)測(cè)這個(gè)Peer當(dāng)前的緩存狀態(tài)。在動(dòng)態(tài)緩存區(qū)的數(shù)據(jù)塊查找中引入預(yù)測(cè)機(jī)制后,因發(fā)消息送周期長(zhǎng),消息內(nèi)容短,從而使節(jié)點(diǎn)間通信量大大減小。
Peer之間發(fā)送的播放狀態(tài)信息,即是一個(gè)加上時(shí)間戳的數(shù)據(jù)塊號(hào)。Peer通過(guò)這個(gè)時(shí)間戳和當(dāng)前的系統(tǒng)時(shí)間,就可以預(yù)測(cè)這個(gè)節(jié)點(diǎn)現(xiàn)在的播放狀態(tài),現(xiàn)在播放的數(shù)據(jù)塊號(hào)。從而預(yù)測(cè)他將會(huì)有哪些數(shù)據(jù)塊。預(yù)測(cè)之后,直接向這些節(jié)點(diǎn)要他自己所需的數(shù)據(jù)塊,減少了消息通信的時(shí)間。

四、實(shí)驗(yàn)
測(cè)試環(huán)境。測(cè)試節(jié)點(diǎn)的網(wǎng)絡(luò)帶寬為10-100Mbyte,每個(gè)節(jié)點(diǎn)內(nèi)存的最大數(shù)據(jù)緩存量設(shè)置為90M,磁盤(pán)緩存空間大小為200Mbyte。測(cè)試節(jié)目的文件格式是RM,流媒體源碼率為300K,節(jié)目數(shù)據(jù)為160M。
圖1給出了測(cè)試期間每分鐘區(qū)域服務(wù)器上的數(shù)據(jù)請(qǐng)求次數(shù)。可以觀察到,在初期,大量的Peer同時(shí)加入系統(tǒng),相對(duì)于傳統(tǒng)策略,新型策略由于SC的內(nèi)容由服務(wù)器指定,故初始階段大量Peer同時(shí)向服務(wù)器的請(qǐng)求以確定SC所緩存的內(nèi)容,以至于請(qǐng)求次數(shù)有小幅度的增加。
當(dāng)P2P網(wǎng)絡(luò)構(gòu)建穩(wěn)定后,由于新策略中點(diǎn)播熱門(mén)影片的節(jié)點(diǎn)的SC中緩存了冷門(mén)影片的數(shù)據(jù),提升了網(wǎng)絡(luò)規(guī)模和緩存能力,故新策略的對(duì)數(shù)據(jù)源服務(wù)器的請(qǐng)求大幅降低。可以看到,雖然在網(wǎng)絡(luò)構(gòu)建的初期新策略會(huì)增加對(duì)數(shù)據(jù)源服務(wù)器的請(qǐng)求,但是整個(gè)系統(tǒng)運(yùn)行期間,新策略能夠大幅降低對(duì)數(shù)據(jù)源服務(wù)器的請(qǐng)求,其系統(tǒng)性能提升是可觀的。
參考文獻(xiàn):
[1]Xiang Zhe,Zhang Qian,Zhu Wenwu,et a1.Replication Strategies for Peer-to-Peer Based Multimedia Distribution Service[A].Multimedia and Expo[C].2003:153-159.
[2]Nguyen T,Kolazhi K,Kamath R,et a1.Effident Video Disseaination in Structured Hybrid P2P Networks[A].Multim-edia and Expo[C].2006:1673-1676.
[3]Ganesh A,Kermarrwc A,Massoulie L.Peer-to-Peer Mem-bership Management for Gossip-Based Protocols[J].IEEE Trans on Computers,2003,52(2):139-149.
作者簡(jiǎn)介:
張?chǎng)斡?1983-),男,碩士研究生,研究方向:流媒體,分布式系統(tǒng);何廣慶(1982-),男,碩士研究生,研究方向:流媒體,分布式系統(tǒng);趙笑馳(1983-),女,碩士研究生,信任管理,分布式系統(tǒng);叢家爽(1982-),男,碩士研究生,研究方向:Web服務(wù),分布式系統(tǒng)。