routesim man page
NAME
routesim - Dynamic routing simulator
SYNOPSIS
routesim [options]
routesim -conf configuration file
AVAILABILITY
Compiled for Solaris (sparc), IRIX64, and Linux (x86) plat-
forms.
DESCRIPTION
routesim is an event-driven simulator that facilitates the
study of source-directed link-state dynamic and QoS routing
in large networks. To reduce simulation overhead, routesim
operates at the flow (or connection) level, rather than sim-
ulating individual data packets.
The simulator takes as input a variety of parameters that
allow precise control over network traffic characteristics,
network topology, routing algorithm and policies, and link-
state update policy. Though all parameters can be specified
on the command line, it is more convenient to place them in
a configuration file. Parameters specified on the command
line override any specification in the configuration file.
OPTIONS
Each option is shown with both its short and long forms.
The short form is used on the command line and the long
form, shown in parentheses, is used in the configuration
file. Most options have arguments that are either values
(i.e., numbers) or strings. When the argument is listed as
value it should be a number. Arguments shown as [<opt1> |
<opt2> ...] require one of the given <opt> values.
-accuracy [CURRENT | STALE]
(link-state-accuracy)
CURRENT causes link-state to be perfectly
accurate, while STALE makes link-state sub-
ject to updates.
-alpha value
(link-cost-alpha)
Link cost function exponent (steepness)
-altrouting [ROUND_ROBIN | STICKY | NO_ALT]
(alternate-routing)
Alternate routing policy when using precom-
puted routing and depth-first route extrac-
tion. No effect with on-demand routing.
-arrdist [WEIBULL | POISSON]
(arrival-dist)
Flow interarrival distribution to use.
-arrscale value
(arrival-scale)
Scale parameter for interarrival distribu-
tion. In the case of POISSON, scale is the
mean.
-arrshape value
(arrival-shape)
Shape parameter for WEIBULL flow interarrival
distribution.
-arrspec [ARR_UNIFORM | ARR_FILE]
(arrival-spec)
Traffic matrix specification. ARR_UNIFORM
gives a uniform traffic pattern, while
ARR_FILE reads the src-dest arrival rates
from a file called rstraffic.dat
-bandwidth value
(mean-bandwidth)
Mean requested flow bandwidth.
-blocking [NON_BLOCKING | BLOCKING]
(blocking-policy)
Blocking model to use in the case of SINGLE
network-model option. See the netmodel
option.
-bwclass value
(bw-class-size)
Base bandwidth class size, B (for equal class
based updates). Avail bw will be advertised
as ..., (-B,0), (0,B), (B,2B), (2B,3B), ...
-costconst value
(link-cost-constant)
Additive bias for link costs when using SPT
routing-algorithm option.
-costlevels value
(link-cost-levels)
Number of discrete cost levels when using SPT
routing-algorithm option.
-dist [EXP_SINGLE_COST | EXP_MINHOP_BIAS | HOPCOUNT
| WIDEST]
(distance-function)
Cost function for SPT routing-algorithm.
HOPCOUNT produces shortest-path routes.
EXP_MINHOP_BIAS uses the exponential cost
function but always biases toward shorter
routes. EXP_SINGLE_COST uses the exponential
cost function but adds a constant defined by
the link-cost-constant option. WIDEST pro-
duces a shortest-widest algorithm with ties
between multiple min-hop paths broken by
choosing the one with most available link
bandwidth.
-dualalg [SPT | WIDE_SHORT]
(dual-dyn-algorithm)
Dynamic routing algorithm to use in DUAL net-
work model for hybrid routing. SPT uses the
Dijkstra-based algorithms with policies spec-
ified by the normal SPT options (e.g., dis-
tance-function, alternate-routing, multi-
route-policy, prune-policy). WIDE_SHORT uses
the Bellman-Ford-based widest-shortest path
algorithm.
-dumptop
(dump-topology)
Dump the topology to a file rstopol-
ogy.dat.out
-failrecomp
(recompute-after-fail)
In precomputed routing, recompute routes
after final set-up failure
-feascheck
(feasibility-check)
In precomputed routing, perform feasibility
check on extraction.
-flowtrigger value
(flow-trigger)
In DUAL nework-model, this is the long-lived
flow detection threshold (time)
-holdspec [EXP | PARETO | USERDEF]
(holding-time-spec)
Flow duration distribution, exponential,
Pareto, or user defined from a file hold-
cdf.dat
-hopthresh value
(hopcount-threshold)
Number of hops allowed beyond min-hop route.
Only applies in WIDE_SHORT routing-algorithm
option.
-hscale value
(holding-time-scale)
Scale parameter for Pareto duration distribu-
tion or mean for exponential distribution.
-hshape value
(holding-time-shape)
Shape parameter for Pareto duration distribu-
tion.
-kndim value
(kn-dimen)
Dimensions in k-ary n-cube. Only applies in
kncube topology-type option.
-knedge value
(kn-edge)
Edges in k-ary n-cube. Only applies in
kncube topology-type option.
-level value
(confidence-level)
Confidence level on blocking rate or overuti-
liziation, depending on blocking model.
-mail address
(mail-recipient)
Recipient for simulation notifications.
-maxdiam value
(max-rand-diameter)
Maximum diameter for random topology gener-
ated at simulation time.
-maxhops value
(max-hopcount)
Maximum hopcount allowed. Checked during
route extraction phase.
-maxsigs value
(max-sig-attempts)
Maximum number of signaling attempts per flow
request -- applicable for precomputed rout-
ing.
-mincost value
(link-cost-minval)
Available bandwdith corresponding to minimum
link cost value, when using SPT routing-algo-
rithm.
-minint value
(min-update-interval)
Minimum interval between link updates, i.e.
hold-down timer.
-mintime value
(min-sim-time)
Minimum simulation time.
-monlink
(monitor-link)
Monitor and log link state over time. List
of links to monitor is specified in rsmoni-
tor.dat
-multipolicy [MULTI | FIRST | UNIQ]
(multi-route-policy)
Multi-path routing policy when using SPT
routing-algorithm option. MULTI extracts a
path with the option of checking link-feasi-
bility and backtracking. UNIQ extracts a
path according to the uniq-route-policy
option. FIRST does no multi-path route
extraction.
-netmodel [DUAL | SINGLE]
(network-model)
DUAL is the hybrid routing scheme which
applies dynamic routing to a subset of flows
using the WIDE_SHORT routing algorithm and
shortest-path to the remainder using SPT.
SINGLE applies the algorithm specified by the
routing-algorithm option to all flows.
-netsplit value
(network-split) .br Network capacity split
for short/long traffic. The value sets the
proportion of capacity placed on the short
partition.
-pdrecomp (periodic-recomputations)
Use periodic route recomputation (in precom-
puted routing)
-printtop
(print-topology-stats)
Print topology stats and exit
-prune [DEFAULT_PRUNE | NO_PRUNE]
(prune-policy)
Prune policy when using SPT routing-algorithm
option. Pruning removes seemingly infeasible
links from the route computation.
-prunerecomp
(prune-on-recomputation)
Prune links that failed in signaling when
recomputing routes (in precomputed routing)
-ralg [SPT | WIDE_SHORT]
(routing-algorithm)
Sets the routing algorithm for the SINGLE
network-model. SPT is a Dijkstra-based algo-
rithm and WIDE_SHORT is the Bellman-Ford
algorithm by Guerin.
-rcskew value
(recomputation-skew)
Route recomputation period skew (in precom-
puted routing).
-recomp value
(recomputation-interval)
Route recomputation period (in precomputed
routing).
-reextsig
(reextract-sig-failure)
Reextract a new route and try again on set-up
failure.
-refresh value
(refresh-interval)
Link-state update refresh period.
-requests value
(min-requests)
Minimum number of flow requests in simula-
tion.
-rgalpha value
(rand-graph-alpha)
Random graph model parameter in Waxman's RG2
model. Controls the number of edges.
-rgasym (rand-graph-asymmetric)
Use asymmetric random graphs (usually not
used).
-rgbeta value
(rand-graph-beta)
Random graph model parameter in Waxman's RG2
model. Controls the ratio of long to short
edges.
-rgmethod [RG2 | PURE]
(rand-graph-method)
Random graph generation method: RG2 is Wax-
man's model. PURE is a simple coin flip to
decide an edge using rand-graph-alpha value
as the probability of having an edge.
-rgplane value
(rand-graph-planesize)
Random graph parameter for Euclidean plane
dimension -- used in Waxman's RG2 model.
-route [ON_DEMAND | PRECOMP]
(routing-policy)
Routing policy: on-demand (ON_DEMAND) or pre-
computed (PRECOMP)
-rskew value
(refresh-skew)
Link update refresh period skew.
-seedval value
(random-seed)
Random number generator seed (should be a
long int).
-simtol value
(sim-tolerance)
Simulation confidence tolerance.
-spread (bandwidth-spread) value
Width of bandwidth distribution (proportional
to the mean value).
-timeofday [MORNING | AFTERNOON | EVENING]
(time-of-day)
Time of day: MORNING, AFTERNOON, EVENING.
Used with the ARR_FILE option.
-tmultiplier value
(traffic-multiplier)
Scaling factor for traffic matrix arrival
distribution scale parameters.
-topology [kncube | file | full
| rand]
(topology-type)
Type of topology to use: k-ary n-cube
(kncube), user file specified (file), fully-
connected (full), or random graph (rand).
Note lowercase.
-topsize value
(topology-size)
Number of nodes in fully-connected topology.
-trigger value
(update-trigger)
Link-state update trigger threshhold.
-trigroute
(trigger-recomp-routefail)
Trigger recomputation on routing failure.
-trigsig
(trigger-recomp-sigfail)
Trigger recomputation on set-up failure.
-uniqpolicy [SRCHASH | RANDOM]
(uniq-route-policy)
Policy to use with UNIQ multi-route-policy
option. SRCHASH picks a route based on source
node id. RANDOM picks randomly among multi-
ple routes.
-version
(print-version)
Print the routesim version and exit
-warmup value
(min-warmup)
Minimum warmup-phase flow requests
-warmupprop value
(warmup-proportion)
Minimum proportion of total requests that
must be warmup-phase.
-warmuptol value
(warmup-tolerance)
Confidence interval tolerance for ending
warmup phase.
-wsmaxhops value
(wide-short-maxhops)
Maximum allowed hopcount (for WIDE_SHORT alg)
EXIT STATUS
routesim returns 0 upon successful completion, and 1 other-
wise.
FILES
rstopology.dat
rstopology.dat.out
rstraffic.dat
holdcdf.dat
rsmonitor.dat
rslinkmonitor.log
routesim.log
configuration file
SEE ALSO
rsfiles(l)
DIAGNOSTICS
routesim has extensive support for tracing, with different
trace levels that offer progressively more debugging and
monitoring information. Changing the trace level, however,
requires recompilation of the simulator. The default trace
level, RS_TRACE_ERRORS, prints information on standard error
only for error conditions.
BUGS
routesim has a ridiculous number of parameters.
routesim does not do enough sanity checking of options at
startup.
There are probably some other bugs.
AUTHOR
Anees Shaikh (University of Michigan, AT&T Labs--Research,
1997-99)
Man(1) output converted with
man2html