160 likes | 307 Views
CABO: Concurrent Architectures are Better Than One. Nick Feamster (Georgia Tech) Jennifer Rexford (Princeton) Lixin Gao (U. Massachusetts). Virtualization as a Building Block for Networks. Multiple protocols, networks, or architectures in parallel
E N D
CABO: Concurrent Architectures are Better Than One Nick Feamster(Georgia Tech) Jennifer Rexford (Princeton) Lixin Gao (U. Massachusetts)
Virtualization as a Building Block for Networks • Multiple protocols, networks, or architectures in parallel • Multiple logical routers on a single platform • Resource isolation in CPU, forwarding table, bandwidth • Programmability for custom protocols and mechanisms
Some Ongoing Projects • Path Splicing(Georgia Tech) • Run multiple instances of routing protocol • Path bits indicate which instance to use at each hop • Exponential diversity gain, modest complexity • VROOM: Virtual Routers on the Move(Princeton) • Support overlay functions in routers • Efficient forwarding and scalable monitoring • HORN: Hybrid Routing for Overlay Networks(UMass Amherst) • Different nodes see different detailed subgraph • Availability of link state with good scalability
t Path Splicing Compute multiple forwarding trees per destination.Allow packets to switch slices midstream. • Step 1: Run multiple instances of the routing protocol, each with slightly perturbed versions of the configuration • Step 2: Allow traffic to switch between instances at any node in the protocol s
Reliability Close to Best Possible Average stretch is only 1.3 Sprint topology,degree-based perturbations
VROOM: Virtual Routers on the Move • All logical configurations/states remain the same before/after the migration • IP addresses and routing protocol configurations remain the same • Routing-protocol adjacencies stay up • No protocol (BGP/IGP) reconvergence • Network topology stays intact • Adjacent routers won’t know router has moved • Virtually no disruption to traffic • Traffic downtime can be eliminated
HORN:Hybrid rOuting for oveRlay Networks A-B-C-H C-H E-G-H D-G-H A knows a partial topology (adjacent sub-graph) via link state protocol, and learns routes from the border nodes of the sub-graph.
Scalability vs. Convergence • Link state routing • Not scalable • A virtual network could be as large as the Internet • Distance vector routing • Convergence delay • Scales better • Main idea: a tunable routing protocol • Trade scalability for better availability • Each slice runs a fixed protocol with tunable parameter
VINI/Trellis: Deployment Platform • Lightweight containers running on top of a single OS • Each virtual host sees a set of virtual ethernet links • Packet forwarding, traffic shaping remain outside of containers
Trellis: Speed and Scalability Can support a large number of virtual containers Packet forwarding rates close to those of raw kernel
CABO as a New Architecture • Virtualization • Multiple logical routers on shared hardware • Resource isolation in CPU, FIBs, and bandwidth • Programmability • General-purpose CPUs for control and manipulation • Network processors and FPGAs for fast forwarding • Economic refactoring • Infrastructure provider: manage routers and links • Service provider: offer end-to-end services
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 • 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 goals