A request object also computes the elapsed time between when the loss is detected to when it receives the first request. The agent computes a moving average of this elapsed time. The object computes the elapsed time (or delay) when it cancels../ns-2/srm.tclSRM/request::cancel its scheduled event for the first round. The object invokes Agent/SRM::update-ave../ns-2/srm.tclAgent/SRM::update-ave to compute the moving average of the delay.
The agent keeps similar statistics of the duplicate repairs, and the repair delay.
The agent stores the number of rounds taken for one loss recovery, to ensure that subsequent loss recovery phases for that packet that are not definitely not due to data loss do not account for these statistics. The agent stores the number of routes taken for a phase in the array old_. When a new loss recovery object is instantiated, the object will use the agent's instance procedure []round?../ns-2/srm.tclAgent/SRM::round? to determine the number of rounds in a previous loss recovery phase for that packet.
Tom Henderson 2014-12-17