Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPARATUS AND METHOD FOR STORING, SEARCHING HASH TABLE ENTRIES
Document Type and Number:
WIPO Patent Application WO/2011/006311
Kind Code:
A1
Abstract:
An apparatus and a method for storing, searching hash table entries are provided. The apparatus for storing hash table entries comprises: a main control logic module, a hash table splitting module, a table entry adding module, several searching modules and several table entry storing modules corresponding to the searching modules; the apparatus for searching hash table entries comprises: a main control logic module, a data deciding module, several calculating modules, several searching modules and several table entry storing modules corresponding to the searching modules. It is realized that all table entries are stored at a cost of extremely short searching time and at an extremely high utilization ratio of table space without any table entry left. The trade-off between the size of table space and the searching efficiency can be achieved well.

Inventors:
ZHANG WEI (CN)
LI YU (CN)
XU WEIHUA (CN)
SUN YUANHANG (CN)
Application Number:
PCT/CN2009/073935
Publication Date:
January 20, 2011
Filing Date:
September 15, 2009
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
ZHANG WEI (CN)
LI YU (CN)
XU WEIHUA (CN)
SUN YUANHANG (CN)
International Classes:
G06F17/30
Foreign References:
CN101034412A2007-09-12
CN1912870A2007-02-14
Attorney, Agent or Firm:
KANGXIN PARTNERS, P.C. (CN)
北京康信知识产权代理有限责任公司 (CN)
Download PDF:
Claims:
要 求

. 存儲裝置 其特 在于, 包 控 、

、 、 干 的若干

其中,

控 于 的 控制

于在所 控 的控制下將 分力 干 子表, 存 存 中 每張 子表 于 的 子表 以 在 收到 存儲 出的更新指令 照 更 指令 的要求 子表的更新

于 次利用 前的 子表 的 函 值的 每 得到的 在 前的 子表中 空 找到, 則將 存儲 的 息存 中 若 得到的 都 有 到空 則 前的 子表是否 最 張 子表, 不是,

前的 子表更 力其下 張 子表的 更 指令

多 于 收 添 出的 指令 指令中 的 存儲 的 相 存儲 中 的 子表 操作

多 , 于存 子表,

存儲 張或多 子表 . 要求 1 的裝 其特 在于 在判定 前的 子表 最 張 子表 , 前的 子表的 更 是否大于 , 是

將 前的 子表更新力 張 子表的更新指 否則 將 前的 林 子表 的 全 更 。

. 要求 1 的裝置, 其特 在于 包

弄常 , 于 左 控 的 , 零和重新賦值操作。 . 要求 1或3 的裝置 其特 在于 子表 的 函 余 干 子表 的 同 不同的 余 多項式。 . 裝置 由 干 子表 成 每張 子表 函 , 其特 在于 包 控 、 判決 、 干 、 干 一一 的 干 存儲 其中

控 于 的 控制 多 于在所 控 的控制下利用每張 子表 的 函 待查 的 值的

多 于 得到的 在其 各自 的 存 中 查

判決 于 各 子表的查表結果 待查 的 比較 判定是否存在匹配的 存在 將所述 的 息作 力最終查表結果, 否則 前的 是否等于 是

控 本 失 消息, 否則 ++ 要求5 的裝置 其特 在于 子表 的 存儲 子表 的 函 相同 . 存 方法 其特 在于, 包 步驟

、 將 分力 干 子表 每張 子表 函 , 1

、 將第 張 子表作力 前的 子表

C、 次利用 前的 子表 的 函 存儲 值的 , 每次 得到的 在 前的 子表 中 空 到 則將 的 息存 空 + 若 得到的 都 有找到空 下 步驟

、 前的 子表是否 最 一張 子表 若不是 將 前的 子表更新力其下一張 子表 步驟C . 要求7 的方法, 其特 在于 步驟C中, 果 則 存 的 利用 前的 子表 的 1 函 在 前的 子表中 空 , 到 則將 的 息存 空 中 否則 下 介 函 操作 果直到 函 都 有找 到空 , 則 步驟 。

. 要求7或8 的方法 其特 在于 步驟C中 在 算出 存 值的 , 前的 子表的容量

截取 以截取 的 索引在所 子表中 空 0. 要求7所述的方法 其特 在于 所述 子表 的

