欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法及裝置與流程

文檔序號(hào):12133673閱讀:393來源:國知局
基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法及裝置與流程
本發(fā)明涉及網(wǎng)絡(luò)
技術(shù)領(lǐng)域
,尤其涉及一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法及裝置。
背景技術(shù)
:日益增長的網(wǎng)絡(luò)規(guī)模和用戶需求給互聯(lián)網(wǎng)帶來了諸多挑戰(zhàn),其中隨著多媒體內(nèi)容的增長,當(dāng)今的互聯(lián)網(wǎng)體系暴露了它在內(nèi)容分發(fā)的低效性。用戶通常更關(guān)心他們需求什么內(nèi)容,而不是這些內(nèi)容的位置,現(xiàn)有的端到端的通信模式與之并不匹配。如何從網(wǎng)絡(luò)結(jié)構(gòu)、協(xié)議體系和服務(wù)模式等方面應(yīng)對(duì)這些挑戰(zhàn),將成為未來網(wǎng)絡(luò)研究的一個(gè)重要方向。內(nèi)容中心網(wǎng)絡(luò)(CCN,ContentCentricNetwork)是諸多研究中較為顯著的一種解決方案,它是一種全新的基于內(nèi)容的網(wǎng)絡(luò)體系結(jié)構(gòu),其主要不同點(diǎn)是基于內(nèi)容的命名、基于內(nèi)容名稱的路由和內(nèi)嵌緩存(In-networkCaching)等。在CCN中,路由器內(nèi)建存儲(chǔ)功能,用來緩存經(jīng)過的數(shù)據(jù)包(Data),用以加快其他用戶訪問緩存數(shù)據(jù)包的響應(yīng)時(shí)間,同時(shí)可減少網(wǎng)絡(luò)中的流量。當(dāng)一個(gè)路由器收到用戶請求的興趣包(Interest),利用名字進(jìn)行最長前綴匹配查找,有三個(gè)關(guān)鍵數(shù)據(jù)結(jié)構(gòu)完成轉(zhuǎn)發(fā):CS(ContentStore)、PIT(PendingInterestTable)、FIB(ForwardingInterestBase)。CS可以盡可能長時(shí)間地緩存轉(zhuǎn)發(fā)的包,以供其他消費(fèi)者使用。PIT記錄已經(jīng)轉(zhuǎn)發(fā)的興趣包,為了讓響應(yīng)的數(shù)據(jù)包能到達(dá)其請求者。FIB類似IP的FIB。當(dāng)一個(gè)興趣包到達(dá),首先匹配CS,如果有,則響應(yīng)并丟棄興趣包,其次匹配PIT,最后匹配FIB,如果沒有匹配則丟棄。當(dāng)數(shù)據(jù)包到達(dá),則需要根據(jù)緩存策略決定是否緩存在路由器CS中。CCN設(shè)計(jì)中有兩個(gè)問題亟待解決:路由器如何判斷是否緩存數(shù)據(jù)包;如果路由器沒有滿足興趣包如何向鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)該興趣包。目前CCN的緩存決策和轉(zhuǎn)發(fā)決策主要分為兩類:沿路(On-path)和脫離路徑(Off-path)。沿路緩存意味著數(shù)據(jù)包被存儲(chǔ)在請求路徑上。CCN默認(rèn)的緩存決策LCE(LeaveCopyEverywhere)就是沿路緩存策略,當(dāng)請求的內(nèi)容返回時(shí),沿途的所有節(jié)點(diǎn)都緩存該內(nèi)容副本,顯然這種方式導(dǎo)致緩存冗余,降低緩存空間利用率。即使研究者們提出了一些能夠降低緩存冗余的沿路緩存方案,比如在路徑上選擇某一個(gè)節(jié)點(diǎn)或節(jié)點(diǎn)集合進(jìn)行緩存,或者根據(jù)內(nèi)容流行度決定緩存內(nèi)容的優(yōu)先級(jí),但這些方案對(duì)網(wǎng)絡(luò)性能的提高比較有限。另外,興趣包一般以洪泛的方式向鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā),請求被命中是“碰巧的”;如果聯(lián)合考慮緩存放置的轉(zhuǎn)發(fā)策略,則需要一些復(fù)雜的轉(zhuǎn)發(fā)協(xié)議來交互緩存節(jié)點(diǎn)之間的存儲(chǔ)信息,這些都會(huì)降低網(wǎng)絡(luò)性能。相反,Off-path緩存決策則是根據(jù)預(yù)定義的規(guī)則將內(nèi)容緩存到指定節(jié)點(diǎn)上,興趣包根據(jù)相同的規(guī)則向指定的節(jié)點(diǎn)轉(zhuǎn)發(fā),顯然,Off-path緩存能夠充分利用緩存空間,顯著提高網(wǎng)絡(luò)命中率。哈希路由(Hash-routing)是其中最為突出的一種解決方案,本提案也主要關(guān)注哈希路由,即將哈希路由技術(shù)引入到CCN中,通過哈希函數(shù)將內(nèi)容標(biāo)識(shí)符映射到緩存節(jié)點(diǎn),并將緩存決策和請求轉(zhuǎn)發(fā)統(tǒng)一起來,優(yōu)化網(wǎng)絡(luò)空間使用效率,最大化緩存命中率。盡管CCN引進(jìn)哈希路由技術(shù)后能大大提高緩存命中率,但這是以興趣包有可能需要被轉(zhuǎn)發(fā)更多跳才被命中為代價(jià)的,進(jìn)而導(dǎo)致下載時(shí)延和域內(nèi)鏈路負(fù)載增加。如圖4所示,假設(shè)接入路由器R8收到對(duì)內(nèi)容A(興趣包)的請求,通常R8會(huì)將請求沿著最短路徑R7-R4-R9向出口路由器R10轉(zhuǎn)發(fā),從相應(yīng)服務(wù)器獲得請求的內(nèi)容。然而,R8通過計(jì)算哈希函數(shù)知道路由器R11(指定的節(jié)點(diǎn))負(fù)責(zé)緩存內(nèi)容A,于是請求路徑為R7-R11。如果路由器R11確實(shí)緩存了內(nèi)容A,那么內(nèi)容A沿著路徑R7-R11返回給用戶,否則,繼續(xù)將請求沿著路徑R4-R9向出口路由器R10轉(zhuǎn)發(fā),這比沿著最短路徑轉(zhuǎn)發(fā)多了一跳,其稱之為路徑延展(Pathstretch)。如何避免路徑延展也是引進(jìn)哈希路由后面臨的最大挑戰(zhàn)。LorenzoSaino等人提出了一種基于哈希路由的緩存機(jī)制,該機(jī)制依賴于哈希函數(shù)計(jì)算得到的緩存節(jié)點(diǎn)位置以及出口路由器位置,動(dòng)態(tài)選擇內(nèi)容回傳路徑。如果緩存節(jié)點(diǎn)沒有在最短路徑上,如圖4所示,假設(shè)緩存節(jié)點(diǎn)為R11,內(nèi)容A將沿著最短路徑R10-R9-R4-R7-R8最快返回給用戶,同時(shí)也會(huì)沿著反向請求路徑R10-R9-R15-R11在指定緩存節(jié)點(diǎn)緩存內(nèi)容副本。SenWang等人提出了基于內(nèi)容空間劃分和哈希路由的協(xié)同緩存機(jī)制,通過智能劃分內(nèi)容空間,該機(jī)制能夠有效約束由哈希路由導(dǎo)致的路徑延展。因此,在進(jìn)行內(nèi)容劃分時(shí)需要滿足最差路徑延展(worstpathstretch,wps)并盡可能多的覆蓋所有請求。如圖4所示,如果wps設(shè)為一跳,那么從出口R14轉(zhuǎn)出的內(nèi)容被劃分給節(jié)點(diǎn)R3,R4,R5,R7,R14(cluster-R14),從出口R10轉(zhuǎn)出的內(nèi)容被劃分給節(jié)點(diǎn)R4,R9,R10,R13(cluster-R10).LorenzoSaino等人提出的內(nèi)容回傳路徑與請求路徑是不對(duì)稱的,并不適用CCN興趣包和數(shù)據(jù)包的天然對(duì)稱路徑環(huán)境。SenWang等人提出的約束最差路徑延展是基于每條路徑來實(shí)現(xiàn)的,缺乏全局考量,甚至?xí)?dǎo)致一些節(jié)點(diǎn)空閑沒有被安排緩存內(nèi)容。也會(huì)有一些節(jié)點(diǎn)同時(shí)屬于多個(gè)劃分,這些共用的節(jié)點(diǎn)上內(nèi)容頻繁替換,導(dǎo)致命中率下降。此外,劃分內(nèi)容空間時(shí),沒有考慮到不同出口路由器所能服務(wù)的流量差異,導(dǎo)致復(fù)用節(jié)點(diǎn)緩存空間的頻繁替換,從而降低了網(wǎng)絡(luò)性能。技術(shù)實(shí)現(xiàn)要素:本發(fā)明提供一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法及裝置,用于解決現(xiàn)有技術(shù)中在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中路由分發(fā)內(nèi)容的低效問題。第一方面,本發(fā)明提供一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法,包括:獲取一網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu);根據(jù)所述拓?fù)浣Y(jié)構(gòu)獲取各個(gè)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量;根據(jù)所述節(jié)點(diǎn)信息和所述出口節(jié)點(diǎn)的出口流量生成網(wǎng)絡(luò)分簇模型;根據(jù)網(wǎng)絡(luò)分簇模型計(jì)算獲得節(jié)點(diǎn)簇信息;當(dāng)入口節(jié)點(diǎn)接收到內(nèi)容請求后,根據(jù)所述內(nèi)容請求判斷確定對(duì)應(yīng)的節(jié)點(diǎn)簇;根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn);將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中存有請求的內(nèi)容,則把內(nèi)容返回。優(yōu)選地,所述網(wǎng)絡(luò)分簇模型,包括:nj=n·tj,j=1,2,…,|ER|(5)其中,ER為拓?fù)浣Y(jié)構(gòu)的出口節(jié)點(diǎn)集合,IR為拓?fù)浣Y(jié)構(gòu)的入口節(jié)點(diǎn)集合,V為第i個(gè)節(jié)點(diǎn),ERj為第j個(gè)出口節(jié)點(diǎn),IRk為第k個(gè)入口節(jié)點(diǎn),|ER|為出口路由器集合的大小,nj為第j個(gè)簇的大小,tj為第j個(gè)出口節(jié)點(diǎn)的出口流量。優(yōu)選地,所述根據(jù)網(wǎng)絡(luò)分簇模型計(jì)算獲得節(jié)點(diǎn)簇信息,包括:根據(jù)網(wǎng)絡(luò)分簇模型采用模擬退火算法計(jì)算獲得節(jié)點(diǎn)簇信息,所述節(jié)點(diǎn)簇信息包括節(jié)點(diǎn)簇的個(gè)數(shù),以及每個(gè)節(jié)點(diǎn)簇的節(jié)點(diǎn)信息。優(yōu)選地,所述根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn),包括:根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求采用哈希函數(shù)獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn)。優(yōu)選地,還包括:將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中未存有請求的內(nèi)容,則繼續(xù)向出口節(jié)點(diǎn)轉(zhuǎn)發(fā)。第二方面,本發(fā)明提供一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存裝置,包括:第一獲取模塊,用于獲取一網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu);第二獲取模塊,用于根據(jù)所述拓?fù)浣Y(jié)構(gòu)獲取各個(gè)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量;生成模塊,用于根據(jù)所述節(jié)點(diǎn)信息和所述出口節(jié)點(diǎn)的出口流量生成網(wǎng)絡(luò)分簇模型;計(jì)算模塊,用于根據(jù)網(wǎng)絡(luò)分簇模型計(jì)算獲得節(jié)點(diǎn)簇信息;第一選擇模塊,用于當(dāng)入口節(jié)點(diǎn)接收到內(nèi)容請求后,根據(jù)所述內(nèi)容請求判斷確定對(duì)應(yīng)的節(jié)點(diǎn)簇;第二選擇模塊,用于根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn);轉(zhuǎn)發(fā)模塊,用于將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中存有請求的內(nèi)容,則把內(nèi)容返回。優(yōu)選地,所述網(wǎng)絡(luò)分簇模型,包括:nj=n·tj,j=1,2,…,|ER|(5)其中,ER為拓?fù)浣Y(jié)構(gòu)的出口節(jié)點(diǎn)集合,IR為拓?fù)浣Y(jié)構(gòu)的入口節(jié)點(diǎn)集合,V為第i個(gè)節(jié)點(diǎn),ERj為第j個(gè)出口節(jié)點(diǎn),IRk為第k個(gè)入口節(jié)點(diǎn),|ER|為出口路由器集合的大小,nj為第j個(gè)簇的大小,tj為第j個(gè)出口節(jié)點(diǎn)的出口流量。優(yōu)選地,所述計(jì)算模塊具體用于:根據(jù)網(wǎng)絡(luò)分簇模型采用模擬退火算法計(jì)算獲得節(jié)點(diǎn)簇信息,所述節(jié)點(diǎn)簇信息包括節(jié)點(diǎn)簇的個(gè)數(shù),以及每個(gè)節(jié)點(diǎn)簇的節(jié)點(diǎn)信息。優(yōu)選地,所述第二選擇模塊具體用于:根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求采用哈希函數(shù)獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn)。優(yōu)選地,所述轉(zhuǎn)發(fā)模塊還用于:將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中未存有請求的內(nèi)容,則繼續(xù)向出口節(jié)點(diǎn)轉(zhuǎn)發(fā)。由上述技術(shù)方案可知,本發(fā)明提供的一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法及裝置,通過對(duì)拓?fù)浣Y(jié)構(gòu)中的節(jié)點(diǎn)建立網(wǎng)絡(luò)分簇模型,并采用模擬退火算法得到節(jié)點(diǎn)簇,再采用哈希算法尋找到簇內(nèi)緩存節(jié)點(diǎn),在內(nèi)容請求轉(zhuǎn)發(fā)過程中,實(shí)現(xiàn)路由和緩存聯(lián)合考慮,保證高效的內(nèi)容分發(fā)。附圖說明圖1為本發(fā)明實(shí)施例1提供的基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法的流程示意圖;圖2為本發(fā)明實(shí)施例提供的內(nèi)容緩存和請求路徑的示意圖;圖3為本發(fā)明實(shí)施例2提供的基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存裝置的結(jié)構(gòu)示意圖;圖4為現(xiàn)有技術(shù)中內(nèi)容緩存和請求路徑的示意圖。具體實(shí)施方式下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。圖1示出了本發(fā)明實(shí)施例1提供一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法,包括:S11、獲取一網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。在本步驟中,需要說明的是,獲取AS域的拓?fù)浣Y(jié)構(gòu),用于對(duì)AS域的拓?fù)浣Y(jié)構(gòu)進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)(路由器)分簇。S12、根據(jù)所述拓?fù)浣Y(jié)構(gòu)獲取各個(gè)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量。在本步驟中,需要說明的是,對(duì)拓?fù)浣Y(jié)構(gòu)進(jìn)行節(jié)點(diǎn)分簇需要建立網(wǎng)絡(luò)分簇模型,建立模型首先要獲取建立過程中所需的信息。對(duì)于一個(gè)拓?fù)浣Y(jié)構(gòu)來說,其存在的各個(gè)節(jié)點(diǎn)信息均能夠得到。節(jié)點(diǎn)信息可包括入口節(jié)點(diǎn)、出口節(jié)點(diǎn)和中間節(jié)點(diǎn)的個(gè)數(shù)以及位置關(guān)系。除此之外,簇的大小直觀反映著一個(gè)簇的服務(wù)能力,而有多少請求流量被直接發(fā)送給某個(gè)出口意味著這個(gè)簇需要承載多少流量。因此本方法進(jìn)行分簇需通過根據(jù)出口流量動(dòng)態(tài)調(diào)整簇的大小,實(shí)現(xiàn)合理使用網(wǎng)絡(luò)緩存資源的目標(biāo),故需通過計(jì)算獲得每個(gè)出口節(jié)點(diǎn)的出口流量。S13、根據(jù)所述節(jié)點(diǎn)信息和所述出口節(jié)點(diǎn)的出口流量生成網(wǎng)絡(luò)分簇模型。在本步驟中,需要說明的是,首先要建立網(wǎng)絡(luò)分簇模型,可定義如下表1的變量:表1表示為節(jié)點(diǎn)變量變量定義G拓?fù)浣Y(jié)構(gòu)ER出口節(jié)點(diǎn)集合IR入口節(jié)點(diǎn)集合Vi第i個(gè)節(jié)點(diǎn)ERj第j個(gè)出口節(jié)點(diǎn)IRk第k個(gè)入口節(jié)點(diǎn)|ER|出口節(jié)點(diǎn)集合的大小nj第j個(gè)簇的大小tj第j個(gè)出口節(jié)點(diǎn)的出口流量假設(shè)CCN中一個(gè)任意AS緩存拓?fù)浣Y(jié)構(gòu),由無向圖G=(V,E)表示,該圖有n個(gè)頂點(diǎn)和m條邊。根據(jù)出口將網(wǎng)絡(luò)分成相應(yīng)的簇,即決定節(jié)點(diǎn)Vi是否屬于簇j,具體表述如下:其中node為節(jié)點(diǎn),cluster為簇。給定一組出口節(jié)點(diǎn)和入口節(jié)點(diǎn),該優(yōu)化問題的目標(biāo)是將圖G劃分成大小有限的|ER|個(gè)簇,同時(shí)最小化指定節(jié)點(diǎn)到對(duì)應(yīng)出口的距離以及指定節(jié)點(diǎn)到所有入口的距離和。即網(wǎng)絡(luò)分簇模型為:nj=n·tj,j=1,2,…,|ER|(5)其中,第一個(gè)約束意味著所有節(jié)點(diǎn)都必須劃分到某一個(gè)簇,沒有遺漏,這樣不會(huì)出現(xiàn)空閑節(jié)點(diǎn);第二個(gè)約束則表明一個(gè)節(jié)點(diǎn)只能屬于一個(gè)簇,否則在被多個(gè)簇共用的節(jié)點(diǎn)上緩存的內(nèi)容會(huì)頻繁替換,導(dǎo)致緩存命中率下降;第三個(gè)約束說明每個(gè)簇的大小有限,式(5)則進(jìn)一步說明簇的大小正比于出口流量,并可以根據(jù)出口流量動(dòng)態(tài)調(diào)整簇的大小。S14、根據(jù)網(wǎng)絡(luò)分簇模型計(jì)算獲得節(jié)點(diǎn)簇信息。在本步驟中,需要說明的是,根據(jù)網(wǎng)絡(luò)分簇模型采用模擬退火算法計(jì)算獲得節(jié)點(diǎn)簇信息,所述節(jié)點(diǎn)簇信息包括節(jié)點(diǎn)簇的個(gè)數(shù),以及每個(gè)節(jié)點(diǎn)簇的節(jié)點(diǎn)信息。本方法中,最優(yōu)劃分定義為劃分后緩存節(jié)點(diǎn)與入口節(jié)點(diǎn)以及出口節(jié)點(diǎn)之間的總距離最小。因此,本提案采用模擬退火算法,該算法是一種貪心算法,并不一定能找到全局的最優(yōu)解,但可以比較快的找到問題的近似最優(yōu)解,如果參數(shù)設(shè)置得當(dāng),模擬退火算法搜索效率比窮舉法要高。算法具體過程如下:算法先以搜尋空間內(nèi)一個(gè)給定的簇大小(正比于出口流量)的分簇狀態(tài)作起始:每一次通過交換屬于兩個(gè)不同簇的兩個(gè)節(jié)點(diǎn)來選擇一個(gè)“鄰居”分簇狀態(tài),如果新的分簇狀態(tài)有更小的總距離,則接受當(dāng)前解;否則以一定的概率來接受一個(gè)比當(dāng)前解要差的解,而且這個(gè)概率隨著時(shí)間推移逐漸降低(逐漸降低才能趨向穩(wěn)定)。因此模擬退火算法是一種隨機(jī)算法,有可能會(huì)跳出這個(gè)局部的最優(yōu)解,達(dá)到全局的最優(yōu)解??梢岳斫獾氖牵景l(fā)明實(shí)施例并不局限于上述算法得到全局的最優(yōu)解。對(duì)于可以得到全局最優(yōu)解的其他算法均可使用。如蟻群算法、遺傳算法等。通過上述算法對(duì)網(wǎng)絡(luò)分簇模型進(jìn)行求解,可得到拓?fù)浣Y(jié)構(gòu)中的節(jié)點(diǎn)簇,每個(gè)節(jié)點(diǎn)簇內(nèi)包括多個(gè)節(jié)點(diǎn)。S15、當(dāng)入口節(jié)點(diǎn)接收到內(nèi)容請求后,根據(jù)所述內(nèi)容請求判斷確定對(duì)應(yīng)的節(jié)點(diǎn)簇。在本步驟中,需要說明的是,分簇后,每個(gè)簇內(nèi)有且僅有一個(gè)出口節(jié)點(diǎn)。因此,從該出口節(jié)點(diǎn)向內(nèi)容源轉(zhuǎn)發(fā)的內(nèi)容僅在對(duì)應(yīng)的簇內(nèi)緩存。當(dāng)入口節(jié)點(diǎn)收到對(duì)某內(nèi)容請求興趣包時(shí),首先根據(jù)請求的內(nèi)容標(biāo)識(shí)符判斷將從哪個(gè)出口轉(zhuǎn)出,進(jìn)而找到對(duì)應(yīng)的簇,簇內(nèi)的每個(gè)節(jié)點(diǎn)都有一個(gè)簇內(nèi)標(biāo)簽。S16、根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn)。在本步驟中,需要說明的是,在步驟S15確定節(jié)點(diǎn)簇后,再通過哈希函數(shù)確定該內(nèi)容在簇內(nèi)具體的緩存位置,以及在簇內(nèi)進(jìn)行哈希路由。通過哈希函數(shù)確定該內(nèi)容在簇內(nèi)具體的緩存位置是較成熟的技術(shù),在此不再贅述。S17、將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中存有請求的內(nèi)容,則把內(nèi)容返回。在本步驟中,需要說明的是,通過哈希計(jì)算,將內(nèi)容標(biāo)識(shí)符映射到簇內(nèi)緩存節(jié)點(diǎn),于是將該緩存節(jié)點(diǎn)的標(biāo)簽添加到興趣包前綴上,直接將興趣包路由到指定節(jié)點(diǎn)上,沿路節(jié)點(diǎn)并不需要進(jìn)行查詢。如果該緩存節(jié)點(diǎn)有請求的內(nèi)容,則把內(nèi)容返回給用戶;否則,繼續(xù)向出口轉(zhuǎn)發(fā),以從內(nèi)容源獲得內(nèi)容。當(dāng)請求內(nèi)容從出口節(jié)點(diǎn)進(jìn)入AS域內(nèi)時(shí),沿著反向路徑返回給用戶,并在指定節(jié)點(diǎn)上緩存內(nèi)容副本。因此,某個(gè)內(nèi)容在簇內(nèi)至多一個(gè)節(jié)點(diǎn)上緩存,如果從不同出口節(jié)點(diǎn)轉(zhuǎn)出的內(nèi)容是異構(gòu)的,那么在整個(gè)AS內(nèi)某個(gè)內(nèi)容也至多在一個(gè)節(jié)點(diǎn)上緩存,從而避免了緩存冗余,緩存空間得以更加高效的利用。另外,通過哈希路由,可實(shí)現(xiàn)了路由和緩存聯(lián)合考慮,保證高效的內(nèi)容分發(fā)。下面以具體實(shí)施例對(duì)上述方法進(jìn)行具體解釋說明:通過哈希函數(shù),內(nèi)容標(biāo)識(shí)符被映射到值xi:i∈[1,nj],其中nj是簇j中路由器數(shù)目。任何哈希函數(shù)都可以用于本方案。為了方便表述,現(xiàn)采用模哈希(key模n)。模哈希廣泛應(yīng)用于路由轉(zhuǎn)發(fā)和緩存決策。在本方法中,key為內(nèi)容標(biāo)識(shí)符,n為簇中路由器數(shù)目。拓?fù)淙鐖D2所示,假設(shè)出口節(jié)點(diǎn)R14流量為70%的總流量,出口節(jié)點(diǎn)R10流量為剩下的30%。根據(jù)分簇算法可得:節(jié)點(diǎn)R6,R9,R10,R12和R13屬于cluster(簇)-R10,剩下的11個(gè)節(jié)點(diǎn)屬于cluster(簇)-R14。因此,值(0,1,2,3,4)隨機(jī)分配給cluster-R10,值(0,1,2,…,10)隨機(jī)分配給cluster-R14。cluster-R14的分配結(jié)果如下表所示。每個(gè)入口節(jié)點(diǎn)的都需要維護(hù)這樣的分配映射表。如圖2所示,當(dāng)入口節(jié)點(diǎn)R8收到對(duì)內(nèi)容A的請求興趣包時(shí),查詢該請求內(nèi)容名稱前綴會(huì)知道將從哪個(gè)出口節(jié)點(diǎn)離開AS信息,即,請求如果在AS內(nèi)沒有得到滿足則將通過該出口并驗(yàn)證相應(yīng)域間AS鏈路轉(zhuǎn)發(fā)給相應(yīng)內(nèi)容源。經(jīng)過查詢出口節(jié)點(diǎn)為R14,則指定的緩存節(jié)點(diǎn)應(yīng)該屬于簇cluster-R14。通過哈希計(jì)算后得到值10,而10對(duì)應(yīng)的路由器為R16(指定用來緩存內(nèi)容A的節(jié)點(diǎn)),于是,直接將興趣包轉(zhuǎn)發(fā)給指定的緩存節(jié)點(diǎn)R16。如果內(nèi)容A緩存在節(jié)點(diǎn)R16中,則直接通過入口R8返回給用戶。否則,繼續(xù)向出口R14轉(zhuǎn)發(fā),以從內(nèi)容源獲得內(nèi)容。本發(fā)明實(shí)施例1提供的一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存方法,通過對(duì)拓?fù)浣Y(jié)構(gòu)中的節(jié)點(diǎn)建立網(wǎng)絡(luò)分簇模型,并采用模擬退火算法得到節(jié)點(diǎn)簇,再采用哈希算法尋找到簇內(nèi)緩存節(jié)點(diǎn),在內(nèi)容請求轉(zhuǎn)發(fā)過程中,實(shí)現(xiàn)路由和緩存聯(lián)合考慮,保證高效的內(nèi)容分發(fā)。圖3示出了本發(fā)明實(shí)施例2提供的基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存裝置,包括第一獲取模塊21、第二獲取模塊22、生成模塊23、計(jì)算模塊24、第一選擇模塊25、第二選擇模塊26和轉(zhuǎn)發(fā)模塊27,其中:第一獲取模塊21,用于獲取一網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu);第二獲取模塊22,用于根據(jù)所述拓?fù)浣Y(jié)構(gòu)獲取各個(gè)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量;生成模塊23,用于根據(jù)所述節(jié)點(diǎn)信息和所述出口節(jié)點(diǎn)的出口流量生成網(wǎng)絡(luò)分簇模型;計(jì)算模塊24,用于根據(jù)網(wǎng)絡(luò)分簇模型計(jì)算獲得節(jié)點(diǎn)簇信息;第一選擇模塊25,用于當(dāng)入口節(jié)點(diǎn)接收到內(nèi)容請求后,根據(jù)所述內(nèi)容請求判斷確定對(duì)應(yīng)的節(jié)點(diǎn)簇;第二選擇模塊26,用于根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn);轉(zhuǎn)發(fā)模塊27,用于將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中存有請求的內(nèi)容,則把內(nèi)容返回。在執(zhí)行過程中,第一獲取模塊21獲取一網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。第二獲取模塊22獲取該拓?fù)浣Y(jié)構(gòu)各個(gè)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量。生成模塊23根據(jù)節(jié)點(diǎn)信息和出口節(jié)點(diǎn)的出口流量建立網(wǎng)絡(luò)分簇模型。計(jì)算模塊24采用模擬退火算法對(duì)網(wǎng)絡(luò)分簇模型進(jìn)行計(jì)算獲得節(jié)點(diǎn)簇信息。當(dāng)入口節(jié)點(diǎn)接收到內(nèi)容請求后,第一選擇模塊25根據(jù)內(nèi)容請求判斷確定對(duì)應(yīng)的節(jié)點(diǎn)簇。第二選擇模塊26根據(jù)節(jié)點(diǎn)簇信息和內(nèi)容請求采用哈希算法獲得對(duì)應(yīng)的簇內(nèi)緩存節(jié)點(diǎn)。轉(zhuǎn)發(fā)模塊27,將內(nèi)容請求轉(zhuǎn)發(fā)到簇內(nèi)緩存節(jié)點(diǎn),若簇內(nèi)緩存節(jié)點(diǎn)中存有請求的內(nèi)容,則把內(nèi)容返回。若簇內(nèi)緩存節(jié)點(diǎn)中未存有請求的內(nèi)容,則繼續(xù)向出口節(jié)點(diǎn)轉(zhuǎn)發(fā)。由于本發(fā)明實(shí)施例4所述裝置與上述實(shí)施例所述方法的原理相同,對(duì)于更加詳細(xì)的解釋內(nèi)容在此不再贅述。需要說明的是,本發(fā)明實(shí)施例中可以通過硬件處理器(hardwareprocessor)來實(shí)現(xiàn)相關(guān)功能模塊。本發(fā)明提供的一種基于網(wǎng)絡(luò)分簇和哈希路由的CCN協(xié)同緩存裝置,通過對(duì)拓?fù)浣Y(jié)構(gòu)中的節(jié)點(diǎn)建立網(wǎng)絡(luò)分簇模型,并采用模擬退火算法得到節(jié)點(diǎn)簇,再采用哈希算法尋找到簇內(nèi)緩存節(jié)點(diǎn),在內(nèi)容請求轉(zhuǎn)發(fā)過程中,實(shí)現(xiàn)路由和緩存聯(lián)合考慮,保證高效的內(nèi)容分發(fā)。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。本領(lǐng)域普通技術(shù)人員可以理解:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明權(quán)利要求所限定的范圍。當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
全州县| 海安县| 抚州市| 衢州市| 三穗县| 运城市| 广宁县| 云梦县| 郴州市| 泰顺县| 长武县| 都江堰市| 静宁县| 福清市| 青阳县| 称多县| 浮梁县| 安化县| 新源县| 微山县| 贺兰县| 勃利县| 华亭县| 上思县| 北宁市| 西乌珠穆沁旗| 铁力市| 四川省| 永修县| 北安市| 全南县| 钟山县| 伊宁县| 汉川市| 五莲县| 靖远县| 内黄县| 同仁县| 凌海市| 三河市| 宜阳县|