Scalability and Accuracy in a Large-Scale Network Emulator
description
Transcript of Scalability and Accuracy in a Large-Scale Network Emulator
![Page 1: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/1.jpg)
Scalability and Accuracy in a Large-Scale Network Emulator
Amin Vahdat, Ken Yocum, Kevin Walsh, Priya Mahadevan, Dejan Kostic, Jeff Chase, and David
Becker
Presented by Stacy Patterson
![Page 2: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/2.jpg)
Outline Motivation ModelNet Design Evaluation Conclusion
![Page 3: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/3.jpg)
Motivation Need a way to test large-scale Internet services
Peer-to-peer, overlay networks, wide area replication Testing in the real world
Results not reproducible or predictable Difficult to deploy and administer research software
Simulation tools Allows control over test environment May miss important system interactions
Emulation Network emulators can subject application traffic to end-to-end
bandwidth constraints, latency, and loss rate of user specified topology
Previous implementations not scalable
![Page 4: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/4.jpg)
ModelNet A scalable, cluster-based, comprehensive network
emulation environment
![Page 5: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/5.jpg)
Design User run configurable number of instances of application
on Edge Nodes within dedicated server cluster Each instance is a Virtual Edge Node (VN)
Each VN has a unique IP address Edge nodes route traffic through cluster of Core Routers
Equipped with large memories and modified FreeBSD kernels Can emulate configured target network traffic
Core routers route traffic through emulated links or “pipes” each with its own packet queue and queuing discipline
![Page 6: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/6.jpg)
ModelNet Phases (1) Create
Generates a network topology in GML - Graph with vertices: clients, stubs, transits and edges: network links
Can be generated from Internet traces, BGP dumps, synthetic topology generators, etc.
Users can annotate graph with packet loss rates, failure distributions, etc
(2) Distillation Transforms GMLgraph into pipe topology
![Page 7: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/7.jpg)
ModelNet Phases (3) Assignment
Maps pipe topology to core nodes, distributing emulation load across core nodes
Finding ideal mapping is NP-complete problem. Depends on routing, link properties and traffic load.
ModelNet uses greedy k-clusters assignment For k core nodes, randomly select k nodes in distilled
topology. Greedily select links from connected component in round robin.
![Page 8: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/8.jpg)
ModelNet Phases (4) Binding
Multiplex multiple VNs to each physical edge nodes
Bind each physical edge node to a core router Generate shortest path routes between all VNs
and install in core routing tables (5) Run
Executes target application code on edge nodes
![Page 9: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/9.jpg)
Inside the Core Route traffic through emulated “pipes”
Each route is an ordered list of pipes Packets move through pipes by reference Routing table requires O(n2) space
Packet Scheduling When packet arrives, put at tail of first pipe in its route. Scheduler stores heap of pipes sorted by earliest deadline - exit time for
first packet in its queue Once every clock tick
Traverse pipes in heap for packets that are ready to exit Move packets to tail of next pipe or schedule for delivery Calculate new deadlines
Multi-core Configuration Next pipe in route may be on different machine If so, core node tunnels packet descriptor to next node
![Page 10: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/10.jpg)
Scalability Issues Traffic traversing core is limited by cluster’s
physical internal bandwidth ModelNet must buffer up to full bandwidth-
delay product of target network. 250 MB of packet buffer space to carry flows at
aggregate bandwidth of 10 GB/s with 200 ms roundtrip latency.
Assumes perfect routing protocol
![Page 11: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/11.jpg)
Evaluation Core routers - 1.4 Ghz Pentium III, 1 GB
memory Connected using 1 GB switch
Edge nodes - 1 Ghz Pentium III 256 MB memory Connected using 100 MB/s
![Page 12: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/12.jpg)
Baseline Accuracy Want to insure that under load, packets are
subject to correct end-to-end delays Used kernel logging to track ModelNet
performance and accuracy Results show that by running ModelNet
scheduler at highest kernel priority Packets are delivered within 1ms of target end-to-
end value Accuracy is maintained up to 100% CPU usage
![Page 13: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/13.jpg)
Capacity Quantify capacity of ModelNet as function of
load and number of emulated hops Tested 1-5 edge nodes Each edge node hosts up to 24 netperf
senders and 24 netperf receivers Topology connects each sender to a receiver
![Page 14: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/14.jpg)
Capacity
![Page 15: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/15.jpg)
Scalability Additional Cores
Adding core routers allows ModelNet to deliver higher throughput
Communication between core routers introduces overhead. Higher cross-core communication results in less throughput benefit
VN Multiplexing Higher degrees of multiplexing enable larger network
emulation Inaccuracies introduced due to context switching,
scheduling, resource contention, etc
![Page 16: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/16.jpg)
Accuracy vs. Scalability Reduce overhead by deviating from target
network requirements Changes should minimally impact application
behavior Ideally, system reports degree and nature of
emulation inaccuracy
![Page 17: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/17.jpg)
Distillation Pure hop-by-hop emulation
Distilled topology is isomorphic to target network High per packet overhead
End-to-end distillation Remove all interior nodes in network Collapse each path into single pipe Latency = sum of latencies along path Reliability = product of link reliabilities along path Low per packet overhead Does not emulate link contention along path
![Page 18: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/18.jpg)
Distillation - continued Walk-In
Preserve the first walk-in links from edges Interior links replaced with full mesh Does not model contention in interior
Walk-out Extension to walk-in to support interior link
contention Preserves set of links in interior Collapses paths between walk-out and walk-in
sets
![Page 19: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/19.jpg)
Evaluating Distillation Ring topology with 20 routers interconnected
at 20 MB/s each Each router as 20 VNs Routers partitioned into generator and
reciever sets 419 pipes shared between 400 VNs End-to-end distallation contains 79,800 pipes Last mile distillation preserves 400 edge links Test distribution of bandwidth between nodes
![Page 20: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/20.jpg)
Evaluating Distillation
![Page 21: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/21.jpg)
Changing Network Statistics ModelNet allows users to modify pipe
parameters while emulation is in progress User can change bandwidth, delay and loss
rate of set of links Also support for modeling node and link
failures
![Page 22: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/22.jpg)
Case Studies Able to evaluate a 10,000 node network of
unmodified Gnutella clients 100 edge nodes with 100 VNs each
Extensions support emulation of ad hoc wireless networks
Broadcast communication and node mobility CFS
Able to reproduce CFS implementation running on RON testbed
ModelNet results closely match CFS/RON in all cases
![Page 23: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/23.jpg)
Case Studies Replicated Web Services
Need to investigate replica placement and routing policies under realistic wide-area conditions
Study effects of replication on client latencies using 2.5 minute trace of requests to www.ibm.com
Adaptive Overlays ACDC, an adaptive overlay system that tries to build routes
that deliver better cost, delay or both. 600 nodes in topology, 120 of them in overlay network Test the behavior of the system to increasing delays
between links Results very similar to experiment performed under ns2
![Page 24: Scalability and Accuracy in a Large-Scale Network Emulator](https://reader034.fdocuments.net/reader034/viewer/2022050910/56815fa3550346895dcea059/html5/thumbnails/24.jpg)
Conclusion ModelNet provides an emulation environment
that allows Testing of unmodified applications Reproducible results Experimentation using broad range of network
topologies and characteristics Large scale experiments (thousands of nodes and
gigabits of cross traffic)