余 干 子表 的 函 間 不同的 余 多 。 1. 要求7或8 的方法 其特 在于, 步驟 包

、 前的 子表是否 最 張 子表, 是 下 步驟 否則, 將 前的 子表更新力其下 張 子表 步驟C

2、 前的 子表的 函 更新 是否大于 若是 將 前的 子表更新力 張 子表, 本步驟,否則 將 前的 子表 的 函 全部更新 步驟C 2. 方法 所述 干 子表 每張 子 表 函 , 其特 在于 包 步驟

、 利用每張 子表 的 函 待查 的 值的 的 1 得到的 在其各自 的 子表中

、 將各 子表的查表結果 待查 的 比較, 判定是 否存在匹配的 若存在 將 的 息作力最終查表結果 否則 下一步驟

C、 前的 是否等于 , 是 本 流 結束 否則 將 1 步驟 。

. d 要求 12 的方法, 其特 在于 子表 的

所述 子表 的 相同。

. d 要求 12 的方法, 其特 在于 步驟 中 在 算出待 查 的 值的 各自 的 子表的容量

截取 以截取 的 索引在其各自 的 子表中

Description:
、 裝置 方法 木 域 本 涉 通信 木 域, 尤其涉 存儲、 裝置 方 法。 背景 木 在通信領域中 存在看多 的匹配算法 例 于 匹配的 , 以 算法。 的 的 是用 的

e ) 再用 得到的 在 索引 中 , 到匹 中存 的 s de ) 最 索引在 直 映射 , 得到所需的 結果 于 的 休 以 參考 "C so e a ez e g Pa a ae 著。 O a O as g o a ea ds b edaddess oo Co e ewo s CS 05 203-210 2005" 中的 算法是 的快速 算法。 2 " , 亞平 著。 于 ee的多維 P 矣算法 200532" 中 了核算法的基本 它的基本思想是以域 表中 素的 自 。 定的 算出 的 未 值 解 決 存儲 同的 將 素存儲到 中。 算法將 素的存 置 它的 字 建 一介 的 不需 要比 次 映射 以 所需 素 在 中 不同的 能得到同一 址 即 e e 2 e e 2 送神情 Co s o ) 般未 到 是 常的事情 在于 到 , 以 到要求的 目的。

要有以下 方法 是 比較 的 函 是 比 的 存 。 參考 3 a -S C o- e g Ja- a g - a S a d . g-Je C e 著。 S C es.g o as P oo o e Ge .o P o e 2005"中 了 的 率的比較, 其中 以看出 于 由 的 C C C c c ed d c C ec g 余 ) 矣的 是比較 的 于 C C 方法 參考 J P oo a T dbC a a a 著 C c c ed da c Code C C Po o a Seec o o bedded ewo s The e a o a Co 6e e ceO e e dabe S se s a d e o s, S -2004" "C c c ed da c c ec //e edaog/ /Cyc c_ed da cy c ec 中的

不同的 C C多項式, 以 同 介 下的不同 。 在 的 解決 方面 6 as e. //g .Og/ de .p / Tabe 中提 了 些方法 比 多 、 、 o be as g 重 )等。 結果表明, 用 方法, 在 遺留即所有 都能存 的前 余 下

值的 跟需要的 同存在 的 是 果想要以 小的 下所有的 則 多 的 。

造成 同 表的多 同 果 的 的 是10 那 在 平均 是需要 5 才能 到需 的 而最 情 是需要 10 由于 只有 張 所以 只能順序 , 查表的速度 另 方面 果想要以 少的 能 到存儲 那 要 存儲 同 的大 同利用 大大的降 在送神方法下 需要 同 大小很 到平 。 內容 本 提 、 裝置 方法 用以解決 有 存儲 的查表需要 同 跟 量大小 到平 的同 。 了 目的 本 的 介方面 提 了 存儲 裝置 包 控 、 、 、 若干

和 的 干 存儲 其中 控 于 的 控制 , 于在 控 的控制下將 分力 干 子表 將 存 中 每張 子表

于 的 林 子表 以 在 收到 存 出的 更新指 , 照 指令的要求 子表的 新 添 于 次利用 前的 子表 的

