編碼數(shù)據(jù)標(biāo)識符的方法
【專利摘要】本發(fā)明涉及一種對數(shù)據(jù)標(biāo)識符進(jìn)行編碼的方法、數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)單元以及用以執(zhí)行所述方法的計(jì)算機(jī)程序產(chǎn)品。所述數(shù)據(jù)標(biāo)識符是數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符的其中之一。每一個(gè)數(shù)據(jù)標(biāo)識符由字符串構(gòu)成。提供出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率。所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的?;谒龀霈F(xiàn)概率表,根據(jù)可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
【專利說明】編碼數(shù)據(jù)標(biāo)識符的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種編碼數(shù)據(jù)標(biāo)識符的方法、一種數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)單元以及一種用以執(zhí)行所述方法的計(jì)算機(jī)程序產(chǎn)品。
【背景技術(shù)】
[0002]針對數(shù)據(jù)的用戶數(shù)據(jù)請求在例如因特網(wǎng)之類的數(shù)據(jù)網(wǎng)絡(luò)內(nèi)的路由通常由布置在數(shù)據(jù)網(wǎng)絡(luò)中的網(wǎng)絡(luò)單元施行,特別是由所謂的路由器施行。數(shù)據(jù)請求由例如URI之類的數(shù)據(jù)標(biāo)識符標(biāo)明,特別是URL (URI=統(tǒng)一資源標(biāo)識符,URL=統(tǒng)一資源定位符)。路由器通常訪問路由表來確定要把數(shù)據(jù)請求路由到的接口。
[0003]圖1示出了例如用在內(nèi)容中心聯(lián)網(wǎng)(=CCN)中的已知路由表的一個(gè)簡化實(shí)例。該表的左列列出了用ASCII編碼的不同URL,該表的右列列出了將把每一項(xiàng)數(shù)據(jù)請求路由到的相應(yīng)接口(ASCII=美國信息交換標(biāo)準(zhǔn)代碼)。與傳統(tǒng)的32比特IP地址(IP=互聯(lián)網(wǎng)協(xié)議)相比,ASCII URL的可變長度導(dǎo)致對于路由表?xiàng)l目的延長的并且不可預(yù)測的查找時(shí)間。
[0004]圖2示出了一種替換的已知路由表的一個(gè)簡化實(shí)例,其中使用160比特SHAl散列來把圖1的可變長度URL映射到預(yù)定義散列空間中的恒定長度數(shù)值(SHA=安全散列算法)。與圖1對應(yīng),該表的左列用散列化表示列出了圖1的URL,該表的右列列出了將把每一項(xiàng)數(shù)據(jù)請求路由到的相應(yīng)接口。散列化URL的隨機(jī)性阻止了任何匯聚方案,并且特別是不會保留URL類結(jié)構(gòu),從而阻止了前綴匹配。
[0005]本發(fā)明的目的是提供對于數(shù)據(jù)標(biāo)識符的改進(jìn)編碼。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的通過對數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符進(jìn)行編碼的方法來實(shí)現(xiàn),每一個(gè)數(shù)據(jù)標(biāo)識符由一個(gè)字符串構(gòu)成,所述方法包括以下步驟:提供一個(gè)出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的各個(gè)已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的;以及基于所述出現(xiàn)概率表,根據(jù)一種可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。本發(fā)明的目的還通過數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)單元來實(shí)現(xiàn),其中所述網(wǎng)絡(luò)單元被適配成管理涉及數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符的請求,每一個(gè)數(shù)據(jù)標(biāo)識符由一個(gè)字符串構(gòu)成,其中所述網(wǎng)絡(luò)單元還被適配成訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的各個(gè)已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的;并且其中所述網(wǎng)絡(luò)單元還被適配成基于所述出現(xiàn)概率表并且根據(jù)可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。本發(fā)明的目的還通過一種用于對數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符進(jìn)行編碼的計(jì)算機(jī)程序產(chǎn)品來實(shí)現(xiàn),每一個(gè)數(shù)據(jù)標(biāo)識符由一個(gè)字符串構(gòu)成,其中所述計(jì)算機(jī)程序產(chǎn)品在由網(wǎng)絡(luò)單元執(zhí)行時(shí)施行以下步驟:訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的各個(gè)已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的;以及基于所述出現(xiàn)概率表,根據(jù)可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
[0007]本發(fā)明的一個(gè)方面是壓縮例如URL之類的數(shù)據(jù)標(biāo)識符,以便在保留其結(jié)構(gòu)的同時(shí)提高查找速度,從而有助于基于最長前綴或其他方案進(jìn)行匯聚。
[0008]本發(fā)明構(gòu)成針對數(shù)據(jù)標(biāo)識符(例如針對URL類內(nèi)容標(biāo)識符)的一種新的編碼方案。根據(jù)本發(fā)明的實(shí)施例的編碼方案使得解析內(nèi)容名稱所需的比特?cái)?shù)最小化,從而導(dǎo)致查找時(shí)間縮短。除了更好的查找時(shí)間之外,本發(fā)明的實(shí)施例還允許對于路由器存儲器的更加高效的使用;在相同數(shù)量的存儲器內(nèi)可以存儲更多路由表?xiàng)l目。
[0009]本發(fā)明的實(shí)施例特別縮短了基于名稱的路由器中的表?xiàng)l目的查找時(shí)間,從而提供了針對在路由器中實(shí)施CCN的一種解決方案。本發(fā)明的實(shí)施例允許在保留結(jié)構(gòu)的同時(shí)提聞查找速度。這樣就提供了基于最長前綴或其他方案進(jìn)行匯聚的可能性。
[0010]通過根據(jù)本發(fā)明的實(shí)施例編碼的數(shù)據(jù)標(biāo)識符而成為可能的提高的查找速度與用ASCII編碼的URL相抵觸,用ASCII編碼的URL的更長長度(與根據(jù)本發(fā)明的實(shí)施例編碼的數(shù)據(jù)標(biāo)識符相比的更高比特計(jì)數(shù))導(dǎo)致更長的路由表?xiàng)l目查找時(shí)間和下一跳解析時(shí)間。
[0011]通過根據(jù)本發(fā)明的實(shí)施例編碼的數(shù)據(jù)標(biāo)識符而成為可能的得以保留的結(jié)構(gòu)與散列化URL相抵觸,散列化URL的隨機(jī)性阻止了任何匯聚方案,并且特別是不會保留URL類結(jié)構(gòu),從而阻止了前綴匹配。散列解決方案可以實(shí)現(xiàn)更加高效的編碼,但是其由于結(jié)構(gòu)丟失而不允許匯聚,這對于轉(zhuǎn)發(fā)表的可擴(kuò)展性是至關(guān)重要的。
[0012]通過從屬權(quán)利要求表明了通過本發(fā)明 的實(shí)施例實(shí)現(xiàn)的其他優(yōu)點(diǎn)。
[0013]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述多個(gè)數(shù)據(jù)標(biāo)識符的特性包括:
[0014]?所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的各個(gè)字符的出現(xiàn)頻率。已經(jīng)發(fā)現(xiàn),URL中的英語字符頻率緊密遵循英語字母表頻率。
[0015]?所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的組成部分序列的出現(xiàn)頻率。一些組成部分序列比其他序列的頻率更高。舉例來說,在URL中找到字母序列“in”的頻率高于字母序列“zx”。
[0016]?所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的數(shù)據(jù)標(biāo)識符的預(yù)定義結(jié)構(gòu)單位的出現(xiàn)頻率。數(shù)據(jù)標(biāo)識符的結(jié)構(gòu)單位在分層數(shù)據(jù)標(biāo)識符的情況下可以是與不同層級相關(guān)聯(lián)的標(biāo)識符組成部分,例如TLD、域名以及URL情況下的錨標(biāo)簽(TLD=頂層域)。已經(jīng)發(fā)現(xiàn),76.5%的URL僅僅使用所有已注冊的(大約300個(gè))TLD的一個(gè)子集:com、net、de、ru和org。
[0017]?構(gòu)成數(shù)據(jù)標(biāo)識符的字符串中的平均字符數(shù)目。平均域長度是15個(gè)字符。
[0018]?可用于構(gòu)成數(shù)據(jù)標(biāo)識符的不同字符的數(shù)目。根據(jù)RFC1738,只能利用73個(gè)字符來編碼 URL (0-9,a-z,A-Z,以及特殊字符 $-_.+!*' (),)。
[0019]?可用于構(gòu)成數(shù)據(jù)標(biāo)識符的字符的類型。某一類數(shù)據(jù)標(biāo)識符可能只允許大寫字母。
[0020]?數(shù)據(jù)標(biāo)識符在所述數(shù)據(jù)網(wǎng)絡(luò)的至少一部分內(nèi)的使用頻率。一些數(shù)據(jù)標(biāo)識符(例如“http://www.google, com”)在因特網(wǎng)中的使用頻率高于其他數(shù)據(jù)標(biāo)識符。
[0021]所述編碼可以利用所述多個(gè)數(shù)據(jù)標(biāo)識符的這些特性當(dāng)中的一項(xiàng)或更多項(xiàng)。舉例來說,鑒于在所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的TLD “com”遠(yuǎn)高于TLD “tl”,因此對于編碼方案來說有利的是為TLD “com”分配單個(gè)編碼符號,但是將TLD “tl ”編碼為字母“t”和“ I ”的序列。[0022]根據(jù)本發(fā)明的一個(gè)實(shí)施例,通過以下步驟來編碼數(shù)據(jù)標(biāo)識符:把數(shù)據(jù)標(biāo)識符劃分成由一個(gè)或更多已定義組成部分構(gòu)成的序列,根據(jù)可變長度編碼算法為數(shù)據(jù)標(biāo)識符的所述一個(gè)或更多已定義組成部分分配比特表示,并且把所述由數(shù)據(jù)標(biāo)識符的一個(gè)或更多組成部分構(gòu)成的序列轉(zhuǎn)換成由所分配的比特表示構(gòu)成的序列。
[0023]舉例來說,URL “http://www.youtube.eom/user/AlcatelLucentCorp#p/a/u/0/mr5EYuT XEPI”包括在因特網(wǎng)中相對頻繁出現(xiàn)的組成部分(例如域名和TLD),同時(shí)其他組成部分沒有那么的頻繁。由于已經(jīng)發(fā)現(xiàn)組成部分“http://WWW.youtube”在所涉及的數(shù)據(jù)網(wǎng)絡(luò)(即因特網(wǎng))中具有相對較高的出現(xiàn)頻率,因此合理的做法是為該組成部分分配一個(gè)特有符號。這一點(diǎn)對于組成部分“com”、“AlcateLucentCorp”和錨標(biāo)簽“#”同樣成立。另一方面,關(guān)于之后的字符的符號分配將取決于單獨(dú)字符的出現(xiàn)頻率。
[0024]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述數(shù)據(jù)標(biāo)識符是URI,特別是URL。在因特網(wǎng)中,URI是最普遍的數(shù)據(jù)標(biāo)識符。但是在私有數(shù)據(jù)網(wǎng)絡(luò)中,可以替換地使用另一種數(shù)據(jù)標(biāo)識符類型。
[0025]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述可變長度編碼算法基于Huffman、Shannon-Fano或算術(shù)編碼。所得到的數(shù)據(jù)標(biāo)識符的表示可以是二進(jìn)制代碼,即使用二進(jìn)制數(shù)字O和I。
[0026]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述數(shù)據(jù)標(biāo)識符是URL,已定義組成部分包括在所述多個(gè)URL當(dāng)中具有最高出現(xiàn)頻率的TLD、在所述多個(gè)URL當(dāng)中具有最高出現(xiàn)頻率的URL名稱以及根據(jù)RFC1738可用的單個(gè)字符,并且數(shù)據(jù)標(biāo)識符根據(jù)可變長度編碼算法(優(yōu)選地是Huffman編碼)被編碼成比特代碼(RFC=評論請求)。
[0027]根據(jù)本發(fā)明的該實(shí)施例,使用URL特性來定義可用在可變長度編碼算法中的符號。優(yōu)選的是,這些URL特性可以是所述URL的TLD的普及性、所述URL的URL名稱的普及性以及關(guān)于URL僅僅是從所有可能字符當(dāng)中的一個(gè)子集(73個(gè)字符)構(gòu)造的事實(shí)。隨后把關(guān)于特定符號的出現(xiàn)頻率的概率指派給每一個(gè)符號。接下來應(yīng)用可變長度編碼方案(例如Huffman編碼)來產(chǎn)生URL的比特代碼表示。
[0028]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,所述網(wǎng)絡(luò)單元還被適配成基于出現(xiàn)概率表將已編碼數(shù)據(jù)標(biāo)識符解碼回到其原始字符串表示。網(wǎng)絡(luò)單元可能接收到傳入數(shù)據(jù)請求,根據(jù)本發(fā)明的方法的一個(gè)實(shí)施例編碼與所述數(shù)據(jù)請求相關(guān)聯(lián)的數(shù)據(jù)標(biāo)識符,并且在其包括數(shù)據(jù)標(biāo)識符列表和相關(guān)聯(lián)的路由地址的路由表中進(jìn)行查找。為了確保兼容性,路由表中的數(shù)據(jù)標(biāo)識符已經(jīng)通過由路由器使用的相同編碼方法而被編碼。在路由表中識別出適當(dāng)?shù)穆酚傻刂分?,網(wǎng)絡(luò)單元再次對已編碼數(shù)據(jù)標(biāo)識符進(jìn)行解碼,并且按照已解碼形式(即原始接收到的形式)把數(shù)據(jù)請求路由到所述路由地址。因此有可能僅僅在網(wǎng)絡(luò)單元內(nèi)部應(yīng)用所述方法,從而允許每一個(gè)網(wǎng)絡(luò)單元根據(jù)其自身需求來優(yōu)化符號和概率指派。
[0029]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,所述網(wǎng)絡(luò)單元是路由器。
[0030]對于所述方法存在不同的布置可能性:
[0031]一種可能性是路由器之間的協(xié)議使用所述方法,從而所有路由器都需要使用相同的符號和概率指派方案。因此,根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述網(wǎng)絡(luò)單元被適配成作為數(shù)據(jù)網(wǎng)絡(luò)的幾個(gè)網(wǎng)絡(luò)單元的其中之一訪問出現(xiàn)概率表。
[0032]在另一種布置中,僅僅在路由器內(nèi)部應(yīng)用所述方法,從而每一個(gè)路由器可以根據(jù)其自身的需求來優(yōu)化符號和概率指派。因此,根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述網(wǎng)絡(luò)單元還被適配成保持出現(xiàn)概率表以作為僅可由該網(wǎng)絡(luò)單元訪問的資源。[0033]根據(jù)本發(fā)明的另一個(gè)實(shí)施例,所述網(wǎng)絡(luò)單元包括出現(xiàn)概率表。這意味著出現(xiàn)概率表被存儲在該網(wǎng)絡(luò)單元的存儲單元中。
【專利附圖】
【附圖說明】
[0034]通過閱讀下面結(jié)合附圖對示例性實(shí)施例做出的詳細(xì)描述,將會更好地認(rèn)識到本發(fā)明的前述及其他特征和優(yōu)點(diǎn),其中:
[0035]圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的出現(xiàn)概率表;
[0036]圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)標(biāo)識符的Huffman編碼方案;
[0037]圖5示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的比特代碼表。
[0038]圖6到8給出了標(biāo)準(zhǔn)ASCII URL編碼(圖6)、SHA1URL編碼(圖7)和根據(jù)本發(fā)明的一個(gè)實(shí)施例的可變長度編碼(圖8)的比特計(jì)數(shù)的比較;以及
[0039]圖9示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的CCN路由器的圖示。
【具體實(shí)施方式】
[0040]圖3示出了用在一種編碼方案中的出現(xiàn)概率表,該方案旨在使得解析數(shù)據(jù)標(biāo)識符(例如內(nèi)容名稱)所需的比特?cái)?shù)最小化。除了更好的查找時(shí)間之外,其還允許對于路由器存儲器的更加高效的使用,這是因?yàn)榭梢岳孟嗤瑪?shù)量的存儲器存儲更多路由表?xiàng)l目。
[0041]該表的左列列出了 URL的各個(gè)組成部分,其中所述組成部分是關(guān)于URL的特性選擇的,所述特性比如有:
[0042]-字符的出現(xiàn)頻率
[0043]-請求模式,這意味著某些內(nèi)容項(xiàng)目/域名比其他內(nèi)容項(xiàng)目/域名更加普遍
[0044]-大多數(shù)URL僅由TLD的一個(gè)子集構(gòu)造
[0045]-URL的平均長度
[0046]-關(guān)于URL僅由73個(gè)不同字符構(gòu)成的事實(shí)。
[0047]基于前面關(guān)于URL長度、URL字符和TLD分布、域普遍性等等的研究,下面列出URL的一些特性:
[0048]-平均URL長度是58個(gè)字符。
[0049]-平均域長度是15個(gè)字符。
[0050]-76.5% 的 URL 具有以下 TLD:com、net、de、ru 和 org。
[0051]-總共有大約300個(gè)TLD。
[0052]-URL中的英語字符頻率緊密遵循英語字母表頻率。
[0053]該表的右列列出了關(guān)于所述多個(gè)URL的各個(gè)組成部分的相對概率。對于可變長度編碼可用的所有組成部分的所有相對概率的總和等于1,正如在右列的最后一行中表明的那樣。在可變長度編碼的語言中,各個(gè)組成部分被稱為“符號”。
[0054]圖4示出了利用出現(xiàn)頻率的編碼陣列。對于該示例來說,使用Huffman編碼陣列。預(yù)先定義的組成部分(即由“X”標(biāo)記的符號)對應(yīng)于圖3的出現(xiàn)概率表的組成部分。所述組成部分已經(jīng)被分類為包括頻繁使用的TLD的第一分類41、包括頻繁使用的域名的第二分類42以及包括可用于創(chuàng)建URL的73個(gè)字符的第三分類43。
[0055]在每一個(gè)符號X下方列出了相應(yīng)的相對概率P (x),其也被稱作“權(quán)重”。從符號及其相關(guān)聯(lián)的權(quán)重開始,根據(jù)Huffman編碼生成一個(gè)二進(jìn)制樹。圖4僅僅示出了整個(gè)二進(jìn)制樹的一部分,正如在所述方案的右邊緣處由省略點(diǎn)表示的那樣。整個(gè)二進(jìn)制樹給出總和權(quán)重 1: Σρ(χ)=1。
[0056]圖5示出了一個(gè)比特代碼表,其列出了對應(yīng)于圖3的出現(xiàn)概率表的各個(gè)組成部分(“符號”)的比特代碼。顯而易見的是,與較少使用的組成部分相比,更頻繁使用的組成部分具有較少的比特。這說明了根據(jù)本發(fā)明的數(shù)據(jù)標(biāo)識符編碼方案使得解析數(shù)據(jù)標(biāo)識符所需要的比特?cái)?shù)最小化,從而縮短了解析網(wǎng)絡(luò)單元處的查找時(shí)間。
[0057]基于該比特代碼表,可以從其各個(gè)組成部分重構(gòu)URL并且將其表示為比特代碼。舉例來說,當(dāng)根據(jù)圖5的比特代碼表進(jìn)行編碼時(shí),ASCII編碼的URL “http://www.google,com”將具有以下比特代碼表示:“0101101000110000”。
[0058]圖6到8給出了從對于兩個(gè)URL的不同編碼得到的比特計(jì)數(shù)的比較。應(yīng)當(dāng)提到的是,沒有示出應(yīng)用所述編碼方案之后的最終二進(jìn)制比特代碼表示。相反,附圖被限制為僅僅示出最終的二進(jìn)制比特計(jì)數(shù)。對于所述可變編碼,比特計(jì)數(shù)僅僅是表明本發(fā)明的益處的一項(xiàng)可能結(jié)果。
[0059]圖6示出了兩個(gè)用ASCII編碼的URL,其中每一個(gè)具有65字符的長度。所述URL只有最后11個(gè)字符不同。這些URL當(dāng)中的每一個(gè)的比特計(jì)數(shù)為65字符X8比特/字符=520比特。ASCII編碼的URL的優(yōu)點(diǎn)在于匯聚的可能性。
[0060]圖7示出了圖6的兩個(gè)URL,但是其采取了 SHAl編碼,從而把URL減小到40字符的長度。因此,這些URL當(dāng)中的每一個(gè)的比特計(jì)數(shù)為40字符x8比特/字符=320比特。雖然SHAl編碼與ASCII編碼相比大大減少了比特計(jì)數(shù),但是SHAl編碼失去了匯聚的可能性。
[0061]圖8示出了圖6的兩個(gè)URL,但是其采取了根據(jù)本發(fā)明的一個(gè)實(shí)施例的可變長度編碼。使用了下面的組成部分(=符號)定義:
[0062]http://www= α
[0063]youtube= β
[0064]com= Y
[0065]AlcatelLucentCorp=δ
[0066]所述可變長度編碼把URL減小到32個(gè)組成部分的長度。正如圖5中示出的那樣,每一個(gè)組成部分可以具有不同的比特長度。因此,32個(gè)組成部分X8比特/組成部分=256比特的簡單計(jì)算在這種情況下將是錯(cuò)誤的??梢员砻鬟@些URL當(dāng)中的每一個(gè)在根據(jù)本發(fā)明的一個(gè)實(shí)施例的可變長度編碼中的比特計(jì)數(shù)是大約360比特。因此比特計(jì)數(shù)比ASCII編碼少,但是比SHAl編碼多。
[0067]雖然根據(jù)本發(fā)明的可變長度編碼導(dǎo)致比SHAl編碼略高的比特計(jì)數(shù),但是其優(yōu)于SHAl編碼的顯著優(yōu)點(diǎn)在于保留了數(shù)據(jù)標(biāo)識符的結(jié)構(gòu),在這里就是URL。
[0068]圖9示出了 CCN數(shù)據(jù)網(wǎng)絡(luò)的路由器91。路由器91包括FIB92、內(nèi)容存儲庫93、PIT94、三個(gè)接口 95、96、97、存儲單元98以及處理單元99 (FIB=轉(zhuǎn)發(fā)信息庫;PIT=待定興趣表)。FIB等效于路由表。路由器91被適配成通過其接口 95、96、97與其他網(wǎng)絡(luò)單元71、72,73通信,其他網(wǎng)絡(luò)單元比如移動(dòng)單元71、基于因特網(wǎng)的單元72和應(yīng)用73。路由器91可以從每一個(gè)其他網(wǎng)絡(luò)單元71、72、73接收涉及數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符的請求81、82、83。[0069]網(wǎng)絡(luò)單元91被適配成訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率。網(wǎng)絡(luò)單元91有可能包括該出現(xiàn)概率表,也就是說該出現(xiàn)概率表被存儲在網(wǎng)絡(luò)單元91的存儲單元98中。網(wǎng)絡(luò)單元91也有可能作為數(shù)據(jù)網(wǎng)絡(luò)的幾個(gè)路由器的其中之一訪問優(yōu)選地布置在外部的出現(xiàn)概率表。
[0070]在接收到其中一條請求81、82、83之后,路由器91確定在該請求中規(guī)定的數(shù)據(jù)標(biāo)識符,并且根據(jù)在出現(xiàn)概率表中列出的各個(gè)組成部分來劃分所確定的數(shù)據(jù)標(biāo)識符。
[0071]基于出現(xiàn)概率表,路由器91根據(jù)可變長度編碼算法例如借助于處理單元99對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
[0072]處理單元99由一臺或幾臺交聯(lián)的計(jì)算機(jī)構(gòu)成,即硬件平臺、基于硬件平臺的軟件平臺以及由通過軟件和硬件平臺構(gòu)成的系統(tǒng)平臺來執(zhí)行的幾個(gè)應(yīng)用程序。處理單元99的功能通過執(zhí)行這些應(yīng)用程序來提供。所述應(yīng)用程序或者這些應(yīng)用程序的所選部分構(gòu)成計(jì)算機(jī)軟件產(chǎn)品,其在系統(tǒng)平臺上執(zhí)行時(shí)提供后面所描述編碼服務(wù)。此外,這樣的計(jì)算機(jī)軟件產(chǎn)品還由存儲這些應(yīng)用程序或者所述應(yīng)用程序的所選部分的存儲介質(zhì)98構(gòu)成。
[0073]用于對數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的數(shù)據(jù)標(biāo)識符(每一個(gè)數(shù)據(jù)標(biāo)識符由一個(gè)字符串構(gòu)成)進(jìn)行編碼的計(jì)算機(jī)程序產(chǎn)品在由路由器91的處理單元99執(zhí)行時(shí)施行以下步驟:訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的各個(gè)已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的;以及基于所述出現(xiàn)概率表,根據(jù)一種可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
[0074]借助于已編碼數(shù)據(jù)標(biāo)識符,路由器91對FIB92進(jìn)行解析,以便確定將從該處路由數(shù)據(jù)請求81、82、83的適當(dāng)接口 95、96、97。在識別出適當(dāng)?shù)慕涌?95、96、97之后,路由器91從所識別出的接口 95、96、97把數(shù)據(jù)請求81、82、83路由到另一個(gè)網(wǎng)絡(luò)單元71、72、73。
【權(quán)利要求】
1.一種對數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符進(jìn)行編碼的方法,每一個(gè)數(shù)據(jù)標(biāo)識符由字符串構(gòu)成,所述方法包括以下步驟: 提供出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的,其中為在數(shù)據(jù)網(wǎng)絡(luò)中具有高出現(xiàn)頻率的組成部分分配單個(gè)編碼符號;以及基于所述出現(xiàn)概率表,根據(jù)可變長度編碼算法對所述數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
2.根據(jù)權(quán)利要求1所述的方法, 其中, 所述多個(gè)數(shù)據(jù)標(biāo)識符的特性包括: -所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的字符的出現(xiàn)頻率; -所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的組成部分序列的出現(xiàn)頻率; -所述多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的數(shù)據(jù)標(biāo)識符的所述預(yù)定義結(jié)構(gòu)單位的出現(xiàn)頻率; -構(gòu)成所述數(shù)據(jù)標(biāo)識符 的字符串中的平均字符數(shù)目; -可用于構(gòu)成數(shù)據(jù)標(biāo)識符的不同字符的數(shù)目; -可用于構(gòu)成數(shù)據(jù)標(biāo)識符的字符的類型;以及 -數(shù)據(jù)標(biāo)識符在所述數(shù)據(jù)網(wǎng)絡(luò)的至少一部分內(nèi)的使用頻率。
3.根據(jù)權(quán)利要求1所述的方法, 其中, 通過以下步驟來編碼所述數(shù)據(jù)標(biāo)識符:把所述數(shù)據(jù)標(biāo)識符劃分成由一個(gè)或更多已定義組成部分構(gòu)成的序列,根據(jù)可變長度編碼算法為數(shù)據(jù)標(biāo)識符的所述一個(gè)或更多已定義組成部分分配比特表示,并且把所述由數(shù)據(jù)標(biāo)識符的一個(gè)或更多組成部分構(gòu)成的序列轉(zhuǎn)換成由所分配的比特表示構(gòu)成的序列。
4.根據(jù)權(quán)利要求1所述的方法, 其中, 所述數(shù)據(jù)標(biāo)識符是URI。
5.根據(jù)權(quán)利要求1所述的方法, 其中, 所述可變長度編碼算法基于Huffman、Shannon-Fano或算術(shù)編碼。
6.根據(jù)權(quán)利要求1所述的方法, 其中, 所述數(shù)據(jù)標(biāo)識符是URL,所述已定義組成部分包括在所述多個(gè)URL當(dāng)中具有最高出現(xiàn)頻率的TLD、在所述多個(gè)URL當(dāng)中具有最高出現(xiàn)頻率的URL名稱以及根據(jù)RFC1738可用的單個(gè)字符,并且所述數(shù)據(jù)標(biāo)識符根據(jù)可變長度編碼算法被編碼成比特代碼,所述可變長度編碼算法優(yōu)選地是Huffman編碼。
7.一種數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)單元(91),其中所述網(wǎng)絡(luò)單元(91)被適配成管理涉及數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符的請求(81,82,83),每一個(gè)數(shù)據(jù)標(biāo)識符由字符串構(gòu)成,其中所述網(wǎng)絡(luò)單元(91)還被適配成訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的,其中為在數(shù)據(jù)網(wǎng)絡(luò)中具有高出現(xiàn)頻率的組成部分分配單個(gè)編碼符號;并且其中所述網(wǎng)絡(luò)單元(91)還被適配成基于所述出現(xiàn)概率表并且根據(jù)可變長度編碼算法對所述數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
8.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)單元(91), 其中, 所述網(wǎng)絡(luò)單元(91)還被適配成基于所述出現(xiàn)概率表將已編碼數(shù)據(jù)標(biāo)識符解碼回到其原始字符串表不。
9.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)單元(91), 其中, 所述網(wǎng)絡(luò)單元(91)是路由器。
10.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)單元(91), 其中, 所述網(wǎng)絡(luò)單元(91)還被適配成保持所述出現(xiàn)概率表以作為僅可由該網(wǎng)絡(luò)單元(91)訪問的資源。
11.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)單元(91), 其中, 所述網(wǎng)絡(luò)單元(91)包括所述出現(xiàn)概率表。
12.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)單元(91), 其中, 所述網(wǎng)絡(luò)單元(91)被適配成作為數(shù)據(jù)網(wǎng)絡(luò)的幾個(gè)網(wǎng)絡(luò)單元的其中之一訪問所述出現(xiàn)概率表。
13.一種用于對數(shù)據(jù)網(wǎng)絡(luò)的多個(gè)數(shù)據(jù)標(biāo)識符當(dāng)中的一個(gè)數(shù)據(jù)標(biāo)識符進(jìn)行編碼的計(jì)算機(jī)程序產(chǎn)品,每一個(gè)數(shù)據(jù)標(biāo)識符由字符串構(gòu)成,其中所述計(jì)算機(jī)程序產(chǎn)品在由網(wǎng)絡(luò)單元執(zhí)行時(shí)施行以下步驟: 訪問出現(xiàn)概率表,該表對于所述多個(gè)數(shù)據(jù)標(biāo)識符的已定義組成部分表明其在所述多個(gè)數(shù)據(jù)標(biāo)識符內(nèi)的出現(xiàn)頻率,其中所述組成部分是基于所述多個(gè)數(shù)據(jù)標(biāo)識符的一項(xiàng)或更多項(xiàng)特性來定義的,其中為在數(shù)據(jù)網(wǎng)絡(luò)中具有高出現(xiàn)頻率的組成部分分配單個(gè)編碼符號;以及基于所述出現(xiàn)概率表,根據(jù)可變長度編碼算法對數(shù)據(jù)標(biāo)識符進(jìn)行編碼。
【文檔編號】G06F17/30GK103460209SQ201280017931
【公開日】2013年12月18日 申請日期:2012年3月28日 優(yōu)先權(quán)日:2011年4月11日
【發(fā)明者】N·施旺, S·尚布哈格, I·里馬克 申請人:阿爾卡特朗訊公司