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

15
1 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

Transcript of 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex...

Page 1: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

1

Cabo: Concurrent Architectures are Better than One

Jennifer Rexford

Princeton University

http://www.cs.princeton.edu/~jrex

Joint work with Nick Feamster and Lixin Gaohttp://www.cs.princeton.edu/~jrex/papers/cabo.pdf

Page 2: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

2

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

?

Page 3: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

3

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…

Page 4: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

4

Example: Security vs. Reachability

Online Banking Web Surfing

Properties Security, even at the expense of reachability

Reachability more important than security

Routing Secure control plane for participating parties

Insecure control plane for all parties

Addressing Self-certifying address associated with person

Ephemeral address related to the topology

Page 5: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

5

Example: Convergence vs. Scalability

Voice over IP Gateway

Remaining Traffic

Properties Fast convergence for a few prefixes

Scalability to 200K prefixes

Dissemination Flooding Hierarchical

Routing Protocol

Link state (OSPF or IS-IS)

Path vector (iBGP with route reflectors)

Page 6: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

6

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

Page 7: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

7

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

Page 8: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

8

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

Page 9: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

9

Similar Trends in Other Industries

• Commercial aviation– Infrastructure providers: Airports– Infrastructure: Gates, “hands and eyes” support, etc.– Service providers: Airlines

Other examples: airplanes, auto industry, & commercial real estate

NRTATL

JFK

SFO

Page 10: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

10

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)

Broker

Page 11: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

11

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

Page 12: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

12

Application #2: Virtual Co-Location

• Problem: ISP/Enterprise wants presence in some physical location, but doesn’t have equipment.

• Today: Backhaul, or L3 VPN from single ISP

• Cabo: Lease a slice of another’s routers, links

Tokyo

NYC

ATL

U.S.

Page 13: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

13

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

Page 14: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

14

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

Page 15: 1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University jrex Joint work with Nick Feamster.

15

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