存儲 值的 每 得到的 在 前的 子表中 空 ,若 找到, 所述 存儲 的信息存 空 中 若 得到的 都 有 到空 前的 子表 是否 最 一張 子表 若不是 將 前的 子表 新力其下 張 子表的更新指 多 于 收 添 出的 指令, 指令 中 帶的 存儲 的 址 相 存儲 中存儲的 子表 往 操作 多 于存儲 子表 張或 多 子表。 步 在判定 前的 子表 最 張 子表 前的 子表的 更新 是否大于 是, 將 前的 子表更新力 張 子表的更 指 , 否則 將 前的 子表 的 全 部 新 一步 裝 包 弄常 于 控 的 通

存 零和重 賦值 作。 步 子表 的 余 函 所述 干 子表 的 同 不同的 余 多項 式。 了 目的 本 的另一方面 提 了一

裝置 由若干 子表 , 每張 子表

, , 包 控 、 判決 、 若干 、 干 的 干 存儲 其P 控 于 的 控制 多 于在 控 的控制下利用每張 子表 的 函 待查 的 值的 多 于根 得到的 在其各自 的 中 查 判決 于將各 子表的查表結果 待查 的 比 較, 判 是否存在匹 的 存在, 將 的 息作力最終查表結果 否則 前的 是否等于 若是 控 本 失 消息 否則 ++ 步 子表 的 子表 的 相同。 了 目的 本 的另 方面 提 了 存儲 包 步驟 、將 分力 干 子表 每張 子表 、 將第 張 子表作力 前的 子表 C、 次利用 前的 子表 的 存儲 值的 每 得到的 在 前的 子表中 空 , 找到 將 存儲 的 息存 空 + 得到 的 都 有 到 下一步驟 、 前的 子表是否 最 張 子表 若不是 將 前的 子表更 力其下一張 子表 步驟C。 步 步驟 C , 果 則 存儲 的 利用 前的 子表 的 1 在 前的 子表中 空 若 到 則 存儲 的 存 中, 否 換下 介 函 操作 果 直到 都 有 到至 步驟 。 步 步驟 C 中 在 算出 值的

前的 子表的 截取 以截取 的 索 引在所 子表中 。 步 子表 的 余 函 若干 子表 的 同 不同的 余 多項式。 步 所述步驟 包 、 前的 子表是否 最 張 子表, 是 下 步驟 否則 將 前的 子表更新力其下 張 子表

C 2、 前的 子表的 函 更新 是否大于 若是 將 前的 子表更新力 一張 子表, 本步驟 否則 將 前的 子表 的 全部 新, 步驟C 了 目的 本 的另一方面 提 了一

方法 干 子表 成 每張 子表 函 包 步驟 、 利用每張 子表 的 待查 的 值的 的 1, 得到的 在其各自 的 子表中 、 將各 子表的查表結果 待查 的 比 判定是否存 在匹 的 存在 將 的信息作力最終查表結果 否則 下 一步驟 C、 前的 是否等于 , 是 本 失 流 結束 否 則, 將 1 步驟 。 步 子表 的 函 存 子 表 的 相同。 步 步驟 中 在 算出需要 的 值的

自 的 子表的容量 截取 以截取 的 索引在其各自 的 子表中 現有 木相比, 本 具有 下有益 果 本 有 解決了 查表需要 同 跟 同大小 到平 的同 , 以 小的 同 以 高的 同利用率 全部 存儲 遺留, 在 空間大小和 率方面 得了比較 的 均衡 固 明 1力本 存 裝置的一介較佳 的 2力本 裝置的一介較佳 的 3 將本 所述 裝置 裝置結 的裝置的 4力本 存儲方法的 介較佳 的流 5力本 方法的 介較佳 的流 休 方式 本 的主要 木 是 將大 的 成多 子 表 同, 子表 至少 介 在存 次利 用每張 子表 的 在 子表中 空 存 在 , 所有 子表 以提高 速度。

結 各 本 的 休 予以 步 的同 。

清 1 力本 存 裝置的一介 佳 的 存 要用于完成 的添 、 刪除或者刷新 等操作。 其 要包 控 、 、 、 、 、 干 的 干 存儲 其中 控 至 添 、 、 、 、

均分別 至多 1~ , 多 1~ 分別 至多 存儲 1~ 。 其中各 的 要功能 下 控 是 存儲裝置的控制部件 于 的存 儲 控制 要 算法 , 終 各 等操作。 其 以 , S C ca o S ecRC eg edC c 集成 ) 或者是 PG ed oga e e , 陣列 )或 者是其 函 能的 。 以 在 CP Ce a P ocess 中央控制器) 的 件 在 神 方式下, 添 、 、 和 均 以 件未 。 , 于在 控 的控制下將 分力 干 子表 將 存 存 中 每張 子表 函 其中 若干 子表的存 空間大小 以 需要

