Download presentation
Presentation is loading. Please wait.
Published byHarold Goodman Modified over 9 years ago
1
Fast IP Address Lookup Algorithms 정 성 권 서울대학교 컴퓨터공학과 sung@dandelion.snu.ac.kr
2
고속 라우터 요구 l 인터넷 성장 : # hosts, traffic volume l IP as universal application protocol l Traffic pattern: local global l 병목 요소 : transmission 라우터
3
라우터 구조 Line Card CPU Memory Line Card Line Card Fwd Engine Fwd Engine Fwd Engine Line Card CPU Memory Fwd Eng Line Card Fwd Eng Line Card Fwd Eng Fwd Eng Line Card Fwd Eng Line Card Fwd Eng Line Card
4
라우터 성능 요소 l Average Throughput –bps –pps (1000~2000 bit/packet) l Worst case bounds –QoS concern
5
IP Address Lookup 요구 l Routing table: 50,000 200,000 entries l 처리속도 : 2.4 10Gbps l 주소 길이 : 32 -> 128 bits l 추가 기능 –flow identification –packet filtering l 예 ) 5Gbps => ~5Mpps => 200ns/packet
6
척도 l Average/Worst Case Lookup time – 조건 : 테이블 크기, 주소 길이 l Update time l memory l flexibility
7
Address Lookup 문제 l Aggregated IP address notation: CIDR l Longest Prefix Matching 10* 111* 11010* 11* 0* 1000* 100000* 100001* Lookup Key => LPM 10001011 1000* 10111110 10* 01010101 0* 11011101 11* Prefix table {P i } LPM: Key 의 prefix 가 되는, 즉 Key=P i s 를 만족하는, P i 중 길이 가 최대인 것을 찾음.
8
기본 Algorithm 요소 l Trie l Binary Search l Hashing l Indexing
9
Address Lookup 신기술 l Binary search on prefix length, Washington Univ. (SIGCOMM97) l Compressed multibit tries, Lulea Univ. (SIGCOMM97) l Single-level prefix expansion, Stanford Univ. (INFOCOM98) l Binary search on prefix ranges, Washington Univ. (INFOCOM98) l Controlled prefix expansion, Washington Univ. (SIGMETRICS98) & Swedish Inst. Of CS (Hot Interconnect 98)
10
Trie 10* 111* 11010* 11* 0* 1000* 100000* 100001* 01 Binary Tries: W accesses
11
One-level Prefix Expansion l Stanford 방식 –Prefixes expanded to 24bits: 2 24 entries 예 ) 1001* => 1001…0000 ~ 1001…1111 –High-order 24bits as table index –Pros: memory-speed lookup –Cons: update overhead not scalable to IP v6 memory cost
12
Controlled Prefix Expansion l Prefix expansion on multi-, carefully-selected- levels (multibit trie) 10* 111* 11010* 11* 0* 1000* 100000* 100001* 2-3-2 expansion
13
Controlled Prefix Expansion (2) l Balance between lookup time/update time/memory: “tunable” l Reduce distinct prefix lengths => help binary search on prefix lengths, too. l Easy H/W implementation –pipeline; multi-bank memory l Some ideas patented by Wash. Univ. & licensed for commercial uses
14
Level Compressed Trie
15
Lulea, Compressed Trie
16
Lulea - level 1
17
Lulea - level 1 (cont.) Compact representation on-chip cache, SRAM Problems: Scalability Update overhead
18
Binary Search on Prefix Length l Hash table for each prefix length l Reduce # of hash table access: binary search on lengths l O(logW) Algorithm: good for long addresses
19
Binary Search on Prefix Length (2) l Marker
20
Prefix Length 분포 l Backbone Router (MAE-East)
21
Binary Search on Prefix Length (3) l Mutating Small number of distinct prefix lengths after mutating Each subtries only stores “failure levels” (rope)
22
IP v6 Address Lookup l 128bit l # memory accesses, table size Suggestion [ V.Srinivasan, G. Varghese] –Binary search on prefix length + multibit trie 64 3296 0-3232-6464-96 96-128 Binary search on prefix length (hash table) 4 level multibit trie
23
Binary Search on Range l O(log2N) Algorithm: –good for small # entries (e.g. enterprise routers with ~1000 entries) l Multi-way search –log k 2N –use of CPU cache
24
Performance Comparison 300MHz Pentium II
25
H/W 구현 l H/W 구현을 고려한 algorithm l 기본 기법 – 파이프라인 – 병렬화 –Cheap DRAM
26
결언 l High speed IP address lookup is feasible both in S/W and H/W l Tradeoff points & Evaluation criteria –forwarding table size; address length –cost; lookup speed; update speed; flexibility; scalability l Applications: IP v4; IP v6; flow identification, Firewall filter l 새로운 lookup 기법 + 복합 기법 적용 + 구현효율 l Proprietary schemes: patented or secret
27
References Marcel Waldvogel, et al., "Scalable High Speed IP Routing Lookups", ACM SIGCOMM '97 Pankaj Gupta, Steven Lin, and Nick McKeown, "Routing Lookups in Hardware at Memory Speeds." IEEE Infocom April 1998, San Francisco. George Varghese, "Fast Scalable Routing Lookups". Proceedings of ACM SIGCOMM, Sep 97. V.Srinivasan, "Faster IP Lookups using Controlled Prefix Expansion". Proceedings of ACM SIGMETRICS, Sep 98. B. Lampson, et al., "IP Lookups using Multiway and Multicolumn Search". Infocom 98. Mikael Degermark, et al., "Small Forwarding Tables for Fast Routing Lookups", ACM SIGCOMM '97 Andreas Moestedt, et al., "IP Address Lookup in Hardware for High-Speed Routing", Hot Interconnects, August 1998 Michigan University and Merit Network. Internet Performance Management and Analysis (IPMA) Project, http://nic.merit.edu/~ipma/.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.