150 likes | 281 Views
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. Deciding Not to Decide.
E N D
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
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 ?
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…
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
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
Enabling Economic Refactoring • 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 Infrastructure Providers Service Providers Today: ISPs try to play both roles, and cannot offer end-to-end services
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
Broker Communications Networks, Too! • Two commercial examples in IP networks • Packet Fabric: share routers at exchange points • FON: resells users’ wireless Internet connectivity • FON economic refactoring • Infrastructure providers: Buy upstream connectivity • Service provider: FON as the broker (www.fon.com)
Application #1: End-to-End Services • Secure routing protocols • Multi-provider VPNs • Paths with end-to-end performance guarantees Today Cabo Competing ISPs with different goals must coordinate Single service provider controls end-to-end path
NYC ATL Application #2: Virtual Co-Location • Problem:ISP/Enterprise wants presence in some physical location, but doesn’t have equipment. U.S. Tokyo • Today:Backhaul, or L3 VPN from single ISP • Cabo:Lease a slice of another’s routers, links
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
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
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