Title: Flexlab: A Realistic, Controlled, and Friendly Environment for Evaluating Networked Systems
1Flexlab A Realistic, Controlled, and Friendly
Environmentfor Evaluating Networked Systems
- PRESENTED BY AYMAN EL-SHAYEB
2Objectives
- Understanding the Flexlab system
- Understand the deployment process
- Understanding the Emulab system
- Understanding the Planet-lab system
- Understanding the datapository
- Understanding the network measurements
3Agenda
- Network System development Life Cycle
- Emulab overview
- Planet-Lab overview
- Datapository
- FlexLab system
- Reverse- engineering the internet
4Network System development Life Cycle
- PLANETLAB (Princeton University PlanetLab
Consortium)
5Ideas Maturity
- PLANETLAB (Princeton University PlanetLab
Consortium)
6Emulab System
- Emulab is a network testbed, giving researchers a
wide range of environments in which to develop,
debug, and evaluate their system
EmuLab site
7Steps to make Emulab project
- Logging into web interface
- Design network topology
- The topology can be descried by GUI or NS
(Network simulation) format - bandwidth, delay and loss can be specified in
each link - Operating system Image of deferent Operating
system can be specified for each PC node - Choose begin experiments from web interface
- An email will be sent by status (success or fail)
- In case of success an email is sent by topology
details IPS , router tables and operating
systems - Log by Secure shell ( SSH) in any nodes. Install
the application and run
8Example to topology
9Planet-Lab
- Planet-Lab is a global overlay network for
developing and accessing broad-coverage network
services. - It includes a large set of geographically
distributed machines - It is a realistic network so it includes
congestion, failures and link behaviors
PlanetLab An Overlay Testbed for Broad Coverage
Services
10Planet-Lab
- 784 servers at over 382 sites
11Planet-Lab
- The center piece of the Planet-Lab architecture
is a slice (a horizontal cut of global Planet-Lab
resources) - Each service (a set of distributed and
cooperating programs delivering some higher-level
functionality) runs in a slice of Planet-Lab.
PlanetLab An Overlay Testbed for Broad Coverage
Services
12Planet-Lab
- A slice is a network of virtual machines, with a
set of local resources bound to each virtual
machine. - A virtual machine is the environment where the
program that implements some aspect of a service
runs. - Each virtual machine runs on a single node and is
allowed to consume some fraction of that nodes
resources.
PlanetLab An Overlay Testbed for Broad Coverage
Services
13PlanetLab
PlanetLab An Overlay Testbed for Broad Coverage
Services
14Planet-Lab
- A node manager, implemented as part of the VMM,
runs on each node. It takes a set of tickets as
input. - If the request can be satisfied, the node manager
reserves the specified resources, creates a
virtual machine, binds it to those resources, and
returns a lease. - This lease is later used by the service manager
to launch a program within the virtual machine.
PlanetLab An Overlay Testbed for Broad Coverage
Services
15Planet-Lab
- A resource monitor is an service running on each
node. It monitors resource availability on the
node and periodically reports the results to one
or more agents. - An agent collects resource availability
information from a set of resource monitors or
other agents, and issues tickets that can be used
to acquire resources on the monitored nodes. - An agent can respond to two kinds of queries
- It can advertise the tickets it is holding that
meet certain criteria - It can grant tickets themselves to a requester.
The agent may also overbook the resources
available on the nodes it is responsible for
PlanetLab An Overlay Testbed for Broad Coverage
Services
16Planet-Lab
- A resource broker responds to queries from
service managers trying to discover a slice to
run in. - Each query describes the resources needed by the
service, and specifies the principal on whose
behalf the request is being made. - Given a query, the broker first contacts one or
more agents to discover what tickets it is
possible to obtain. It then matches this
information with the services resource
requirements to produce a slice specification,
contacts the relevant agents to obtain the
tickets, and returns them to the service manager.
PlanetLab An Overlay Testbed for Broad Coverage
Services
17Planet-Lab
- A service manager is associated with each
service. It contacts a resource broker to
discover a slice and obtain the tickets needed to
instantiate it. - It then submits the tickets to the admission
control mechanism on each node to create a
network of virtual machines. - Should virtual machine creation succeed on each
node, the service manager then launches the
service, that is, loads and starts a program in
each virtual machine. - Admission control returns a lease on the slice.
The manager must periodically renew this lease.
PlanetLab An Overlay Testbed for Broad Coverage
Services
18Planet-Lab drawback
- Scheduling Accuracy
- PlanetLab is heavily overloaded so it causes
significant accuracy problems - Network Conditions
- It can change frequently at small time scales
- FlexLab A Realistic, Controlled , and Friendly
Environment
19Challenges and Opportunities in Internet Data
Mining
- Communication networks produce vast amount of
data - On short timescales, the data can facilitate
network monitoring and troubleshooting - Over minutes to days, the data is useful for
network traffic engineering. - Over months, the data is useful for capacity
planning - Data can be used in simulation and emulation
- Challenges and Opportunities in Internet Data
Mining
20Purpose of paper
- Proposed standard way to collecting and archiving
large volume of network measurement data
(datapository) - Examines several challenges and opportunity in
collecting and archiving data
- Challenges and Opportunities in Internet Data
Mining
21Challenges
- Robust, distributed data collection
- Multi-timescale , heterogeneous data
- Non-standard, irregular data
- Large archival data mining
- Workflow metadata and privacy
- Challenges and Opportunities in Internet Data
Mining
22The datapository
- Challenges and Opportunities in Internet Data
Mining
23The datapository
- Data Collection
- Data types
- Data formats
- Access methods
- Feed
- Workflow
- Challenges and Opportunities in Internet Data
Mining
24The datapository
- Data storage
- MySQL engine to use SQL interface
- Analysis and queries
- Network operator
- Researchers performing analysis
- Simulation/emulation system
- Challenges and Opportunities in Internet Data
Mining
25The datapository
- External Interfaces
- Supports XMLRPC export mechanism
- It can export data in various format, including
human-readable output and Matlab-friendly
- Challenges and Opportunities in Internet Data
Mining
26Opportunities
- Repeatable Scientific Experimentation
- Repeating a past experiment
- Performing new analysis
- Network Monitoring and Control
- Trace network changing conditions
- Security threats
- Challenges and Opportunities in Internet Data
Mining
27Flex-Lab system
- Flex-Lab is a new testbed environment that
enables a new generation of network models for
emulation - Flex-Lab models end-to-end characteristics of
Internet paths between pairs of overlay nodes. - Emulation system disadvantages
- The network condition of emulation system like
Emulab is artificial. - The researcher is not sure which network aspects
are poorly modeled
- FlexLab A Realistic, Controlled , and Friendly
Environment
28The Live-network testbeds drawbacks
- It present a challenging environment for
development, debugging and evaluation - It has limited resources( CPU, memory, and I/O)
that are shared among many users and are
frequently overloaded - Users cannot perform many privileged operations
including choosing the OS, controlling network
stack parameters or modifying the kernel
- FlexLab A Realistic, Controlled , and Friendly
Environment
29Overall System Architecture
- Emulab nodes are connected in a full mesh
abstracting the Internet as a set of pair wise
network characteristics. - each node to participate in a Flexlab link is
associated with a PlanetLab node from which it
will get its network characteristics.
- FlexLab A Realistic, Controlled , and Friendly
Environment
30Overall System Architecture
- The network model feeds network parameters into
the path emulator - The network model can also optionally use data
from the measurement repository - The model sends network parameters using Emulabs
event system.
- FlexLab A Realistic, Controlled , and Friendly
Environment
31Overall System Architecture
- This framework enables transparent switching
between different models, and even between
Flexlab experiments and running live on
Planet-Lab - Enables development/debugging under simple,
predictable models without missing of realistic.
- FlexLab A Realistic, Controlled , and Friendly
Environment
32Overall System Architecture
- FlexLab A Realistic, Controlled , and Friendly
Environment
33Flexlab models
- Simple static Network Model
- Simple Dynamic Network Model
- Application-Centric Internet Model
- FlexLab A Realistic, Controlled , and Friendly
Environment
34Simple static Network Model
- This model set historical data at the beginning
of the experiment and does not change them
thereafter - The historical data is simple static parameters
such as average latency and bandwidth . It
changes by low-frequency - The data can be gotten from archived data in the
public Datapository
- FlexLab A Realistic, Controlled , and Friendly
Environment
35Simple Dynamic Network Model
- This model allows the experimenter to control
measurement frequency so that path of interest
can be monitored at higher frequency - This model uses information from the application
monitor - Experimenter can limit the model to certain pairs
- FlexLab A Realistic, Controlled , and Friendly
Environment
36Simple Dynamic Network Model
- Further work
- Using archived measurements in the Datapository
to replay the experimental
- FlexLab A Realistic, Controlled , and Friendly
Environment
37Application-Centric Internet Modeling
- It models the internet as perceived by the
application
- FlexLab A Realistic, Controlled , and Friendly
Environment
38Functional scenario
- The model receives characteristics of the
application's offered load from the application
monitor - Then it Replicates that load on Planet-Lab with
the measurement agent - the measurement agent determines path
characteristics through analysis of the TCP
stream - Then It sends the results back into the path
emulator as traffic shaping parameters.
- FlexLab A Realistic, Controlled , and Friendly
Environment
39Functional scenario
- FlexLab A Realistic, Controlled , and Friendly
Environment
40Design Advantages
- The design creates a feedback loop . Loads and
emulator are set in near real-time - The design automatically obtains accurate
information on how the network reacts to the
offered load. - The design allows high-frequently track of
network changes - It automatically and quickly detects the
end-to-end effects of rare events such as outages
and route flapping, which can be especially
difficult to model.
- FlexLab A Realistic, Controlled , and Friendly
Environment
41Path Emulation
- The emulation uses two queues
- Bandwidth queue (emulates queuing delay)
- Delay queue ( all other source of delay
propagation , processing, and transmission) - The most important three parameters
- The size of bandwidth queue
- The drains rate of bandwidth queue
- The time spent in the delay
- FlexLab A Realistic, Controlled , and Friendly
Environment
42Parameters Calculation
- Bandwidth size and packet loss
- The author assumes that most packet loss in the
wired internet caused by congestion - It is difficult to directly measure the capacity
of bottleneck router by packets - Bandwidth queue size is approximated by the
maximum one way delay - This solution has difficulty in planet-lab
because of clock synchronization
- FlexLab A Realistic, Controlled , and Friendly
Environment
43Parameters Calculation
- Available Bandwidth
- Some measurement techniques do not take into
account the reactivity of other flows in the
network. - FLexLab measures that flow out into the network
and measuring the resulting goodput, averaging it
over the last half second to smooth outliers
- FlexLab A Realistic, Controlled , and Friendly
Environment
44Parameters Calculation
- Other Delay
- It records the time each packet is sent, and when
it receives an ACK for that packet, calculates
the RTT seen by the most recently acknowledged
packet. - Base RTT is calculated as the minimum RTT seen
recently. - minimum delay accounts for the propagation,
processing, and transmission delays along the
path, with minimum influence from queuing delay. - The delay queue is set to the Base RTT
- FlexLab A Realistic, Controlled , and Friendly
Environment
45- FlexLab A Realistic, Controlled , and Friendly
Environment
46Reverse Engineering the Internet
- Reverse engineering is the process of learning
the design of an object by studying its
implementation. - In Internet, design means how its components
(links, routers, clients, and networks) are
assembled and configured
- Reverse Engineering the Internet
47Reverse Engineering the Internet
- There are many efficient network measurement
techniques that can be used in reverse-
engineering process like - tomography can be used to measure link loss.
- tailgating approaches measure link band width
using few packets
- Reverse Engineering the Internet
48Reverse Engineering the Internet
- The challenge is to use these techniques to
produce new measurement tools that are efficient
enough to run quickly at the scale of the Internet
- Reverse Engineering the Internet
49What can be measured and analyzed today
- Measured Node Properties
- IP aliases
- Geography
- Owner
- Router role
- Implementation feature
- Reverse Engineering the Internet
50What can be measured and analyzed today
- Measured Link Property
- Loss
- Reordering
- Delay
- Delay variation
- Capacity
- Reverse Engineering the Internet
51What can be measured and analyzed today
- Measured Topology Properties
- Topology
- Routing
- Workload
- Reverse Engineering the Internet
52New Properties
- Failure and Evolution
- Utilization and workload
- Below IP
- Link Pathologies
- Client Location
- Reverse Engineering the Internet
53Reverse Engineering Cost
54Reverse Engineering Cost
- Overall cost 5 billion packets , 803 GB
- Per source 25 million packets
- Per source 37 per month per source
- Assuming 200 source or vantage points
- 1 Mbs 100 per month
- Reverse Engineering the Internet
55Efficient Measurement
- The goal is to make reverse-engineering clearly
practical and acceptable by reducing this work
load - Existing techniques were typically not designed
to be efficient for internet mapping. We can
reduce the cost by eliminating the redundancy
- Reverse Engineering the Internet
56Efficient Measurement
- By eliminating redundancy author saves 5.8
million packets
- Reverse Engineering the Internet
57References
- PLANETLAB (Princeton University PlanetLab
Consortium) - http//coblitz.codeen.org/roads.cs.princeton.edu/w
arsaw07/future.ppt - EmuLab site
- http//www.emulab.net/
- FlexLab A Realistic, Controlled , and Friendly
Environment - A Blueprint for Introducing Disruptive Technology
into the Internet - PlanetLab An Overlay Testbed for Broad Coverage
Services - Challenges and Opportunities in Internet Data
Mining - Reverse Engineering the Internet
- An Integrated Experimental Environment for
Distributed Systems and Networks