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

最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法及裝置與流程

文檔序號(hào):40584826發(fā)布日期:2025-01-07 20:24閱讀:4來源:國(guó)知局
最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法及裝置與流程

本技術(shù)涉及存儲(chǔ),特別是涉及一種最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法及裝置。


背景技術(shù):

1、最長(zhǎng)前綴匹配(longest?prefix?match,簡(jiǎn)稱lpm)規(guī)則是一種在網(wǎng)絡(luò)路由中用于確定數(shù)據(jù)包轉(zhuǎn)發(fā)路徑的查找算法。最長(zhǎng)前綴匹配(lpm)規(guī)則的核心思想是:在一組路由規(guī)則中,為一個(gè)給定的目的ip地址找到具有最長(zhǎng)網(wǎng)絡(luò)前綴的匹配規(guī)則?;谀壳熬W(wǎng)絡(luò)時(shí)代的快速發(fā)展,各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)最長(zhǎng)前綴匹配(lpm)規(guī)則的容量有著更大要求。在面對(duì)海量的最長(zhǎng)前綴匹配(lpm)規(guī)則的存儲(chǔ)管理和訪問,都需要快速索引出最長(zhǎng)前綴匹配(lpm)規(guī)則的具體位置,以得到這條規(guī)則對(duì)應(yīng)的結(jié)果或者處理方式。因此,快速計(jì)算最長(zhǎng)前綴匹配(lpm)規(guī)則的索引值顯得尤為重要。

2、最長(zhǎng)前綴匹配(lpm)規(guī)則的哈希索引是一種使用哈希表來存儲(chǔ)和查找路由規(guī)則的方法,可利用哈希表快速訪問的特點(diǎn),基于設(shè)計(jì)的哈希函數(shù)將路由規(guī)則的前綴映射到哈希表的索引實(shí)現(xiàn)。但是,現(xiàn)有用于計(jì)算最長(zhǎng)前綴匹配(lpm)規(guī)則的哈希索引值的方法,一方面無法獲得均勻的哈希值,另一方面計(jì)算速率較低,耗費(fèi)時(shí)間較長(zhǎng)。如,專利(cn112905597b)中公開的一種計(jì)算最長(zhǎng)前綴匹配lpm規(guī)則索引的hash辦法,雖然可以解決變長(zhǎng)數(shù)據(jù)的索引分布的離散程度,并減少哈希沖突,適用于混合存儲(chǔ)不同長(zhǎng)度最長(zhǎng)前綴匹配(lpm)規(guī)則的場(chǎng)景;但是,技術(shù)方案存在計(jì)算頻次較高的問題,對(duì)于長(zhǎng)度較長(zhǎng)的最長(zhǎng)前綴匹配(lpm)規(guī)則,需經(jīng)過多次迭代,才能獲得符合目標(biāo)長(zhǎng)度的哈希值,這對(duì)于搜索相關(guān)的硬件實(shí)現(xiàn)來說較為復(fù)雜,將使得計(jì)算速率較低,耗時(shí)較長(zhǎng)。


技術(shù)實(shí)現(xiàn)思路

1、鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本技術(shù)的目的在于提供一種最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法及裝置,用于解決現(xiàn)有最長(zhǎng)前綴匹配(lpm)規(guī)則的哈希索引值計(jì)算速率低的問題。

2、為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本技術(shù)的第一方面提供一種最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法,所述最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法包括:確定最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度以及目標(biāo)索引長(zhǎng)度;當(dāng)最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度超過目標(biāo)索引長(zhǎng)度時(shí),根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行分段,獲得多個(gè)符合目標(biāo)索引長(zhǎng)度的索引分段碼;對(duì)各索引分段碼執(zhí)行多輪哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼,以將該索引分段碼作為最長(zhǎng)前綴匹配規(guī)則的哈希索引值輸出。

