View
213
Download
0
Tags:
Embed Size (px)
Citation preview
A Network Measurement Architecture for Adaptive Networked Applications
Mark Stemm*Randy H. Katz
Computer Science DivisionUniversity of California at Berkeley
*FastForward Networks, Inc.San Francisco, CA
Srinivasan Seshan
IBM T.J. Watson Research LabsHawthorne, NY
The Problem
• Predict in advance network performance (e.g., available bandwidth, latency, packet loss probability) to distant network sites
Internet???
Why Does It Matter?• Apps that could use this:
– Mirror site selection• (Harvest, Mirrored FTP/Web
sites)
– Fidelity adaptation• (CMU Odyssey, UCB TranSend,
Low graphics WWW sites)
– Network statefeedback
?
vs.
Click here or here to download
Internet
SPAND (Shared Passive Network Performance Discovery)
Client
Client
Performance Server
• Shared: clients use past knowledge of nearby clients
• Passive, App-Specific: app-to-app traffic used to measure performance
GatewayLocal AdminDomain
Data
Perf. Reports
Perf Query/Response
Advantages of SPAND
• Shared Measurements– Clients pool individual measurements to
obtain more up-to-date information
• Passive Measurements– No new measurement traffic introduced into
network
• Application-Specific Measurements– More likely to measure what the client really
cares about than network-level measurements
SPAND Architecture
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
SPAND Architecture• (Modified) Clients:
– Make Performance Reports to Performance Servers– Send Performance Requests to Performance Servers
• Performance Servers: – Receive reports from clients,– Aggregate/post-process reports – Respond to requests with Performance Responses
• Packet Capture Host: – Snoops on local traffic, – Makes Performance Reports on behalf of unmodified clients
SPAND Architecture
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
SPAND Architecture
SPAND Architecture
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
SPAND Architecture
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
SPAND Architecture
Client
PacketCapture Host
Client
Data
Perf. Reports
Perf Query/Response
Internet
PerformanceServer
LookingGlass: Web Mirror Selection
• 3 Sub-Problems:– Mechanisms for Mirror Advertisement
• How does client discover the mirrors?
– Metrics for Mirror Ranking• How does client determine “best” mirror?
– Algorithm for Mirror Selection• Given a ranking, how does client choose mirror?
?
• Problem:– Client choose among
mirror locations replicating same content
Current Solution and Its Problems
• Mechanisms for Mirror Advertisements:– Manually created list of sites on web page– Admin must update list every time mirror is
added/deleted
• Metrics for Mirror Ranking:– Usually none, perhaps hints such as geographic
location
• Algorithm for Mirror Selection:– Currently made by user (pick “best”)– Often leads to hotspots (pick first in list)
Our Solution: LookingGlass• Mechanisms for Mirror Advertisements:
– Transparent way to notify clients of mirrors– Distributed algorithm to disseminate mirror
information between mirror sites
• Metrics for Mirror Ranking:– SPAND’s Web Page download metric used to rank
mirrors
• Algorithm for Mirror Selection:– Randomly select with weights in proportion to
ranking
Experimental Methodology
• Trace analysis and implementation• CMU Trace consists of series of rounds
– In each, client downloads identical web object from Mars Rover mirror sites
M1
M2
Mn
3 sec
4 sec
5 sec
.
.
.
Experimental MethodologyRound M1 M2 …Mn Ratio
1 3 4 5 1
2 2 7 1 7
3 8 4 10 2.5
4 3 6 4 1.33
M1
M2
Mn
3 sec
4 sec
5 sec
.
.
.
Best Possible
LookingGlass
• For each round, compare (via ratio) min download time with download time for:– What LookingGlass would pick– Hop count “closest”-to-client mirror– Two hosts in same general geographic area as client– Randomly selected mirror– Primary mirror site (“select first in list”)
Results
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 2 4 6 8 10Ratio Actual/Minimum
Cu
mu
lati
ve
Pro
ba
bilit
y
LookingGlassRandomGeographic BestGeographic WorstClosest (# Hops)Primary Mirror
Conclusions
• SPAND: an architecture that facilitates adaptive networked applications
• Advantages/challenges of design choices in SPAND
• LookingGlass: Web Mirror Selection tool that uses SPAND
• SPAND source code available:– http://www.cs.berkeley.edu/~stemm/spand/