VINI: Virtual Network Infrastructure

Slides:



Advertisements
Similar presentations
VINI and its Future Directions
Advertisements

Building Fast, Flexible Virtual Networks on Commodity Hardware Nick Feamster Georgia Tech Trellis: A Platform for Building Flexible, Fast Virtual Networks.
Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.
Path Splicing with Network Slicing
Network Virtualization Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton NSF NeTS-FIND PI Meeting.
Building Virtual Networks for Experimentation and Profit Nick Feamster, Georgia Tech Andy Bavier, Lixin Gao, Mark Huang, Murtaza Motiwala, Jennifer Rexford,
Cabo: Concurrent Architectures are Better than One Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton.
VINI Overview. PL-VINI: Prototype on PlanetLab PlanetLab: testbed for planetary-scale services Simultaneous experiments in separate VMs –Each has root.
My Experience Writing an NSF NeTS FIND Proposal Nick Feamster Georgia Tech.
VINI: Virtual Network Infrastructure Nick Feamster Georgia Tech Andy Bavier, Mark Huang, Larry Peterson, Jennifer Rexford Princeton University.
1 Building a Fast, Virtualized Data Plane with Programmable Hardware Bilal Anwer Nick Feamster.
Cabo: Concurrent Architectures are Better than One Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton.
Network Operations Nick Feamster
Network Operations Nick Feamster
Building Virtual Networks for Experimentation and Profit Nick Feamster, Georgia Tech Andy Bavier, Lixin Gao, Mark Huang, Murtaza Motiwala, Jennifer Rexford,
Path Splicing with Network Slicing Nick Feamster Murtaza Motiwala Santosh Vempala.
Theory Lunch. 2 Problem Areas Network Virtualization for Experimentation and Architecture –Embedding problems –Economics problems (markets, etc.) Network.
All Rights Reserved © Alcatel-Lucent 2009 Enhancing Dynamic Cloud-based Services using Network Virtualization F. Hao, T.V. Lakshman, Sarit Mukherjee, H.
PlanetLab: An Overlay Testbed for Broad-Coverage Services Bavier, Bowman, Chun, Culler, Peterson, Roscoe, Wawrzoniak Presented by Jason Waddle.
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Jennifer Rexford Princeton University MW 11:00am-12:20pm Network Virtualization COS 597E: Software Defined Networking.
Performance Evaluation of Open Virtual Routers M.Siraj Rathore
Xen , Linux Vserver , Planet Lab
1 In VINI Veritas: Realistic and Controlled Network Experimentation Jennifer Rexford with Andy Bavier, Nick Feamster, Mark Huang, and Larry Peterson
Towards Virtual Networks for Virtual Machine Grid Computing Ananth I. Sundararaj Peter A. Dinda Prescience Lab Department of Computer Science Northwestern.
1 VINI: Virtual Network Infrastructure Jennifer Rexford Princeton University
VROOM: Virtual ROuters On the Move Jennifer Rexford Joint work with Yi Wang, Eric Keller, Brian Biskeborn, and Kobus van der Merwe
1 GENI: Global Environment for Network Innovations Jennifer Rexford Princeton University
An Overlay Data Plane for PlanetLab Andy Bavier, Mark Huang, and Larry Peterson Princeton University.
1 GENI: Global Environment for Network Innovations Jennifer Rexford On behalf of Allison Mankin (NSF)
VROOM: Virtual ROuters On the Move Jennifer Rexford Joint work with Yi Wang, Eric Keller, Brian Biskeborn, and Kobus van der Merwe (AT&T)
1 VINI: Virtual Network Infrastructure Jennifer Rexford Princeton University
Virtualization: An End or a Means? Larry Peterson Princeton University
1 VINI: Virtual Network Infrastructure Jennifer Rexford Princeton University
Yaping Zhu Advisor: Prof. Jennifer Rexford With: Andy Bavier and Nick Feamster (Georgia Tech) UFO: A Resilient Layered Routing Architecture.
Scalability and Accuracy in a Large- Scale Network Emulator Amin Vahdat, Ken Yocum, Kevin Walsh, Priya Mahadevan, Dejan Kostic, Jeff Chase, and David Becker.
1 VINI: Virtual Network Infrastructure Jennifer Rexford Princeton University Joint with Andy Bavier, Nick Feamster, Lixin.
Internet In A Slice Andy Bavier CS461 Lecture.
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
VROOM: Virtual ROuters On the Move Yi Wang (Princeton) With: Kobus van der Merwe (AT&T Labs - Research) Jennifer Rexford (Princeton)
WINLAB Demos March 27, Demos Overview Wired-Wireless testbed Integration –Demo 1: PL to Orbit –Demo 1b: Vini to Orbit –Demo 2: Orbit to PL (2 videos)
In VINI Veritas Realistic and Controlled Network Experimentation Andy Bavier Nick Feamster* Mark Huang Larry Peterson Jennifer Rexford Princeton University.
The Future of the Internet Jennifer Rexford ’91 Computer Science Department Princeton University
Backbone Support for Host Mobility: A Joint ORBIT/VINI Experiment Jennifer Rexford Princeton University Joint work with the ORBIT team (Rutgers) and Andy.
Copyright © 2012, QoS-aware Network Operating System for Software Defined Networking with Generalized OpenFlows Kwangtae Jeong, Jinwook Kim.
Microsoft Virtual Academy Module 4 Creating and Configuring Virtual Machine Networks.
1 MASTERING (VIRTUAL) NETWORKS A Case Study of Virtualizing Internet Lab Avin Chen Borokhovich Michael Goldfeld Arik.
Virtual ROuters On the Move (VROOM): Live Router Migration as a Network-Management Primitive Yi Wang, Eric Keller, Brian Biskeborn, Kobus van der Merwe,
Hosting Virtual Networks on Commodity Hardware VINI Summer Camp.
Dynamic Network Emulation Security Analysis for Application Layer Protocols.
Tutorial: Bringing Experimenters to GENI with the Transit Portal Vytautas Valancius, Hyojoon Kim, Nick Feamster Georgia Tech.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
1 Cabo: Concurrent Architectures are Better than One Jennifer Rexford Princeton University Joint work with Nick Feamster.
Repeaters and Hubs Repeaters: simplest type of connectivity devices that regenerate a digital signal Operate in Physical layer Cannot improve or correct.
Objectives: Chapter 5: Network/Internet Layer  How Networks are connected Network/Internet Layer Routed Protocols Routing Protocols Autonomous Systems.
1.4 Open source implement. Open source implement Open vs. Closed Software Architecture in Linux Systems Linux Kernel Clients and Daemon Servers Interface.
Evaluation Strategies Nick Feamster CS 7260 February 26, 2007.
Running large scale experimentation on Content-Centric Networking via the Grid’5000 platform Massimo GALLO (Bell Labs, Alcatel - Lucent) Joint work with:
Vytautas Valancius, Nick Feamster, Akihiro Nakao, and Jennifer Rexford.
Module 1: Configuring Routing by Using Routing and Remote Access.
Bringing External Connectivity and Experimenters to GENI Nick Feamster Georgia Tech.
XCAST team report Yuji IMAI (WIDE Project) 1.Experimental Deployment Method for Router Supported ALM using PlanetLab draft-muramoto-irtf-sam-exp-testbed-00.txt.
PrimoGENI Miguel Erazo, Nathanael Van Vorst, Jason Liu (PI) Co-PIs: Julio Ibarra, Heidi Alvarez.
01/27/10 What is PlanetLab? A planet-wide testbed for the R & D of network applications and distributed computing Over 1068 nodes at 493 sites, primarily.
Introduction An introduction to the software and organization of the Internet Lab.
Distributed Mobility Management for Future 5G Networks : Overview and Analysis of Existing Approaches IEEE Wireless Communications January 2015 F. Giust,
Planning and Troubleshooting Routing and Switching
Chapter 5: Inter-VLAN Routing
Introduction An introduction to the software and organization of the Internet Lab.
Reconciling Zero-conf with Efficiency in Enterprises
Presentation transcript:

