Scalable High Speed IP Routing Lookups Scalable High Speed IP Routing Lookups Authors: M. Waldvogel, G. Varghese, J. Turner, B. Plattner Presenter: Zhqi.

Slides:



Advertisements
Similar presentations
IP Router Architectures. Outline Basic IP Router Functionalities IP Router Architectures.
Advertisements

A Search Memory Substrate for High Throughput and Low Power Packet Processing Sangyeun Cho, Michel Hanna and Rami Melhem Dept. of Computer Science University.
August 17, 2000 Hot Interconnects 8 Devavrat Shah and Pankaj Gupta
Router/Classifier/Firewall Tables Set of rules—(F,A)  F is a filter Source and destination addresses. Port number and protocol. Time of day.  A is an.
Internet Routers
Fast Updating Algorithms for TCAMs Devavrat Shah Pankaj Gupta IEEE MICRO, Jan.-Feb
Spring 2006CS 685 Network Algorithmics1 Longest Prefix Matching Trie-based Techniques CS 685 Network Algorithmics Spring 2006.
A Scalable and Reconfigurable Search Memory Substrate for High Throughput Packet Processing Sangyeun Cho and Rami Melhem Dept. of Computer Science University.
Network Algorithms, Lecture 4: Longest Matching Prefix Lookups George Varghese.
1 An Efficient, Hardware-based Multi-Hash Scheme for High Speed IP Lookup Hot Interconnects 2008 Socrates Demetriades, Michel Hanna, Sangyeun Cho and Rami.
Fast Firewall Implementation for Software and Hardware-based Routers Lili Qiu, Microsoft Research George Varghese, UCSD Subhash Suri, UCSB 9 th International.
Bio Michel Hanna M.S. in E.E., Cairo University, Egypt B.S. in E.E., Cairo University at Fayoum, Egypt Currently is a Ph.D. Student in Computer Engineering.
M. Waldvogel, G. Varghese, J. Turner, B. Plattner Presenter: Shulin You UNIVERSITY OF MASSACHUSETTS, AMHERST – Department of Electrical and Computer Engineering.
IP Routing Lookups Scalable High Speed IP Routing Lookups.
Survey of Packet Classification Algorithms. Outline Background and problem definition Classification schemes – One dimensional classification – Two dimensional.
Digital Search Trees & Binary Tries Analog of radix sort to searching. Keys are binary bit strings.  Fixed length – 0110, 0010, 1010,  Variable.
An Efficient IP Address Lookup Algorithm Using a Priority Trie Authors: Hyesook Lim and Ju Hyoung Mun Presenter: Yi-Sheng, Lin ( 林意勝 ) Date: Mar. 11, 2008.
Router Architecture : Building high-performance routers Ian Pratt
1 Author: Ioannis Sourdis, Sri Harsha Katamaneni Publisher: IEEE ASAP,2011 Presenter: Jia-Wei Yo Date: 2011/11/16 Longest prefix Match and Updates in Range.
A supernetwork.
IP Address Lookup for Internet Routers Using Balanced Binary Search with Prefix Vector Author: Hyesook Lim, Hyeong-gee Kim, Changhoon Publisher: IEEE TRANSACTIONS.
1 A Tree Based Router Search Engine Architecture With Single Port Memories Author: Baboescu, F.Baboescu, F. Tullsen, D.M. Rosu, G. Singh, S. Tullsen, D.M.Rosu,
Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers Author: Jing Fu, Jennifer Rexford Publisher: ACM CoNEXT 2008 Presenter:
Digital Search Trees & Binary Tries Analog of radix sort to searching. Keys are binary bit strings.  Fixed length – 0110, 0010, 1010,  Variable.
CS 268: Lectures 13/14 (Route Lookup and Packet Classification) Ion Stoica April 1/3, 2002.
1 Performance Improvement of Two-Dimensional Packet Classification by Filter Rephrasing Department of Computer Science and Information Engineering National.
Study of IP address lookup Schemes
1 A Fast IP Lookup Scheme for Longest-Matching Prefix Authors: Lih-Chyau Wuu, Shou-Yu Pin Reporter: Chen-Nien Tsai.
Two stage packet classification using most specific filter matching and transport level sharing Authors: M.E. Kounavis *,A. Kumar,R. Yavatkar,H. Vin Presenter:
048866: Packet Switch Architectures Dr. Isaac Keslassy Electrical Engineering, Technion Introduction.
An Efficient IP Lookup Architecture with Fast Update Using Single-Match TCAMs Author: Jinsoo Kim, Junghwan Kim Publisher: WWIC 2008 Presenter: Chen-Yu.
COMP 171 Data Structures and Algorithms Tutorial 10 Hash Tables.
EaseCAM: An Energy And Storage Efficient TCAM-based IP-Lookup Architecture Rabi Mahapatra Texas A&M University;
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
Exploring new methods of route aggregation Amirali Abdullah.
Address Lookup in IP Routers. 2 Routing Table Lookup Routing Decision Forwarding Decision Forwarding Decision Routing Table Routing Table Routing Table.
Hash, Don’t Cache: Fast Packet Forwarding for Enterprise Edge Routers Minlan Yu Princeton University Joint work with Jennifer.
Fast IP Address Lookup Algorithms 정 성 권 서울대학교 컴퓨터공학과
CS 6401 Efficient Addressing Outline Addressing Subnetting Supernetting.
1 Route Table Partitioning and Load Balancing for Parallel Searching with TCAMs Department of Computer Science and Information Engineering National Cheng.
1 Routing with a clue Anat Bremler-Barr Joint work with Yehuda Afek & Sariel Har-Peled Tel-Aviv University.
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
Courtesy: Nick McKeown, Stanford More on IP and Packet Forwarding Tahir Azim.
PARALLEL TABLE LOOKUP FOR NEXT GENERATION INTERNET
IP Address Lookup Masoud Sabaei Assistant professor
LayeredTrees: Most Specific Prefix based Pipelined Design for On-Chip IP Address Lookups Author: Yeim-Kuau Chang, Fang-Chen Kuo, Han-Jhen Guo and Cheng-Chien.
Author: Haoyu Song, Fang Hao, Murali Kodialam, T.V. Lakshman Publisher: IEEE INFOCOM 2009 Presenter: Chin-Chung Pan Date: 2009/12/09.
High-Speed Packet Classification Using Binary Search on Length Authors: Hyesook Lim and Ju Hyoung Mun Presenter: Yi-Sheng, Lin ( 林意勝 ) Date: Jan. 14, 2008.
1 ECE 526 – Network Processing Systems Design System Implementation Principles II Varghese Chapter 3.
1 Dynamic Pipelining: Making IP- Lookup Truly Scalable Jahangir Hasan T. N. Vijaykumar School of Electrical and Computer Engineering, Purdue University.
IP Routing Processing with Graphic Processors Author: Shuai Mu, Xinya Zhang, Nairen Zhang, Jiaxin Lu, Yangdong Steve Deng, Shu Zhang Publisher: IEEE Conference.
1 Power-Efficient TCAM Partitioning for IP Lookups with Incremental Updates Author: Yeim-Kuan Chang Publisher: ICOIN 2005 Presenter: Po Ting Huang Date:
1 Fast packet classification for two-dimensional conflict-free filters Department of Computer Science and Information Engineering National Cheng Kung University,
A Small IP Forwarding Table Using Hashing Yeim-Kuan Chang and Wen-Hsin Cheng Dept. of Computer Science and Information Engineering National Cheng Kung.
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
CS 740: Advanced Computer Networks IP Lookup and classification Supplemental material 02/05/2007.
Author: Haoyu Song, Murali Kodialam, Fang Hao and T.V. Lakshman Publisher/Conf. : IEEE International Conference on Network Protocols (ICNP), 2009 Speaker:
Updating Designed for Fast IP Lookup Author : Natasa Maksic, Zoran Chicha and Aleksandra Smiljani´c Conference: IEEE High Performance Switching and Routing.
Packet Classification Using Multidimensional Cutting Sumeet Singh (UCSD) Florin Baboescu (UCSD) George Varghese (UCSD) Jia Wang (AT&T Labs-Research) Reviewed.
Ofir Luzon Supervisor: Prof. Michael Segal Longest Prefix Match For IP Lookup.
IP Addressing. A 32-bit logical naming convention A dotted-decimal notation is used: – –Each number represents 8 bits. Number is Part.
Exploiting Graphics Processors for High-performance IP Lookup in Software Routers Jin Zhao, Xinya Zhang, Xin Wang, Yangdong Deng, Xiaoming Fu IEEE INFOCOM.
IP Routers – internal view
Mark Redekopp David Kempe
Addressing: Router Design
Digital Search Trees & Binary Tries
Statistical Optimal Hash-based Longest Prefix Match
Digital Search Trees & Binary Tries
A Small and Fast IP Forwarding Table Using Hashing
Presentation transcript:

