Re: revision of draft-ietf-dccp-rfc3448bis

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

 



|  > 2. One minor thing where a clarification would be very helpful:
|  >    -> In section 4.6 "Preventing Oscillations"
| > -> Here it says "The sender obtains the base allowed transmit rate,
|  >                     X, from the throughput function."
|  >    -> But this is confusing, since the result of the throughput
|  > function
| > is X_calc. Since the sender only gets a new R_sample when it gets | > feedback, is it meant that the sender obtains the allowed sending
|  >       rate X as described in step (4) of section 4.3?

|  I clarified that.

Could you please say what has been clarified? I found this section very hard to understand when starting to implement oscillation prevention. I only really
understood its purpose after reading the corresponding section 3.6.4 of
Widmer's Diploma thesis (where he calls it `Inter-packet Space Modulation', ISM).

I had revised the section somewhat, including a clarification that the sender obtains the allowed sending rate X as described in step (4) of section 4.3.
I just put the revised draft on my web site, and it is available from
"http://www.icir.org/floyd/papers/draft-ietf-dccp-rfc3448bis-02b.txt";.

There it became evident that oscillation prevention occurs as last step before
computing t_nom: in the RFC this is not really clear.

The information I found was lacking in RFC 3448 is:
(1) Oscillation prevention is a step which follows immediately after step (4) of section 4.3, i.e. the reception of feedback packets. This is the only
    (sensible) place to perform oscillation prevention.

I have added that to the revised version.

(2) One needs to ensure that the TFRC minimum rates are not under-run by doing oscillation prevention (which is possible with integer arithmetic when
    sqrt(R_sample) > R_sqmean): something like

         X_inst = X * R_sqmean / sqrt(R_sample)		

	 /* where X is obtained as in step (4) of section 4.3 */

         If (p > 0)
             X_inst = max(X_inst, s/t_mbi)
Else if (not first feedback packet, or the first feedback packet
                  after a nofeedback timer) {
             X_inst = max(X_inst, s/R)
         }

I added a slightly revised version of this.  You can look at the revised
version, along with the revised version of Section 4.3, and see what you
think.

Many thanks,
- Sally
http://www.icir.org/floyd/



[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux