Skip to contentSkip to conversation

the congestion window rfc2001

DISCUSSION Dong Fang 2 participants 3 messages Aug 13, 2013

Subsystems (2)
lore
Share & tools
lore

Dong Fang

author
#0 lore raw

hi, all

http://tools.ietf.org/html/rfc2001

1. When the third duplicate ACK in a row is received, set ssthresh to one-half the current congestion window, cwnd, but no less than two segments. Retransmit the missing segment. Set cwnd = ssthresh + 3 times the segment size. This inflates the
-- what is the meaning of '3'

congestion window by the number of segments that have left the network and which the other end has cached (3).

2. Each time another duplicate ACK arrives, increment cwnd by the segment size. This inflates the congestion window for the additional segment that has left the network.
-- why do this

Transmit a packet, if allowed by the new value of cwnd.

3. When the next ACK arrives that acknowledges new data, set cwnd to ssthresh (the value set in step 1). This ACK should be the acknowledgment of the retransmission from step 1, one round-trip time after the retransmission. Additionally, this ACK should acknowledge all the intermediate segments sent between the lost packet and the receipt of the first duplicate ACK. This step is congestion avoidance, since TCP is down to one-half the rate it was at when the packet was lost.

author
#1 lore raw

-------- Original Message --------
Subject: the congestion window rfc2001
Date: Tue, 13 Aug 2013 19:35:09 -0400
From: Dong Fang <[email protected]>
To: [email protected]

hi, all

http://tools.ietf.org/html/rfc2001

1. When the third duplicate ACK in a row is received, set ssthresh to one-half the current congestion window, cwnd, but no less than two segments. Retransmit the missing segment. Set cwnd = ssthresh + 3 times the segment size. This inflates the
-- what is the meaning of '3'

congestion window by the number of segments that have left the network and which the other end has cached (3).

2. Each time another duplicate ACK arrives, increment cwnd by the segment size. This inflates the congestion window for the additional segment that has left the network.
-- why do this

Transmit a packet, if allowed by the new value of cwnd.

3. When the next ACK arrives that acknowledges new data, set cwnd to ssthresh (the value set in step 1). This ACK should be the acknowledgment of the retransmission from step 1, one round-trip time after the retransmission. Additionally, this ACK should acknowledge all the intermediate segments sent between the lost packet and the receipt of the first duplicate ACK. This step is congestion avoidance, since TCP is down to one-half the rate it was at when the packet was lost.

#2 lore raw
In reply to Dong Fang

Please ask those questions on more relevant list such as [email protected]. This list is for discussing Linux kernel networking development, not generic TCP protocol.

Quoted 34 lines · Dong Fang

hi, all

http://tools.ietf.org/html/rfc2001

1. When the third duplicate ACK in a row is received, set ssthresh to one-half the current congestion window, cwnd, but no less than two segments. Retransmit the missing segment. Set cwnd = ssthresh + 3 times the segment size. This inflates the
-- what is the meaning of '3'

congestion window by the number of segments that have left the network and which the other end has cached (3).

2. Each time another duplicate ACK arrives, increment cwnd by the segment size. This inflates the congestion window for the additional segment that has left the network.
-- why do this

Transmit a packet, if allowed by the new value of cwnd.

3. When the next ACK arrives that acknowledges new data, set cwnd to ssthresh (the value set in step 1). This ACK should be the acknowledgment of the retransmission from step 1, one round-trip time after the retransmission. Additionally, this ACK should acknowledge all the intermediate segments sent between the lost packet and the receipt of the first duplicate ACK. This step is congestion avoidance, since TCP is down to one-half the rate it was at when the packet was lost.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html