任美翠,楊龍祥
(南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003)
信息中心網(wǎng)絡(luò)的存儲(chǔ)機(jī)制研究
任美翠,楊龍祥
(南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003)
信息中心網(wǎng)絡(luò)(Information-Centric Networking,ICN)是未來網(wǎng)絡(luò)架構(gòu)中較為重要的一種。它采用信息緩存技術(shù),提供了一種更加適用于今天的網(wǎng)絡(luò)使用現(xiàn)狀(尤其是內(nèi)容分發(fā)與移動(dòng))的網(wǎng)絡(luò)基礎(chǔ)設(shè)施的服務(wù),要求每個(gè)節(jié)點(diǎn)都能緩存流經(jīng)的內(nèi)容,使得覆蓋全網(wǎng)絡(luò)的緩存成為網(wǎng)絡(luò)體系結(jié)構(gòu)的一部分。近年來,存儲(chǔ)機(jī)制成為ICN研究的一項(xiàng)熱點(diǎn),它減輕了服務(wù)器、核心路由器、網(wǎng)絡(luò)鏈路的負(fù)載,降低了傳輸延時(shí),提高了網(wǎng)絡(luò)性能。文中主要研究ICN的存儲(chǔ)機(jī)制(caching),介紹了其特征、分類,探索了其主要研究?jī)?nèi)容,重點(diǎn)分析比較了幾種緩存放置策略和緩存替換算法,最后指出了未來研究方向與面臨的挑戰(zhàn)。
信息中心網(wǎng)絡(luò);緩存放置策略;緩存替換算法;內(nèi)容對(duì)象流行度;緩存網(wǎng)絡(luò)拓?fù)?/p>
ICN[1]是較為重要的未來網(wǎng)絡(luò)架構(gòu)之一。它采用了信息緩存技術(shù),不僅在邊緣網(wǎng)絡(luò)放置緩存服務(wù)器,而且要求網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都設(shè)有緩存功能以便暫時(shí)保存經(jīng)過其的熱點(diǎn)內(nèi)容,使得覆蓋全網(wǎng)絡(luò)的緩存成為網(wǎng)絡(luò)體系結(jié)構(gòu)固有的一部分。當(dāng)用戶請(qǐng)求某一內(nèi)容時(shí),任何緩存有該內(nèi)容的中間節(jié)點(diǎn)(運(yùn)營(yíng)商網(wǎng)絡(luò)中的節(jié)點(diǎn)、用戶個(gè)人網(wǎng)絡(luò)中的節(jié)點(diǎn)、移動(dòng)終端等)都可以做出響應(yīng)。例如,用戶想要獲得內(nèi)容對(duì)象B,依照傳統(tǒng)的路由轉(zhuǎn)發(fā)思想,用戶需要到存儲(chǔ)內(nèi)容對(duì)象B的服務(wù)器中獲取內(nèi)容。然而ICN中則不同,如圖1所示,用戶可以直接從離它最近的緩存有內(nèi)容對(duì)象B副本的路由器中獲得內(nèi)容對(duì)象B。用戶并不關(guān)心內(nèi)容的來源,而是僅僅對(duì)內(nèi)容本身感興趣。這一理論使得內(nèi)容成為網(wǎng)絡(luò)的基礎(chǔ),取代了傳統(tǒng)網(wǎng)絡(luò)以IP為中心的理念,將內(nèi)容與地址信息分離開來。這種覆蓋全網(wǎng)絡(luò)的緩存使得信息可以快速地?cái)U(kuò)散到網(wǎng)絡(luò)中,對(duì)于每一個(gè)請(qǐng)求,網(wǎng)絡(luò)可以提供多個(gè)數(shù)據(jù)源,從而減緩服務(wù)器的負(fù)載并提高網(wǎng)絡(luò)的性能。
圖1 ICN通信模型
國(guó)外已有多個(gè)國(guó)家設(shè)立研究項(xiàng)目對(duì)ICN進(jìn)行研究,提出了一些解決方案,主要有DONA[2]、CCN/NDN[3]、PSIRP/PURSUIT[4]、NetInf/SAIL[5]等等。NDN采用基于內(nèi)容標(biāo)識(shí)的路由轉(zhuǎn)發(fā),有2種包格式:數(shù)據(jù)請(qǐng)求包(interest)和數(shù)據(jù)返回包(data)。用戶請(qǐng)求數(shù)據(jù)時(shí),只需在數(shù)據(jù)請(qǐng)求包中注明內(nèi)容標(biāo)識(shí),該數(shù)據(jù)請(qǐng)求包不斷地在網(wǎng)絡(luò)中被轉(zhuǎn)發(fā),直到有中間節(jié)點(diǎn)的緩存或服務(wù)器對(duì)其響應(yīng),沿?cái)?shù)據(jù)請(qǐng)求包的路徑逆向返回給用戶。DONA(Data-Oriented Network Architecture)重新設(shè)計(jì)了網(wǎng)絡(luò)的命名機(jī)制和名字解析機(jī)制,采用基于內(nèi)容標(biāo)識(shí)的路由機(jī)制,并通過RH(Resolution Handlers,解析處理器)來緩存內(nèi)容。用戶請(qǐng)求被轉(zhuǎn)發(fā)到擁有該內(nèi)容的RH,數(shù)據(jù)沿著其逆向路徑返回或者被直接轉(zhuǎn)發(fā)給用戶。PSIRP/PURSUIT中,內(nèi)容生產(chǎn)者將內(nèi)容發(fā)布到網(wǎng)絡(luò)(scope)中,用戶向其發(fā)起內(nèi)容訂閱,Rendezvous 將其進(jìn)行匹配,將SI(Scope Identifier)和RI(Rendezvous Identifier)轉(zhuǎn)化為FI(Forwarding Identifier),使得內(nèi)容生產(chǎn)者可以根據(jù)FI將內(nèi)容轉(zhuǎn)發(fā)給用戶。NetInf/SAIL提供了兩個(gè)模型,基于名字解析和基于內(nèi)容標(biāo)識(shí)的路由。前者由內(nèi)容生產(chǎn)者發(fā)布內(nèi)容并向NRS(Name Resolution Service)注冊(cè)內(nèi)容標(biāo)識(shí)和地址的綁定,同時(shí)擁有內(nèi)容副本的網(wǎng)絡(luò)節(jié)點(diǎn)也可以選擇向NRS注冊(cè)。NRS將用戶請(qǐng)求解析到多個(gè)地址,用戶可以從最近的內(nèi)容源獲得內(nèi)容。后者與NDN基于內(nèi)容標(biāo)識(shí)的路由類似。兩個(gè)模型相結(jié)合,可以適應(yīng)不同的網(wǎng)絡(luò)環(huán)境。
以上這些方案都有兩個(gè)共同點(diǎn):
(1)由接收者即內(nèi)容需求者發(fā)起通信;
(2)網(wǎng)絡(luò)中的節(jié)點(diǎn)都設(shè)有緩存功能。
總之,ICN利用覆蓋全網(wǎng)絡(luò)的緩存提供了性能更好、健壯性更強(qiáng)的傳輸服務(wù)。
1.1 ICN存儲(chǔ)機(jī)制的特征
(1)透明性。
傳統(tǒng)的存儲(chǔ)機(jī)制專用、封閉且獨(dú)立于應(yīng)用程序,如Web 緩存[6]、P2P緩存。雖然Web緩存基于開放的HTTP協(xié)議,但是Web內(nèi)容仍然采用基于域名命名的慣例。同一內(nèi)容對(duì)象的副本在不同域中有不同的名稱。所以緩存系統(tǒng)的內(nèi)容對(duì)象在邏輯上是分離的。而P2P緩存則使用專有協(xié)議,使得每個(gè)P2P應(yīng)用成為一個(gè)封閉的系統(tǒng)。為了克服這一點(diǎn),研究人員試圖使緩存相對(duì)應(yīng)用程序而言是透明的。ICN架構(gòu)的提出使得協(xié)議封閉性和命名不一致性的問題得以解決。ICN以統(tǒng)一的、連續(xù)性的方式命名內(nèi)容對(duì)象,并且這些全局內(nèi)容標(biāo)識(shí)可以實(shí)現(xiàn)自我認(rèn)證,簡(jiǎn)化了對(duì)內(nèi)容的安全性的檢查。同時(shí),ICN依據(jù)全局的內(nèi)容標(biāo)識(shí)進(jìn)行內(nèi)容路由和存儲(chǔ)決策,使得內(nèi)容標(biāo)識(shí)具有網(wǎng)絡(luò)感知性。這些特征都使得緩存成為獨(dú)立于應(yīng)用程序的通用的、開放的、透明的服務(wù)[7]。
(2)無處不在性。
在傳統(tǒng)緩存系統(tǒng)中,緩存節(jié)點(diǎn)是事前確定好的,緩存的拓?fù)浣Y(jié)構(gòu)通常是線性級(jí)聯(lián)結(jié)構(gòu)或分層樹型結(jié)構(gòu)。內(nèi)容放置和緩存間的協(xié)調(diào)可以通過求解由先驗(yàn)的流量需求和緩存結(jié)構(gòu)建立的分析模型來確定。在ICN中,緩存是無處不在的,緩存節(jié)點(diǎn)不再是固定的。緩存網(wǎng)絡(luò)的的拓?fù)浣Y(jié)構(gòu)圖也由分層樹型結(jié)構(gòu)發(fā)展為任意圖網(wǎng)絡(luò),上下游節(jié)點(diǎn)之間的關(guān)系變得不確定。這些因素增加了緩存系統(tǒng)數(shù)學(xué)建模和分析的難度,并且使得緩存間的協(xié)調(diào)較難實(shí)現(xiàn)。
(3)緩存內(nèi)容的細(xì)粒度。
與傳統(tǒng)的緩存機(jī)制不同,大多數(shù)ICN方案將大的文件分割成較小且擁有全局內(nèi)容標(biāo)識(shí)的內(nèi)容塊(chunk),并以內(nèi)容塊為單位進(jìn)行緩存和替換操作,這使得同屬一個(gè)文件的不同內(nèi)容塊可存儲(chǔ)在不同的網(wǎng)絡(luò)節(jié)點(diǎn),提高了內(nèi)容檢索的效率和緩存空間利用率。
1.2 分 類
(1)集中式。
集中式存儲(chǔ)是指單一網(wǎng)絡(luò)節(jié)點(diǎn)存儲(chǔ)完整的信息,也就是說凡是經(jīng)過網(wǎng)絡(luò)節(jié)點(diǎn)未被存儲(chǔ)的信息都將被完整備份。由于路徑上所有網(wǎng)絡(luò)節(jié)點(diǎn)之間對(duì)信息的存儲(chǔ)沒有協(xié)作關(guān)系,每一個(gè)中間網(wǎng)絡(luò)節(jié)點(diǎn)都將存儲(chǔ)所有經(jīng)過的信息。在整個(gè)路徑上,多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)存儲(chǔ)了相同的信息。一般情況下,只有最近的緩存源的信息才能被使用,因此大量的存儲(chǔ)空間不被利用,造成了緩存的利用率不高。雖然集中式存儲(chǔ)方式實(shí)現(xiàn)簡(jiǎn)單,需求端獲取信息時(shí)快速,但這種方式信息存儲(chǔ)量小,一般仍采用分布式緩存方式。
(2)分布式。
分布式緩存方式即信息分塊存儲(chǔ),指多個(gè)中間網(wǎng)絡(luò)節(jié)點(diǎn)互相合作、共同協(xié)商以存儲(chǔ)完整的信息。根據(jù)優(yōu)選存儲(chǔ)位置不同,其又可分為邊緣分布式緩存方式和核心分布式緩存方式。邊緣分布式緩存方式將信息盡量存儲(chǔ)在離需求端近的網(wǎng)絡(luò)節(jié)點(diǎn)上,即邊緣網(wǎng)絡(luò)節(jié)點(diǎn)上。用戶請(qǐng)求信息時(shí),若緩存中有相應(yīng)信息,直接從最近的網(wǎng)絡(luò)節(jié)點(diǎn)獲得,其傳輸效率必然高于從遠(yuǎn)處網(wǎng)絡(luò)節(jié)點(diǎn)獲取方式。核心分布式緩存方式指緩存信息以核心網(wǎng)絡(luò)節(jié)點(diǎn)為主,邊緣處盡量不存儲(chǔ)信息。核心分布式方式不僅增加了核心節(jié)點(diǎn)處的存儲(chǔ)負(fù)擔(dān),且可能會(huì)造成核心網(wǎng)絡(luò)節(jié)點(diǎn)的傳輸性能降低。核心網(wǎng)絡(luò)節(jié)點(diǎn)作為全網(wǎng)的樞紐,幾乎承擔(dān)了所有數(shù)據(jù)的路由轉(zhuǎn)發(fā)任務(wù)。顯然,應(yīng)盡量減小核心網(wǎng)絡(luò)節(jié)點(diǎn)的其他負(fù)載,保證其能高效地傳輸數(shù)據(jù)。同時(shí),邊緣網(wǎng)絡(luò)節(jié)點(diǎn)比核心網(wǎng)絡(luò)節(jié)點(diǎn)離用戶更近,用戶從邊緣網(wǎng)絡(luò)節(jié)點(diǎn)獲取數(shù)據(jù)更快、更高效。很明顯邊緣分布式緩存方式具有更多的優(yōu)勢(shì),因此采用核心分布式的緩存方案很少。目前未來網(wǎng)絡(luò)中基本采用邊緣分布式緩存方式[8]。
在ICN存儲(chǔ)機(jī)制中,如何決定內(nèi)容對(duì)象放置在哪個(gè)緩存節(jié)點(diǎn)、新的內(nèi)容對(duì)象到達(dá)時(shí)如何對(duì)緩存內(nèi)容進(jìn)行替換和緩存網(wǎng)絡(luò)的模型,是研究中最重要的三個(gè)問題。前兩個(gè)是對(duì)緩存系統(tǒng)性能優(yōu)化的方法,后一個(gè)則關(guān)系到緩存系統(tǒng)的建模與分析。下面將對(duì)緩存放置策略和緩存替換算法進(jìn)行詳細(xì)闡述,對(duì)緩存大小規(guī)劃、緩存空間共享機(jī)制、對(duì)象可用性、緩存網(wǎng)絡(luò)模型進(jìn)行簡(jiǎn)要介紹。
2.1 緩存大小規(guī)劃
ICN中緩存相當(dāng)于是網(wǎng)絡(luò)的基礎(chǔ)服務(wù),要求網(wǎng)絡(luò)中的節(jié)點(diǎn)設(shè)有緩存功能,那么網(wǎng)絡(luò)節(jié)點(diǎn)中緩存大小的規(guī)劃是一個(gè)問題。若設(shè)置的太小,則可能滿足不了線速轉(zhuǎn)發(fā)的要求,使節(jié)點(diǎn)緩存沒有意義。若設(shè)置的過大,則會(huì)造成緩存空間的浪費(fèi)和過高的網(wǎng)絡(luò)成本。另外,網(wǎng)絡(luò)節(jié)點(diǎn)的緩存大小不一定要完全相同,在資源和經(jīng)濟(jì)投入給定的情況下,合理地為一小部分節(jié)點(diǎn)分配更多的緩存大小,可能會(huì)提高緩存系統(tǒng)的整體性能,如分布式緩存方式中的核心分布式緩存。
2.2 緩存空間共享機(jī)制
網(wǎng)絡(luò)節(jié)點(diǎn)的緩存空間是有限的,合理規(guī)劃網(wǎng)絡(luò)節(jié)點(diǎn)的緩存大小可以使同一類型的內(nèi)容塊合理利用節(jié)點(diǎn)緩存資源。然而,ICN儲(chǔ)存機(jī)制的透明性特征允許不同應(yīng)用類型(如文本文檔、視頻等)的內(nèi)容塊共享節(jié)點(diǎn)緩存空間。不同應(yīng)用類型的內(nèi)容塊有著不同的流量特征,其緩存目標(biāo)也可能不同,這將導(dǎo)致其對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)緩存資源的競(jìng)爭(zhēng)。在不同的應(yīng)用類型的內(nèi)容塊間合理共享緩存資源,并針對(duì)其流量特征提供不同的服務(wù),是ICN緩存空間共享機(jī)制需要研究的重點(diǎn)。
2.3 緩存放置策略
目前,緩存放置策略[9-10]是ICN緩存研究領(lǐng)域中的一個(gè)熱點(diǎn)內(nèi)容,它決定了內(nèi)容對(duì)象被放置在網(wǎng)絡(luò)中的位置,也就是說它決定了哪些節(jié)點(diǎn)用作域內(nèi)緩存。在傳統(tǒng)的緩存機(jī)制中,有時(shí)可以根據(jù)先驗(yàn)的拓?fù)浣Y(jié)構(gòu)和流量需求找出內(nèi)容對(duì)象的最佳緩存節(jié)點(diǎn)。在ICN中,緩存節(jié)點(diǎn)不再固定,拓?fù)浣Y(jié)構(gòu)發(fā)展為任意圖網(wǎng)絡(luò),增加了緩存決定的難度。顯然, ICN需要簡(jiǎn)化而有效的緩存放置策略。
大多數(shù)ICN方案中默認(rèn)采用LEC(Leave Copy Everywhere)[11-12]緩存放置策略,它在下載路徑的每個(gè)節(jié)點(diǎn)中都緩存該內(nèi)容對(duì)象的副本。這一方法雖然簡(jiǎn)潔卻引入了較高的緩存冗余,減少了整個(gè)系統(tǒng)緩存內(nèi)容的多樣性。如,同樣的內(nèi)容被緩存在多個(gè)不必要的節(jié)點(diǎn)中,造成了整個(gè)系統(tǒng)的緩存冗余。
為了提高緩存系統(tǒng)的實(shí)用性,ICN提出了以下3點(diǎn)要求:
(1)將流行度(popularity)[13]高的內(nèi)容快速分發(fā)到網(wǎng)絡(luò)的邊緣,這樣可以減少用戶的下載延遲,提高網(wǎng)絡(luò)的資源利用率。
(2)提高整個(gè)網(wǎng)絡(luò)緩存的多樣性,尤其是在同一個(gè)ISP中,以便用戶請(qǐng)求可以在同一個(gè)ISP中獲得,可以極大地減小跨域的流量。
(3)請(qǐng)求內(nèi)容對(duì)象的緩存決定可以取決于同一文件中另一個(gè)內(nèi)容對(duì)象是否已被緩存,這稱為關(guān)聯(lián)性的緩存決定。ICN以內(nèi)容塊為單位進(jìn)行緩存,同屬一個(gè)文件的內(nèi)容塊之間可以進(jìn)行關(guān)聯(lián)性的緩存決定,這將提高流行度高的內(nèi)容分發(fā)的速度。
為了減少系統(tǒng)的緩存冗余,在LEC的基礎(chǔ)上,研究人員提出了一些新的緩存放置策略。
LCD(Leave Copy Down)[14-15],只在命中節(jié)點(diǎn)的直接下游節(jié)點(diǎn)緩存內(nèi)容對(duì)象,避免了對(duì)相同內(nèi)容對(duì)象的大量緩存。但是這意味著需要一定的訪問頻率才能將一個(gè)內(nèi)容對(duì)象從服務(wù)器推到網(wǎng)絡(luò)邊緣。MCD (Move Copy Down)[14-15],只在命中節(jié)點(diǎn)的直接下游節(jié)點(diǎn)緩存內(nèi)容對(duì)象,同時(shí)從命中節(jié)點(diǎn)將該內(nèi)容刪除。與LCD相比,此方案更進(jìn)一步減少了對(duì)象內(nèi)容的冗余。Prob(Copy with Probability)[14],在下載路徑的每個(gè)節(jié)點(diǎn)中以概率P緩存該內(nèi)容對(duì)象。其可以看作是一般化的LCE,當(dāng)P=1時(shí),即為L(zhǎng)CE。PCOne(RandomlyCopyOne)[16],在下載路徑的每個(gè)節(jié)點(diǎn)中以隨機(jī)的概率緩存該內(nèi)容對(duì)象。ProbCache(ProbablisticCache)[17],在下載路徑的每個(gè)節(jié)點(diǎn)中以一定的概率緩存該內(nèi)容對(duì)象。對(duì)每一個(gè)節(jié)點(diǎn)而言,概率是不同的,與其到訪問端的距離成反比,越靠近訪問端的節(jié)點(diǎn),緩存該內(nèi)容對(duì)象的概率越大。這一方案可以快速地將內(nèi)容對(duì)象推到網(wǎng)絡(luò)邊緣,同時(shí)減少副本的數(shù)量。
以上這些方案只滿足了ICN緩存系統(tǒng)實(shí)用性的前兩點(diǎn)要求,KideokCho等提出的WAVE[11]算法則考慮到了關(guān)聯(lián)性的緩存決定。WAVE根據(jù)內(nèi)容的流行度來調(diào)節(jié)緩存內(nèi)容塊的數(shù)量,如果該文件的訪問量增加,則對(duì)其內(nèi)容塊的緩存數(shù)量以指數(shù)的形式增加。WAVE在數(shù)據(jù)報(bào)中設(shè)置了緩存建議標(biāo)記位來保存由上游節(jié)點(diǎn)對(duì)下游節(jié)點(diǎn)緩存的建議。如果下游節(jié)點(diǎn)已經(jīng)沒有存儲(chǔ)空間或者它有自己的緩存策略,那么它可以忽略上游節(jié)點(diǎn)的建議,并將該內(nèi)容塊留給別的節(jié)點(diǎn)緩存。如果下游節(jié)點(diǎn)將該內(nèi)容塊緩存,則修改緩存建議標(biāo)記位數(shù)值,避免緩存冗余。與LCD方案類似,隨著訪問量的增加,內(nèi)容對(duì)象一步一步從服務(wù)器推到網(wǎng)絡(luò)邊緣。不同的是,WAVE中訪問每增加一次,對(duì)其內(nèi)容塊的緩存數(shù)量以指數(shù)的形式增加,也就是說,對(duì)流行度高的內(nèi)容來說,將越快傳播到網(wǎng)絡(luò)邊緣。
2.4 緩存替換算法
若節(jié)點(diǎn)的緩存空間已滿,當(dāng)一個(gè)新的內(nèi)容對(duì)象到達(dá)時(shí),由緩存替換算法決定該內(nèi)容是否被緩存,若被緩存,還要決定哪個(gè)內(nèi)容對(duì)象的副本被替換掉。近來緩存替換算法也逐漸成為緩存研究中的一個(gè)熱點(diǎn)。在ICN中,用的最多的是簡(jiǎn)單隨機(jī)的置換算法,如LRU(Least Recently Used)、LFU(Least Frequently Used)。兩者都是直接把最新到達(dá)的內(nèi)容對(duì)象緩存到內(nèi)存中,不同的是,LRU是把最近最少使用的內(nèi)容對(duì)象副本移除,LFU則是把使用頻率最低的內(nèi)容對(duì)象副本移除。這些方案雖然可以把流行度高的內(nèi)容存儲(chǔ)在網(wǎng)絡(luò)中,但是每次有新的內(nèi)容到達(dá)時(shí),需要追蹤最近最少使用的內(nèi)容或者使用頻率最低的內(nèi)容,這大大降低了節(jié)點(diǎn)的效率并且需要復(fù)雜的硬件條件來支持。
文獻(xiàn)[18]提出了一種基于生命周期(age)的緩存方案,當(dāng)有新的內(nèi)容到達(dá)時(shí),節(jié)點(diǎn)將其副本緩存,并根據(jù)其到服務(wù)器的距離、內(nèi)容的流行度等因素在數(shù)據(jù)報(bào)中為該內(nèi)容添加一個(gè)age值。當(dāng)age到期后,則將其移出緩存。此方案可以將內(nèi)容存儲(chǔ)到網(wǎng)絡(luò)邊緣,減少中間節(jié)點(diǎn)不必要的存儲(chǔ),同時(shí)減少網(wǎng)絡(luò)時(shí)延,減輕服務(wù)器的負(fù)載。在仿真過程中,發(fā)現(xiàn)在一個(gè)合理的范圍內(nèi)改變參數(shù)的值(如緩存大小、BASE_AGE、MAX_AGE)不會(huì)對(duì)ABC(Age-Based Cooperation)算法的優(yōu)勢(shì)造成影響。但是,參數(shù)的改變確實(shí)會(huì)影響到ABC算法的性能。所以,未來應(yīng)該深入研究如何優(yōu)化參數(shù),來提高ABC算法的性能。對(duì)于實(shí)時(shí)的應(yīng)用,如VoIP,可以通過設(shè)置一個(gè)較小的,甚至為零的age來避免內(nèi)容的不一致性。網(wǎng)絡(luò)節(jié)點(diǎn)可以周期性地詢問服務(wù)器,來及時(shí)更新內(nèi)容。這一方面也是未來的研究方向。
對(duì)于基于生命周期的緩存方案,只要經(jīng)過網(wǎng)絡(luò)節(jié)點(diǎn)的未被存儲(chǔ)的信息都將被完整備份,也就是說在整個(gè)路徑上有多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)都存儲(chǔ)了相同的信息。然而,一般情況下,只有離用戶最近的網(wǎng)絡(luò)節(jié)點(diǎn)緩存的內(nèi)容才能被使用,因此,該方案的緩存利用率不高。文獻(xiàn)[19]提出了一種協(xié)同緩存方案,即多個(gè)中間CR(Content Router)互相協(xié)作、共同協(xié)商來存儲(chǔ)完整的信息,將信息分塊存儲(chǔ)。多個(gè)CR合作存儲(chǔ),增加了網(wǎng)絡(luò)節(jié)點(diǎn)的存儲(chǔ)空間,大大增加了緩存內(nèi)容的多樣性。同時(shí),減少了用戶訪問服務(wù)器的次數(shù),平衡了各個(gè)服務(wù)器的工作量。
2.5 對(duì)象可用性
幾種ICN方案中的對(duì)象可用性見表1。
表1 幾種ICN方案中的對(duì)象可用性
在傳統(tǒng)的Web緩存和CDN緩存中,請(qǐng)求的緩存內(nèi)容是否可用是明確的。在CDN中,基于先驗(yàn)的訪問需求和網(wǎng)絡(luò)結(jié)構(gòu),內(nèi)容被快速地推動(dòng)和復(fù)制到邊緣服務(wù)器。該緩存系統(tǒng)是基于重定向和DNS解析機(jī)制來確保這些內(nèi)容副本的全球可用性。在分層的Web緩存中,只有位于從請(qǐng)求點(diǎn)指向根節(jié)點(diǎn)的路徑上的內(nèi)容可用于給定的請(qǐng)求,在該路徑以外的緩存內(nèi)容不可用于響應(yīng)請(qǐng)求。ICN中則不同,由于其任意圖網(wǎng)絡(luò)的緩存網(wǎng)絡(luò)拓?fù)?,無處不在的網(wǎng)絡(luò)內(nèi)緩存和緩存內(nèi)容的易變性,使其緩存系統(tǒng)有著高動(dòng)態(tài)性,這必然會(huì)對(duì)內(nèi)容對(duì)象的可用性造成一定的影響。
2.6 緩存網(wǎng)絡(luò)模型
緩存網(wǎng)絡(luò)模型是對(duì)緩存系統(tǒng)進(jìn)行適度的簡(jiǎn)化和抽象而建立的相應(yīng)理論模型,可以為緩存系統(tǒng)的行為操作提供理論支持。ICN緩存系統(tǒng)完整的網(wǎng)絡(luò)模型應(yīng)當(dāng)包括對(duì)象流行度分布模型、請(qǐng)求到達(dá)模型、緩存網(wǎng)絡(luò)拓?fù)淠P偷取?/p>
ICN存儲(chǔ)機(jī)制的研究是一個(gè)復(fù)雜而艱巨的系統(tǒng)性工程。目前,國(guó)內(nèi)外對(duì)ICN存儲(chǔ)機(jī)制的研究還處于起步階段,這一課題仍然面臨著許多問題與挑戰(zhàn),可以深入研究的方面還有很多,文中總結(jié)了以下幾點(diǎn):
(1)內(nèi)容塊對(duì)象的流行度分布的研究。
在以文件對(duì)象為單位緩存的緩存機(jī)制中,大量的研究人員從事對(duì)象流行度的網(wǎng)絡(luò)理論模型的研究。Web緩存的流行度遵循Zipf分布[20]、P2P緩存的流行度遵循Mandelbrot-zipf分布[21-22]已經(jīng)得到公認(rèn)。ICN是以內(nèi)容塊為單位進(jìn)行緩存操作的,仍然采用原先以文件為單位進(jìn)行緩存的流行度模型顯然是不適合的。同屬一個(gè)文件的不同內(nèi)容塊有著不同的訪問頻率。例如,一段視頻的前面部分是否吸引人決定著用戶是否會(huì)訪問后面的部分。目前為止,還沒有對(duì)內(nèi)容塊對(duì)象流行度的建模與分析和實(shí)驗(yàn)的研究,現(xiàn)有的網(wǎng)絡(luò)理論模型仍然沿用原先網(wǎng)絡(luò)模型中的諸多假設(shè)。因此,這可以是未來研究的一個(gè)方向。
(2)緩存決定策略與緩存替換算法的優(yōu)化。
受傳統(tǒng)存儲(chǔ)機(jī)制的影響,大多數(shù)ICN緩存決定策略仍然把請(qǐng)求內(nèi)容對(duì)象當(dāng)作是獨(dú)立的個(gè)體,如LCD、MCD 、Prob、PCOne、ProbCache等。然而,ICN是基于內(nèi)容塊來緩存與操作的,這決定了其請(qǐng)求內(nèi)容對(duì)象之間有一定的關(guān)聯(lián)性,如請(qǐng)求順序的關(guān)聯(lián)性等。WAVE算法考慮到了這一點(diǎn),為深入研究請(qǐng)求內(nèi)容對(duì)象的關(guān)聯(lián)性指明了方向。另外,在緩存替換算法中,以新的內(nèi)容對(duì)象副本替換舊的內(nèi)容對(duì)象副本時(shí),直接將舊的內(nèi)容對(duì)象副本從該節(jié)點(diǎn)內(nèi)存中刪除可能不是最好的選擇。相反,可以將被替換的內(nèi)容對(duì)象副本緩存到該節(jié)點(diǎn)的上游節(jié)點(diǎn)或鄰居節(jié)點(diǎn),以增加緩存內(nèi)容的多樣性。
(3)低復(fù)雜度的存儲(chǔ)機(jī)制的研究。
目前,緩存放置策略和緩存替換策略是ICN緩存研究領(lǐng)域中的熱點(diǎn)內(nèi)容。ICN中緩存是無處不在的,緩存節(jié)點(diǎn)不再固定,緩存網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)圖也由分層樹型結(jié)構(gòu)發(fā)展為網(wǎng)狀圖,上下游節(jié)點(diǎn)之間的關(guān)系變得不確定。這些因素增加了緩存系統(tǒng)數(shù)學(xué)建模和分析的難度,并且使緩存間的協(xié)調(diào)較難實(shí)現(xiàn)。顯然, ICN需要簡(jiǎn)化而有效的緩存協(xié)同機(jī)制[23-27]。
隨著網(wǎng)絡(luò)規(guī)模的增長(zhǎng),新興業(yè)務(wù)的不斷出現(xiàn),以及用戶對(duì)服務(wù)的需求越來越多樣化,傳統(tǒng)的“核心簡(jiǎn)單,終端智能”的網(wǎng)絡(luò)基礎(chǔ)架構(gòu)已經(jīng)不堪重負(fù),成為了網(wǎng)絡(luò)進(jìn)一步發(fā)展的瓶頸。為解決這一瓶頸,近年來研究人員提出了不少新的網(wǎng)絡(luò)架構(gòu),通信范式逐漸從以主機(jī)為中心的端到端通信向以接收端為驅(qū)動(dòng)的以內(nèi)容為中心的模式轉(zhuǎn)變。ICN 是目前較為重要的未來網(wǎng)絡(luò)架構(gòu)之一,它要求覆蓋全網(wǎng)絡(luò)的緩存應(yīng)該成為和信息傳輸一樣的網(wǎng)絡(luò)基礎(chǔ)服務(wù),同時(shí)緩存應(yīng)具有透明性和無處不在性以保障高效的內(nèi)容檢索。因此,近年來存儲(chǔ)機(jī)制成為ICN研究的一項(xiàng)熱點(diǎn)。
文中首先研究了ICN存儲(chǔ)機(jī)制的特征及分類。然后,探索了ICN存儲(chǔ)機(jī)制的主要研究?jī)?nèi)容,包括緩存大小規(guī)劃、緩存空間共享機(jī)制、緩存放置策略、緩存替換算法、對(duì)象可用性、緩存網(wǎng)絡(luò)拓?fù)鋬?yōu)化,其中重點(diǎn)分析比較了幾種緩存放置策略和緩存替換算法。最后,指出了值得進(jìn)一步探討的幾個(gè)研究方向。
目前,ICN存儲(chǔ)機(jī)制的研究仍然處于起步階段,緩存系統(tǒng)的建模尚未成型,現(xiàn)有的網(wǎng)絡(luò)理論模型依然沿用原先緩存系統(tǒng)網(wǎng)絡(luò)模型,如,對(duì)象流行度分布、請(qǐng)求到達(dá)模型等??傊?,ICN存儲(chǔ)機(jī)制仍然有許多理論和技術(shù)問題尚未解決,值得深入研究。
[1] Ahlgren B,Dannewitz C,Imbrenda C,et al.A survey of information-centric networking[J].IEEE Communications Magazine,2012,50(7):26-36.
[2] Koponen T,Chawla M,Chun B G,et al.A data-oriented (and beyond) network architecture[J].ACM SIGCOMM Computer Communication Review,2007,37(4):181-192.
[3] Jacobson V, Smetters D K, Thornton J D,et al.Networking named content[C]//Proceedings of the 5th international conference on emerging networking experiments and technologies.[s.l.]:[s.n.],2009:1-12.
[4] Carzaniga A,Papalini M,Wolf A L.Content-based publish/subscribe networking and information-centric networking[C]//Proceedings of the ACM SIGCOMM workshop on information-centric networking.[s.l.]:[s.n.],2011:56-61.
[5] Dannewitz C.Netinf:an information-centric design for the future internet[C]//Proc of 3rd GI/ITG KuVS workshop on the future Internet.[s.l.]:[s.n.],2009.
[6] Cohen E,Kaplan H.Aging through cascaded caches:performance issues in the distribution of web content[J].ACM SIGCOMM Computer Communication Review,2001,31(4):41-53.
[7] Zhang G,Li Y,Lin T.Caching in information centric networking:a survey[J].Computer Networks,2013,57(16):3128-3141.
[8] 夏春梅,徐明偉.信息中心網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)科學(xué)與探索,2013,7(6):481-493.
[9] Krishnan P, Raz D, Shavitt Y.The cache location problem[J].IEEE/ACM Transactions on Networking,2000,8(5):568-582.
[10] Pacifici V,Dán G.Content-peering dynamics of autonomous caches in a content-centric network[C]//Proc of INFOCOM.[s.l.]:IEEE,2013:1079-1087.
[11] Cho K,Lee M,Park K,et al.Wave:popularity-based and collaborative in-network caching for content-oriented networks[C]//Proc of IEEE conference on computer communications workshops.[s.l.]:IEEE,2012:316-321.
[12] Li Y,Lin T,Tang H,et al.A chunk caching location and searching scheme in content centric networking[C]//Proc of IEEE international conference on communications.[s.l.]:IEEE,2012:2655-2659.
[13] Borst S,Gupta V,Walid A.Distributed caching algorithms for content distribution networks[C]//Proc of INFOCOM.[s.l.]:IEEE,2010:1-9.
[14] Laoutaris N,Syntila S,Stavrakakis I.Meta algorithms for hierarchical web caches[C]//Proc of IEEE international conference on performance,computing,and communications.[s.l.]:IEEE,2004:445-452.
[15] Laoutaris N,Che H,Stavrakakis I.The LCD interconnection of LRU caches and its analysis[J].Performance Evaluation,2006,63(7):609-634.
[16] Eum S,Nakauchi K,Murata M,et al.CATT:potential based routing with content caching for ICN[C]//Proceedings of the second edition of the ICN workshop on information-centric networking.[s.l.]:ACM,2012:49-54.
[17] Psaras I,Chai W K,Pavlou G.Probabilistic in-network caching for information-centric networks[C]//Proceedings of the second edition of the ICN workshop on Information-centric networking.[s.l.]:ACM,2012:55-60.
[18] Ming Z,Xu M,Wang D.Age-based cooperative caching in information-centric networks[C]//Proc of IEEE conference on computer communications workshops.[s.l.]:IEEE,2012:268-273.
[19] Li Z,Simon G.Time-shifted tv in content centric networks:the case for cooperative in-network caching[C]//Proc of IEEE conference on communications.[s.l.]:IEEE,2011:1-6.
[20] Breslau L,Cao P,Fan L,et al.Web caching and Zipf-like distributions:evidence and implications[C]//Proc of eighteenth annual joint conference of the IEEE computer and communications societies.[s.l.]:IEEE,1999:126-134.
[21] Hefeeda M,Saleh O.Traffic modeling and proportional partial caching for peer-to-peer systems[J].IEEE/ACM Transactions on Networking,2008,16(6):1447-1460.
[22] Saleh O,Hefeeda M.Modeling and caching of peer-to-peer traffic[C]//Proceedings of the 2006 14th IEEE international conference on network protocols.[s.l.]:IEEE,2006:249-258.
[23] 施廣宇,范靈源.面向內(nèi)容的未來互聯(lián)網(wǎng)架構(gòu)研究綜述[C]//中國(guó)通信學(xué)會(huì)信息通信網(wǎng)絡(luò)技術(shù)委員會(huì) 2011 年年會(huì)論文集 (上冊(cè)).出版地不詳:出版者不詳,2011.
[24] 葉潤(rùn)生,徐明偉.命名數(shù)據(jù)網(wǎng)絡(luò)中的鄰居緩存路由策略[J].計(jì)算機(jī)科學(xué)與探索,2012,6(7):593-601.
[25] 胡 騫,武穆清,郭 嵩,等.一種用于內(nèi)容中心網(wǎng)絡(luò)的緩存隨機(jī)放置策略[J].西安電子科技大學(xué)學(xué)報(bào),2014,41(6):131-136.
[26] 朱 軼,糜正琨,王文鼐.一種基于內(nèi)容流行度的內(nèi)容中心網(wǎng)絡(luò)緩存概率置換策略[J].電子與信息學(xué)報(bào),2013,35(6):1305-1310.
[27] 崔現(xiàn)東,劉 江,黃 韜,等.基于節(jié)點(diǎn)介數(shù)和替換率的內(nèi)容中心網(wǎng)絡(luò)網(wǎng)內(nèi)緩存策略[J].電子與信息學(xué)報(bào),2014,36(1):1-7.
Research on Caching Mechanism in Information Centric Networking
REN Mei-cui,YANG Long-xiang
(College of Communication and Information Engineering,Nanjing University of Posts and Telecommunications,Nanjing 210003,China)
The Information-Centric Networking (ICN) is one of the important approaches of several future network architectures.This approach provides a network infrastructure service that is better suited to today’s network (especially in content distribution and mobility) by making use of caching technique.In ICN,each node could cache the content object,which makes the caching become an inherent part of the network architecture.The caching technique in recent years becomes a hot spot in study of ICN,because it declines the load on server,routers and network links,and reduces the transport latency,in the meanwhile improves the network performance.Focus on the caching mechanism in ICN in this paper,and summarize the new features and taxonomies.Then explore its research spot,in particular analyzing and evaluating the existing cache decision policies and cache replacement algorithms.Finally,several key issues and challenges in ICN caching are discussed and future directions are pointed out.
information-centric networking;cache decision policy;cache replacement algorithm;object popularity;topology of cache network
2015-05-07
2015-08-11
時(shí)間:2016-01-26
國(guó)家自然科學(xué)基金資助項(xiàng)目(61372124);國(guó)家“863”高技術(shù)發(fā)展計(jì)劃項(xiàng)目(2013CB329104)作者簡(jiǎn)介:任美翠(1991-),女,碩士,研究方向?yàn)橐苿?dòng)通信與無線技術(shù);楊龍祥,教授,博士生導(dǎo)師,研究方向?yàn)橐苿?dòng)無線通信系統(tǒng)和物聯(lián)網(wǎng)。
http://www.cnki.net/kcms/detail/61.1450.TP.20160126.1517.018.html
TP31
A
1673-629X(2016)02-0189-06
10.3969/j.issn.1673-629X.2016.02.042