《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 一種P2P流媒體系統中的緩存替換算法
一種P2P流媒體系統中的緩存替換算法
來源:微型機與應用2011年第7期
張繼榮,劉艷君
(西安郵電學院 通信與信息工程學院,陜西 西安710061)
摘要: 針對視頻節目受歡迎程度不同的特性,提出一種P2P流媒體系統中的緩存替換算法,通過將系統中的全部視頻片段分類,為其賦予不同的優先級,并周期性地更新該值,同時考慮視頻片段被訪問次數和最近被訪問的情況,使得被替換出存儲空間的片段更加合理。實驗表明,該算法能提高緩存命中率及系統的啟動延時,性能較優。
Abstract:
Key words :

摘  要: 針對視頻節目受歡迎程度不同的特性,提出一種P2P流媒體系統中的緩存替換算法,通過將系統中的全部視頻片段分類,為其賦予不同的優先級,并周期性地更新該值,同時考慮視頻片段被訪問次數和最近被訪問的情況,使得被替換出存儲空間的片段更加合理。實驗表明,該算法能提高緩存命中率及系統的啟動延時,性能較優。
關鍵詞: 流媒體;P2P;緩存替換算法;流行度

 隨著互聯網的飛速發展,以它為載體的應用越來越多樣化,傳統應用已經不能充分滿足人們的需要,對通過Internet提供更多寬帶增值業務的需求已顯得越來越迫切。數字多媒體技術的日趨成熟以及網絡傳輸帶寬的增加使得在互聯網上開展如視頻會議、IPTV(Internet Protocol Television)、VoD(Video on Demand)等各種多媒體應用逐步成為現實。傳統多媒體的播放方式是用戶事先將視頻文件下載至本地再進行觀看,而采用流媒體技術只需在播放時將部分內容緩存,邊傳送邊播放,節省了下載等待時間和存儲空間。但流媒體文件的體積一般都十分龐大,且對延遲、抖動、包丟失率等較敏感,會造成用戶可感知的服務質量降低。采用高效的流媒體緩存替換策略可以改善這種狀況。首先,從流媒體技術邊下載邊播放的特點可以看出,使用緩存技術可彌補網絡中的延遲和抖動對視頻播放帶來的不良影響;其次從全局看,緩存可緩解對骨干網絡帶寬以及中心服務器的壓力;另外,不管是代理服務器還是客戶端的存儲空間都是有限的,為了充分地利用存儲空間,保障視頻文件的流暢播放,必須依賴于高效的緩存替換策略。

 


1 基于P2P的流媒體系統
 近年來,P2P(Peer to Peer)技術在文件共享和網絡電話業務中被成功運用,采用P2P技術構建流媒體分發系統成為了比較理想的候選方案。其主要原因在于,通過這種方式不僅可以獲得較好的系統性能和可擴展性,而且不必改變現有網絡結構。最開始P2P與流媒體技術結合的成果是P2P實時節目直播系統,從傳統的樹型分發(如ZIGZAG)到基于Gossip的純Mesh分發(如Coolstreaming和Anysee[1])。在P2P方式下,網絡中的每個對等節點(Peer)同時是服務提供者和服務享用者,它們互相協作,各自貢獻自己的一部分資源。然而在P2P網絡中,節點存儲能力、節點間網絡鏈接帶寬的有限性決定了數據無法以穩定的速率連續地在節點間傳輸,而在流媒體應用中,連續且穩定地傳輸流數據是保證視頻播放質量必不可少的條件,網絡的異構性、不可預測的網絡抖動使得這一條件更難以實現。因此,必須采取有效的措施確保一定程度的數據冗余,以利于為節點播放器提供連續的流數據。流媒體緩存技術通過緩存熱門視頻節目的部分或全部數據,為后來的用戶請求提供服務,減少了啟動延遲,降低了骨干網絡和流媒體服務器負載,而成為了近年來網絡應用的研究熱點。