VINI: Virtual Network Infrastructure Nick Feamster Georgia Tech Andy Bavier, Mark Huang, Larry Peterson, Jennifer Rexford Princeton University

VINI Overview Runs real routing software Bridge the gap between “lab experiments” and live experiments at scale. ? Emulation VINI Simulation Small-scale experiment Live deployment Runs real routing software Exposes realistic network conditions Gives control over network events Carries traffic on behalf of real users Is shared among many experiments

Goal: Control and Realism Traffic Real clients, servers Synthetic or traces Goal: Control and Realism Control Reproduce results Methodically change or relax constraints Realism Long-running services attract real users Connectivity to real Internet Forward high traffic volumes (Gb/s) Handle unexpected events Topology Arbitrary, emulated Actual network Traffic Synthetic or traces Real clients, servers Scientifically, what’s the point of such an infrastructure? Network Events Inject faults, anomalies Observed in operational network

Overview VINI characteristics PL-VINI: prototype on PlanetLab Fixed, shared infrastructure Flexible network topology Expose/inject network events External connectivity and routing adjacencies PL-VINI: prototype on PlanetLab Preliminary Experiments Ongoing work

Fixed Infrastructure Concretely, what is VINI Overlays! Aggregate Gb/s Topology, IP address, BGP peering

Shared Infrastructure Virtual nodes Isolation between experiments (e.g., CPU reservation)

Arbitrary Virtual Topologies P2P connectivity Unique interfaces visible to each virtual node

Exposing and Injecting Failures Concretely, what is VINI Overlays! Aggregate Gb/s Topology, IP address, BGP peering

