90 likes | 206 Views
VINI: A Virtual Network Infrastructure. Andy Bavier Princeton University. Internet In A Slice. Software toolkit for network experimentation Observe routing protocols “in the wild” Evaluate new protocols and proposed changes Carry real traffic on behalf of real clients Hands-on teaching aid
E N D
VINI: A Virtual Network Infrastructure Andy Bavier Princeton University
Internet In A Slice • Software toolkit for network experimentation • Observe routing protocols “in the wild” • Evaluate new protocols and proposed changes • Carry real traffic on behalf of real clients • Hands-on teaching aid • Leverage research, open source: • Click modular software router • XORP routing protocol suite • OpenVPN, User-Mode Linux
IIAS Overview UML XORP OSPF updates Click Client Server UML UML XORP XORP UDP tunnels Open VPN Click Click NAT
Demo: IIAS on Abilene STTL CHIN NYCM SNVA DNVR KSCY IPLS WASH LOSA ATLA HSTN
IIAS on PlanetLab • Problem: overlay latency • DC – Seattle RTT on Abilene • Network: constant 74ms • Six-hop IIAS overlay: 76ms – 135ms • 50% > 82ms, 10% > 87ms • Reason: CPU scheduling delay on heavily-loaded PlanetLab nodes
VINI: A Virtual Network Infrastructure • Balance reproducibility and reality • Dedicated resources for large-scale networking experiments like IIAS • Expose L2 circuits to slices • OS support for high speed packet forwarding • Federate with public PlanetLab • Moving away from PlanetLab’s best effort model • Experiment with new policies, kernels • Approach federation problem from both sides
A Small Step: PL-VINI • What can we do right now for IIAS? • Use existing PlanetLab facilities • CPU reservations (new 3.2 CPU scheduler) • Boost priority of Click forwarder (Proper) • Problem: not mechanism, but policy
RTT on Network, Overlay Overlay + PL-VINI: 98% of RTTs within 3ms of network
Timeline 2002-present Feb 2006 Jun 2006 2007-08 • PlanetLab • PCs • tunnels • kernel • PL-VINI • PCs • tunnels • kernel’ • policies • VINI • PCs • Layer 2 • (Abilene, NLR) • kernel’’ • policies • VINI v2 • PCs • FPGAs • Layer 2 (other GREN) • Dynamic Layer 2 • kernel’’’ • policies