3、于本技術(shù)的第一方面的一些實(shí)施例中,根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行劃分,獲得多個(gè)符合目標(biāo)索引長(zhǎng)度的索引分段碼的方式包括:根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行分段,獲得多個(gè)分段碼;當(dāng)獲得的最后一個(gè)分段碼的長(zhǎng)度不符合目標(biāo)索引長(zhǎng)度時(shí),對(duì)該分段碼執(zhí)行末位補(bǔ)零操作,使其符合目標(biāo)索引長(zhǎng)度;將各符合目標(biāo)索引長(zhǎng)度的分段碼作為索引分段碼。

4、于本技術(shù)的第一方面的一些實(shí)施例中,對(duì)各索引分段碼執(zhí)行多輪哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼的方式包括:對(duì)通過對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼分段獲得的各索引分段碼執(zhí)行第一輪的哈希運(yùn)算操作,使索引分段碼數(shù)量減一,并獲得對(duì)應(yīng)一或多個(gè)新的索引分段碼;判斷新獲得的索引分段碼數(shù)量是否唯一;若數(shù)量不唯一,則重復(fù)上述步驟,繼續(xù)對(duì)新獲得的各索引分段碼執(zhí)行又一輪的哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼。

5、于本技術(shù)的第一方面的一些實(shí)施例中,對(duì)各索引分段碼執(zhí)行一輪的哈希運(yùn)算操作的方式包括:依次將每?jī)蓚€(gè)相鄰索引分段碼進(jìn)行位對(duì)位異或運(yùn)算,獲得一或多個(gè)新的索引分段碼。

6、于本技術(shù)的第一方面的一些實(shí)施例中,所述方法還包括:當(dāng)最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度不超過目標(biāo)索引長(zhǎng)度時(shí),將最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼作為其哈希索引值輸出。

7、為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本技術(shù)的第二方面提供一種最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算裝置,所述最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算裝置包括:lpm規(guī)則輸入模塊,用于輸入最長(zhǎng)前綴匹配規(guī)則,并確定最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度以及目標(biāo)索引長(zhǎng)度;哈希索引值計(jì)算模塊,連接所述lpm規(guī)則輸入模塊,用于當(dāng)最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度超過目標(biāo)索引長(zhǎng)度時(shí),計(jì)算輸入的最長(zhǎng)前綴匹配規(guī)則的哈希索引值;其中,所述哈希索引值計(jì)算模塊包括:lpm規(guī)則分段器,用于根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行劃分,獲得多個(gè)符合目標(biāo)索引長(zhǎng)度的索引分段碼;多級(jí)索引分段哈希運(yùn)算器,連接所述lpm規(guī)則分段器,用于對(duì)各索引分段碼執(zhí)行多輪哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼;哈希索引值輸出器,連接所述多級(jí)索引分段異或運(yùn)算器,用于將獲得的唯一索引分段碼作為最長(zhǎng)前綴匹配規(guī)則的哈希索引值輸出。

8、于本技術(shù)的第二方面的一些實(shí)施例中,所述lpm規(guī)則分段器包括:規(guī)則分段單元,用于根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行分段,獲得多個(gè)分段碼;分段長(zhǎng)度判別單元,連接所述規(guī)則分段單元,用于判斷獲得的最后一個(gè)分段碼的長(zhǎng)度是否符合目標(biāo)索引長(zhǎng)度;分段補(bǔ)零單元,連接所述分段長(zhǎng)度判別單元,用于當(dāng)獲得的最后一個(gè)分段碼的長(zhǎng)度不符合目標(biāo)索引長(zhǎng)度時(shí),對(duì)該分段碼執(zhí)行末位補(bǔ)零操作,使其符合目標(biāo)索引長(zhǎng)度;索引分段碼輸出單元,連接所述規(guī)則分段單元以及所述分段補(bǔ)零單元,用于將各符合目標(biāo)索引長(zhǎng)度的分段碼作為索引分段碼輸出。

9、于本技術(shù)的第二方面的一些實(shí)施例中,所述多級(jí)索引分段哈希運(yùn)算器包括:依次連接的多個(gè)索引分段哈希運(yùn)算器,分別用于對(duì)各索引分段碼執(zhí)行一輪的哈希運(yùn)算操作;其中,每個(gè)索引分段哈希運(yùn)算器包括:一或多個(gè)寄存器以及與各寄存器連接的一個(gè)異或運(yùn)算器。

