[e2e] Why do we need TCP flow control (rwnd)?
David P. Reed
dpreed at reed.com
Mon Jun 30 12:11:26 PDT 2008
ECN marks share the fate of the packets carrying them. So what's your
Detlef Bosau wrote:
> Michael Scharf wrote:
>> Instead of dropping arriving packets or not sending acks, the receiver
>> could also send an ack with ECN marking (assuming ECN usage is
> ECN marks can get lost.
> In addition: How many data may follow the first dropped packet?
> When the receiver is fed up, why shouldn't he simply tell the sender
> instead of seeing it waste network capacity for useless retransmits?
> And rwnd is _not_ lost - because it is part of any acknowledgement.
> When rwnd is lost, the whole ACK is lost, this causing the sender to
>> This would also throttle the sender, but not require a
>> retransmission. To my understanding, ECN marking would not cause all
>> these problems.
> As I said: What makes "ICN" (implicit congestion notificatin, i.e. by
> missing ACK) preferable over "ECN" is: Loss cannot get lost.
>> Thus, a receiver running out of buffer space could just use ECN
>> instead of shrinking rwnd.
> And what is the propper reaction at the sender's side? rwnd my be
> shrunk only temporarily for some reason.
> So, this may perhaps not even throttle the sender.
> ECN causes at least one congestion recovery action per "round", IIRC.
More information about the end2end-interest