Dear Sally (CCing to the DCCP mailing list too),
Further to our offline conversations regarding calculating the receiver rate
after long idle periods, where the 3448bis clearly states that the receiver
rate is calculated only for R_m seconds where R_m is the receiver's estimate
of the RTT, I noticed that this is not the case in the ns-2 tfrc-sink.cc
code (ns-2.29).
In the est_thput () function:
if ((rtt_ > 0) && ((now - last_report_sent) >= rtt_)) {
// more than an RTT since the last report
time_for_rcv_rate = (now - last_report_sent);
if (rcvd_since_last_report > 0) {
thput = rcvd_since_last_report/time_for_rcv_rate;
cout << time_for_rcv_rate<<endl;
}
}
Here the time_for_rcv_rate considers the entire idle period rather than 1
RTT.
This concurs with why the inflation factor in the receive rate length came
into enforce for FR for TFRC. The DCCP CCID 3 code in ns-2 is also based on
this, hence the receiver is reporting a receive rate calculated over the
entire duration of the idle period.
This has to be corrected?
Regards
Arjuna
-------------------------------
Dr.Arjuna Sathiaseelan
Electronics Research Group
University of Aberdeen
Aberdeen AB24 3UE
Email: <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]
Web: <http://www.erg.abdn.ac.uk/users/arjuna>
www.erg.abdn.ac.uk/users/arjuna
Phone : +44-1224-272780
Fax : +44-1224-272497