Dear Eddie, Thanks for your reply :). Please see inline:
Hello; we may have finally got to the root of the confusion.
Yes :)
HOWEVER, the implementation MUST apply its choice consistently. For example, the application MUST NOT use average packet size to calculate X_calc, and simultaneously use 's=MSS' to calculate t_ipi. Does that help?
Yes, that's what I noted in point 1. The drafts should explicitly say this IMHO (and may be the RFCs should be updated to say this).
- X_inst is always calculated using MSS, as the spec says. - t_ipi is calculated using whatever the app is using for the packet size variable "s", as the spec says. This might be MSS.
Do you mean when X_Inst = W_init/R? If that is so, I don't think it is right (correct me if I am wrong). I use MSS to calculate W_init and use s=160 bytes to calculate t_ipi, that doesn't sound good to me (this will send a burst of size 16) :). Have I have missed the point?
> * As pointed out in the earlier mails by Eddie, using a large > "s" for X_calc and then using a small "s" for t_ipi. No valid implementation would use a large "s" for X_calc and a small "s" for t_ipi. They are the same variable and must take the same value in both calculations. (If the app changes "s" between feedback packets, then maybe the cached X_calc used a different value of "s" than t_ipi; is this what you're worried about? But that seems like such a corner case, I'd say the implementer can do whatever they want -- either recalculate X_calc or use the old one until the next feedback packet.)
Sorry. I meant the same things you mentioned here. The drafts should clearly state this. The RFC should be corrected to also say this (do we need an ERRATA?).
> 2)Make it clear on what "s" should be. We personally feel "s" can > just be the average packet size since if the packet size is > constant, then average of "s" is constant and if "s" is varying then > averaging seems to be fine. We are still not able to decipher why we > require MSS to be used as "s". Maybe we are mere mortals :) OK, one more time. - The implementation MAY calculate 's' using a moving average of actual packet sizes over the last four loss intervals, OR - The implementation MAY set 's=MSS'. Whichever choice is made must be applied consistently, i.e., wherever 's' appears. OK?
Yes, this looks fine to me. -Arjuna
Eddie
-- Dr.Arjuna Sathiaseelan Electronics Research Group University of Aberdeen Aberdeen AB24 3UE Web: www.erg.abdn.ac.uk/users/arjuna Phone : +44-1224-272780 Fax : +44-1224-272497