2 現有流媒體緩存策略
 目前存在的緩存策略主要有兩類:一類是考慮不同的分段方法來提高資源緩存的效率;另一類是基于資源被訪問時的不同特征來設計。
 分段方法的討論集中在如何將大容量的流媒體對象劃分成合適的片段,提高網絡傳輸的效率,前綴緩存算法[2]有效減小了客戶端啟動延時;批處理補丁結合前綴緩存思想重點在于提高命中率,減少用戶的等待時間;在此基礎上提出的最優批處理補丁預先緩存算法[3](BPP)通過補丁的預先緩存,減少了用戶的等待時間,節省了主干網絡的帶寬;指數增長的分段(Exponential Segmentation)策略[4]能夠快速替換片段來適應緩存對象的訪問模式的變化;基于自適應和滯后[5](Adaptive and Lazy)的分段方法根據用戶對于不同的流媒體對象的訪問頻率和訪問長度來自適應地改變分段長度和選取刪除段。SCU算法[6]旨在提高緩存的前綴字節命中率,減少訪問延遲,降低流媒體播放時的網絡傳輸成本。
 在資源被訪問的各種特征中,最有影響的當數資源訪問的局部性和資源的被訪問次數。LRU(Least Recently Used)和LFU(Least Frequency Used)算法就是分別考慮訪問近期性和訪問頻率的實現方式[7],但LFU存在緩存污染問題,LRU存在長環模式問題。同時,這兩種算法還容易出現同一媒體對象的連續替換問題,導致緩存內容被完全釋放的概率增大,請求命中率下降和響應延遲增加。LRU-K[8]和LCB-K[9]考慮了對象最近K次被引用的信息,將訪問頻率和訪問的最近性綜合到價值函數的設計之中,具有較好的性能。EELRU[10]通過偵測循環訪問模式的長度,以自適應選擇替換出的對象。還有的是采用將前綴和后綴分開緩存并采用不同替換策略的方式,但這樣增加了替換算法開銷及存儲空間管理的復雜程度。
衡量一個緩存替換策略的主要指標一般有以下幾項:
 (1)延時時間(Latency Time):從用戶發出一個訪問請求開始,到用戶在接收到該請求后響應為止,所經歷的時間為延時時間,包括啟動時和播放過程中的延時。延時時間越短,網絡的服務質量越好,同時這也是衡量骨干網能力的一項重要依據。
 (2)服務器負載(Server Load):由于用戶向服務器發出視頻節目請求以及服務器向Peer節點傳送數據產生的負載。在Peer處部署緩存并應用緩存替換策略,通過節點之間的協作可有效降低服務器的負載。
 (3)緩存命中率(Cache Hit Rate):緩存命中的次數與用戶總的請求數之比,若用Sr表示Peer接收到的用戶總請求次數,Sh表示緩存命中次數,則緩存命中率CHR=Sh/Sr,命中率越高,系統緩存的效果越好。
 (4)空間利用率(Space Use Rate):已經使用的緩存空間大小與緩存總空間的比值,用Da表示已經使用的空間大小,Dw表示緩存總空間的大小,則空間的利用率SUR=Da/Dw,該值越高,緩存的效率越高。
3 緩存替換算法設計
 經過對已有緩存算法的研究發現,這些算法都是將所有的視頻文件片段一視同仁地處理,即根據視頻片段的某些參數來進行替換操作。例如,基于流行度的緩存替換算法[11],流行度參數主要由片段的被訪問次數決定,假如一個具有高熱度的片段在剛進入系統的一段時間內被訪問次數不多,就很有可能被替換出去,這樣就造成對熱門視頻片段的錯誤操作,從而降低了系統的工作效率,也降低了用戶的服務體驗。為此,本文提出一種稱為PPR(Priority Popularity Recency)的緩存替換算法。該算法同時考慮屬于不同類型視頻的片段的優先級、片段的流行度、片段的最近一次命中時間這三個因素,尤其是片段的優先級的引入。首先,從視頻的受歡迎程度這個角度對它們進行分類,即在中心服務器向下分發視頻時,預先給三種不同的視頻賦予不同的優先級,使得最受歡迎的視頻節目在總的系統中保留的數目最多。然后對存儲空間里已有視頻片段的流行度進行統計后比較,使得“過期”的片段盡可能地被替換出去。而對于剛剛進入網絡并且具有高流行度潛力的新視頻片段,為了避免由于其被請求的次數還未來得及累積到一定數值就被替換出存儲空間,所以將片段的最近一次命中時間這個因素考慮進來。
3.1 PPR緩存替換算法參數描述
3.1.1 視頻的片段的優先級

 假設系統中共有M個不同的視頻節目Progi(M≥i≥1),每個節目又被分為Ni個片段ProgSegi,j(Ni≥j≥1),該算法以視頻的某一個片段為處理對象,視頻的播放速率為540 kb/s,每次處理60 s大約4 MB的數據。
