Modelnet Emulation environment for wide-area systems - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Modelnet Emulation environment for wide-area systems

Description:

... lists the machines that can be emulators or host virtual nodes. model - matches nodes and links to host machines and emulator machines. 10. 10. Modelnet 10 ... – PowerPoint PPT presentation

Number of Views:16
Avg rating:3.0/5.0
Slides: 18
Provided by: csee8
Category:

less

Transcript and Presenter's Notes

Title: Modelnet Emulation environment for wide-area systems


1
Modelnet Emulation environment for wide-area
systems
  • http//issg.cs.duke.edu/modelnet.html

2
OVERVIEW
  • Modelnet is designed to evaluate wide area
    distributed systems.
  • Using the source and destination IP addresses,
    the emulators determine a path through the
    virtual topology and handle the packets according
    to that path.
  • Each hop on this path has certain bandwidth,
    queuing, propagation delay, and drop
    characteristics.

3
ARCHITECTURE
Edge node
Emulator node
4
ARCHITECTURE
Edge node (mickey.csee.usf.edu)
eth02
eth03
eth00
eth0
eth01
eth03999
eth04000
Emulator node(accura.csee.usf.edu)
eth0
5
ARCHITECTURE
Edge node (mickey.csee.usf.edu)
10.0.0.4
10.0.0.1
eth0
10.0.0.1 ? 10.0.0.4
Emulator node(accura.csee.usf.edu)
eth0
6
ARCHITECTURE
Edge node (mickey.csee.usf.edu)
Routing table on mickey
Network Interface
10.0.0.0/8 eth0 accura.csee.usf.edu
10.0.0.4
10.0.0.1
eth0
10.0.0.1 ? 10.0.0.4
Emulator node(accura.csee.usf.edu)
eth0
7
ARCHITECTURE
10.0.0.4
10.0.0.1
Emulator node(accura.csee.usf.edu)
eth0
8
USING MODELNET
  • 1. Generate the model network
  • Create the graph
  • Create the route file
  • Create the machines
  • Generate the model
  • 2. Deploy the model network
  • 3. Run experiments on the model network

9
1. Generating a model network
  • To run a modelnet network, four XML files are
    needed
  • graph - lists the nodes and links of the virtual
    network
  • route - contains route data for paths through the
    virtual network
  • machines - lists the machines that can be
    emulators or host virtual nodes.
  • model - matches nodes and links to host machines
    and emulator machines

