• Title/Summary/Keyword: Longest Prefix Matching

Search Result 20, Processing Time 0.02 seconds

Multiple Hashing Architecture using Bloom Filter for IP Address Lookup (IP 주소 검색에서 블룸 필터를 사용한 다중 해싱 구조)

  • Park, Kyong-Hye;Lim, Hye-Sook
    • Journal of KIISE:Databases
    • /
    • v.36 no.2
    • /
    • pp.84-98
    • /
    • 2009
  • Various algorithms and architectures for IP address lookup have been studied to improve forwarding performance in the Internet routers. Previous IP address lookup architecture using Bloom filter requires a separate Bloom filter as well as a separate hash table in each prefix length, and hence it is not efficient in implementation complexity. To reduce the number of hash tables, it applies controlled prefix expansion, but prefix duplication is inevitable in the controlled prefix expansion. Previous parallel multiple-hashing architecture shows very good search performance since it performs parallel search on tables constructed in each prefix length. However, it also has high implementation complexity because of the parallel search structure. In this paper, we propose a new IP address lookup architecture using all-length Bloom filter and all-length multiple hash table, in which various length prefixes are accomodated in a single Bloom filter and a single multiple hash table. Hence the proposed architecture is very good in terms of implementation complexity as well as search performance. Simulation results using actual backbone routing tables which have $15000{\sim}220000$ prefixes show that the proposed architecture requires 1.04-1.17 memory accesses in average for an IP address lookup.

Parallel IP Address Lookup using Hashing with Multiple SRAMs (여러 개의 SRAM과 해슁을 이용한 병렬 IP 어드레스 검색에 대한 연구)

  • Seo, Ji-Hyun;Lim, Hye-Sook;Jung, Yeo-Jin;Lee, Seung-Jun
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.28 no.2B
    • /
    • pp.138-143
    • /
    • 2003
  • One of the important design issues for IP routers responsible for packet forwarding in computer networks is the route-lookup mechanism. For each incoming packet, IP routing requires that a router performs a longest-prefix-match address lookup in order to determine the next hop that the incoming packet should be forwarded to. In this paper, we present a new scheme which applies the hashing function for IP address lookup. In the proposed scheme, the forwarding table is composed of multiple SRAMs, and each SRAM represents an address lookup table in each prefix. Hashing function is applied in order to find out the matching entries from the address lookup tables in parallel, and the entry with the longest prefix match among them is selected. Simulation using the MAE-WEST router example shows that a large routing table with 37000 entries can be compacted to a forwarding table of 300 Kbytes in the proposed scheme. It is also shown that the proposed scheme achieves one route lookup every 1.93 memory accesses in average.

Longest First Binary Search on Prefix Length for IP Address Lookup (최장 길이 우선 검색에 기초한 프리픽스 길이에 따른 이진 IP 검색 구조)

  • Chu Ha-Neul;Lim Hye-Sook
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.31 no.8B
    • /
    • pp.691-700
    • /
    • 2006
  • Based on the destination IP address of incoming packets, the Internet routers determine next hops and forward packets toward final destinations through If address lookup. The bandwidth of communication links increases exponentially fast as well as the routing table size grows significant as the number of single host networks attached to the Internet increases. Since packets should be processed at wire-speed, the increased link speed reduces the processing time of a packet in routers, and hence more efficient and fast IP address lookup algorithms and architectures are required in the next generation routers. Most of the previous IP lookup schemes compare routing prefixes of shorter length first with a given input IP address. Since IP address lookup needs to find the most specific route of the given input, search continues until the longest matched prefix is found while it keeps remembering the current test matching prefix. In this paper, based on binary search on prefix length, we proposed a new IP address lookup algorithm which compares longer prefixes first. The proposed scheme is consisted of multiple tries with prefixes on leaves only. The trie composed of the longest prefixes is primarily searched whether there is a match with the given input. This processing is repeated for the trio of the next longer prefixes until there finds a match. Hence the proposed algorithm provides the fast search speed. The proposed algorithm also provides the incremental update of prefixes while the previous binary search on length scheme does not provide the incremental update because of pre-processing requirement. In this paper, we performed extensive simulations and showed the performance comparisons with related works.

High Performance IP Address Lookup Using GPU

  • Kim, Junghwan;Kim, Jinsoo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.21 no.5
    • /
    • pp.49-56
    • /
    • 2016
  • Increasing Internet traffic and forwarding table size need high performance IP address lookup engine which is a crucial function of routers. For finding the longest matching prefix, trie-based or its variant schemes have been widely researched in software-based IP lookup. As a software router, we enhance the IP address lookup engine using GPU which is a device widely used in high performance applications. We propose a data structure for multibit trie to exploit GPU hardware efficiently. Also, we devise a novel scheme that the root subtrie is loaded on Shared Memory which is specialized for fast access in GPU. Since the root subtrie is accessed on every IP address lookup, its fast access improves the lookup performance. By means of the performance evaluation, our implemented GPU-based lookup engine shows 17~23 times better performance than CPU-based engine. Also, the fast access technique for the root subtrie gives 10% more improvement.

