[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Oddities with ErrorModel



Can anyone tell me why the C++ portion of my simulation stops running at
a pseudorandom time, although the Tcl portion and simulation clock seem
to continue, if I use ErrorModels with non-zero packet drop rates? 

Details:

I'm running ns-allinone-2.1b5 and having some odd behavior with
ErrorModels (I'm using the "pkt" unit for these). I have not declared
any drop targets for the ErrorModels. 

The packet drop rate I'm using is about 38% (and I'll have to take it
even higher).

So here are details of the odd behavior:

1) I find that my all my C++ agent code, including timers started within
these agents, and packet transport initiated by these agents, is halted
after a pseudorandom simulation time if I set the error model rates (for
packet dropping) to nonzero.  From my Tcl script, I schedule a periodic
interrogation of some agents for statistics collection--this
continues to run, and indicates the agents are indeed not receiving
any packets (yet they should be).

2) This pseudorandom time differs depending on which procedure I use to
install the error models into the links (the procedures are described on
pp.79-80 of the March 3, 1999 edition of 'ns Notes and Documenation': 
errormodule, insert-linkloss, and install-error).

3) In one case, I used insert-linkloss to insert the error module.  The
pseudorandom time that "things stopped" (as described above) differs
depending on whether I set the model's rate to zero before or after I
attach it to the link.

4) I have noticed identical behavior with the List, Heap, and Calendar
schedulers.

Many thanks for any ideas,

--dan

---------------------------------------------------------------------------
 Daniel Friedman    [email protected]    http://www.isr.umd.edu/~danielf