Scalable High Speed IP Routing Lookups Scalable High Speed IP Routing Lookups Authors: M. Waldvogel, G. Varghese, J. Turner, B. Plattner Presenter: Zhqi Qiu

 Outline Routing and the BMP (Best Matching Prefix) problem Basic scheme: binary search of hash tables Refinements: asymmetric trees, mutated binary search and ropes Implementation: building the tree Performance and comparison study

 Introduction Increases in Internet traffic demands: link speed, router data throughput, packet forward rate Packet forwarding rate becomes bottleneck Address lookup: main step in packet forwarding Need efficient Best Prefix Match algorithm

 More about BMP Classless Inter-Domain Routing (CIDR) - cope with routing table growth Aggregation results in address prefix list in routing tables Packets forwarded according to Best Matching Prefix Goal: use hashing to find BMP

 Outline Routing and the BMP (Best Matching Prefix) problem Basic scheme: binary search of hash tables Refinements: asymmetric trees and ropes Implementation: building the tree Performance and comparison study

 Basic Scheme Hash table organized by prefix length Markers needed

 Marker Management Reducing marker storage: markers only needed in levels visited by binary search when looking for P E. g. : In table of 8 levels: a prefix with length of 7 [111] needs markers in level 4 and 6 a prefix with length of 3 [11] needs markers in level 2

 False Markers What if table entries are: P1=1, P2=00, P3=110 in the previous example? Solution: to avoid backtracking, record current best matching prefix of marker M in M.bmp

 Basic Algorithm Initialize range R = array L Initialize BMP to be null string While R not empty I = middle level in range R D’ = D(L[i].length) M = Search(D’, L[i].hash) If M is nil Then set R = upper R Elseif M is a prefix & not a marker Then BMP = M.bmp; break Else { BMP = M.bmp; R = lower R} Endif Endwhile

 Outline Routing and the BMP (Best Matching Prefix) problem Basic scheme: binary search of hash tables Refinements: asymmetric trees and ropes Implementation: building the tree Performance and comparison study

 Algorithm Refinements To optimize, need to exploit deeper structure in routing table Simplest improvement: Search only non-empty tries

 Asymmetric Binary Search Try to search the most promising trie first Example: Maximize table entries while keeping tree balance

 Mutating Binary Search The number of distinct prefix lengths rarely exceeds 12 Every match with some marker X means that we need only search among the set of prefixes for which X is a prefix

 Potential Disadvantages Pre-computing optimal trees increases insertion time Storage of binary trees for each prefix enormous Storage problem solved with “rope” data structure Rope maximum length: log 2 W pointers

 Rope: Encoded Trees Only need to store the sequence of levels which binary search on a given subtrie will follow on repeated failures to find a match e.g.: Rope 1 contains 16, 8, 4, 2, 1 Rope algorithm: a prefix not a marker: end of rope a prefix and a marker: X.bmp = X

 Rope Search Initialize Rope R = default search sequence Initialize BMP = null string While R not empty i = first pointer of R D’ = D(L[i].length) M = Search(D’, L[i].hash) If M is success Then BMP = M.bmp; R = M.rope Endif Endwhile

 Building Rope Search Pass 1: builds a conventional trie Pass 2: all prefixes inserted into hash tables, starting with shortest prefix Batch insertions and deletions into the table as these operations are expensive.

 Outline Routing and the BMP (Best Matching Prefix) problem Basic scheme: binary search of hash tables Refinements: asymmetric trees and ropes Implementation: building the tree Performance and comparison study

 Existing Approaches Modification of exact matching:log 2 2N Trie based: BDS radix trie O(W 2 ) Hardware: parallelism, CAM expensive Protocol based: IP/tag switching, still need some IP lookups Caching: CAM (Content Addressable Memory)

 Complexity Comparison

 Performance Comparison

 Conclusion Intellectual contribution: markers and pre-computation ensure log time in worst-case Solution scalable and can be implemented in software efficiently Future work: choice of balancing function and faster insertion algorithms