The Optimal pipelining architecture for PICAM (PICAM에서의 최적 파이프라인 구조)

  • 안희일;조태원
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.26 no.6A
    • /
    • pp.1107-1116
    • /
    • 2001
  • 고속 IP 주소 룩업(lookup)은 고속 인터넷 라우터의 성능을 좌우하는 주요 요소이다. LPM(longest prefix matching) 탐색은 IP 주소 룩업에서 가장 시간이 많이 걸리는 부분이다. PICAM은 고속 LPM 탐색을 위한 파이프라인 CAM 구조로서, 기존 CAM(content addressable memory, 내용 주수화 메모리)을 이용한 방법보다 룩업 테이블의 갱신속도가 빠르면서도 LPM 탐색율이 높은 CAM 구조이다. PICAM은 3단계의 파이프라인으로 구성된다. 단계 1 및 단계 2의 키필드분할수 및 매칭점의 분포에 따라 파이프라인의 성능이 좌우되며, LPM 탐색율이 달라질 수 있다. 본 논문에서는 PICAM의 파이프라인 성능모델을 제시하고, 이산사건 시뮬레이션(discrete event simulation)을 수행하여, 최적의 PICAM 구조를 도출하였다. IP version 4인 경우 키필드분할수를 8로 하고, 부하가 많이 걸리는 키필드블록을 중복 설치하는 것이 최적구조이며, IP version 6인 경우 키필드블록의 개수를 16으로 하는 것이 최적구조다.

  • PDF

IP Address Lookup using Segment Trees (세그먼트 트리를 이용한 IP 주소 검색)

  • Lee, In-Bok;Park, Geun-Su;Choe, Yang-Hui;Jeong, Seong-Gwon
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.28 no.11
    • /
    • pp.613-619
    • /
    • 2001
  • The IP address lookup problem is to find the longest matching IP prefix for a given IP address from the routing table and has been a central bottleneck in speeding up the Internet. In this paper, we propose a new algorithm for this problem based on the segment tree data structure. Given n IP prefixes, our algorithm can do IP address in Ο(log n) time. It also handles the insertion and deletion of IP prefixes efficiently without rebuilding the total data structure.

  • PDF

An Efficient Updating Algorithm for IPv6 Lookup based on Priority-TCAM (IPv6 Lookup을 위한 효율적인 Priority TCAM Table 운영 알고리즘)

  • Hong, Seung-Woo;Noh, Sung-Kee;Hong, Sung-Back;Kim, Sang-Ha
    • Journal of the Institute of Electronics Engineers of Korea TC
    • /
    • v.44 no.10
    • /
    • pp.162-168
    • /
    • 2007
  • TCAM(Ternary content-addressable memory) has been widely used to perform fast routing lookup. It is able to accomplish the LPM(longest prefix matching) search in O(1) time without considering the number of prefixes and their lengths. As compared to software-based solutions, especially for IPv6, TCAM can oner sustained throughput and simple system architecture. However, There is no research for Priority-TCAM which can assign priority to each memory block. This paper addresses the difference or priority-TCAM compared to the existing TCAM and proposes CAO-PA algerian to manage the lookup table efficiently.

Tree based Route Optimization in Nested NEMO Environment (중첩 NEMO 환경에서 트리 기반 라우트 최적화 기법)

  • Lim, Hyung-Jin;Chung, Tai-Myoung
    • Journal of Internet Computing and Services
    • /
    • v.9 no.1
    • /
    • pp.9-19
    • /
    • 2008
  • This paper propose the issue of connecting nested NEMO (Network Nobility) networks to global IPv6 networks, while supporting IPv6 mobility. Specifically, we consider a self-addressing including topology information IPv6-enabled NEMO infrastructure. The proposed self-organization addressing protocol automatically organized mobile routers into free architecture and configuration their global IPv6 addresses. BU(binding update) to MR own HA and internal rouging, hosed on longest prefix matching and soft state routing cache, are specially designed for IPv6-based NEMO. In conclusion, numeric analysis ore conducted to show more efficiency of the proposed routing protocols than other RO (Route Optimization) approaches.

  • PDF

A Design of the IP Lookup Architecture for High-Speed Internet Router (고속의 인터넷 라우터를 위한 IP 룩업구조 설계)

  • 서해준;안희일;조태원
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.28 no.7B
    • /
    • pp.647-659
    • /
    • 2003
  • LPM(Longest Prefix Matching)searching in If address lookup is a major bottleneck of IP packet processing in the high speed router. In the conventional lookup table for the LPM searching in CAM(Content Addressable Memory) the complexity of fast update take 0(1). In this paper, we designed pipeline architecture for fast update of 0(1) cycle of lookup table and high throughput and low area complexity on LPM searching. Lookup-table architecture was designed by CAM(Content Addressable Memory)away that uses 1bit RAM(Random Access Memory)cell. It has three pipeline stages. Its LPM searching rate is affected by both the number of key field blocks in stage 1 and stage 2, and distribution of matching Point. The RTL(Register Transistor Level) design is carried out using Verilog-HDL. The functional verification is thoroughly done at the gate level using 0.35${\mu}{\textrm}{m}$ CMOS SEC standard cell library.

Design of Hybrid Parallel Architecture for Fast IP Lookups (고속 IP Lookup을 위한 병렬적인 하이브리드 구조의 설계)

  • 서대식;윤성철;오재석;강성호
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.40 no.5
    • /
    • pp.345-353
    • /
    • 2003
  • When designing network processors or implementing network equipments such as routers are implemented, IP lookup operations cause the major impact on their performance. As the organization of the IP address becomes simpler, the speed of the IP lookup operations can go faster. However, since the efficient management of IP address is inevitable due to the increasing number of network users, the address organization should become more complex. Therefore, for both IPv4(IP version 4) and IPv6(IP version 6), it is the essential fact that IP lookup operations are difficult and tedious. Lots of researcher for improving the performance of IP lookups have been presented, but the good solution has not been came out. Software approach alleviates the memory usage, but at the same time it si slow in terms of searching speed when performing an IP lookup. Hardware approach, on the other hand, is fast, however, it has disadvantages of producing hardware overheads and high memory usage. In this paper, conventional researches on IP lookups are shown and their advantages and disadvantages are explained. In addition, by mixing two representative structures, a new hybrid parallel architecture for fast IP lookups is proposed. The performance evaluation result shows that the proposed architecture provides better performance and lesser memory usage.