于將第 張 子表 的 子表 在 收到 存儲 出的更新指 , 照 更新指令的要求

子表的 新。 添 于 次利用 前的 子表 的 函 存 值的 每次 得到的 在 前的 子表中 空 ,若 找到, 則 存儲 的信息存 空 中 得到的 都 有 到空 前的 子表 是否 最 張 子表 若不是 將 前的

子表更新力其下一張 子表的更新指 步 在判定 前的 子表 最 張 子表 前的 子表的 函 更新 是否大于n 是, 將 前的 林 子表更新力 張 子表的更新指令, 否則 將 前的 子表 的 函 全 部更新。 、同 作 的 在

, 將 析子表 定力第 張 子表, 將

。 添 次 第一張 子表 的 函 一 得到 余目的索引 當 將 存 的 函 的 子表中的 于索引 的 置。在 存儲的 有 能 到 的情 即 不同的 得到同 一張 子表的同一介索引 。 在送神情 下, 果 大于 1 則 添 前的 子表利用下一 函 空 , 操作 果利用所有 函 在 前的 子表都 完成存 的 作 則 消息 則 前的 子表是否 最 一張 子表 不是則將 的 子表 下一張 子表 添 , 述 已 是最 張 子表則 償 消息 控 通 控 未完成 表的刷新。 添 多 、 修 或者刪 存 中的內容。 多 于 收 添 出的 指令, 指令 中 的 存 的 址 相 存 中存 的 子表

操作 的 于 介 存 , 通 存儲 的 和 中的 修 。 多

收 、 、 和 出的 指 將 特換成 存 的 址 存 中的存 操作。 多 于存 子表 存 存 一張或 多 子表 其中每張 子表都是通 分得到。

存儲 具有 的 的 其中 每 介 言 以 是多 存儲 同不 。 多 存 上 的 的 址 和 的 分 別 于多 多 以 址未坊間多 存 儲 中 于 址 的 。 的多 存儲 以 前存在的各 木未 , 在需要少 的 用物 下 以用 介 的高速 SR S 。 R 存取存儲器) 忘 未作力多 存儲 的高速 SR 以是Z T zeo sT ao d 特 ) SR Q Q ad ae ae 率) SR Q R Q + R 等各 常用的 SR 在需要大容量表 同的情 下, 以用 介 的高速 R 未作力多 存儲 的高速 R

以是S S c o o s a c a do , 同步 ) SR4 ,

o be ae ae 率) SR R SR 等各 常用的 SR 在需要 保存 的情 下 以用 介 的 S 未作力多 存儲 的 S 以是

o- dGae 非 S O o-O Gae 或非 ) S o o e, 非易 ) 或者其 常用的存 在海量 的情 下, 多 以用多 的 多 的 陣列 或者是 等海量 木未 。 本 域的 木 以在不 本 的精神和 固下 意 多 存儲 的 。 和 于完成系 監控 等 各。 每 失 將 汞。

控 出的 刷新 通 多 多 存

零和重 賦值操作 本 P 子表 的 以是C C函 以是 其 C C 力本 明中 子表 的

干 子表 的 同 以 不同的 C C多項式。 2 力本 裝置的一介 佳 的 本裝置 的 由若干 子表 成, 干 子表的 存儲 同大小 以 需要 。每張 子表具有 的 址控制哉 以同 。 每張 子表 每張 子表 的 存 子表 的 相同。 本 要 包 控 、 判決 、 干 1~ 、 干

1~ 以 若干 的若干 1~ 其中, 控 至多 以 判決 多

分別 至多 多 別 至多 存儲 。 其 中各 的 要功能 下 控 是 裝置的控制部件 于 的 控制 要 , 結果收集等操作。 其 以由 件 S C 集成 )或者是 P 陣列 )或 者是其 以 功能的 以 在 P 中央 ) 的 件未 。 多 于在 控 的控制下利用每張 子表 的 需要 的 值的 , 的 1。

