Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I've just some question regarding TCP congestion avoidance algorithm.

  1. First of all I'm looking for explanation of, why the part of congestion avoidance algorithm is called "fast recovery"? I mean I cannot find any good reason for it, seems like it doesn't really that fast recovery.
  2. I'm reading the book of Douglas E. Comer "Networking with TCP/IP" and there is statement where said that although TCP SACK and New Reno is about the same, still SACK is preferable, but there is no good reasonable explanation why, so I would be appreciated for helping me figuring it out.
share|improve this question

1 Answer 1

up vote 3 down vote accepted

Fast recovery allow the TCP window to be reduce by 2 instead of restarting to its initial value when you're experiencing loss. It's called fast recovery because it avoid to do a slow start. (so it's "faster").
SACK is better when you have lot of loss (many packet from a same TCP window) but New Reno is designed to be use on computer supporting, or not supporting SACK.

Wikipedia and RFC's are good reference regarding Congestion Avoidance and I don't want to copy/paste then or rephrase them less cleary.

You can read : Congestion Avoidance in TCP http://en.wikipedia.org/wiki/TCP_congestion_avoidance_algorithm About FastRecovery/NewReno : rfc3782 and http://en.wikipedia.org/wiki/Slow-start#fast-recovery About SACK : rfc2018 and http://en.wikipedia.org/wiki/Retransmission_(data_networks)#SACK

share|improve this answer
    
@radius good answer. –  Vivek Sharma Jul 16 '09 at 16:49

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.