Scalable Modeling & Simulations of Networks - ssfnet.org · Scalable Modeling & Simulations of...
Transcript of Scalable Modeling & Simulations of Networks - ssfnet.org · Scalable Modeling & Simulations of...
Andy T. Ogielski Dec 16 1999
ssfnetScalable Modeling & Simulations of Networks
DIMACSCenter for Discrete Mathematics & Computer Science
.
.
ssf and ssfnet
ssf: a modern simulation platform
- scalable, parallel kernel, open API
- model configuration database framework
- random stream management & statistics
- pure Java (C++ version available)
design & performance demonstrated at earlier PI meetings
network modeling layers: ssfnet
---- core ssf & ssfnet completed
ssfnet - overview 1
modeling aids:
- network configuration verification and management
- total reproducibility: management of random number streams
- strongest random number generators, statistics package
- automated IP address generation (VLSM/CIDR)
- traffic pattern configuration
practical good news:
- parallel performance from a desktop PC to a supercomputer
- fast topology construction and protocol configuration
- no programming style restrictions
ssfnet - overview 2
walk-through example of multi-scale modeling:
- USA-scale multi-AS network
- full Internet protocol suite
- empirical model of the Web traffic
current research:
- networkers' IDE (integrated development environment)
- multiresolution analysis of spatio-temporal network dynamics
- wireless Internet problems
Java SSF performance 1
14 CPU SUN Enterprise, 200MHz
0 2 4 6 8 10 12 14
100,000
200,000
300,000
400,000
500,000
600,000
700,000
800,000
number of processors N
events/second
outChannel inChannelEntity
process
Basic event spin-loop experiment
Event
JDK1.2 Solaris2.7
Java gets pretty fast by now!
Java ssfnet - parallel performance
OSPF in each AS (24 clients, 4 servers, 18 routers)
BGP between ASs
client-server TCP - large file transfer
server farmclient nets
each clnt to random AS server
each clnt to neighbor AS server
each clnt to local AS server
one AS per processor exec time
all AS on one processor exec time
parallel speedup
N networks (AS) connected as a ring
0 2 4 6 8 10 120
1
2
3
4
5
6
7
# processors = # AS
JDK 1.2 SUN Enterprise 200MHz
Java ssfnet on a Windows PC
OSPF in each AS (24 clients, 4 servers, 18 routers)
BGP between ASs
each client-server TCP - 3MB file transfer
server farmclient nets
each client connects to a random AS server
typical dual-processor PC
6 networks (AS) connected as a ring
3,000 TCP packets
1.7 times faster for parallel simulation
Windows NT4.0 JDK1.2 PentiumPro 250 MHz
440 seconds
260 seconds
1 CPU 2 CPU
network modeling packages
SSF.Net
- host, router, queues, network interfaces
- links & LANs
- nested Net import, hierarchical component addressing
- IP address generation
SSF.OS
- ProtocolGraph - ProtocolSession - ProtocolMessage
x-kernel-like protocol design framework
- protocol and application models
ssfnet protocol validation
ssfnet distribution includes validation tests
- test network configurations, HTML docs, traces
- TCP, UDP, BGP4, OSPF in distribution
- validation against RFCs and other test suites
Example: ssfnet TCP validation
generic Tahoe, Reno, delayed ACK option
- BSD socket-like interface to app protocols
- validation against RFCs and ns-2 test suite (thanks!)
- full documentation and plots:
www.winlab.rutgers.edu/~ato/ssf/tcp/
TCP validation 2
binary tcpdump (standard)
fully instrumented
TCP implementation
(DML selectable)
matlab plotting
in ssfnet distribution
2.19 3.19 4.19 5.19 0
10000
20000
30000
40000
50000
60000
70000
Time (seconds)
cwnd
, rw
nd &
sst
hres
h (b
ytes
)
0.5
1
1.5
2
2.5
3
RT
T,S
RT
T/R
TO
(se
cond
s)
1
2
3
4
5
RT
O c
ount
er (
1 tic
k =
500
ms)
1
2
3
4
5
6x 104
sequ
ence
# (
byte
s m
od 6
0000
) f11serv2.tcpdump
RTO smoothed RTTRTT
SEQnoACKno
RTO counter
cwnd ssthreshrwnd
Modeling aids: SSF.DML
Network configuration design/management database
- hierarchical object-oriented schemas: simple & powerful
- strong configuration reuse: substitution & multiple inheritance
- automatic verification of configuration correctness
- target for CAD and analysis tools
- separation of config database and executable code
reduces modeling errors
examples follow...
Modeling aids: SSF.Util.Random
Total reproducibility of parallel simulations
- control of seed distribution via cryptographic techniques (MD)
on random stream pathnames
- creation of random stream instances at multiple levels
(per distribution, protocol, host, timeline)
examples follow...
Strongest, fast random number generators & statistics
- Mersenne Twister, Ranlux, Ranmar, Ranecu, RandomShuffle,...
- 24 common prob. distributions...statistics (CERN packages)
walk-through a large model
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
4:0 0:0
2:0 3:0
01
23
5:01
router + 4 LANs,LAN = 25 hosts, = 100 hosts add a router
and connect together
walk through a large model 2
networks [ network100 [ Net [ router [ id 0 interface [ id 0 _extends .dictionary.100Mb ] # LAN interface [ id 1 _extends .dictionary.100Mb ] # LAN ...... interface [ id 5 _extends .dictionary.1Gb ] # to be attached interface [ id 6 _extends .dictionary.1Gb ] # to be attached _find .dictionary.routerGraph.graph ]
# all hosts are identical. 4 lans @ 25 hosts per lan = 100 hosts host [ idrange [from 1 to 25] _find .dictionary.client100Mb.interface _find .dictionary.client100Mb.graph nhi_route [dest default interface 0 next_hop 0(0 )] ] # LAN 0 link [ delay 0.001 attach 0(0) attach 1(0) attach 2(0) attach 3(0) attach 4(0) attach 5(0) ...... attach 21(0) attach 22(0) attach 23(0) attach 24 (0) attach 25(0) ]
DML database entry
4 5 6
from database of network cards....... inheritance
from database of protocol graphs...... substitution
1:0
1:1
1:2
1:3
1:4
1:5
0:0 0:1
0:2
5
6
0 1 2 3
01
0 1 2 3
01
0 1 2 3
3:13:0
3:5
3:7:0
3:4:0
3:2:0 3:3:0
3:6:0
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
2:4:0 2:0:0
2:2:0 2:3:0
2:1
27
01
23
01
23
01
23
01
23
4:4:0 4:0:0
4:2:04:3:0
4:1
0 1 2 3
4:5:0
BGP4
combine submodels together
... make a small Autonomous System:
1,300 client hosts, 4 big servers,
26 internal routers (OSPF),
1 AS boundary router (OSPF + BGP)
as2 [ Net [ AS_status boundary ospf_area 0
Net [id 0 _extends .networks.network1.Net] # backbone Net [id 1 _extends .networks.network4.Net] # server farm Net [id 2 _extends .networks.network33.Net] Net [id 3 _extends .networks.network21.Net] Net [id 4 _extends .networks.network34.Net]
walk through a large model 3
DML database entry:
......Net import from a database - a powerful concept
2133
34
1
walk-through a large model 4
1
3
4 5
6
7
2
8
9
10
11
12
13
15
16
17
18
19
20
2122
23
24
0
14
now connect 25 copies of an as2 network ...and we have 33,325 hosts & routers ... do you recognize the ISP ?
walk through a large model 5
client100Mb [ graph [ ProtocolSession [ name client use SSF.OS.WWW.httpClient # HTTP session empirical model. inter_session_time [ distribution [ name "Exponential" lambda 0.01 ] ] inter_page_time [ distribution [ name "Pareto" k 25.0 alpha 2.0 ] ] ........ more
Traffic pattern databases
randomstream [ generator "MersenneTwister" stream "seedstarter4" reproducibility_level "host" ]
traffic [ pattern [ client 10 servers [ port 80 nhi_range [ from 10:1:2(0) to 10:1:5(0) ] ] ] .......... more
local global
Current research: net dynamics
AT&T Research - DIMACS - Princeton
- collaboration on multiresolution analysis of spatio-temporal
behavior of large networks (Willinger, Feldmann, Daubechies,
Ogielski and others)
- towards "new theory of networks"
- very challenging - drives ideas for new methodologies & tools
- simulated & real traffic studies
examples follow...
Scalable Simulation Framework
Hongbo Liu
R 2R 0S R 1
C
C
C
C
Challenge:
manipulate & visualize
1000s of flows
Current research: wireless Internet
WINLAB & affiliated corporations
(Motorola, Lucent, Cisco,...)
- SSF is the platform for various wireless Internet and 3G projects
- TCP over adaptive radio link protocols (like cdma2000)
- ad-hoc Bluetooth-based IP networks
- signal level multicell 3G systems: waveform to IP
examples follow...
Scale and Details matter!
ssfnet2 - integration of Internet & Wireless models
wireless access + wired global net
scalable design & analysis tools
Internet software radios,
inter-protocol interactions,
traffic, service design,...
1
3
4 5
6
7
2
8
9
10
11
12
13
15
16
17
18
19
20
2122
23
24
0
14
1:0
1:1
1:2
1:3
1:4
1:5
0:0 0:1
0:2
5
6
0 1 2 3
01
0 1 2 3
01
0 1 2 3
3:13:0
3:5
3:7:0
3:4:0
3:2:0 3:3:0
3:6:0
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
2/3/1
2:4:0 2:0:0
2:2:0 2:3:0
2:1
27
01
23
01
23
01
23
01
23
4/3/1
4:4:0 4:0:0
4:2:04:3:0
4:1
0 1 2 3
4:5:0
1:0
1:1
1:2
1:3
1:4
1:5
0:0
0:1
0:2
5
6
01
23
01
01
23
01
01
23
3:1
3:0
3:5
3:7:
0
3:4:
0
3:2:
0
3:3:
0
3:6:
0
01
23
01
23
01
23
01
23
2/3/1
2:4:
0
2:0:
0
2:2:
0
2:3:
0 2:
1
27
01
23
01
23
01
23
01
23
4/3/1
4:4:0
4:0:0
4:2:0
4:3:0 4:1
01
23
4:5:
0
1:0
1:1
1:2
1:3
1:4
1:5
0:0
0:1
0:2
5
6
01
23
01
01
23
01
01
23
3:1
3:0
3:5
3:7:
0
3:4:
0
3:2:
03:
3:0
3:6:
0
01
23
01
23
01
23
01
23
2/3/
1
2:4:
0
2:0:
0
2:2:
0
2:3:
0
2:1
27
0 1 2 3
0 1 2 3
0 1 2 3
0 1 2 3
4/3/1
4:4:0
4:0:0
4:2:0
4:3:0
4:1
01
23
4:5:
0
0:0
0:1
5
6
0 1 2 3
01
0 1 2 3
01
0 1 2 3
3:1
3:0
3:5
3:7:03:4:0
3:2:0
3:3:0
3:6:0
0 1 2 3
0 1 2 3
0 1 2 3
2/3/1
2:0:0
2:2:0
2:3:0
2:1
27
01
23
01
23
01
23
01
23
4/3/1
4:4:0
4:0:0
4:2:0
4:3:0
4:1
0 1 2 3
4:5:0
0:0 0:1
0:2
5
6
0 1 2 3
01
0 1 2 3
01
0 1 2 3
3:13:0
3:5
3:7:0
3:4:0
3:2:0 3:3:0
3:6:0
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
2/3/1
2:4:0 2:0:0
2:2:0 2:3:0
2:1
27
01
23
01
23
01
23
01
23
4/3/1
4:4:0 4:0:0
4:2:04:3:0
4:1
0 1 2 3
4:5:0
1:0
1:1
1:2
1:3
1:4
1:5
1/0
1/1/0
1/1/1
1/2/0
1/2/1
0:0 0:1
0:2
0/0
0/10/2
5
6
0/30/4
0/5
2/5 2/6
5
3/3 3/4
0 1 2 3
01
0 1 2 3
01
0 1 2 3
3:13:0
3:5
3:7:0
3:4:0
3:2:0 3:3:0
3:6:0
3/1/1
3/1/3
3/2/13/1/2
3/1/4 3/2/3
3/2/4/1
3/2/4/0
2/0
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
2/1
2/3/1
2:4:0 2:0:0
2:2:0 2:3:0
2:1
27
0/7
0/6
01
23
01
23
01
23
01
23
4/3/2
4/1
4/3/1
4/24:4:0
4:0:0
4:2:04:3:0
4:1
0 1 2 3
4:5:0
4/64/5
100
200
300
400
500
0 100 200 300 400 500
Research on TCP - RLP interactions:towards better protocols for wireless Internet
phase 1: correlated fading losses
1 wireless host, 1 TCP connection,
RLP, fading, simplified IP cloud
phase 2: add multiaccess
N wireless hosts, many connections,
MAC + RLP, fading, interference,
simplified IP cloud
phase 3: add wired congestion
phase 2 plus realistic IP cloud:
correlated wireline delays/losses
R
R
globalInternet R
R
R
R
globalInternet
1:0
1:1
1:2
1:3
1:4
1:5
1/0
1/1/
0
1/1/
1
1/2/
0
1/2/
1
0:0
0:1
0:2
0/0
0/1
0/2
5
6
0/3
0/4
0/5
2/5
2/6
5
3/3
3/4
01
23
01
01
23
01 01
23
3:1
3:0
3:5
3:7:
0
3:4:
0
3:2:
03:
3:0
3:6:
0
3/1/
1
3/1/
3
3/2/
13/
1/2
3/1/
43/
2/3
3/2/
4/1
3/2/
4/0
2/0
01
23
01
23
01
23
01
23
2/1
2/3/
1
2:4:
0 2:
0:0
2:2:
02:
3:0
2:1
2 7
0/7
0/6
0 1 2 3
0 1 2 3
0 1 2 30 1 2 3
4/3/2
4/1
4/3/1
4/2 4:4:0 4:0:0
4:2:0 4:3:0
4:1
01
23
4:5:
0
4/64/5
Current research: network IDE
Integrated Design Environment for networking research
- graphical DML-based network editor
topology generation, protocol configuration, database generation,
validation (prototype exists, needs some more work)
- High-volume stream data collection (~ 1000s of tcpdumps)
and multiscale analysis package
(challenging...)
dual-use for model & real networks
ssfnet '99 development team
DARPA ITO project administered by DIMACS, Rutgers U.
Andy Ogielski DIMACS & WINLABJames Cowie Cooperating SystemDavid Nicol Dartmouth College
Students (wired Internet)
Myongsu ChoePhilip KwokHongbo LiuBrian Premore
Students (wireless Internet)
Yong BaiVikram KaulWenfeng Zhang