1 Routing with a clue Anat Bremler-Barr Joint work with Yehuda Afek & Sariel Har-Peled Tel-Aviv University.

Slides:



Advertisements
Similar presentations
August 17, 2000 Hot Interconnects 8 Devavrat Shah and Pankaj Gupta
Advertisements

1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
IP Forwarding Relates to Lab 3.
Internetworking II: MPLS, Security, and Traffic Engineering
Delivery and Forwarding of
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Spring 2006CS 685 Network Algorithmics1 Principles in Practice CS 685 Network Algorithmics Spring 2006.
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.
Restoration by Path Concatenation: Fast Recovery of MPLS Paths Anat Bremler-Barr Yehuda Afek Haim Kaplan Tel-Aviv University Edith Cohen Michael Merritt.
© 2009 Cisco Systems, Inc. All rights reserved. SWITCH v1.0—4-1 Implementing Inter-VLAN Routing Deploying Multilayer Switching with Cisco Express Forwarding.
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.
Digital Search Trees & Binary Tries Analog of radix sort to searching. Keys are binary bit strings.  Fixed length – 0110, 0010, 1010,  Variable.
A supernetwork.
15-744: Computer Networking L-3 Addressing/Forwarding.
IP: The Internet Protocol
Spring 2002CS 4611 Router Construction Outline Switched Fabrics IP Routers Tag Switching.
Power Efficient IP Lookup with Supernode Caching Lu Peng, Wencheng Lu*, and Lide Duan Dept. of Electrical & Computer Engineering Louisiana State University.
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.
15-744: Computer Networking L-4 Routers. L -4; © Srinivasan Seshan, Routing How do routers process IP packets Forwarding lookup algorithms.
CS 268: Lectures 13/14 (Route Lookup and Packet Classification) Ion Stoica April 1/3, 2002.
1 A Fast IP Lookup Scheme for Longest-Matching Prefix Authors: Lih-Chyau Wuu, Shou-Yu Pin Reporter: Chen-Nien Tsai.
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
Address Lookup in IP Routers. 2 Routing Table Lookup Routing Decision Forwarding Decision Forwarding Decision Routing Table Routing Table Routing Table.
CS 6401 Efficient Addressing Outline Addressing Subnetting Supernetting.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—1-1 MPLS Concepts Introducing Basic MPLS Concepts.
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.
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
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
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
MPLS Forwarder Preliminary 1 Outline MPLS Overview MPLS Overview MPLS MRD MPLS Data Path HLD 48K MPLS Fwder HLD IPE MPLS Fwder HLD Issues Summary.
Data : The Small Forwarding Table(SFT), In general, The small forwarding table is the compressed version of a trie. Since SFT organizes.
Efficient Addressing Outline Addressing Subnetting Supernetting CS 640.
Chapter 6 Delivery and Forwarding of IP Packets
Towards a Billion Routing Lookups per Second in Software  Author: Marko Zec, Luigi, Rizzo Miljenko Mikuc  Publisher: SIGCOMM Computer Communication Review,
EECB 473 DATA NETWORK ARCHITECTURE AND ELECTRONICS PREPARED BY JEHANA ERMY JAMALUDDIN Basic Packet Processing: Algorithms and Data Structures.
IP Address Lookup Masoud Sabaei Assistant professor
1 Fast packet classification for two-dimensional conflict-free filters Department of Computer Science and Information Engineering National Cheng Kung University,
Scalable High Speed IP Routing Lookups Scalable High Speed IP Routing Lookups Authors: M. Waldvogel, G. Varghese, J. Turner, B. Plattner Presenter: Zhqi.
MPLS Concepts Introducing Basic MPLS Concepts. Outline Overview What Are the Foundations of Traditional IP Routing? Basic MPLS Features Benefits of MPLS.
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:
Packet Switch Architectures The following are (sometimes modified and rearranged slides) from an ACM Sigcomm 99 Tutorial by Nick McKeown and Balaji Prabhakar,
IP Routing table compaction and sampling schemes to enhance TCAM cache performance Author: Ruirui Guo a, Jose G. Delgado-Frias Publisher: Journal of Systems.
Multi-protocol Label Switching
Ofir Luzon Supervisor: Prof. Michael Segal Longest Prefix Match For IP Lookup.
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
IP Routers – internal view
IP Forwarding Covers the principles of end-to-end datagram delivery in IP networks.
Multi Protocol Label Switching (MPLS)
5 Network Layer Part II Computer Networks Tutun Juhana
IP Forwarding Relates to Lab 3.
IP Forwarding Relates to Lab 3.
Statistical Optimal Hash-based Longest Prefix Match
IP Forwarding Relates to Lab 3.
Delivery and Forwarding of
IP Forwarding Relates to Lab 3.
A Small and Fast IP Forwarding Table Using Hashing
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
IP Forwarding Relates to Lab 3.
Networking and Network Protocols (Part2)
IP Forwarding Relates to Lab 3.
A Semantic Peer-to-Peer Overlay for Web Services Discovery
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

1 Routing with a clue Anat Bremler-Barr Joint work with Yehuda Afek & Sariel Har-Peled Tel-Aviv University

2 IP Lookup IP lookup - given an IP address, determine the next hop for reaching that destination Fast Address lookup key component for high performance routers Destination Address Prefix NxtHop * 4 00* * * 7 1* * * * * * 4 Forwarding Table