中包含 不同的 。 以 各 已 的方法 或陣列或者矣 C C , 或者 的 等等 函 的 則是要 能的減少不同的 得的索 引 。 中 控 待查 的 同 多

在多 中 分配到的 同

不同的 得 不同的索引。

多 于根 得到的 在其各自 的 中 查 于一介

通 存儲 的 和 哉 存儲 中的

同。 收 生成的 不同的索引 符其特 成

的 址 址 的 。 以存在索引值的 減 移量或者截取等 。 在 到 于 址的 將 多 得到的索引 和多 的

判決 。

多 于存儲 子表 張 子表 其中每張 子表都是通 分得到。

存儲 具有 的 同 和 的 其中 每 介 言, 址 以 是多 存 同不 。 多 存儲 的 的 址 間 的 分別 于多 多 以 未 多 存儲 中 于 址 存儲的 。 存儲 的 方式

裝置中表 存儲 的 方式相同 里不再 予 多 。 判決 于將各 子表的查表結果 需要 的 比 判 是否存在匹配的 若存在 將 的 息作力最終查表結 果, 否則 前的 是否等于 是, 控 本 失 消息, 否則 將 1 多 在 了多 結果 將結果 至 判決 , 判決 控 未的原 比較多 結果中 介是 次 命中 T ), 由于多 的多 結果未自 于多 中存儲的多 子表 而 子表是通

分得到的 因 中不存在 的 結果 只有一介 結 果是 能的 結果, 或者 的結果 值不符 本 。 在 的情 下, 判決 將 的 中的索引 , 代表本 的結果 在 的情 下 判決 將 控 介 索引 或者 介中 通 控 本 。 本 + 子表 的 以是C C函 以是 其 C C 力本 明中 子表 的

干 子表 的 同 以 不同的 C C多項式。

中的 存儲裝置 中的

裝置 羊 將 結 未 3 將本 存儲 置 裝置結 的裝置的 結 的裝置中各 的 能力 存 裝置中各 的 能 中各 功能的結 里不再 予 多 。

4 力本 方法的 介較佳 的 流 其主要包 下步驟 步驟 0 、將 分力 子表 每張 子表

其中, 子表的存 同大小 以 需 配

步驟S102、 將第一張 子表作力 前的 林 子表 步驟S103、 存儲 的 前的 子表 的第 的 1 步驟 S104、 得到的 在 前的 子表中 是否 有空 若有空 則 步驟S106, 否則 于步驟S105 在步驟S103中 算出 值的 , 前的 子表的容量小于 得到的 的 則需 截取 以 截取 的 索引在所 子表中 空 。 步驟 S105、 前 用的 是否 子表 的最 , 果是, 則 步驟S107 否則 步驟S103 步驟S106、 將 存 的 息存 找到的 中。 步驟S107、 前的 子表是否 最 張 子表 是 步驟S109 否則 步驟S108 步驟 5108、 將 前的 子表更新力其下 張 子表 步 驟S103 步驟 S109、 前的 子表的 更 是否大于 若是 步驟S 0 否則 步驟S 1 步驟 S 0、 將 前的 子表更新力 張 子表

S109 步驟 11、 將 前的 子表的 全部更 步驟 S103 5 力本 方法的 介較佳 的 流 本 中 的 由若干 子表 成 干 子表 的 同大小 以 需要 。 每張 子表具有 的 址 哉, 以同 。 每張 子表 函 , 每張 子表 的 存儲 子表 的 相同 其 要 包 下步驟 步驟S201、 利用每張 子表 的 中 的 函 需要 的 值的 的 步驟 S202、 得到的 在其各自 的 子表中

步驟 S203、 將各 子表的查表結果 需要 的 比較 定是否匹配 果匹 則 步驟S204 否則 步驟S205 步驟S204、 將 的信息作力最終查表結果 步驟 S205、 是否已 比較到 子表 的最 一介 函 果是 則表 到 否則 + 步驟S201 在 存 中 存 值的 了截取 則在本 方法 中, 在步驟 S2 1 中 算出需要 的 值的 同 需要 各自 的 子表的容量 截取 以 截取 的 索引在其各自 的 子表中 。 在 存儲 中 果 大于 則在 中 每張 子 表最多需要 直到 到匹配的 。 然 本 域的 木 以 本 各 不 萬本 的精神和 固。 倘 本 的 修 于本 要 求 其等同 木的 固 則本 包 在內。