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