1 VINI and its Future Directions Andy Bavier Princeton University acb Joint with Nick Feamster,...

Post on 26-Mar-2015

219 views 3 download

Tags:

Transcript of 1 VINI and its Future Directions Andy Bavier Princeton University acb Joint with Nick Feamster,...

1

VINI and its Future Directions

Andy Bavier

Princeton University

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

Joint with Nick Feamster, Larry Peterson, Jennifer Rexford

2

Technology Transfer

• Deploy and support a prototype system– Wide area, longer timescales, real traffic, etc.

• Technical feasibility– Scalability, robustness under realistic conditions

– System integration and testing

• Economic incentives– Real users potential market

SIGCOMM

paper

Commercial

adoption

Deployment

studies

3

Overview

• VINI vision–Enable deployment studies in real networks

–Share the nodes, links using virtualization

• Current status of VINI

• Future directions for VINI

• VINI and the NSF GENI project

Fixed Infrastructure

VINI nodes in National LambdaRail, Internet2, PoPs in Seattle and Virginia, CESNET

Shared Infrastructure

Experiments given illusion of dedicated hardware

Flexible Topology

VINI supports arbitrary virtual topologies

Network Events

VINI exposes, can inject network failures

External Connectivity

s

c

Experiments can carry traffic for real end-users

External Routing Adjacencies

s

c

BGP

BGP

BGP

BGP

Experiments can participate in Internet routing

10

Overview

• VINI vision–Enable deployment studies in real networks

–Share the nodes, links using virtualization

• Current status of VINI

• Future directions for VINI

• VINI and the NSF GENI project

11

VINI Current Status - Deployment

• Two VINI nodes per site

• Operational sites:–7 NLR sites

–9 Internet2 (NewNet) sites

–2 colo sites: Seattle WA, Ashburn VA

–1 European site: CESNET Prague

• 1Gb/s lightpath between Prague and VINI

Internet2 nodes in Chicago

12

VINI Status - Virtual Hosts

• VINI based on PlanetLab software–Simultaneous experiments in separate VMs–Each has “root” in its own VM, can customize–Reserve CPU and bandwidth per experiment

Virtual Machine Monitor (VMM)(Linux++)

NodeMgr

LocalAdmin

VM1 VM2 VMn…

PlanetLab node

VINI Status - Virtual Networks

• Configure a virtual topology for a slice–Point-to-point virtual Ethernet links

–Slice controls routing table, virtual devices on

the virtual hosts

• Purpose: allow experimentation with routing

software (e.g., XORP, Quagga) that already

runs on Linux

VINI Trellis v0.1

kernel FIB

virtualNIC

application

virtualNIC

user

kernel

Virtual host• Linux kernel IPv4 routing table• Point-to-point virtual Ethernet• Applications add/change routes

bridge

shaper

EGREtunnel

bridge

shaper

EGREtunnel

Substrate• Ethernet software bridge• Traffic shaper• Ethernet-over-GRE tunnels (to span multiple IP hops)

15

Overview

• VINI vision–Enable deployment studies in real networks

–Share the nodes, links using virtualization

• Current status of VINI

• Future directions for VINI

• VINI and the NSF GENI project

Future Questions for VINI

• How to leverage other testbeds?– Experiments, user communities, tools, etc.

• How to grow VINI?

• What new features should VINI offer?– Custom hardware

– Programmable data planes

• How to link a virtual network to the “real world”?– Real users, real traffic, real routing information

Leveraging Other Testbeds

• Testbed federation mechanisms–Federate VINI with PlanetLab, Emulab, OneLab

–Create experiments that span multiple testbeds

–Move experiments from one testbed to another

• Open, modular system architecture–Incorporate Emulab topology creation GUI

Deploying more VINI nodes

• You can join the public VINI–CESNET deployment: Prague, Pilsen, ???

–Other European research networks?

• You can create your own VINI–VINI is a “private PlanetLab”, based on MyPLC

–MyVINI = MyPLC + VINI kernel, tools

–Development platform or dedicated testbed

Adding New Features

• VINI technology trade-offs:– Performance (to carry real traffic)

– Isolation (to support multiple experiments)

– Programmability (make it easy to use)

• Custom hardware– NetFPGA from Stanford

– Supercharged PlanetLab Platform from WUSTL

• Programmable data plane– Allow users to run Click Modular Software Router in

Linux kernel, on NetFPGA

20

Connecting to the World

• Getting real routing information–BGP Multiplexer service

–Receive BGP information from real routers

–Advertise routes, experiment becomes ISP

• Getting real traffic–Deploy wireless access points

–Hide behind a proxy (e.g., game server)

–Leverage existing PlanetLab services (e.g., CDN)

21

Overview

• VINI vision–Enable deployment studies in real networks

–Share the nodes, links using virtualization

• Current status of VINI

• Future directions for VINI

• VINI and the NSF GENI project

• Large, wide-area footprint• Enables large-scale,

end-to-end experiments• Shared among researchers by

virtualization & slices

Current / projected substratesHigh capacity optical nets and programmable coresLarge clusters of CPUs, storageEdge / access technologies(e.g. cellular, sensor networks)

NSF’s GENI Vision A national facility to explore radical designs for a future

global networking infrastructure

How GENI will be used• GENI is meant to enable . . .

– Trials of new architectures, which may or may notbe compatible with today’s Internet

– Long-running, realistic experiments with enough instrumentation to provide real insights and data

– ‘Opt in’ for real users into long-running experiments– Large-scale growth for successful experiments, so good

ideas can be shaken down at scale

• A reminder . . .– GENI itself is not an experiment !– GENI is a stable facility on which experiments run

GENI creates a huge opportunity for ambitious research!GENI creates a huge opportunity for ambitious research!

Spiral DevelopmentGENI grows through a well-structured, adaptive process

• An achievable starting pointExample: Rev 1 “narrow waist”, federation of multiple substrates (clusters, wireless, regional / national optical net with early GENI ‘routers’, perhaps some existing testbeds), Rev 1 user interface and instrumentation.

• Envisioned ultimate goal Example: Planning Group’s desired GENI facility, probably trimmed some ways and expanded others. Incorporates large-scale distributed computing resources, high-speed backbone nodes, nationwide optical networks, wireless & sensor nets, etc.

• Spiral Development ProcessRe-evaluate goals and technologies yearly by a systematic process, decide what to prototype and build next.

Strawman GENI Construction Plan

Use

Planning

Design

Build outIntegration

Use

FederationGENI grows by “gluing together” heterogeneous facilities over time

Goals: avoid technology “lock in,” add new technologies as they mature, and potentially grow quickly by incorporating existing facilities into the overall “GENI ecosystem”

NSF parts of GENI

Backbone #1

Backbone #2

Wireless#1

Wireless#2

Access#1

CorporateGENI facilities

Other-NationGENI facilities

Other-NationGENI facilities

ComputeCluster

#2

ComputeCluster

#1

My experiment runs acrossthe evolving GENI federation.

My GENI Slice

This approach looks remarkably familiar . . .

26

VINI and the GENI Project

• VINI and PlanetLab can be regarded as

small-scale prototypes of pieces of GENI

• Goal: Be GENI-compliant–Participate in GENI design efforts

–Implement new GENI interfaces

–Influence GENI development process

• First GENI solicitation: Feb 2008

Conclusion

• VINI is a platform for deployment studies

• Need help growing, developing VINI–Install VINI nodes in national research networks

–Extend the VINI platform (e.g., federation)

–Perform interesting research on VINI

• Goal: influence the GENI effort in the US

http://www.vini-veritas.net