1. 05 11月, 2013 1 次提交
    • Y
      tcp: properly handle stretch acks in slow start · 9f9843a7
      Yuchung Cheng 提交于
      Slow start now increases cwnd by 1 if an ACK acknowledges some packets,
      regardless the number of packets. Consequently slow start performance
      is highly dependent on the degree of the stretch ACKs caused by
      receiver or network ACK compression mechanisms (e.g., delayed-ACK,
      GRO, etc).  But slow start algorithm is to send twice the amount of
      packets of packets left so it should process a stretch ACK of degree
      N as if N ACKs of degree 1, then exits when cwnd exceeds ssthresh. A
      follow up patch will use the remainder of the N (if greater than 1)
      to adjust cwnd in the congestion avoidance phase.
      
      In addition this patch retires the experimental limited slow start
      (LSS) feature. LSS has multiple drawbacks but questionable benefit. The
      fractional cwnd increase in LSS requires a loop in slow start even
      though it's rarely used. Configuring such an increase step via a global
      sysctl on different BDPS seems hard. Finally and most importantly the
      slow start overshoot concern is now better covered by the Hybrid slow
      start (hystart) enabled by default.
      Signed-off-by: NYuchung Cheng <ycheng@google.com>
      Signed-off-by: NNeal Cardwell <ncardwell@google.com>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9f9843a7
  2. 31 3月, 2011 1 次提交
  3. 10 3月, 2011 1 次提交
  4. 24 11月, 2009 1 次提交
  5. 29 1月, 2008 1 次提交
  6. 31 7月, 2007 1 次提交
  7. 18 7月, 2007 1 次提交
  8. 16 6月, 2007 1 次提交
  9. 26 4月, 2007 2 次提交
  10. 29 9月, 2006 1 次提交
  11. 23 9月, 2006 2 次提交
  12. 18 9月, 2006 1 次提交
  13. 18 6月, 2006 1 次提交
    • W
      [TCP]: TCP Low Priority congestion control · 7c106d7e
      Wong Hoi Sing Edison 提交于
       TCP Low Priority is a distributed algorithm whose goal is to utilize only
       the excess network bandwidth as compared to the ``fair share`` of
       bandwidth as targeted by TCP. Available from:
         http://www.ece.rice.edu/~akuzma/Doc/akuzma/TCP-LP.pdf
      
      Original Author:
       Aleksandar Kuzmanovic <akuzma@northwestern.edu>
      
      See http://www-ece.rice.edu/networks/TCP-LP/ for their implementation.
      As of 2.6.13, Linux supports pluggable congestion control algorithms.
      Due to the limitation of the API, we take the following changes from
      the original TCP-LP implementation:
       o We use newReno in most core CA handling. Only add some checking
         within cong_avoid.
       o Error correcting in remote HZ, therefore remote HZ will be keeped
         on checking and updating.
       o Handling calculation of One-Way-Delay (OWD) within rtt_sample, sicne
         OWD have a similar meaning as RTT. Also correct the buggy formular.
       o Handle reaction for Early Congestion Indication (ECI) within
         pkts_acked, as mentioned within pseudo code.
       o OWD is handled in relative format, where local time stamp will in
         tcp_time_stamp format.
      
      Port from 2.4.19 to 2.6.16 as module by:
       Wong Hoi Sing Edison <hswong3i@gmail.com>
       Hung Hing Lun <hlhung3i@gmail.com>
      Signed-off-by: NWong Hoi Sing Edison <hswong3i@gmail.com>
      Signed-off-by: NStephen Hemminger <shemminger@osdl.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7c106d7e