3 Best Matching Prefix (BMP) Routers today use kind of trie data structure (Patricia) BMP lookup is expensive –Count in number of memory reference Prefix NxtHop * 1 00* 2 000* * 4 01* 2 1* 1 110* 3 Forwarding table trie Example: The BMP of 0000 is 000*

4 Faster data structureFaster data structure –[WVTP 97] log W (W=32) –[DBCP 97] [ DKVZ 99] [CM99] [NK98] compression –[LSV 98] binary and 6-way search –[SV 98] version on tries –[ CP99] caching HardwareHardware –CAMs [MF 93] –Pipeline [GLM 98], [HZPS99] Reducing the need of IP lookupReducing the need of IP lookup –Tag-Switching –CSR –ARIS –IP-Switching –threaded indices –MPLS Three Approaches

5 Our Approach Routing with a Clue: Distributed IP-lookup Clue: Telling a router where its upstream neighbor ended the IP lookup R1R2R R Many times the BMP ’ s are identical

6 Distributed IP-lookup Prefix length  Work in Trie Work with a clue 32 backbone 1

7 Distributed IP lookup, why ? Each router on the path to the destination performs a similar IP-lookup: Same destination address Similar forwarding tables at neighboring routers Number of Prefixes

8 Forwarding tables are similar Number of Prefixes

9 Even if the routers are not neighbors Number of Prefixes

10 Outline: Simple method Clue table and fields Advanced method Experimental results MPLS improvements Conclusions

11 In many cases the Clue directly determines the best matching prefix: When the clue vertex (in the trie): (a) has no descendants, (b) does not exist Trie of R1Trie of R2 (a) (b) R1R2

12 In other cases the clue is - a good point to start IP lookup Search from the vertex that corresponds to the clue If search fails, then forward according to the BMP of the clue string Trie of R1 Trie of R R1R2 Dest. Add. :

13 Clue Table R1 R2 R3 Clue table Clue table Clues table

14 The clue table An entry for each clue a router may receive from its neighbors Two fields, that are pre-computed: –Ptr –Ptr - pointer to the vertex that corresponds to the clue –FD –FD - Final Decision (BMP, next hop): When clue fixes the BMP When the search from the clue fails (two cases are distinguished by Ptr value) Clue table size: Estimation 500KB

15 Example R1R2 Prefix NxtHop * 00* 0001* 01* 1* Prefix NxtHop * 00* 0001* 00010* 0101* 011* 1* Clue FD Ptr * 00* 0001* 01* * 1* Forwarding table Clue table Forwarding table 0 1 0

16 Combining the clue table of several neighbors A clue table at each interface If not, combine them into one table

17 Clue encoding in the header 5 bits (IPv4) indicating the prefix of the dest. address which is the clue Example: Dest address Dest address: Clue is coded Clue is coded : The clue The clue : Need a hash-table

18 To avoid hash-table Replace clue with pair: index is into the clue table (16 bits) Learning on the fly Dest address Dest address: Clue is coded Clue is coded : The clue The clue : Index: Index: … Clue Ptr FD Similar to the idea [CV96]

19 Example R1R2 Prefix NxtHop * 00* 0001* 01* 1* Prefix NxtHop * 00* 0001* 00010* 0101* 011* 1* Clue FD Ptr * 00* 0001* 01* * 1* Forwarding table Clue table Forwarding table 0 1 0

20 Advanced method or get more from a clue Trie at R1Trie at R2 clue BMP of clue R1R2

21 Advanced Method - Claim: No search is necessary, if on any path going down from the “clue” at the trie of R2, a prefix of R1 is encountered, before or at the same time that a prefix of R2 is encountered If Claim holds on the received clue, lookup costs one memory reference Otherwise Problematic clues need further search

22 Problematic Clues 2.45% % AT&T1->AT&T2 AT&T2->AT&T1 Number of Prefixes Number of Prefixes

23 Problematic Clues % % ISP-B1->ISP-B2 ISP-B2->ISP-B1 Number of Prefixes Number of Prefixes

24 Combining the clue table of several neighbors A clue table at each interface Advanced method - behavior depends on which neighbor the clue came from: Three solutions: – Intersection No search - if all neighbors agree that no further search is necessary –Bit Map Join the clues of neighbors in one table Add a Bit Map to each clue entry: The j bit is set - further search is necessary if clue came from the j-th neighbor –Sub-tables: One table for the intersection: the clues that behave the same, Specific table per neighbors for the other clue

25 Method of continued search Trie, Patricia[S93,LS88], binary, 6-way[LSV98], Log W [WVTP97] Clue from R1 Trie at R2 Prefix of R1 Prefix of R2

26 Experimental results AT&T1 AT&T2 Mem ref’s

27 Experimental results AT&T2 AT&T1 Mem ref’s

28 Multi Protocol Label Switching “ Route once switch many ”

29 CLUE & MPLS MPLS still needs an IP-lookup – Data driven: at set up – Control driven: at aggregation point The label here is the clue R1R2R3R4 R5 R / / /25

30 Simplicity 10 times faster Switching speed, without major changes (but MPLS w/o TE) Heterogeneous IP networks No coordination No setup time Helps MPLS too

31 Future Work Clue with multidimensional classification Further experiments