3

I am making a paper about the different congestion avoidance protocols of TCP and one of them is the TCP Vegas. I have searched a lot on internet about how it's work but I have some questions. If I am not wrong, the algorithm should be like follows:

Modified slow-start
When ???? change to congestion avoidance phase
if there are no duplicated ACKS
   if it is the first or second one after retransmission then check the timeout and retransmit
   if Diff < alpha then congestion window size++
   if Diff > beta then congestion window size--
if duplicated ACK is received
   if time-out for this segment
      retransmit
      // any reduction of the window???
if ACK time-out
   retransmit
   congestion window size = 2

I have 3 questions:

  • The change of the modified slow-start is that the window is increased every other RTT (like I found in a lot of papers), but what is the meaning of other RTT?
  • When the algorithm change to the lineal growth phase (or congestion avoidance phase)?
  • And, there is any reduction of the window when a duplicated ACK is received?
2
  • For reference: cseweb.ucsd.edu/classes/wi01/cse222/papers/… Jul 19, 2013 at 8:36
  • Hello @generalnetworkerror. Thanks first. From this paper I can't solve my questions. For the first one it says the same (other RTT). For the second one it says "When the actual rate falls below the expected rate by the equivalent of one router buffer", but I don't get it. :( And for the third one it says nothing. :( The only thing I realise is about the change I made in the algorithm above when no duplicate ACKs are received.
    – Stratford
    Jul 19, 2013 at 11:24

1 Answer 1

4

This is my interpretation of TCP Vegas for your questions. Other scholars here could correct this or augment it.

Q1. "The change of the modified slow-start is that the window is increased every other RTT..., but what is the meaning of other RTT?"

A1. During SlowStart, the cwin (congestion window) is increased every other RTT, meaning this is in comparison to TCP Reno which increases every RTT; the algorithm simply skips every other RTT that may be seen with ACKs, for example, in computing the RTT metrics and exponentially increasing the window.

Q2. "When the algorithm change to the lineal growth phase (or congestion avoidance phase)?"

TCP Vegas only allows exponential growth every other RTT. When the window is not increasing -- the other "every other" RTT -- Vegas compares the expected and actual rates and comes out of SlowStart when the actual rate falls below the expected rate by one MSS.

Q3. "And, there is any reduction of the window when a duplicated ACK is received?"

Vegas only decreases the cwin if the retransmitted segment was previously sent after the last decrease. Segment losses before the last window decrease do not imply the current cwin is congested, so the cwin is not decreased further.

2
  • 1
    Other than BSD4.4, I don't think anyone used Vegas in production. How did you find these answers?
    – user2096
    Jul 23, 2013 at 9:49
  • Research mostly from the paper linked in the comment under the OP. Jul 26, 2013 at 7:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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