Network Algorithms, Lecture 3: Exact Lookups George Varghese.

Slides:



Advertisements
Similar presentations
Router Internals CS 4251: Computer Networking II Nick Feamster Spring 2008.
Advertisements

Router Internals CS 4251: Computer Networking II Nick Feamster Fall 2008.
IP Router Architectures. Outline Basic IP Router Functionalities IP Router Architectures.
CCNA3: Switching Basics and Intermediate Routing v3.0 CISCO NETWORKING ACADEMY PROGRAM Switching Concepts Introduction to Ethernet/802.3 LANs Introduction.
Topic 7 Local Area Networks (LAN)
A Search Memory Substrate for High Throughput and Low Power Packet Processing Sangyeun Cho, Michel Hanna and Rami Melhem Dept. of Computer Science University.
Layer 3 Switching. Routers vs Layer 3 Switches Both forward on the basis of IP addresses But Layer 3 switches are faster and cheaper However, Layer 3.
A Scalable and Reconfigurable Search Memory Substrate for High Throughput Packet Processing Sangyeun Cho and Rami Melhem Dept. of Computer Science University.
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 Fast Routing Table Lookup Based on Deterministic Multi- hashing Zhuo Huang, David Lin, Jih-Kwon Peir, Shigang Chen, S. M. Iftekharul Alam Department.
© 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.
© Karen Miller, What do we want from our computers?  correct results we assume this feature, but consider... who defines what is correct?  fast.
© 2006 Cisco Systems, Inc. All rights reserved. Module 4: Implement the DiffServ QoS Model Lesson 4.8: Understanding WAN Link Efficiency Mechanisms.
Router Architecture : Building high-performance routers Ian Pratt
KARL NADEN – NETWORKS (18-744) FALL 2010 Overview of Research in Router Design.
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 13 Direct Memory Access (DMA)
1 Fall 2005 Layer 3 Switches and VLANs Qutaibah Malluhi CSE Department Qatar University.
Deterministic Memory- Efficient String Matching Algorithms for Intrusion Detection Nathan Tuck, Timothy Sherwood, Brad Calder, George Varghese Department.
State Machines Timing Computer Bus Computer Performance Instruction Set Architectures RISC / CISC Machines.
Packet Classification George Varghese. Original Motivation: Firewalls Firewalls use packet filtering to block say ssh and force access to web and mail.
Protocol Implementation An Engineering Approach to Computer Networking.
Chapter 9 Classification And Forwarding. Outline.
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—2-1 Module Summary  Ethernet cables and segments can span only a limited physical distance,
Router Architectures An overview of router architectures.
Hash, Don’t Cache: Fast Packet Forwarding for Enterprise Edge Routers Minlan Yu Princeton University Joint work with Jennifer.
Router Architectures An overview of router architectures.
Introduction Course Overview Students Industrial Work Experience Scheme (SIWES) Agboko B.A.
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—2-1 Ethernet LANs Solving Network Challenges with Switched LAN Technology.
Network Algorithms, Lecture 1: Intro and Principles George Varghese, UCSD.
Q and A for Ch. 17 CS 332, Spring Fiber Modems Q: Why use fiber modem extensions? Is it to save money on not having to use as much fiber (otherwise.
LAN Wiring & Physical Interfaces Lecture 6. Network Interfaces Every device has some form of a network interfaces. A PC has a Network Interface Card (NIC).
Brierley 1 Module 4 Module 4 Introduction to LAN Switching.
Connectivity Devices Hakim S. ADICHE, MSc
Switches 1RD-CSY  In this lecture, we will learn about  Collision Domain and Microsegmentation  Switches – a layer two device ◦ MAC address.
Operating Systems and Networks AE4B33OSS Introduction.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 2.
IT253: Computer Organization
11 NETWORK CONNECTION HARDWARE Chapter 3. Chapter 3: NETWORK CONNECTION HARDWARE2 NETWORK INTERFACE ADAPTER  Provides the link between a computer and.
Jump to first page One-gigabit Router Oskar E. Bruening and Cemal Akcaba Advisor: Prof. Agarwal.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Local Area Networks.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #14 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
EECB 473 DATA NETWORK ARCHITECTURE AND ELECTRONICS PREPARED BY JEHANA ERMY JAMALUDDIN Basic Packet Processing: Algorithms and Data Structures.
Semester 3—LAN Switching Chapter 2 Objectives  By the end of this chapter we will be able to perform tasks related to: – Various LAN Communication Problems.
1 ECE 526 – Network Processing Systems Design System Implementation Principles II Varghese Chapter 3.
Switches 1RD-CSY  In this lecture, we will learn about  Collision Domain and Microsegmentation  Switches – a layer two device ◦ MAC address.
Click to edit Master subtitle style
ECE 526 – Network Processing Systems Design Computer Architecture: traditional network processing systems implementation Chapter 4: D. E. Comer.
XStream: Rapid Generation of Custom Processors for ASIC Designs Binu Mathew * ASIC: Application Specific Integrated Circuit.
CS 4396 Computer Networks Lab Router Architectures.
Scalable High Speed IP Routing Lookups Scalable High Speed IP Routing Lookups Authors: M. Waldvogel, G. Varghese, J. Turner, B. Plattner Presenter: Zhqi.
NET 324 D Networks and Communication Department Lec1 : Network Devices.
Lecture 25 PC System Architecture PCIe Interconnect
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
EECB 473 Data Network Architecture and Electronics Lecture 1 Conventional Computer Hardware Architecture
Wireless Networks Standards and Protocols & x Standards and x refers to a family of specifications developed by the IEEE for.
OpenFlow MPLS and the Open Source Label Switched Router Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan,
1 ECE 526 – Network Processing Systems Design System Implementation Principles I Varghese Chapter 3.
CCNA3 Module 4 Brierley Module 4. CCNA3 Module 4 Brierley Topics LAN congestion and its effect on network performance Advantages of LAN segmentation in.
+ Lecture#2: Ethernet Asma ALOsaimi. + Objectives In this chapter, you will learn to: Describe the operation of the Ethernet sublayers. Identify the major.
© 2002, Cisco Systems, Inc. All rights reserved..
ESE532: System-on-a-Chip Architecture
IP Routers – internal view
Embedded Systems Design
Implementation of GPU based CCN Router
Addressing: Router Design
Final Review CS144 Review Session 9 June 4, 2008 Derrick Isaacson
CS 258 Reading Assignment 4 Discussion Exploiting Two-Case Delivery for Fast Protected Messages Bill Kramer February 13, 2002 #
CS703 - Advanced Operating Systems
Presentation transcript:

Network Algorithms, Lecture 3: Exact Lookups George Varghese

Course Goal Network Algorithms: Algorithms for key bottlenecks in a router (lookups, switching, QoS) How to attack new bottlenecks: Changing world -> measurement, security Algorithmics: Models and Principles. System thinking + Hardware + Algorithms

Plan for Rest of Lecture Part 1: Exact Match Algorithms Part 2: Small Transition to Longest Match

Context 1 Challenge-and-response' is a formula describing the free play of forces that provokes new departures in individual and social life. An effective challenge stimulates men to creative action ---- Arnold Toynbee Query species key K. Retrieve state associate with K. Memory references crucial. Simplest lookup problem, yet crucial for a bridge. Birthed by 3 challenges

Challenges that led to Bridges Challenge: Ethernets under fire. Routers slow. Packet repeater  learning bridge

Challenge 2: Wire Speed Without wire speed, can lose packets to forward in stream of packets to filter. Finesse: 2 lookups per port in 51.2 usec

Attention to Algorithmics Architecture: 4-port cheap DRAM with cycle time of 100 nsec for packet bufers and lookup memory. Bus parallelism, memory bandwidth, page mode. Data Copying: Ethernet chips used DMA, packets copied from one port to other by flpping pointers. Control Overhead: Interrupt overhead minimized by processor polling, staying in a loop after a packet interrupt. Lookups: Used caveats. Wrote software to verify lookup bottleneck (Q2)

Eight cautionary questions Q1, Worth improving performance? Yes. Q2, Really a bottleneck? 68,000 code timing did not meet 25.6 usec budget. Q3 Impact on system? Allows wire-speed. Q4, Initial analysis shows benefits? DRAM references = log 8000, so 1.3 usec. Q5, Worth adding custom hardware? Cheap using a PAL. Q6, Do Prototypes confirm promise? Lab prototype tested before product was built. Q7: Sensitive to environment changes? Worst-case design

Challenge 3: Higher Speeds Scaling via hashing for FDDI bridge (10 Mbps). Collisions? Use Perfect hashing. A(x) * M(x) / G(x), A(x) picked randomly

Improvement 1: Wide Words Intuition: More choice (d words per location) Srinivasan-Varghese A, B, C D, -, - H(C)

Improvement 2: Parallelism Intuition: k independent choices (Broder-Karlin) A X B H1(B)H2(B) H3(B)

State of the Art: d-left Intuition: Combine  d-left: Broder, Mitzenmacher A, L X, Y R, B H1(B)H2(B) H3(B)

Binary Search can also work Use hardware parallelism. Seemingly clever. Easier way to see this?

Lessons Challenge-Response: Bridges invented to solve a problem (slow multi-protocol routers) not present today. Cost-Performance: is what justies bridges today in so-called switches together with a small number of extra features like VLANs. Introduced techniques: Broke wire-speed barrier, spread to routers, ideas like fast lookups, trading updates for lookup speed, minimal hardware all became classical.

Summary P1: Relax Specification for efficiency P2: Utilize degrees of freedom P3: Shift Computation in Time P4: Avoid Waste seen in a holistic view P5: Add State for efficiency P6: Exploit hardware parallelism and memories. P7: Pass information (e.g., hints) in interfaces P8: Use finite universe methods (bucket-sort etc) P9: Use algorithmic thinking P10: Optimize the Expected Case