Download presentation
Presentation is loading. Please wait.
1
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 1 Programmable Networks of Tomorrow (Pronto): The Programmable Interface of Pronto Gísli Hjálmtýsson Networking and Distributed Systems Lab AT&T Labs - Resarch gisli@research.att.com OpenSig’99, October 1999
2
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 2 Differentiation with commodity parts Volatile market - must “optimize” for change –Must offer new and richer services at increasing rate Want to buy commodity network elements Still, compete through service differentiation –Flexibility through programmability –Differentiation (quality) through customization The primary goal of this work: –Identify the functions needed in network elements –Define the interfaces to these functions Secondary: see how we can make use of it
3
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 3 Two extremes ATM connectivity management –Control plane programmability –Efficient but limited in functionality Capsule type active networking (and derivatives) –Essential logic in the forwarding of every datagram –Changes the model to store-execute-and-forward –Threatens: Robustness - essential software provided by users Performance - more work, less optimizations possible Correctness - essential software provided by users Interoperability - changes the IP layer
4
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 4 The Pronto Router - Goals Support a range of programmability –From connectivity management … –… to fully in-data-path processing Allowing service programmers to trade off functionality and performance as appropriate Retain current forwarding model –not broken. Interoperability too important Exploit fast path optimizations (hardware) in high-speed routers
5
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 5 The Pronto Architecture The interfaces to these facilities define the active networking interface of PRONTO Consistent with current trends in hardware enhanced high speed routers Signaling CPU Scheduler Frame Peeking Data Data Path Path EnvironmentManager InstalledPrograms Scheduler Scheduler (link) (link) Classifier Classifier Queuing Queuing
6
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 6 Four levels of programmability Control Plane –Connectivity management, reservations (RSVP) Peeking into the data path –Still control plane, but at finer time scale (smoothing) Copying the data path –Basic forwarding still intact, but more work (caching) In the data path –Highest functionality (NACK processing)
7
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 7 Four levels of programmability CPU Scheduler EnvironmentManager InstalledcontrolPrograms Scheduler Scheduler (link) (link) Classifier ClassifierQueuing Signaling Frame Peeking CPU Scheduler Frame Peeking EnvironmentManager InstalledcontrolPrograms Scheduler Scheduler (link) (link) Classifier ClassifierQueuing Signaling CPU Scheduler EnvironmentManager InstalledcontrolPrograms Scheduler Scheduler (link) (link) Classifier ClassifierQueuing Signaling Frame Peeking CPU Scheduler Frame Peeking EnvironmentManager InstalledcontrolPrograms Queuing Signaling Classifier Classifier Scheduler Scheduler (link) (link) a) Control plane only c) Copying the data pathd) In the data path b) Peeking into the data path
8
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 8 Semantics Enhancement control (not true for in-data-path) –Not needed for correctness, nor for forwarding –Robust to non-cooperation Typed flows, rather than typed datagrams –Cache state (data + code) to amortize setup cost –Acts at connectivity level (group or floor control) –and at data level (stream thinning, filtering) Dynamic –May assign, and reassign policies at any time –Policies may be specified by any participant
9
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 9 Staying in the fast path The only essential work performed is forwarding Reducing real-time requirements –Since enhancement control, not installed in real-time –Control applied asynchronously to forwarding –Not essential to process every packet (“best-effort”) More predictable scheduling improves efficiency Reducing bandwidth across the interface
10
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 10 The Flow Classifier Provides a flow to queue (and port) mapping –In theory can do anything - in practice costly –Current implementation input port, PID, source address + port, dest. address + port –in IPv6 we use the flow label Interface –Create, Update, Remove Supports forwarding to: –set of output ports (queues), local socket, or both Controller
11
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 11 Service-generic signaling Execution environment assigned a protocol id –Manager subscribes to all router alerts with that id –Have a new one for enhanced efficiency Flow generic service controllers –Installed by signaling to the environment manager –Register alert values as demux id (need a bigger one) Flow specific controllers assigned to flows –Environment manager does dispatch –Default demux values map to default controllers
12
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 12 Example - Selective Discard Assume MPEG stream –Packets part of I, P or B frames First packet requests control When the controller is activated –If the per flow Q is above some high water-mark –the controller discards P and B frames No synchrony, asynchronous activation Forwarding engine EnvironmentManager Installedcontrolprograms
13
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 13 Effectiveness of frame peeking MPEG movie - 26,546 packets, 13.86 MB. Mostly 560 byte packets (average 522) Use frame peeking: –full header 17 bytes 450 KB (3.3%) copied –Min header 1 byte 27 KB (0.2%) copied Response: 1 byte command per packet Larger MTU’s (e.g., 1500 bytes) lower this ratio further.
14
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 14 Example: Reliable multicast Multiple multicast groups, 0 - G –Original transmissions sent on group 0 –Retransmissions sent on (Pid mod G) + 1 Receivers send NACKs for missing packets –All NACKs (SACKs) sent through the controller –Interpreted as implicit joins by the routers –Retransmitted streams copied to the controller –Interpreted as implicit leaves Transparent to receivers Does not impact forwarding performance
15
Research Gísli Hjálmtýsson - AT&T Research - gisli@research.att.com 15 The Pronto Router - Conclusions Supports a range of programmability –Allows trade off functionality and performance –Four levels: control plane, ++, copying, in data path Six major components to interface with –interfaces to these define the programmable interface Supports multiple execution environments Able to exploit hardware in high-speed routers Verified the flexibility of the interface through applications
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.