10
Generating a model network graph
lt?xml version"1.0" encoding"ISO-8859-1"?gt lttopol
ogygt ltverticesgt ltvertex int_idx"0"
role"gateway" /gt ltvertex int_idx"1"
role"gateway" /gt ltvertex int_idx"2"
role"virtnode" int_vn"0" /gt ltvertex
int_idx"3" role"virtnode" int_vn"1"
/gt ltvertex int_idx"4" role"virtnode"
int_vn"2" /gt lt/verticesgt ltedgesgt ltedge
int_dst"1" int_src"2" int_idx"0"
specs"client-stub" int_delayms1 /gt ltedge
int_dst"2" int_src"1" int_idx"1"
specs"client-stub" dbl_kbps"768 /gt ltedge
int_dst"1" int_src"3" int_idx"2"
specs"client-stub" /gt ltedge int_dst"3"
int_src"1" int_idx"3" specs"client-stub"
/gt ltedge int_dst"0" int_src"4" int_idx"4"
specs"client-stub" /gt ltedge int_dst"4"
int_src"0" int_idx"5" specs"client-stub"
/gt ltedge int_dst"1" dbl_len"1" int_src"0"
int_idx"0" specs"stub-stub" /gt ltedge
int_dst"0" dbl_len"1" int_src"1" int_idx"1"
specs"stub-stub" /gt lt/edgesgt ltspecs
gt ltclient-stub dbl_plr"0" dbl_kbps"64"
int_delayms"100" int_qlen"10" /gt ltstub-stub
dbl_plr"0" dbl_kbps"1000" int_delayms"20"
int_qlen"10" /gt lt/specsgt lt/topologygt
11
Generating a model network graph
Example create a network of 4000 nodes plus 100
clients (virtual nodes) attached among 25 stubs
spread throughout the topology inet -n 4000
inet2xml -p 100 among 25 stubs gt
example.graph This creates a graph of 4100
vertices and 13488 edges spread among 25
stubs inet2xml converts the inet graph to
modelnet XML format. It also allows to specify
all the link parameters (bandwidth, latency, drop
rate) for all the links types.
12
Generating a model network route
The route file store the shortest paths across
the virtual network for all pairs of virtual
nodes allpairs example.graph gt example.route
lt?xml version"1.0" encoding"ISO-8859-1"?gt ltallpa
irsgt ltpath int_vndst"1" int_vnsrc"0" hops"0
3 " /gt ltpath int_vndst"2" int_vnsrc"0"
hops"0 5 " /gt ltpath int_vndst"3"
int_vnsrc"0" hops"0 7 " /gt ltpath
int_vndst"4" int_vnsrc"0" hops"0 9789 9784
5637 5538 9 " /gt ltpath int_vndst"5"
int_vnsrc"0" hops"0 9789 9784 5637 5538 11 "
/gt ltpath int_vndst"6" int_vnsrc"0" hops"0
9789 9784 5637 5538 13 " /gt ltpath
int_vndst"86" int_vnsrc"99" hops"198 13279
2167 201 1670 6266 173 " /gt ltpath
int_vndst"87" int_vnsrc"99" hops"198 13279
2167 201 1670 6266 175 " /gt ltpath
int_vndst"88" int_vnsrc"99" hops"198 13279
2167 2818 12737 177 " /gt ltpath int_vndst"96"
int_vnsrc"99" hops"198 193 " /gt ltpath
int_vndst"97" int_vnsrc"99" hops"198 195 " /gt
ltpath int_vndst"98" int_vnsrc"99" hops"198
197 " /gt lt/allpairsgt
13
Generating a model network machines
lt?xml version"1.0" encoding"ISO-8859-1"?gt lthardw
aregt ltemul hostname"accura"/gt
lthost hostname"mickey"/gt lt/hardwaregt
14
Generating a model network model
mkmodel example.graph example.machines gt
example.model Reading example.graph . . . Reading
example.machines . . . Read 4100 vertices and
13487 edges. Mapping graph to 1 emulators and 1
hosts Printing model
mkmodel assigns the virtual nodes to hosts, and
assigns links to emulators
15
Generating a model network model
lt?xml version"1.0" encoding"ISO-8859-1"?gt ltmodel
gt ltemulatorsgt ltemul hostname"accura"
int_idx"0"gt lthost hostname"mickey"gt
ltsubnet int_emul"0" int_nodes"100"
vbcst"10.0.0.127" vmask"255.255.255.128"
vnet"10.0.0.0/25"gt ltvirtnode
int_idx"4000" int_vn"0" role"virtnode"
vip"10.0.0.1" /gt ltvirtnode
int_idx"4097" int_vn"97" role"virtnode"
vip"10.0.0.98" /gt ..
ltvirtnode int_idx"4096" int_vn"96"
role"virtnode" vip"10.0.0.97" /gt
lt/subnetgt lt/hostgt lt/emulgt
ltspecs xmloutbug"workaround"gt ltclient-stub
dbl_kbps"1000" dbl_plr"0" int_delayms"0"
int_qlen"10" /gt ltstub-stub dbl_kbps"1000"
dbl_plr"0" int_delayms"0" int_qlen"10" /gt
ltstub-transit dbl_kbps"1000" dbl_plr"0"
int_delayms"0" int_qlen"10" /gt
lttransit-transit dbl_kbps"1000" dbl_plr"0"
int_delayms"0" int_qlen"10" /gt
lt/specsgt lt/modelgt
16
Deploy the model network
  • Modelnet can be deployed by logging in to each
    host
  • deployhost example.model example.route
  • For large emulations, deployment can be automated
    for all hosts deploy example.model
    example.route
  • This command configures all the virtual IP
    addresses, routes, and loads the topology into
    the emulator.

17
Running programs on virtual nodes
This is done with the vnrun command. To run the
program Gnutella on every virtual node vnrun
all example.model gnutella
Write a Comment
User Comments (0)
About PowerShow.com