> Which release are you experimenting with ? There was a bug > in 5.3 that would cause SACK to burst multiple segments on > a dupack reception. But that was fixed both in -current > and in RELENG_5 (1.100.2.3 and 1.102). From what I see, > the fix was never MFC'ed to RELENG_5_3. > > Referencing the code in -current, > > dupack handling starts at line tcp_input.c:1797. When SACK > recovery is first set up, upon reception of 3 dupacks, we > set cwnd to 3 (line 1867) and call tcp_output(), which would > cause 3 segments from the scoreboard to be retransmitted.
I do not understand why receiving 3 dupacks would cause a retransmit of 3 segments. One retransmit I can understand. But, then we shouldn't be in packet conservation for a bit while some of the segments drain from the network to effectively halve the sending rate (because we noted congestion). allman -- Mark Allman -- ICIR -- http://www.icir.org/mallman/
pgpSfmfFWfAxJ.pgp
Description: PGP signature