Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University

Download Report

Transcript Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University

Cabo: Concurrent Architectures
are Better than One
Jennifer Rexford
Princeton University
http://www.cs.princeton.edu/~jrex
Joint work with Nick Feamster and Lixin Gao
http://www.cs.princeton.edu/~jrex/papers/cabo.pdf
1
Deciding Not to Decide
• Flexibility has been key to the Internet’s success
– Many different applications and services
– Beyond anything the initial designers ever envisioned
• Today this flexibility is limited to the end systems
– Not surprisingly, this is where we have seen innovation
• And, the “inside” is quite difficult to change
– Witness the fate of IPv6, QoS, multicast, secure routing
• Even if we could start over…
– Maybe the design problem is over-constrained
– Too many goals, some conflicting
?
2
It’s Hard to be a Routing Protocol These Days
• Many, many design goals
–Global reachability
–Fast convergence
–Efficient use of resources
–Low protocol overhead
–Secure control plane
–Flexible routing policies
–<your wish list here>
• Perhaps we cannot satisfy all of these goals
–No matter how hard we try…
3
Example: Security vs. Reachability
Online Banking
Web Surfing
Properties
Security, even at the
Reachability more
expense of reachability important than security
Routing
Secure control plane
Insecure control plane
for participating parties for all parties
Addressing Self-certifying address Ephemeral address
associated with person related to the topology
4
Example: Convergence vs. Scalability
Voice over IP
Gateway
Properties
Fast convergence
for a few prefixes
Remaining Traffic
Scalability to 200K
prefixes
Dissemination Flooding
Hierarchical
Routing
Protocol
Path vector (iBGP
with route reflectors)
Link state (OSPF
or IS-IS)
5
Virtualization to the Rescue
• Multiple customized architectures in parallel
– Multiple logical routers on a single platform
– Resource isolation in CPU, forwarding table, bandwidth
– Programmability for custom protocols and mechanisms
6
Applications Within an Single ISP
• Customized virtual networks
– Security for online banking
– Fast-convergence for VoIP and gaming
– Specialized handling of suspicious traffic
• Testing and deploying new protocols
– Evaluate on a separate virtual network
– Rather than in a dedicated test lab
– Large scale and early-adopter traffic
• Leasing virtual components to others
– ISPs have unused node and link capacity
– Can allow others to construct services on top
7
Enabling Economic Refactoring
Infrastructure Providers
Service Providers
• Infrastructure providers: Maintain routers, links,
data centers, and other physical infrastructure
• Service providers: Offer end-to-end services
(e.g., layer 3 VPNs, SLAs, etc.) to users
Today: ISPs try to play both roles, and cannot offer end-to-end services
8
Similar Trends in Other Industries
• Commercial aviation
– Infrastructure providers: Airports
– Infrastructure: Gates, “hands and eyes” support, etc.
– Service providers: Airlines
JFK
SFO
NRT
ATL
Other examples: airplanes, auto industry, & commercial real estate
9
Communications Networks, Too!
• Two commercial examples in IP networks
– Packet Fabric: share routers at exchange points
– FON: resells users’ wireless Internet connectivity
Broker
• FON economic refactoring
– Infrastructure providers: Buy upstream connectivity
– Service provider: FON as the broker (www.fon.com)
10
Application #1: End-to-End Services
• Secure routing protocols
• Multi-provider VPNs
• Paths with end-to-end performance guarantees
Today
Competing ISPs
with different goals
must coordinate
Cabo
Single service
provider controls
end-to-end path
11
Application #2: Virtual Co-Location
• Problem: ISP/Enterprise wants presence in some
physical location, but doesn’t have equipment.
NYC
Tokyo
U.S.
ATL
• Today: Backhaul, or L3 VPN from single ISP
• Cabo: Lease a slice of another’s routers, links
12
Challenge #1: Simultaneous Operation
• Problem: Service providers share infrastructure
• Approach: Virtualize the infrastructure
– Nodes (lessons from PlanetLab will help)
– Links (previous lessons from QoS)
• Andy Bavier’s talk on VINI
– Cabo will exploit many functions that are needed for VINI
– Cabo philosophy: virtualization is the architecture
13
Challenge #2: Substrate
• Problem: Service providers must be able to
request and create virtual networks
• Discovering physical infrastructure
– Decision elements for managing the substrate
• Creating virtual networks
– Requests to decision elements (initially out of band),
which name virtual network components
• Instantiating virtual networks
– Challenges related to embedding and accounting
14
Conclusion: Cabo as a New Architecture
• Virtualization
– Multiple logical routers on a single platform
– Resource isolation in CPU, FIBs, and bandwidth
• Programmability
– General-purpose CPUs for control and manipulation
– Network processors and FPGAs for fast forwarding
– Third-party providers for routing and forwarding solutions
• Economic refactoring
– Infrastructure provider: manage routers and links
– Service provider: offer end-to-end services
http://www.cs.princeton.edu/~jrex/papers/cabo.pdf
15