Subject: [tcpm] Example of 1323 window retraction problemPer my comments at the microphone at TCPM...

From: Matt Mathis <[email-masked]>
Date: Tue, 11 Mar 2008 14:11:06 -0400 (EDT)

Consider a established TCP connection with WSCALE=7 (128 byte receiver window 
quantization), that is running with a very small windows because the receiver 
is bottlenecked and both ends are doing small reads and writes.

Consider the ACKs coming back:

seg.ack  seg.win computed snd.win   reviver's actual window
1000	 2	 1256			1300
sender writes 40 bytes and receiver ACKs:
1040	2	 1296			1300

sender writes 5 more bytes and the receiver has a problem.  Two choices:
1045     2       1301      1300   - BEYOND BUFFER
1045     1       1173	   1300   - RETRACTED WINDOW

This problems is completely general and can in principle happen any time the 
sender does a write which is smaller than the window scale quanta.

In most stacks it is at least partially obscured when the window size is 
larger than some small number of segments because the stacks prefer to 
announce windows that are integral numbers of segments (rounded up to the next 
window quanta).  This plus silly window suppression tends to cause less 
frequent, larger window updates.  If the window was rounded down to a segment 
size there is more opportunity to advance it ("beyond buffer" case above) 
rather than retracting it.

Thanks,
--MM--
-------------------------------------------
Matt Mathis     http://staff.psc.edu/mathis
Work:412.268.3319    Home/Cell:412.654.7529
-------------------------------------------
Evil is defined by mortals who think they know
"The Truth" and use force to apply it to others.
_______________________________________________
tcpm mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/tcpm