路由器之間內(nèi)容表同步的制作方法
【專利摘要】用于在第一和第二內(nèi)容路由器之間交換信息的系統(tǒng)及方法的實施例,使內(nèi)容路由器能夠通過交換最少的信息來同步它們的緩存。在一實施例中,該方法包括:使用與所述第二內(nèi)容路由器共用的聯(lián)合哈希函數(shù)建立所述第一內(nèi)容路由器的緩存的內(nèi)容的哈希;以分布式信源編碼對所述第一內(nèi)容路由器緩存的內(nèi)容的哈希進行編碼;把編碼后的哈希發(fā)送給所述第二內(nèi)容路由器。
【專利說明】路由器之間內(nèi)容表同步
【技術(shù)領域】
[0001]本發(fā)明涉及路由器之間交換轉(zhuǎn)發(fā)表信息的系統(tǒng)及方法。
技術(shù)背景
[0002]信息中心網(wǎng)絡(ICNs)使內(nèi)容成了組網(wǎng)架構(gòu)的細腰。信息中心網(wǎng)絡基于內(nèi)容進行路由,而不是如互聯(lián)網(wǎng)協(xié)議(IP)網(wǎng)絡般基于節(jié)點地址。而且,這些ICN架構(gòu)允許路由器把內(nèi)容透明地存儲在附屬于該路由器的存儲器中。
[0003]基于內(nèi)容的路由以及由ICN實現(xiàn)的存儲內(nèi)容可能位置的增長,使得ICN中的路由面臨更多的挑戰(zhàn)。現(xiàn)在一個典型的路由器路由表中包含約400,000條前綴項,而內(nèi)容路由使這個數(shù)量增長了好幾個數(shù)量級。因此,這就需要新的工具及協(xié)議,以便以高效的、可擴展的方式進行路由信息的交換。
【發(fā)明內(nèi)容】
[0004]根據(jù)一實施例,第一和第二內(nèi)容路由器之間交換信息的方法包括:使用與所述第二內(nèi)容路由器共用的聯(lián)合哈希函數(shù)建立所述第一內(nèi)容路由器緩存內(nèi)容的哈希;以分布式信源編碼對所述第一內(nèi)容路由器緩存內(nèi)容的哈希進行編碼;把編碼后的哈希發(fā)送給所述第二內(nèi)容路由器。
[0005]根據(jù)另一實施例,用于在第一和第二內(nèi)容路由器之間交換信息的網(wǎng)絡組件包括:處理器及存儲由所述處理器執(zhí)行的程序的計算機可讀存儲介質(zhì),其中所述程序包括用于執(zhí)行以下操作的指令:使用與所述第二內(nèi)容路由器共用的聯(lián)合哈希函數(shù)建立所述第一內(nèi)容路由器緩存內(nèi)容的哈希,以分布式信源編碼對所述第一內(nèi)容路由器緩存內(nèi)容的哈希進行編碼,把編碼后的哈希發(fā)送給所述第二內(nèi)容路由器。
[0006]根據(jù)另一實施例,一種內(nèi)容路由器之間交換信息的方法包括:創(chuàng)建第一內(nèi)容路由器緩存的表項的哈希;以分布式信源編碼對所述表項的哈希進行編碼;把編碼后的哈希發(fā)送給第二內(nèi)容路由器,其中所述編碼后的哈希包括同時屬于所述第一內(nèi)容路由器及第二內(nèi)容路由器的元素的陪集,以使所述第二內(nèi)容路由器可以從所述編碼后哈希中恢復所述陪集中不包含在所述第二內(nèi)容路由器的緩存中的元素。
【專利附圖】
【附圖說明】
[0007]為更好的理解本發(fā)明及其優(yōu)點,以下結(jié)合附圖進行描述,其中,
[0008]圖1為兩個內(nèi)容路由器之間交換信息的系統(tǒng)實施例的示意圖;
[0009]圖2是用于哈希及映射一個內(nèi)容路由器的內(nèi)存的表項以與其他內(nèi)容路由器交換信息的系統(tǒng)實施例的示意圖;
[0010]圖3是內(nèi)容路由器之間交換緩存信息的方法實施例的流程圖;
[0011]圖4是用于實現(xiàn)在此公開的設備及方法的網(wǎng)絡單元的框圖。
【具體實施方式】
[0012]以下將詳細說明目前優(yōu)選的實施例的制作和使用。然而,應當理解的是,本發(fā)明提供諸多可以在廣泛的具體環(huán)境中實現(xiàn)的可應用的創(chuàng)新理念。所論述的具體實施僅僅是為了說明制作和使用本發(fā)明的具體方式,而不對發(fā)明范圍進行限制。
[0013]以下公開了在ICN網(wǎng)絡及其他類似網(wǎng)絡中路由器之間交換緩存信息的系統(tǒng)及方法。例如,在一實施例中,該網(wǎng)絡是一個具有層級結(jié)構(gòu)的內(nèi)容分發(fā)網(wǎng)絡(CDN),其中,對低一級緩存的內(nèi)容的請求如果在本地得不到相應的內(nèi)容,會向上傳送。在其他的實施例中,該網(wǎng)絡可能是面向內(nèi)容的網(wǎng)絡(CON)或者是內(nèi)容中心網(wǎng)絡。因此,盡管主要是結(jié)合ICN進行說明,本領域的普通技術(shù)人員可以意識到所公開的系統(tǒng)及方法并不僅限于此。
[0014]在一實施例中,公開了相鄰路由器之間交換信息的系統(tǒng)及方法。由于內(nèi)容表中內(nèi)容的數(shù)量可能變得很大,找到一種有效的交換緩存信息及跨表格更新內(nèi)容的機制變得更為重要。在一實施例中,所述公開的系統(tǒng)及方法考慮到了雙方的內(nèi)容是緊密相關(guān)的。事實上,通過相鄰緩存的流量可能會同時通過兩個內(nèi)容路由器,或者,如果它只經(jīng)過兩個中的一個,內(nèi)容本身顯示出一些相關(guān)性:一個緩存中的熱點內(nèi)容顯示出與另一個緩存中的熱點內(nèi)容的相似性。
[0015]在一實施例中,聯(lián)合哈希與分布式信源編碼被用來在兩個內(nèi)容路由器之間交換內(nèi)容。其他在兩個對象之間交換與兩者間差異成正比的數(shù)據(jù)的方法經(jīng)常是概率性的。
[0016]在一實施例中,相鄰內(nèi)容路由器之間交換緩存信息的方法隔某個固定間隔對內(nèi)容進行檢查,其中,該間隔是由內(nèi)容中的變化量觸發(fā)的,并使用分布式信源編碼來高效地分享內(nèi)容更新。在一實施例中,假定兩個相鄰的內(nèi)容路由器需要交換一個很大的內(nèi)容表以通告各自的路由信息。該公開的系統(tǒng)及方法提供一種只需在兩路由器之間交換實質(zhì)上最少量的數(shù)據(jù)就能使它們完全重構(gòu)路由表的內(nèi)容的機制。
[0017]雖然交換兩個內(nèi)容路由器之間的緩存內(nèi)容的簡單方法就是交換整個內(nèi)容表,但是由于這兩個路由器相鄰,它們獲得的網(wǎng)絡信息是相似的,而且它們之間共享的很多信息都是冗余的。
[0018]壓縮該內(nèi)容表是可能的。然而,內(nèi)容表項中有三類內(nèi)容需要考慮:1)兩個表格之間共享的內(nèi)容,這些內(nèi)容是冗余的,并可以使用某個壓縮技術(shù)把這些內(nèi)容壓縮掉;2)其中一個內(nèi)容路由器可以感知的、但路由表中沒有對應表項的內(nèi)容;3)其中一個內(nèi)容路由器完全不知道的內(nèi)容。
[0019]以下舉例說明此三類內(nèi)容。在一個示例中,有些內(nèi)容信息通過內(nèi)容路由協(xié)議傳送到了兩個路由器。此內(nèi)容屬于類別I)。兩個內(nèi)容路由器都可以感知到該內(nèi)容。
[0020]在類別2)中,有些內(nèi)容信息是由通過網(wǎng)絡的流量產(chǎn)生的。比如,在把內(nèi)容轉(zhuǎn)發(fā)出去之前,內(nèi)容路由器可能把對象緩存在它的內(nèi)容存儲器中。如果該內(nèi)容是由與之共享內(nèi)容表的內(nèi)容路由器接收的,很有可能該內(nèi)容會包括在該內(nèi)容路由器的路由表中。這不是100%的,因為兩個路由器的緩存策略會不同,而且此信息可能會超時。但是兩個路由器都能獲知該信息是否還在。這屬于類別2)。再者,這可以用來壓縮交換信息,因為分布式信源編碼有邊信息的問題。
[0021]在類別3)中,另一方面,還對應于經(jīng)過一個路由器并被該路由器緩存、但無法到達其相鄰路由器的內(nèi)容(比如,由于其中一個路由器是目的端,或者由于路由器從第三和第四路由器接收內(nèi)容并將其發(fā)送給第三和第四路由器)。此信息必須被傳送,而且,除了把文字符串壓縮在這些表項中,沒有其他交換此信息的方法。
[0022]由于分布式信源編碼或斯理篇-伍夫方式不能直接應用于第3種類別,在一實施例中,一種方法控制表格中的變化量,并用來高效地交換內(nèi)容路由。例如,假設兩個內(nèi)容表都在時間t被同步,即兩個內(nèi)容路由器都已經(jīng)交換了它們想要交換的路由信息,并且所有的內(nèi)容表項都屬于類別I)。同步之后,系統(tǒng)進行演變直到兩個觸發(fā)器中最早的一個發(fā)生。觸發(fā)器是:a)內(nèi)容路由協(xié)議的自然周期交換機制;及《 —個路由表中的變化量(刪除或添加)達到預設目標d,其中d是會觸發(fā)更新的變化量。當此停止時間發(fā)生在時間tl時,新的交換機制被觸發(fā)。這就意味著內(nèi)容表之間的不同項在時間t和tl不能超過d項。在一實施例中,公開了一種以緊湊方式交換路由表的機制,該機制可以恢復多達d個不同項。
[0023]圖1為兩個內(nèi)容路由器之間交互信息的系統(tǒng)100實施例的示意圖。在一實施例中,系統(tǒng)100包括:兩個內(nèi)容路由器102、104,兩個編碼器106、108及兩個解碼器110、112。路由器102、104有相關(guān)聯(lián)的業(yè)務流。內(nèi)容路由器102、104用于哈希其內(nèi)容轉(zhuǎn)發(fā)表緩存的內(nèi)容,分別使用編碼器106、108對哈希進行壓縮,及把編碼的數(shù)據(jù)發(fā)送給另一個內(nèi)容路由器102、104。另一個內(nèi)容路由器102、104可以分別使用解碼器110、112對編碼后的數(shù)據(jù)進行解碼,并從另一個內(nèi)容路由器102、104請求缺失的或不同的緩存元素。
[0024]舉例來說,兩個內(nèi)容路由器Rl和R2嘗試協(xié)調(diào)它們的內(nèi)容路由表。設定一個向量U,該向量對應Rl和R2可知的所有可能表項,即Rl和R2持有的表項的并集。一個表項是內(nèi)容的名稱及該內(nèi)容的某個度量值,從而每個路由器可以決定從哪條路路由至該內(nèi)容(即,對于R1,如果R2持有一個Rl所不知道的表項或一個更低度量值的表項,則R2成為Rl的內(nèi)容轉(zhuǎn)發(fā)表中該表項的下一跳)??梢约僭O,內(nèi)容指針和度量值的連結(jié)形成一個標簽集,U的內(nèi)容是從該標簽集中抽取的。Rl持有的表項的向量用Ul表示,R2持有的表項的向量用U2表不。
[0025]U1、U2的基數(shù)用nl、n2表示,U的基數(shù)用η表示,n-nl (或η-n2)的差值用dl (或d2)表示,其中,η定義為u的基數(shù),也就是列表的大小,該列表包括任何一個路由器可知的所有項,η可以看成是向量U的長度。假設d〈dl+d2及d〈〈n,例如,d是一個小于η的數(shù)量級。
[0026]從U到{1,2,…m}中定義一個統(tǒng)一哈希h,其中m是一個比η更大的數(shù),η將在稍后具體說明,u是列表U中的一項。以以下方式創(chuàng)建一個維度m的向量Xi(i = 1,2),其中,
[0027]如果U」中存在u使h (u) = k,則X_i (k) = I ;
[0028]否則,X_i(k)=0。
[0029]由于Ul和U2僅相差少于d個點,向量Xl和X2是兩個緊密相關(guān)的序列。只要使沖突的可能性保持為低,Xl與X2就可以以快速的方式交換,以識別Ul及U2的差異。參見圖2,圖2是用于哈希及映射一個內(nèi)容路由器的內(nèi)存的表項以與其他內(nèi)容路由器交換信息的系統(tǒng)200實施例的示意圖。系統(tǒng)200包括:在內(nèi)容路由器緩存中多個表項202,對所述表項應用哈希函數(shù)h后產(chǎn)生的哈希值206,及用來減少哈希中的沖突的映射204.
[0030]為了以簡明的方式交換Xl及X2,一實施例使用分布式信源編碼。由于斯理篇-伍夫,關(guān)鍵結(jié)果是Rl只需要發(fā)送H(XI |X2)比特給R2,R2就可以恢復Xl(其中H(X_1|X_2)是Xl以X2為條件的熵)。通過采用諸如S.S.普拉丹和K.朗姆錢德蘭在“采用校驗子的分布式信源編碼(DSCTS):設計與構(gòu)建”,158-167頁,1999年3月,中描述的方法,其全部內(nèi)容通過引用結(jié)合在本申請中,這已經(jīng)在實踐中實現(xiàn)。在沒有沖突的情況下,Xl與X2之間的漢明間距小于d。Rl只需要把Xl所屬的陪集發(fā)給R2,R2就可以從此陪集中取回此陪集中與X2最接近的元素(其中,陪集是空間的分區(qū),每個陪集中的元素間的漢明間距大于d)。需要關(guān)注的是,兩個相同長度的字符串之間的漢明間距是相應符號不相同的位置的數(shù)量。
[0031]恢復Xl后,R2可以識別所有的差異并從Ul中請求它沒有的dl值的實際表項。同樣地,Rl從R2請求表項。
[0032]再次參考圖1,緩存更新協(xié)議包括兩個階段:在第一個階段,創(chuàng)建哈希,使用分布式信源編碼對它進行壓縮,在Rl和R2之間交換陪集信息,然后進行解碼,并請求獲取缺失的或不同的元素。為了解碼,需要對Xi到Ui的映射進行轉(zhuǎn)化,其中Ui是在創(chuàng)建Xi時儲存的。
[0033]在一實施例中,對m進行了進一步的描述,并且解決了哈希h中的沖突問題。以下對m進行了論述并對沖突處理機制進行說明。當Rl創(chuàng)建Xl時,它經(jīng)過Ul,并把每個表項哈希到Xl的坐標,然后把Xl的坐標翻轉(zhuǎn)到I。這與有單個哈希函數(shù)的布隆過濾器相似,B.H.Bloom,“有允許誤差的哈希編碼中的空間/時間平衡”,Commun.ACM,卷13,422-426頁,1970年7月,其全部內(nèi)容通過引用結(jié)合在本申請中。不過,可以進行以下修改:如果在Xl中的表項已經(jīng)等于I,則翻轉(zhuǎn)Xl中的下一個表項(取模m)。
[0034]由于Rl保持一個把Ul中的每個u與其鍵值h (U)相關(guān)聯(lián)的結(jié)構(gòu),當h (U)已經(jīng)被Ul中的U’要求,使得h(u) =h(u,)時,h (u)+1被保持在此結(jié)構(gòu)中。映射到相同h(u)的兩個表項u及u’之間也有鏈路。如果R2請求Xl中對應h (U)或h (U)的表項中的一個,則u和u’都應該被返回。然后R2分析出哪個(如果有的話)是它所擁有的,哪個不是它所擁有的。如果無法獲取到h(u)+l,則Xl的下一個零元素被翻轉(zhuǎn)。由于Xl是稀少的,所以不會存在觸發(fā)一連串沒有盡頭的事件的風險。如果多于兩個值互相沖突,則所有互相沖突的值被連接在一起,并在接收到R2對其中任意值的請求時一起返回。如果稍后在填充Xl時,另一個值V哈希到放置u的位置,則V與u沖撞,Rl中的表項與鍵值之間的映射被更新。
[0035]在Xl中的下一個空坐標上輸入一個值很簡單,這是因為在一實施例中,m被選擇是因為它比η大得多,從而減少沖突的可能性并保證Xl是稀少的。比如,在一實施例中,m是一個比η大的數(shù)量級。
[0036]采用此機制,Rl和R2各自使用的哈希就沒有沖突:Ui的每一個值在Xi中都恰好有一個翻轉(zhuǎn)的表項。
[0037]唯一不能被解決的沖突如下:假設U1\U2中有某個元素U,在U2\U1中有V,而且它們兩者沖突:h(u) =h(v)。這是因為它在Ul與U2之間的集差異中,并且不為Rl和R2所知。不過,這種沖突的幾率是很低的:m足夠大,可以減少沖突的幾率,而且Ul與U2之間的集差異也有限,因為假設d〈〈n,例如,d是一個小于η的數(shù)量級。因此,沖突的可能性就是本來很低的哈希沖突可能性乘以互相沖突的元素同時屬于集差異的可能性的乘積。
[0038]圖3是內(nèi)容路由器之間交換緩存信息的方法300實施例的流程圖。所述方法300從的框302開始,在框302中,內(nèi)容路由器為其內(nèi)容表創(chuàng)建緩存表項的哈希。在框304中,所述內(nèi)容路由器使用,例如分布式信源編碼,對哈希進行壓縮。在框306中,所述內(nèi)容路由器與相鄰內(nèi)容路由器交換陪集信息。在框308中,所述內(nèi)容路由器對從所述相鄰內(nèi)容路由器接收的陪集信息進行解碼,并且在框310中,確定缺失的和/或不同的元素。在框312中,所述內(nèi)容路由器從所述相鄰路由器中請求所述缺失的和/或不同的元素。在框314中,所述內(nèi)容路由器從所述相鄰內(nèi)容路由器接收所請求的元素并相應地更新其內(nèi)容表的緩存。在框316中,所述內(nèi)容路由器接收所述相鄰內(nèi)容路由器發(fā)送的獲取所述相鄰內(nèi)容路由器的緩存中缺失的或與所述相鄰內(nèi)容路由器的緩存中的元素不同的元素的請求。在框318中,所述內(nèi)容路由器向所述相鄰內(nèi)容路由器提供所述相鄰內(nèi)容路由器所請求的元素,至此,所述方法300結(jié)束。
[0039]圖4是用于實現(xiàn)在此公開的設備及方法的網(wǎng)絡單元的框圖。具體的設備可以利用所有所示的組件,也可以只利用這些組件的子集;而且集成的程度根據(jù)設備的不同而不同。另外,一個設備可以包含一個組件的多個實例,比如,多個處理單兀,處理器,內(nèi)存器,發(fā)送器,接收器,等等。比如,公開的特性/方法可以由硬件,固件,和/或安裝的運行在硬件上的軟件。網(wǎng)絡單元400可以是任何通過網(wǎng)絡傳輸幀的設備,比如交換機,路由器,網(wǎng)橋,服務器,等。在一實施例中,所述網(wǎng)絡單元400包括一個或多個入端口 414或耦合到接收器(Rx) 410的單元,用來接收來自其他網(wǎng)絡組件的信號和幀/數(shù)據(jù)。該網(wǎng)絡裝置/組件400包括:內(nèi)容感知單元402,用于確定向哪個網(wǎng)絡組件發(fā)送內(nèi)容。所述內(nèi)容感知單元402可以通過硬件,軟件或硬件及軟件來實現(xiàn)。所述網(wǎng)絡單元400還包括一個或多個出端口 416或耦合到發(fā)送器(Tx)412的單元,用來向其他網(wǎng)絡組件發(fā)送信號和幀/數(shù)據(jù)。所述接收器410,內(nèi)容感知單元402及發(fā)送器412基于硬件,軟件或硬件及軟件,還可以用來實現(xiàn)所公開的方法中的至少一些方法。
[0040]所述內(nèi)容感知單元402還包括可編程內(nèi)容轉(zhuǎn)發(fā)平面框408及一個或多個耦合到所述可編程內(nèi)容轉(zhuǎn)發(fā)平面框的存儲器框418。所述可編程內(nèi)容轉(zhuǎn)發(fā)平面框408用于實現(xiàn)內(nèi)容轉(zhuǎn)發(fā)及處理功能,比如在應用層,或者叫層3,其中,內(nèi)容轉(zhuǎn)發(fā)可能基于內(nèi)容名稱,或前綴,或其他將該內(nèi)容映射到網(wǎng)絡流量的內(nèi)容相關(guān)的信息。這種映射可以在所述內(nèi)容感知單元402或所述網(wǎng)絡單元400的內(nèi)容表中進行維護。所述可編程內(nèi)容轉(zhuǎn)發(fā)平面框408用于解析用戶對內(nèi)容的請求并相應地,比如,基于元數(shù)據(jù)和/或內(nèi)容名稱,從網(wǎng)絡或其他內(nèi)容路由器獲取內(nèi)容,并且可以把內(nèi)容,比如,臨時性的,存儲于所述存儲器框418中。然后,所述可編程內(nèi)容轉(zhuǎn)發(fā)平面框408可以把緩存的內(nèi)容轉(zhuǎn)發(fā)給用戶。所述可編程內(nèi)容轉(zhuǎn)發(fā)平面框408可以通過軟件,硬件,或軟件及硬件來實現(xiàn),并且可以運行于IP層,或者叫層2,之上。所述存儲器框418包括緩存404,用來臨時存儲內(nèi)容,比如用戶所請求的內(nèi)容。另外,所述存儲器框418包括一個長期存儲器406,用來相對長期地存儲內(nèi)容,比如發(fā)布者提交的內(nèi)容。比如,所述緩存404及所述長期存儲器406可以包括動態(tài)隨機存取存儲器(DRAMs),固態(tài)硬盤(SSDs),硬盤,或上述任意組合。
[0041]雖然本說明已經(jīng)進行了詳細的描述,應該理解的是,可以進行各種修改,替換,變更,而不脫離所附權(quán)利要求所定義的本公開的精神及范圍。而且,本公開的范圍并不僅限于本公開描述的特定實施例。本領域的普通技術(shù)人員可以輕易地從本公開獲悉到目前存在的或?qū)⒈婚_發(fā)的流程,機器,產(chǎn)品,組成,方式,方法,或步驟可以實現(xiàn)與本公開描述的相應實施例本質(zhì)上相同的功能或得到本質(zhì)上相同的結(jié)果。相應地,所附權(quán)利要求范圍包括這些流程,機器,產(chǎn)品,組成,方式,方法,及步驟。
【權(quán)利要求】
1.一種在第一和第二內(nèi)容路由器之間交換信息的方法,包括: 使用與所述第二內(nèi)容路由器共用的聯(lián)合哈希函數(shù)建立所述第一內(nèi)容路由器緩存內(nèi)容的哈希; 以分布式信源編碼對所述第一內(nèi)容路由器緩存內(nèi)容的哈希進行編碼; 把編碼后的哈希發(fā)送給所述第二內(nèi)容路由器。
2.根據(jù)權(quán)利要求1所述的方法,進一步包括: 從所述第二內(nèi)容路由器接收第二編碼后的哈希; 確定所述第一內(nèi)容路由器的緩存與所述第二內(nèi)容路由器的緩存的區(qū)別; 向所述第二內(nèi)容路由器請求所述第一內(nèi)容路由器的緩存中缺失的元素或與所述第一內(nèi)容路由器的緩存中的表項不同的元素。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,進一步包括:從所述第二內(nèi)容路由器接收所請求的元素。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第二編碼后的哈希包括向量X2的陪集,其中X2(k)是k= I至m時,維度m的向量;如果U2中存在U,使得h (u) =k,則X2(k)=I ;否則,X2(k) = O ;其中h(u)是所述第二內(nèi)容路由器緩存中經(jīng)過哈希處理的表項u的聯(lián)合哈希函數(shù),U2是所述第二內(nèi)容路由器緩存中經(jīng)過哈希處理的表項的向量。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,進一步包括:從所述第二內(nèi)容路由器接收對缺失的或不同的緩存元素的請求,并向所述第二內(nèi)容路由器提供所請求的缺失的或不同的緩存元素。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述編碼后的哈希包括向量Xl的陪集,其中Xl (k)是k = I至m時,維度m的向量;如果Ul中存在u,使得h(u) = k,則Xl (k)=I;否則,Xl (k) =0;其中1!(11)是所述第一內(nèi)容路由器緩存中經(jīng)過哈希處理的表項u的聯(lián)合哈希函數(shù),Ul是所述第一內(nèi)容路由器緩存中經(jīng)過哈希處理的表項的向量。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,進一步包括:維護Ul中的表項和與之關(guān)聯(lián)的鍵值h (U)的映射。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,進一步包括:確定映射中h(u)對應的多個表項中哪個表項不包含在所述第一內(nèi)容路由器中,并請求所述多個表項中所述第一內(nèi)容路由器不包含的表項。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于,m被選擇是因為m比η大得多,其中η是所述第一內(nèi)容路由器緩存中的表項的數(shù)量。
10.一種網(wǎng)絡組件,用于在第一和第二內(nèi)容路由器之間交換信息,其特征在于,包括: 處理器,及 存儲由所述處理器執(zhí)行的程序的計算機可讀存儲介質(zhì),其中所述程序包括用于執(zhí)行以下操作的指令: 使用與所述第二內(nèi)容路由器共用的聯(lián)合哈希函數(shù)建立所述第一內(nèi)容路由器緩存內(nèi)容的哈希; 以分布式信源編碼對所述第一內(nèi)容路由器緩存內(nèi)容的哈希進行編碼; 把編碼后的哈希發(fā)送給所述第二內(nèi)容路由器。
11.根據(jù)權(quán)利要求10所述的網(wǎng)絡組件,其特征在于,所述程序進一步包括用于執(zhí)行以下操作的指令: 從所述第二內(nèi)容路由器接收第二編碼后的哈希;確定所述第一內(nèi)容路由器的緩存與所處第二內(nèi)容路由器的緩存的不同; 向所述第二內(nèi)容路由器請求獲取所述第一內(nèi)容路由器緩存中缺失的元素或與所述第一內(nèi)容路由器緩存中的表項不同的元素。
12.根據(jù)權(quán)利要求11所述的網(wǎng)絡組件,其特征在于,所述程序進一步包括用于從所述第二內(nèi)容路由器接收所請求的元素的指令。
13.根據(jù)權(quán)利要求11所述的網(wǎng)絡組件,其特征在于,所述第二編碼后的哈希包括向量X2的陪集,其中X2(k)是k = I至m時,維度m的向量;如果U2中存在U,使得h (u) = k,則X2(k) = I ;否則,X2(k) = O ;其中h(u)是所述第二內(nèi)容路由器緩存中經(jīng)過哈希處理的表項u的聯(lián)合哈希函數(shù),U2是所述第二內(nèi)容路由器緩存中經(jīng)過哈希處理的表項的向量。
14.根據(jù)權(quán)利要求10的所述網(wǎng)絡組件,其特征在于,所述程序進一步包括用于從所述第二內(nèi)容路由器接收對缺失的或不同的緩存元素的請求,并向所述第二內(nèi)容路由器提供所請求的缺失的或不同的緩存元素的指令。
15.根據(jù)權(quán)利要求10所述的網(wǎng)絡組件,其特征在于,所述編碼后的哈希包括向量Xl的陪集,其中Xl (k)是k = I至m時,維度m的向量;如果Ul中存在U,使得h (u) = k,貝丨J Xl (k)=I ;否則,XKk) = O ;其中h(u)是所述第一內(nèi)容路由器緩存中經(jīng)過哈希處理的表項u的聯(lián)合哈希函數(shù),Ul是所述第一內(nèi)容路由器緩存中經(jīng)過哈希處理的表項的向量。
16.根據(jù)權(quán)利要求15所述的網(wǎng)絡組件,其特征在于,所述程序進一步包括用于維護Ul中的表項和與之關(guān)聯(lián)的鍵值h (U)的映射的指令。
17.根據(jù)權(quán)利要求16所述的網(wǎng)絡組件,其特征在于,所述程序進一步包括用于確定映射中h(u)對應的多個表項中哪個不包含在所述第一內(nèi)容路由器中,并請求所述多個表項中所述第一內(nèi)容路由器不包含的表項的指令。
18.根據(jù)權(quán)利要求15所述的網(wǎng)絡組件,其特征在于,m被選擇是因為m比η大得多,其中η是所述第一內(nèi)容路由器緩存中的表項的數(shù)量。
19.一種內(nèi)容路由器之間交換信息的方法,其特征在于,包括: 建立第一內(nèi)容路由器中緩存表項的哈希; 以分布式信源編碼對所述表項的哈希進行編碼; 將所述編碼后的哈希發(fā)送給第二內(nèi)容路由器,其中所述編碼后的哈希包括同時屬于所述第一內(nèi)容路由器及所述第二內(nèi)容路由器的元素的陪集,使得所述第二內(nèi)容路由器可以從所述編碼后的哈希中恢復所述陪集中不包含在所述第二內(nèi)容路由器緩存中的元素。
20.根據(jù)權(quán)利要求19所述的方法,其特征在于,進一步包括: 從所述第二內(nèi)容路由器接收第二編碼后哈希; 確定包含在所述第二內(nèi)容路由器的緩存、但不包含在所述第一內(nèi)容路由器的緩存中的缺失元素; 向所述第二內(nèi)容路由器請求所述缺失元素。
【文檔編號】H04L12/28GK104380664SQ201380019605
【公開日】2015年2月25日 申請日期:2013年4月12日 優(yōu)先權(quán)日:2012年4月13日
【發(fā)明者】塞德里克·韋斯特法爾 申請人:華為技術(shù)有限公司