在本文的探討中將視頻分為以下三種:
 (1)熱門視頻:網絡中剛剛更新的視頻資源,一般是在電視臺或電影院發布資源之后的一段時間里面,在網上同時需要觀看該類資源的用戶很多,如最新電影或最新一期熱門節目等。
 (2)經典視頻:網絡中那些一直都會有用戶點播觀看的經久不衰的視頻節目,這類資源的特點是用戶對它的請求保持在一個相對比較穩定的水平上,即一直會被訪問,但是并發訪問量不像訪問熱門資源那么高,如一些經典影片或網絡課程等。
 (3)冷僻視頻:除去以上兩類視頻,還有一類被訪問的總次數較低,并且并發人數也很少的視頻,如很久以前的節目或是受眾比較少的資源等。
給此三類視頻節目賦予不同的優先級Priorityi,對應某類視頻的片段優先級表示為Priorityi,j。熱門視頻的優先級最高,其次是經典視頻,冷僻視頻的優先級最低。需要強調的一點是,上述三種視頻之間沒有絕對的界限,根據對節點儲存空間內的視頻進行記錄統計,它們之間存在著互相轉化的可能。例如,熱門視頻會逐漸變成經典視頻或冷僻視頻,冷僻視頻也有轉化成熱門視頻的可能性。因此,本算法不僅僅是簡單利用優先級Priorityi,j,而是每隔時間T對存儲空間里所有片段的優先級進行更新(T值通過試驗來確定)。

3.2 PPR緩存替換算法結構描述
 PPR緩存替換算法由視頻優先級更新算法和片段替換算法兩個算法構成,整個算法流程如圖1所示。視頻優先級更新算法是為了確定片段所屬視頻的優先級。由于視頻的受歡迎程度是一個相對較大的時間粒度,而片段的權值是在一個更小的時間粒度上計算,如果將視頻受歡迎程度放到刪除每一個片段上計算,則會增加不必要的開銷。片段替換算法則是當存儲空間不足以存放下一個新片段時,在片段優先級確定的基礎上再對其進行評估從而選出淘汰的片段,完成替換。兩個算法的偽代碼如下。

 (1)視頻優先級更新算法
for everytime
  for each in Cache
Record(i)=Segments arrival sequence of Programme(i) in certain time
Priorityi,j=f(Record(i))
 return
return
(2)視頻片段替換算法
 if NewSegi,j not in Cache
 {
  if R1>Segi,j
 {
 cache the NewSegi,j
 return
 }
  calculate the value(φi,j(t))of all old segments
 select the minimum value(φi,j(t))and delete it
}
if R2<SegSizei,j
continue
else cache the  NewSegi,j
 return
4 實驗結果與討論
 為證實前文提出的PPR算法要優于常用的緩存替換算法,本文進行了仿真實驗,實驗環境為VC++6.0。假設客戶對300個視頻片段隨機發起請求,其中160個屬于熱門視頻,100個屬于經典視頻,其余為冷僻視頻?,F服務器共收到3 000個針對不同視頻片段的隨機請求,考察替換算法的不同對延遲時間和緩存命中率的影響。本文選擇了普通的LRU、LFU兩個算法作為比較,進行仿真對比,實驗結果如圖2、圖3所示。

 圖2顯示了平均啟動延遲相對于不同緩存大小的變化情況??梢钥闯觯S著緩存空間的增大,三種算法的啟動延遲都呈下降趨勢,LFU和LRU算法性能都不如PPR,這主要是由于連續替換使文件最終被全部替換出緩存。而PPR算法預先在內容服務器的存儲空間內按受歡迎程度調整三種不同視頻片段的比例,使最容易被請求的數據具有較高的權值來解決這個問題,因此在降低系統平均啟動延遲方面比較有優勢。圖3是緩存命中率相對不同緩存大小的變化情況,三種算法的命中率都呈上升趨勢,LRU的命中率最低,PPR算法因綜合考慮了視頻片段的受歡迎程度、被請求的強度以及最近被訪問的特征,而且根據實際情況定期更新受歡迎程度這個參數,因此在緩存命中率方面的性能最好。
 本文首先研究分析了基于P2P的流媒體系統,然后對現有的流媒體緩存算法進行了對比分析,提出了一種高效的流媒體緩存替換策略。實驗證明,本算法在延遲時間和緩存命中率兩方面性能更好。另外,將文件大小、傳輸成本等其他因素引入本算法,并且做進一步的實驗對比是下一步的工作。
