基于深度布隆過濾器的NDN網(wǎng)絡三級名字查找方法
doi: 10.11999/JEIT200766
-
1.
河南科技大學信息工程學院 洛陽 471023
-
2.
北京交通大學下一代互聯(lián)網(wǎng)互聯(lián)設備國家工程實驗室 北京 100044
A Three-level Name Lookup Method Based on Deep Bloom Filter for Named Data Networking
-
1.
School of Information Engineering, Henan University of Science and Technology, Luoyang 471023, China
-
2.
National Engineering Laboratory for Next Generation Internet Interconnection Devices, Beijing Jiaotong University, Beijing 100044, China
-
摘要: 為提高命名數(shù)據(jù)網(wǎng)絡(Name Data Networking, NDN)路由過程中內(nèi)容名字查找的效率,該文提出一種基于深度布隆過濾器的3級名字查找方法。該方法使用長短記憶神經(jīng)網(wǎng)絡(Long Short Term Memory, LSTM)與標準布隆過濾器相結合的方法優(yōu)化名字查找過程;采用3級結構優(yōu)化內(nèi)容名字在內(nèi)容存儲器(Content Store, CS)、待定請求表(Pending Interest Table, PIT)中的精確查找過程,提高查找精度并降低內(nèi)存消耗。從理論上分析了3級名字查找方法的假陽性率,并通過實驗驗證了該方法能夠有效節(jié)省內(nèi)存、降低查找過程的假陽性。
-
關鍵詞:
- 命名數(shù)據(jù)網(wǎng)絡 /
- 內(nèi)容名字查找 /
- 深度布隆過濾器 /
- 內(nèi)存消耗
Abstract: A three-level name lookup method based on deep Bloom filter is proposed to improve the searching efficiency of content name in the routing progress of the Named Data Networking (NDN). Firstly, in this method, the Long Short Term Memory (LSTM) is combined with standard Bloom filter to optimize the name searching progress. Secondly, a three-level structure is adopted to optimize the accurate content name lookup progresses in the Content Store (CS) and the Pending Interest Table (PIT) to promote lookup accuracy and reduce memory consumption. Finally, the error rate generated by content name searching method based on deep Bloom filter structure is analyzed in theory, and the experiment results prove that the proposed the three-level lookup structure can compress memory and decrease the error effectively. -
表 1 面向深度布隆過濾器的名字查找算法
輸入:內(nèi)容集合S,非內(nèi)容集合U,閾值$\tau $ 輸出:內(nèi)容名字x 1: 調用LSTM架構使用集合S和集合U獲得一個集合D; 2: 查找x在初始過濾器中進行精確匹配; 3: while 對每一個$x \in S$ do 4: If b[i]=1 then 5: 將匹配內(nèi)容x發(fā)送到深度學習模型中; 6: else 7: 將未匹配的x發(fā)送到FIB表中進行最長前綴匹配查找; 8: end while 9: if $(x, y) \in D $ then//在第2級深度學習模型中進行精確匹配查找 10: 計算$f(x)=\dfrac{1}{1+{ \rm{e} }^{-x} }$; 11: end if 12: if $x \in S $且$ f(x) < \tau $ then 13: 將查找獲得的內(nèi)容名x在路由表中對應的數(shù)據(jù)包進行轉發(fā); 14: else if $x \in S $且$f(x) < \tau $ then 15: 將未匹配的內(nèi)容名字x發(fā)送到第3級備份過濾器進行查找; 16: while在備份布隆過濾器查找b[i]=1 do 17: 將查找獲得的內(nèi)容名x在路由表中對應的數(shù)據(jù)包進行轉發(fā); 18: end while 19: else 20: 將第3級未匹配的內(nèi)容發(fā)送到FIB表中進行最長前綴匹配查找; 21: end if 下載: 導出CSV
表 2 服務器配置
主要模塊 具體配置 主板 LENOVO-LNVNB161216 CPU Intel Core? i7-9750H (6核,主頻2.60 GHz) 內(nèi)存 DDR4 8GB (內(nèi)存頻率 2667 MHz) 下載: 導出CSV
表 3 GRU和隱藏層參數(shù)配置與編號
配置編號 參數(shù)配置 配置編號 參數(shù)配置 配置編號 參數(shù)配置 I型 GRU大小=32,隱藏層大小=8 IV型 GRU大小=16,隱藏層大小=8 VII型 GRU大小=8,隱藏層大小=4 II型 GRU大小=32,隱藏層大小=4 V型 GRU大小=16,隱藏層大小=4 VIII型 GRU大小=4,隱藏層大小=4 III型 GRU大小=16,隱藏層大小=16 VI型 GRU大小=8,隱藏層大小=8 VIIII型 GRU大小=4,隱藏層大小=8 下載: 導出CSV
-
[1] 楊國威, 徐泓, 李丹, 等. 未來互聯(lián)網(wǎng)體系結構研究現(xiàn)狀與趨勢[J]. 中國基礎科學, 2018, 20(3): 32–34. doi: 10.3969/j.issn.1009-2412.2018.03.006YANG Guowei, XU Hong, LI Dan, et al. Research status and trends of future internet architecture[J]. China Basic Science, 2018, 20(3): 32–34. doi: 10.3969/j.issn.1009-2412.2018.03.006 [2] 黃韜, 劉江, 霍如, 等. 未來網(wǎng)絡體系架構研究綜述[J]. 通信學報, 2014, 35(8): 184–197. doi: 10.3969/j.issn.1000-436x.2014.08.023HUANG Tao, LIU Jiang, HUO Ru, et al. Survey of research on future network architectures[J]. Journal on Communications, 2014, 35(8): 184–197. doi: 10.3969/j.issn.1000-436x.2014.08.023 [3] YAO Haipeng, LI Mengnan, DU Jun, et al. Artificial intelligence for information-centric networks[J]. IEEE Communications Magazine, 2019, 57(6): 47–53. doi: 10.1109/MCOM.2019.1800734 [4] ZHANG Lixia, AFANASYEV A, BURKE J, et al. Named data networking[J]. ACM SIGCOMM Computer Communication Review, 2014, 44(3): 66–73. doi: 10.1145/2656877.2656887 [5] 伊鵬, 李根, 張震. 內(nèi)容中心網(wǎng)絡中能耗優(yōu)化的隱式協(xié)作緩存機制[J]. 電子與信息學報, 2018, 40(4): 770–777. doi: 10.11999/JEIT170635YI Peng, LI Gen, and ZHANG Zhen. Energy optimized implicit collaborative caching scheme for content centric networking[J]. Journal of Electronics &Information Technology, 2018, 40(4): 770–777. doi: 10.11999/JEIT170635 [6] GRITTER M and CHERITON D R. An architecture for content routing support in the Internet[C]. Proceedings of the 3rd USENIX Symposium on Internet Technologies and Systems, San Francisco, USA, 2001: 4. [7] BARI M F, CHOWDHURY S R, AHMED R, et al. A survey of naming and routing in information-centric networks[J]. IEEE Communications Magazine, 2012, 50(12): 44–53. doi: 10.1109/MCOM.2012.6384450 [8] 許志偉, 陳波, 張玉軍. 針對層次化名字路由的聚合機制[J]. 軟件學報, 2019, 30(2): 381–398. doi: 10.13328/j.cnki.jos.005572XU Zhiwei, CHEN Bo, and ZHANG Yujun. Hierarchical name-based route aggregation scheme[J]. Journal of Software, 2019, 30(2): 381–398. doi: 10.13328/j.cnki.jos.005572 [9] FREDKIN E. Trie memory[J]. Communications of the ACM, 1960, 3(9): 490–499. doi: 10.1145/367390.367400 [10] DHARMAPURIKAR S, KRISHNAMURTHY P, and TAYLOR D E. Longest prefix matching using bloom filters[J]. IEEE/ACM Transactions on Networking, 2006, 14(2): 397–409. doi: 10.1109/TNET.2006.872576 [11] TAN Yun and ZHU Shuhua. Efficient name lookup scheme based on hash and character trie in named data networking[C]. Proceedings of the 12th Web Information System and Application Conference, Ji’nan, China, 2015: 130–135. doi: 10.1109/WISA.2015.72. [12] KRASKA T, BEUTEL A, CHI E H, et al. The case for learned index structures[EB/OL]. https://arxiv.org/abs/1712.01208, 2020. [13] MITZENMACHER M. Optimizing learned bloom filters by sandwiching[EB/OL]. https://arxiv.org/abs/1803.01474, 2018. [14] LI Fu, CHEN Fuyu, WU Jianming, et al. Fast longest prefix name lookup for content-centric network forwarding[C]. Proceedings of the 8th ACM/IEEE Symposium on Architectures for Networking and Communications Systems, Austin, USA, 2012: 73–74. doi: 10.1145/2396556.2396569. [15] LI Dagang, LI Junmao, and DU Zheng. An improved trie-based name lookup scheme for named data networking[C]. Proceedings of 2016 IEEE Symposium on Computers and Communication, Messina, Italy, 2016: 1294–1296. [16] LEE J, SHIM M, and LIM H. Name prefix matching using bloom filter pre-searching for content centric network[J]. Journal of Network and Computer Application, 2016, 65: 36–47. doi: 10.1016/j.jnca.2016.02.008 [17] GOVINDARAJAN P, SOUNDARAPANDIAN R K, GANDOMI A H, et al. Classification of stroke disease using machine learning algorithms[J]. Neural Computing and Applications, 2020, 32(3): 817–828. doi: 10.1007/s00521-019-04041-y [18] SUTSKEVER I, VINYALS O, and LE Q V. Sequence to sequence learning with neural networks[C]. Proceedings of the 27th International Conference on Neural Information Processing Systems, Montreal, Canada, 2014: 3104–3112. [19] CHO K, VAN M?RRIENBOER B, GULCEHRE C, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation[C]. Proceedings of 2014 Conference on Empirical Methods in Natural Language Processing, Doha, Qatar, 2014: 1724–1734. doi: 10.3115/v1/D14-1179. [20] BLOOM B H. Space/time trade-offs in hash coding with allowable errors[J]. Communications of the ACM, 1970, 13(7): 422–426. doi: 10.1145/362686.362692 [21] BRODER A and MITZENMACHER M. Network applications of bloom filters: A survey[J]. Internet Mathematics, 2004, 1(4): 485–509. doi: 10.1080/15427951.2004.10129096 [22] Blacklist[DB/OL]. http://squidguard.mesd.k12.or.us/blacklists.tgz.2020.7.5. [23] WANG Qianyu, WU Qingtao, ZHANG Mingchuan, et al. Learned bloom-filter for an efficient name lookup in information-centric networking[C]. Proceedings of 2019 IEEE Wireless Communications and Networking Conference, Marrakesh, Morocco, 2019: 1–6. -