Carry Traffic for Real End Users Talk about flexible routing and forwarding here s

Participate in Internet Routing BGP c Find out about external address blocks In future: advertise address blocks s

PL-VINI: Prototype on PlanetLab First experiment: Internet In A Slice XORP open-source routing protocol suite (NSDI ’05) Click modular router (TOCS ’00, SOSP ’99) Clarify issues that VINI must address Unmodified routing software on a virtual topology Forwarding packets at line speed Illusion of dedicated hardware Injection of faults and other events

PL-VINI: Prototype on PlanetLab PlanetLab: testbed for planetary-scale services Simultaneous experiments in separate VMs Each has “root” in its own VM, can customize Can reserve CPU, network capacity per VM Virtual Machine Monitor (VMM) (Linux++) Node Mgr Local Admin VM1 VM2 VMn … PlanetLab node

XORP: Control Plane BGP, OSPF, RIP, PIM-SM, IGMP/MLD XORP Goal: run real routing protocols on virtual network topologies XORP (routing protocols)

User-Mode Linux: Environment Interface ≈ network PlanetLab limitation: Slice cannot create new interfaces Run routing software in UML environment Create virtual network interfaces in UML UML XORP (routing protocols) eth0 eth1 eth2 eth3

Click: Data Plane Performance XORP Interfaces  tunnels Filters Click Avoid UML overhead Move to kernel, FPGA Interfaces  tunnels Click UDP tunnels correspond to UML network interfaces Filters “Fail a link” by blocking packets at tunnel UML XORP (routing protocols) eth0 eth1 eth2 eth3 Control Data Packet Forward Engine UmlSwitch element Tunnel table Click Filters

Intra-domain Route Changes 2095 856 700 260 233 1295 c 639 366 548 587 846 Talk about flexible routing and forwarding here 902 1893 1176

Ping During Link Failure Routes converging Link down Link up

Close-Up of TCP Transfer PL-VINI enables a user-space virtual network to behave like a real network on PlanetLab Slow start Retransmit lost packet

Challenge: Attracting Real Users Could have run experiments on Emulab Goal: Operate our own virtual network Carrying traffic for actual users We can tinker with routing protocols Attracting real users

Conclusion http://www.vini-veritas.net/ VINI: Controlled, Realistic Experimentation Installing VINI nodes in NLR, Abilene Download and run Internet In A Slice http://www.vini-veritas.net/

TCP Throughput Link up Link down Zoom in

Ongoing Work Improving realism Improving control Exposing network failures and changes in the underlying topology Participating in routing with neighboring networks Improving control Better isolation Experiment specification

Resource Isolation Issue: Forwarding packets in user space PlanetLab sees heavy use CPU load affects virtual network performance Property Depends On Solution Throughput CPU% received PlanetLab provides CPU reservations Latency CPU scheduling delay PL-VINI: boost priority of packet forward process

Performance is bad User-space Click: ~200Mb/s forwarding

VINI should use Xen

Experimental Results Is a VINI feasible? Click in user-space: 200Mb/s forwarded Latency and jitter comparable between network and IIAS on PL-VINI. Say something about running on just PlanetLab? Don’t spend much time talking about CPU scheduling…

Low latency for everyone? PL-VINI provided IIAS with low latency by giving it high CPU scheduling priority

Internet In A Slice XORP Run OSPF Configure FIB Click FIB Tunnels Inject faults OpenVPN & NAT Connect clients and servers S S C C Talk about flexible routing and forwarding here S C

PL-VINI / IIAS Router Blue: topology XORP Red: routing and forwarding Virtual net devices Tunnels Red: routing and forwarding Data traffic does not enter UML Green: enter & exit IIAS overlay UML XORP eth1 eth3 eth2 UmlSwitch element FIB Encapsulation table eth0 Control Data Click tap0

PL-VINI Summary Flexible Network Topology Virtual point-to-point connectivity Tunnels in Click Unique interfaces per experiment Virtual network devices in UML Exposure of topology changes Upcalls of layer-3 alarms Flexible Routing and Forwarding Per-node forwarding table Separate Click per virtual node Per-node routing process Separate XORP per virtual node Connectivity to External Hosts End-hosts can direct traffic through VINI Connect to OpenVPN server Return traffic flows through VINI NAT in Click on egress node Support for Simultaneous Experiments Isolation between experiments PlanetLab VMs and network isolation CPU reservations and priorities Distinct external routing adjacencies BGP multiplexer for external sessions

PL-VINI / IIAS Router XORP: control plane UML: environment XORP Virtual interfaces Click: data plane Performance Avoid UML overhead Move to kernel, FPGA Interfaces  tunnels “Fail a link” UML XORP (routing protocols) eth0 eth1 eth2 eth3 Control Data Packet Forward Engine UmlSwitch element Tunnel table Click