參考文獻
[1] 鄭常熠,王新.P2P視頻點播內容分發策略[J].軟件學報,2007,18(11):2942-2954.
[2] SEN S, REXFORD J, TOWS L. Proxy prefix caching for multimedia streams[C]. Proceedings of IEEE Infocom, New York, 1999: 1310-1319.
[3] RIZZO L, VICISANO L. Replacement policies for a proxy cache [J]. IEEE/ACM Transactions on Networking, 2000,8(2):158-170.
[4] WU K L, YU P S, WOLF J L. Segment-based proxy caching of multimedia streams[C]. Proceedings of the 10th International Conference on World Wide Web, WWW′01, Hongkong, China, 2001:56-60.
[5] CHEN S, SHEN B, WEE S, et al. Adaptive and lazy segmentation based proxy caching for streaming media delivery[C]. Proceedings of ACN NOSSDAV. Monterey, CA, 2003:694-703.
[6] LIM E, PARK S H, HONG H O, et al. A proxy caching scheme for continuous media streams on the Internet[C]. The 15th International Conference on Information Networking. Beppu City, Oita, Japan, 2001:720-725.
[7] KRISHNAMURTY B, REXFORD J. Web protocol sand practice: HTTP/1.1, networking protocols, caching and traffic measurement[M]. Addison Wesley Longrnan Publishing Co., 2001.
[8] O′Neil E J, O′Neil P E, WEIKUM G. An optimality proof of the LRU-K page replacement algorithm[J]. Journal of the ACM, 1999, 46 (1):92-112.
[9] OTOO E, OLKEN F, SHOSHANI A. Disk cache replacement algorithm for storage resource managers in data grids[C]. Proceedings of IEEE / ACM Conference on Supercomputing, Baltimore, Maryland, USA, 2002:1-15.
[10] SMARAGDAKIS Y, KAPLAN S, WILSON P. The EELRU adaptive replacement algorithm[J]. Elsevier Science Performance Evaluation, 2003,53(2):93-123.
[11] 楊傳棟,余鎮危.基于流行度預測的流媒體代理緩存替換算法[J].計算機工程,2007,33(7):99-100.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一级片在线播放| 久久蜜桃精品| 亚洲高清电影| 午夜久久美女| 亚洲免费在线播放| 在线视频亚洲| 国产精品久久久久一区二区| 亚洲字幕在线观看| 在线一区日本视频| 在线午夜精品| 99亚洲伊人久久精品影院红桃| 亚洲激情视频在线| 亚洲高清视频的网址| 久久都是精品| 亚洲国产精品精华液网站| 久久精品国产96久久久香蕉| 欧美一区二区在线免费播放| 欧美一区二区三区在线播放| 性高湖久久久久久久久| 午夜亚洲一区| 欧美一级在线播放| 欧美影院成年免费版| 欧美在线视频不卡| 久久精品国产免费观看| 亚洲高清网站| 亚洲人成网站影音先锋播放| 亚洲精品自在久久| 在线午夜精品自拍| 亚洲免费影视| 欧美在线免费观看| 久久精品一区四区| 久久夜色精品国产| 欧美黄色小视频| 欧美日韩理论| 国产精品免费一区二区三区在线观看| 国产精品青草久久久久福利99| 国产精品夜夜嗨| 国产婷婷色一区二区三区在线| 国产综合久久久久久鬼色| 激情校园亚洲| 亚洲欧洲综合另类在线| 亚洲午夜在线观看视频在线| 亚洲在线中文字幕| 久久精品日产第一区二区| 亚洲精品午夜| 亚洲一区二区三区午夜| 欧美在线999| 蜜臀av一级做a爰片久久| 欧美日本在线| 国产精品欧美在线| 影院欧美亚洲| 一本色道久久综合亚洲精品按摩| 午夜激情亚洲| 亚洲免费精彩视频| 午夜一区在线| 免费不卡在线观看av| 国产精品v亚洲精品v日韩精品| 国产亚洲精品自拍| 亚洲日本无吗高清不卡| 亚洲欧美999| 亚洲精品久久久久久下一站| 亚洲免费在线视频一区 二区| 久久亚洲一区| 国产精品v亚洲精品v日韩精品| 国模精品娜娜一二三区| 亚洲乱码国产乱码精品精98午夜| 亚洲综合二区| 久久se精品一区精品二区| 国产精品免费电影| **性色生活片久久毛片| 亚洲午夜在线观看| 亚洲欧洲另类| 欧美一区二区三区免费观看| 欧美精品久久一区二区| 国产视频精品xxxx| 亚洲美女一区| 亚洲国内精品| 久久精品二区| 欧美午夜精品理论片a级按摩| 精久久久久久| 亚洲一区二三| 99精品国产热久久91蜜凸| 久久久久久999| 国产精品海角社区在线观看| 亚洲成人在线观看视频| 欧美一级二区| 午夜亚洲影视| 国产精品白丝av嫩草影院| 91久久久亚洲精品| 久久精品午夜| 欧美中文在线字幕| 国产精品高清免费在线观看| 亚洲人体1000| 亚洲精品午夜精品| 免费成人黄色片| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美日韩国产首页在线观看| 精品99一区二区| 亚洲欧美日本日韩| 中文日韩在线| 欧美激情视频在线播放| 狠狠综合久久av一区二区小说| 亚洲在线观看免费视频| 国产视频亚洲精品| 亚洲视频在线观看视频| 亚洲激情视频| 免费成人性网站| 狠狠久久亚洲欧美| 亚洲欧美偷拍卡通变态| 亚洲综合久久久久| 欧美日韩在线一区| 亚洲免费激情| 一本色道久久综合亚洲精品不卡 | 一区免费在线| 亚洲成人在线视频网站| 久久久久综合| 国产私拍一区| 午夜精品区一区二区三| 性欧美办公室18xxxxhd| 香港久久久电影| 国产精品美女www爽爽爽视频 | 中文精品在线| 宅男精品导航| 欧美视频一区二| 一本久久青青| 午夜精品视频一区| 国产精品五月天| 午夜国产精品影院在线观看 | 一区二区亚洲精品| 亚洲高清不卡av| 免费视频最近日韩| 亚洲国产一区二区视频 | 一区二区高清视频| 欧美日韩国产va另类| 99国产麻豆精品| 亚洲午夜激情网站| 国产精品成人一区二区三区夜夜夜| 日韩一区二区精品葵司在线| 在线一区二区三区四区五区| 欧美午夜不卡在线观看免费| 亚洲视频在线观看一区| 日韩网站在线看片你懂的| 久久se精品一区精品二区| 久久久蜜桃一区二区人| 精品二区视频| 亚洲美女电影在线| 欧美日韩在线播放三区| 亚洲在线1234| 久久久国产视频91| 在线成人激情| 一级日韩一区在线观看| 国产精品久久久久久户外露出| 亚洲综合视频1区| 久久在线观看视频| 亚洲人体1000| 亚洲欧美在线视频观看| 国产主播精品在线| 亚洲精选久久| 国产精品九九| 亚洲大片一区二区三区| 欧美黄色视屏| 亚洲一区久久久| 久久婷婷综合激情| 亚洲美女免费精品视频在线观看| 午夜精品久久久久久久| 精品91在线| 正在播放欧美一区| 国内精品亚洲| av成人老司机| 国产午夜精品美女视频明星a级| 最新日韩在线视频| 国产精品女主播在线观看 | 久久激情视频| 欧美日韩成人精品| 校园春色国产精品| 欧美激情精品久久久久久久变态| 在线午夜精品自拍| 媚黑女一区二区| 亚洲午夜精品久久久久久app| 久久综合久色欧美综合狠狠| 99精品国产一区二区青青牛奶| 久久久久久亚洲精品不卡4k岛国| 亚洲精选久久| 久久九九国产精品| 亚洲伦伦在线| 久久尤物电影视频在线观看| 一二三区精品| 欧美一二三区在线观看| 欧美一区二视频| 91久久精品国产91性色| 久久国产精品亚洲77777| 亚洲欧洲日本在线| 久久精品国产99国产精品澳门| 亚洲精品韩国| 久久久久国产精品厨房| 亚洲视频大全| 欧美精品二区三区四区免费看视频| 亚洲欧洲av一区二区三区久久| 欧美日韩裸体免费视频| 亚洲成人在线视频播放|