Transcript Document

GENI: Catalyzing
Network Research
Larry Peterson
Princeton University
May 31, 2007
Historical Context
Overcoming Barriers to Disruptive Innovation in
Networking, NSF Workshop Report, January
2005.
Recommendations
1. Immediately initiate a research program on
experimental architectural research in networking.
2. Foster experimental validation of new architectural
research in networking.
3. Fund the development and deployment of suitable
testbeds.
From the Report
“… in the thirty-odd years since its invention, new uses and
abuses… are pushing the Internet into realms that its original
design neither anticipated nor easily accommodates.”
“Freezing forevermore the current architecture would be bad
enough, but in fact the situation is deteriorating. These
architectural barnacles—unsightly outcroppings that have affixed
themselves to an unmoving architecture—may serve a valuable
short-term purpose, but significantly impair the long-term
flexibility, reliability, security, and manageability of the Internet.”
GENI Initiative
• Research Program
–
–
–
–
NeTS: Future InterNet Design (FIND)
CyberTrust: Clean slate secure network architectures
Theory: Scientific foundations (SING)
…
• Experimental Facility
– proposal to the MREFC program
– funds (cutting-edge) facility construction, not research
– requires NSB and Congressional approval
Community
GENI Science Council (GSC)
Planning Group
- under auspices of the CRA
- represents researchers (users)
- grass roots
- 60+ individuals
GENI Project Office (GPO)
- contract to BBN
- responsible for “on time”
and “on budget”
Research - Moon Shot
To reinvent the Internet; to create
a global communication
infrastructure worthy of
society’s trust.
Research - Problems
• Security
– weak notions of identity that are easy to spoof
– protocols that rely on good behavior
• Mobility
– hierarchical addressing closely tied with routing
– presumption that communicating hosts are connected
• Availability
– poor visibility into underlying shared risks
– multiple interconnected protocols and systems
• Managability
– many coupled, decentralized control loops
Research - Approaches
• Revisiting definition & placement of function
–
–
–
–
naming, addressing, and location
routing, forwarding, and addressing
management, control, and data planes
end hosts, routers, and operators
• Designing with new constraints in mind
–
–
–
–
selfish and adversarial participants
mobile hosts and disconnected operation
large number of small, low-power devices
ease of network management
Validation Gap
Deployment
Analysis
(models)
Simulation / Emulation
(results)
(measurements)
Experiment At Scale
(code)
With Real Users
Facility Requirements
• Generality
– minimal constraints on packet formats
– diverse collection of technologies
• Slicability
– support many experiments in parallel
• Fidelity
– realistic devices
– arranged in realistic topologies
• Real Users
– allow real users to access real content using real applications
• Sustainability
– extend with new technologies
– keep operational costs manageable
Facility Architecture
User Services
- name space for users, slices, & components
GMC
- set of interfaces (“plug in” new components)
- support for federation (“plug in” new partners)
Physical Substrate
Greater Landscape
• The NSF Initiative
– we’re writing a proposal
– there are rules…
• GENI Ecosystem
– other technology & capacity partners
– new user communities
• Computing Research Community
– guinea pig for “big science” projects
Two Sides of the Same Coin
Research
Infrastructure
Two views of PlanetLab
– useful research instrument
– prototype of a new network architecture
Programmability & virtualization deep in the network
PlanetLab
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
• 784 machines spanning 382 sites and 40 countries
• Supports distributed virtualization
each of 600+ network services running in their own slice
Slices
Slices
Slices
User Opt-in
Client
NAT
Server
Usage Stats
• Users: 2500+
• Slices: 600+
• Long-running services: ~20
– CDN, file download, multicast, pub-sub, routing overlays…
• Bytes-per-day: 4 TB
• IP-flows-per-day: 190M
• Unique IP-addrs-per-day: 1M
Lessons Learned
• Trust relationships
– owners, service providers, operators
• Decentralized control
– owner autonomy
– delegation
– federation
• Virtualization
– scalability is critical
– control plane and node OS are orthogonal
– least privilege in support of management functionality
• Resource allocation
– decouple slice creation and resource allocation
– best effort + overload protection
Lesson (cont)
• Evolve based on experience
– Support users quickly
– Let experience dictate what problems to solve
• Operations
– PlanetLab: We debug your network
– From universal connectivity to gated communities
– If you don’t talk to your university’s general counsel,
you aren’t doing network research
VINI - “PlanetLab on Layer 2”
Deployed in NLR & I2’s NewNet
VINI - Flexible Topology
Supports arbitrary virtual topologies
VINI - Network Events
Exposes (can inject) network failures
VINI - External Connectivity
c
s
Experiments can carry traffic for real end-users
VINI - Routing Peers
BGP
BGP
c
s
BGP
BGP
Experiments can participate in Internet routing
Challenges
• Virtualization
– Protocol stack
– BGP
• Topology Management
• Performance
– NetFPGA (McKeown @ Stanford)
– Blade Server + NPs (Turner @ WashU)
• Internet-in-a-Slice
– Click data plane
– XORP control plane
Other Activity
•
•
•
•
•
Prototyping the GENI interfaces
Interconnecting PlanetLab and ORBIT (Rutgers)
Interconnecting PlanetLab and Emulab (Utah)
Federating PlanetLab and OneLab (EU)
Replicating VINI on other backbones
Success Scenarios
• Narrow the validation gap
– Sound foundation for future network architectures
– Experimental evaluation, rather than paper designs
• Create new services
– Demonstrate new services at scale
– Attract real users
• Aid the evolution of the Internet
– Demonstrate ideas that ultimately see real deployment
– Provide architectural clarity for evolutionary path
• Lead to a future global network
– Purist: converge on a single new architecture
– Pluralist: virtualization supporting many architectures
More Information
• PlanetLab
– www.planet-lab.org
• VINI
– www.vini-veritas.net
• GENI
– www.geni.net