nanog mailing list archives

Re: packet reordering at exchange points


From: Craig Partridge <craig () aland bbn com>
Date: Thu, 11 Apr 2002 06:19:51 -0400



In message <00ae01c1e125$ba6b5380$dc9247ab () amer cisco com>, "Jim Forster" write
s:

Sure, see the original Van Jacobson-Mike Karels paper "Congestion Avoidance
and Control", at http://www-nrg.ee.lbl.gov/papers/congavoid.pdf.  Briefly,
TCP end systems start pumping packets into the path until they've gotten
about RTT*BW worth of packets "in the pipe".  Ideally these packets are
somewhat evenly spaced out, but in practice in various circumtances they can
get clumped together at a bottleneck link.  If the bottleneck link router
can't handle the burst then some get dumped.

Actually, it is even stronger than that -- in a perfect world (without
jitter, etc), the packets *will* get clumped together at the bottleneck
link.  The reason is that for every ack, TCP's pumping out two back to back
packets -- but the acks are coming back at approximately the spacing
at which full-sized data packets get the bottleneck link... So you're
sending two segments (or 1.5 if you ack every other segment) in the time
the bottleneck can only handle one.

[Side note, this works because during slow start, you're not sending during
the entire RTT -- you're sending bursts at the start of the RTT, and each
slow start you fill more of the RTT]

Craig


Current thread: