Longest Prefix Matching Using Longest-First Search in a Leaf-Pushing Trie

Jinsol Lee, Hyesook Lim
{"title":"Longest Prefix Matching Using Longest-First Search in a Leaf-Pushing Trie","authors":"Jinsol Lee, Hyesook Lim","doi":"10.1109/ICEIC61013.2024.10457170","DOIUrl":null,"url":null,"abstract":"This paper introduces a new algorithm for IP address lookup, a pivotal task for routers to determine the appropriate output link for each incoming packet. With the advent of classless inter-domain routing (CIDR) scheme, the IP address lookup problem encounters the challenge of efficiently finding the longest matching prefix (LMP) at wire-speed. While off-chip ternary content addressable memories (TCAMs) are commonly employed for this purpose, they have drawbacks, particularly in power consumption and large cost. To address this, our research explores algorithmic alternatives, focusing specifically on utilizing a Bloom filter (BF) stored in an on-chip memory and a hash table stored in an off-chip memory. We propose to perform the longest-first search for the Bloom filter storing every prefix in a leaf-pushing trie. Since prefixes are exclusively located at the leaves of a trie following the leaf-pushing procedure, querying the BF from the longest level of the trie is highly effective. The on-chip BF serves the role of avoiding unnecessary off-chip hash table accesses by producing negative results for non-existing nodes. We have constructed the proposed algorithm using C++ code and tested against real-world routing data from backbone routers. Our results demonstrate that, given a Bloom filter of sufficient size, the proposed algorithm requires only one off-chip hash table access on average for each IP address lookup.","PeriodicalId":518726,"journal":{"name":"2024 International Conference on Electronics, Information, and Communication (ICEIC)","volume":"362 6","pages":"1-4"},"PeriodicalIF":0.0000,"publicationDate":"2024-01-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2024 International Conference on Electronics, Information, and Communication (ICEIC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICEIC61013.2024.10457170","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

This paper introduces a new algorithm for IP address lookup, a pivotal task for routers to determine the appropriate output link for each incoming packet. With the advent of classless inter-domain routing (CIDR) scheme, the IP address lookup problem encounters the challenge of efficiently finding the longest matching prefix (LMP) at wire-speed. While off-chip ternary content addressable memories (TCAMs) are commonly employed for this purpose, they have drawbacks, particularly in power consumption and large cost. To address this, our research explores algorithmic alternatives, focusing specifically on utilizing a Bloom filter (BF) stored in an on-chip memory and a hash table stored in an off-chip memory. We propose to perform the longest-first search for the Bloom filter storing every prefix in a leaf-pushing trie. Since prefixes are exclusively located at the leaves of a trie following the leaf-pushing procedure, querying the BF from the longest level of the trie is highly effective. The on-chip BF serves the role of avoiding unnecessary off-chip hash table accesses by producing negative results for non-existing nodes. We have constructed the proposed algorithm using C++ code and tested against real-world routing data from backbone routers. Our results demonstrate that, given a Bloom filter of sufficient size, the proposed algorithm requires only one off-chip hash table access on average for each IP address lookup.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
在推叶三角形中使用最长搜索进行最长前缀匹配
本文介绍了一种新的 IP 地址查找算法,这是路由器为每个传入数据包确定适当输出链路的关键任务。随着无类域间路由(CIDR)方案的出现,IP 地址查找问题面临着以线速高效查找最长匹配前缀(LMP)的挑战。虽然通常采用片外三元内容可寻址存储器(TCAM)来实现这一目的,但它们也存在缺点,尤其是功耗大、成本高。为了解决这个问题,我们的研究探索了算法替代方案,特别侧重于利用存储在片上存储器中的布鲁姆过滤器(BF)和存储在片外存储器中的哈希表。我们建议对存储在推叶三元组中的每个前缀的布鲁姆过滤器执行最长优先搜索。由于前缀只位于推叶三元组的叶子上,因此从三元组的最长层查询 Bloom 过滤器非常有效。片上 BF 的作用是通过对不存在的节点产生负结果来避免不必要的片外哈希表访问。我们使用 C++ 代码构建了所提出的算法,并根据骨干路由器的实际路由数据进行了测试。我们的结果表明,在布鲁姆过滤器足够大的情况下,所提出的算法在每次 IP 地址查询中平均只需要一次片外哈希表访问。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Study on Improving the Durability of Shaded Pole Induction Motors Used for Refrigerator Fans New Approximate 4:2 Compressor for High Accuracy and Small Area Using MUX Logic A Study on the UWB/Encoder/IMU Sensor Fusion Position Estimation System for the Development of Driving Assistance Technology in Autonomous Driving Wheelchairs DDANet: Dilated Deformable Attention Network for Dynamic Scene Deblurring NIR to LWIR Image Translation for Generating LWIR Image Datasets
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1