Re: revision of draft-ietf-dccp-rfc3448bis

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

 



Thank you for the note, only had time for a quick read through,
three small issues.

1. Related open issue: To deal with idle periods and the like,
   in Section 4.7 say that t_i := max(t_i, t_now - RTT/2), to
   limit bursts to RTT/2 packets?  Has anyone implemented this?
   Email from Eddie Kohler and Ian McDonald.

   I have implemented this and have come up with an upper bound
   of using less than one t_ipi as a threshold. I can provide
   a detailed derivation for this but I don't want to post my
   patches here - this is from an yet unsubmitted patch set (to be 
   submitted soon). The experience of using this for over one month
   affirms that using (less than) t_ipi as uppper bound cures the
   problem of disproportionally large bursts after longer idle times
   or when application is sending at a low (constant) bit rate.

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?

3. Minor Nit in section 8 (formatting)
   T_loss = T_before + (T_after - T_before) 
          * Dist(S_loss,S_before)/Dist(S_after, S_before)


Many thanks,
Gerrit      

Quoting Sally Floyd:
|  I have submitted the revised version of draft-ietf-dccp-rfc3448bis-01,
|  available from
|  "http://www.icir.org/floyd/papers/draft-ietf-dccp-rfc3448bis-01.txt";,
|  and the list of changes and some known open issues is appended
|  below.
|  
|  If people could look at the changes and check them, that would be
|  great.
|  
|  It would also be good to have feedback on the open issues:
|  limitations by X_recv after a loss event; using DCCP's
|  Receive Rate Length instead of ignoring one feedback packet?;
|  mechanism for limiting the burst size?  Is there consensus
|  on any of these, that I have missed?  Or other issues
|  that I have missed?
|  
|  Many thanks,
|  
|  - Sally
|  http://www.icir.org/floyd/
|  
|  
|        Changes from draft-ietf-dccp-rfc3448bis-00.txt:
|  
|        * When initializing the loss history after the first
|          data packet sent is lost or ECN-marked, TFRC uses
|          a minimum receive rate of 0.5 packets per second.
|  
|        * For initializing the estimated packet drop rate
|          for the first loss interval when coming out of slow-start,
|          it is ok to use the maximum receive rate so far, not just
|          the receive rate in the last round-trip time.
|          Feedback from Ladan Gharai.
|  
|        * General feedback from Gorry Fairhurst:
|          - Added a reference for TFRC-SP.
|          - Clarified that R_m is sender's estimate of RTT, as reported
|            in Section 3.2.1.
|          - Added a definition of terms.
|          - Added a discussion of why the initial value of the nofeedback
|            timer is two seconds, instead of three seconds for the
|            recommended initial value for TCP's retransmit timer.
|  
|        * General feedback from Arjuna Sathiaseelan:
|          - Added more details about sending multiple feedback
|             packets per RTT.
|          - Added change to Section 4.3 to use the first feedback
|             packet, or the first feedback packet after a
|             nofeedback timer during slow-start, *if min_rate > X*.
|  
|        * General feedback from Gerrit Renker:
|          - Changed "delta" to "t_delta".
|          - Changed X_calc to X_Bps, clarified X.
|          - Clarified send times in Section 4.7.
|          - Changed so that tld can be initialized to either 0 or -1.
|          - Fixed Section 5.5 to say that the most recent lost
|            interval has weight 1/(0.75*n) *when there have been
|            at least eight loss intervals*.
|          - Clarified introduction about fixed-size and variable-size
|            packets.
|  
|        * Added more about sender-based variants.
|          Feedback from Guillaume Jourjon.
|  
|        * Corrected that the loss interval I_0 includes all transmitted
|          packets, including lost and marked packets (as defined in Section
|          5.3 in the general definition.)  Email from Eddie Kohler and
|          Gerrit Renker.
|  
|        * Open issue:  Feedback from Ian about problems being limited by
|          X_recv after a loss event.  There might not be an easy answer.
|  
|        * Related open issue:  Add Faster Restart to RFC3448bis?  Or not?
|          From Ian McDonald.
|  
|        * Open issue: Adopt something like DCCP's Receive Rate Length,
|          instead of ignoring one feedback packet?  From Eddie Kohler.
|  
|        * Open issue: Add possible mechanisms for limited the maximum
|          burst size?  Using a token bucket size based on the
|          current rate?  Or not?  Email from Eddie Kohler and Gerrit
|          Renker.
|  
|        * Related open issue: To deal with idle periods and the like,
|          in Section 4.7 say that t_i := max(t_i, t_now - RTT/2), to
|          limit bursts to RTT/2 packets?  Has anyone implemented this?
|          Email from Eddie Kohler and Ian McDonald.
|  
|        * Not done:  I didn't add a minimum value for the nofeedback
|          timer.  (Why would a nofeedback timer need to be bigger
|          than max(4*R, 2*s/X)?  Email discussing pros and cons from
|          Arjuna.
|  
|        * Not addressed yet: Email thread on "RFC 3448, 4.4:  Modifying
|          X_recv if p = 0 at the time of last feedback".
|  
|        * Todo: Update Section 9 on "Changes from RFC 3448" with
|          changes since draft-floyd-rfc3448bis-00.txt.
|  
|  
|  


[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