emulab.net: A Network Emulation and Distributed Systems Testbed
Download
Report
Transcript emulab.net: A Network Emulation and Distributed Systems Testbed
emulab.net:
An Emulation Testbed for
Networks and Distributed Systems
Jay Lepreau
and
many others
University of Utah
Intel IXA University Workshop
June 21, 2001
The Main Players
Undergrads
– Chris Alfeld, Chad Barb, Rob Ricci
Grads
– Dave Andersen, Shashi Guruprasad, Abhijeet
Joglekar, Indrajeet Kumar, Mac Newbold
Staff
– Mike Hibler, Leigh Stoller
Alumni
– Various
(Red: here at Intel today)
What?
A configurable Internet emulator in a room
– Today: 200 nodes, 500 wires, 2x BFS (switch)
– virtualizable topology, links, software
Bare hardware with lots of tools
An instrument for experimental CS research
Universally available to any remote
experimenter
Simple to use
What’s a Node?
Physical hardware: PCs, StrongARMs
Virtual node:
– Router (network emulation)
– Host, middlebox (distributed system)
Future physical hardware: IXP1200 +
Why?
“We evaluated our system on five nodes.”
-job talk from university with 300-node cluster
“We evaluated our Web proxy design with 10
clients on 100Mbit ethernet.”
“Simulation results indicate ...”
“Memory and CPU demands on the individual nodes
were not measured, but we believe will be
modest.”
“The authors ignore interrupt handling overhead in
their evaluation, which likely dominates all other
costs.”
“Resource control remains an open problem.”
Why 2
“You have to know the right people to get access
to the cluster.”
“The cluster is hard to use.”
“<Experimental network X> runs FreeBSD 2.2.x.”
“October’s schedule for <experimental network Y>
is…”
“<Experimental network Z> is tunneled through
the Internet”
Complementary to Other
Experimental Environments
Simulation
Small static testbeds
Live networks
Maybe someday, a large scale set of
distributed small testbeds (“Access”)
Internet
Web/DB/SNMP
Switch Mgmt
Users
PowerCntl
Control Switch/Router
Serial
Sharks
PC
Sharks
PC
40
Switched “Backplane”
160
Zoom In: One Node
Fundamental Leverage:
Extremely Configurable
Easy to Use
Key Design Aspects
Allow experimenter complete control
… but provide fast tools for common
cases
– OS’s, disk loading, state mgmt tools, IP,
traffic generation, batch, ...
Virtualization
– of all experimenter-visible resources
– node names, network interface names,
network addresses
– Allows swapin/swapout
Design Aspects (cont’d)
Flexible, extensible, powerful allocation
algorithm
Persistent state maintenance:
– none on nodes
– all in database
– leverage node boot time: only known state!
Separate control network
Familiar, powerful, extensible
configuration language: ns
Some Unique
Characteristics
User-configurable control of “physical”
characteristics: shaping of link
latency/bandwidth/drops/errors
(via invisibly interposed “shaping
nodes”), router processing power,
buffer space, …
Node breakdown today:
– 40 core, 160 edge
More Unique
Characteristics
Capture of low-level node behavior such
as interrupt load and memory bandwidth
User-replaceable node OS software
User-configurable physical link topology
Completely configurable and usable by
external researchers, including node
power cycling
Obligatory Pictures
Then
Now
A Few Research Issues and
Challenges
Network management of unknown entities
Security
Scheduling of experiments
Calibration, validation, and scaling
Artifact detection and control
NP-hard virtual --> physical mapping
problem
Providing a reasonable user interface
….
An “Experiment”
emulab’s central operational entity
Directly generated by an ns script,
… then represented entirely by
database state
Steps: Web, compile ns script, map, allocate,
provide access, assign IP addrs, host names,
configure VLANs, load disks, reboot,
configure OS’s, run, report
Mapping Example
Automatic mapping of desired
topologies and characteristics to
physical resources
Algorithm goals:
– minimize likelihood of experimental artifacts
(bottlenecks)
– “optimal” packing of multiple simultaneous
experiments
– Extensible for heterogenous hardware, software,
new features
Randomized heuristic algorithm: simulated
annealing
May move to genetic algorithm
Virtual Topology
Mapping into Physical Topology
Mapping Results
< 1 second for first solution, 40 nodes
“Good” solution within 5 seconds
Apparently insensitive to number of
node “features”
Disk Loading
13 GB generic IDE 7200 rpm drives
Was 20 minutes for 6 GB image
Now 88 seconds
How?
Do obvious compression
… and a little less obvious: zero the fs
Disk writes become the bottleneck
Hack the disk driver
Carefully overlap I/O and decompression
==> 6 minutes
Last Step
Domain-specific compression
Type the filesystem blocks:
– allocated
– free
Never write the free ones
Experiment Creation Time
Experiment Termination Time
Ongoing and Future Work
Multicast disk images
IXP1200 nodes, tools, code fragments
– Routers, high-capacity shapers
Event system
Scheduling system
Topology generation tools and GUI
Simulation/enulation transparency
Linked testbeds
Wireless nodes, Mobile nodes
Logging. Visualization tools
Microsoft OSs, high speed links, more nodes!
Final Remarks
18 projects have used it (14 external)
– Plus several class projects
Two OSDI’00 and three SOSP’01 papers
– 20% SOSP general acceptance rate
– 60% SOSP acceptance rate for emulab users!
More emulab’s under construction:
– Yes: Univ. of Kentucky, Stuttgart
– Maybe: WUSTL, Duke
Sponsors (red: major ones, current or expected)
– NSF, DARPA, University of Utah
– Cisco, Intel, Compaq, Microsoft, Novell, Nortel
Available for universities,
labs, and companies at:
www.emulab.net