10、于本技術(shù)的第二方面的一些實(shí)施例中,所述多級(jí)索引分段哈希運(yùn)算器對(duì)各索引分段碼執(zhí)行多輪哈希運(yùn)算操作的方式包括:將通過對(duì)最長(zhǎng)前綴匹配規(guī)則的分段碼分段獲得的各索引分段碼按順序存儲(chǔ)在第一級(jí)的索引分段哈希運(yùn)算器的各寄存器中;通過第一級(jí)的索引分段哈希運(yùn)算器的異或運(yùn)算器,對(duì)各索引分段碼執(zhí)行第一輪的哈希運(yùn)算操作,使索引分段碼數(shù)量減一,并獲得對(duì)應(yīng)一或多個(gè)新的索引分段碼;判斷新獲得的索引分段碼數(shù)量是否唯一;若數(shù)量唯一,則將該索引分段碼存儲(chǔ)至所述哈希索引值輸出器的寄存器中,并通過所述哈希索引值輸出器,將該索引分段碼作為最長(zhǎng)前綴匹配規(guī)則的哈希索引值輸出;若數(shù)量不唯一,則重復(fù)上述步驟,繼續(xù)將新獲得的各索引分段碼按順序存儲(chǔ)在下一級(jí)的索引分段哈希運(yùn)算器中,并通過該級(jí)的索引分段哈希運(yùn)算器的異或運(yùn)算器,對(duì)各索引分段碼執(zhí)行又一輪的哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼。

11、于本技術(shù)的第二方面的一些實(shí)施例中,所述裝置還包括:lpm規(guī)則輸出模塊,連接所述lpm規(guī)則輸入模塊,用于當(dāng)最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度不超過目標(biāo)索引長(zhǎng)度時(shí),將最長(zhǎng)前綴匹配規(guī)則的分段碼作為其哈希索引值輸出。

12、如上所述,本技術(shù)提供了一種最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算方法及裝置,通過當(dāng)最長(zhǎng)前綴匹配規(guī)則的長(zhǎng)度超過目標(biāo)索引長(zhǎng)度時(shí),根據(jù)目標(biāo)索引長(zhǎng)度,對(duì)最長(zhǎng)前綴匹配規(guī)則的二進(jìn)制碼進(jìn)行分段,獲得多個(gè)符合目標(biāo)索引長(zhǎng)度的索引分段碼;并通過對(duì)各索引分段碼執(zhí)行多輪哈希運(yùn)算操作,直至僅獲得一個(gè)索引分段碼,從而可將該索引分段碼作為最長(zhǎng)前綴匹配規(guī)則的哈希索引值。本技術(shù)具有以下有益效果:本技術(shù)不僅能夠保證其哈希索引值的均勻分布程度,還有效提高了計(jì)算速率,從而提高了最長(zhǎng)前綴匹配規(guī)則的索引速率,有效解決了現(xiàn)有最長(zhǎng)前綴匹配規(guī)則的哈希索引值計(jì)算速率低的問題,可實(shí)現(xiàn)對(duì)大量最長(zhǎng)前綴匹配規(guī)則存儲(chǔ)在多個(gè)相同存儲(chǔ)結(jié)構(gòu)中的快速查找和訪問。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
桑日县| 神木县| 葫芦岛市| 临夏市| 白城市| 阿合奇县| 杭州市| 密云县| 喀什市| 调兵山市| 黄梅县| 青阳县| 军事| 修文县| 昌乐县| 呼伦贝尔市| 依兰县| 久治县| 榕江县| 山东省| 东兰县| 定结县| 香格里拉县| 兰坪| 资兴市| 共和县| 独山县| 荆州市| 桐梓县| 安福县| 诸暨市| 阿拉善盟| 雷波县| 应城市| 岳阳县| 香港 | 寻甸| 会宁县| 高州市| 博兴县| 汤阴县|