2001-03-15 17:32:27

by Zack Weinberg

[permalink] [raw]
Subject: 2.2.19 pre13 doesn't like retransmitted SYN ACK packets

2.2.19 pre13 sends an RST in response to a retransmitted SYN ACK which
arrives after we've sent out the final ACK of the handshake. For
example:

tcpdump: listening on eth0
15:15:15.075670 wolery.Stanford.EDU.1341 > plan9.bell-labs.com.www:
S 1057306555:1057306555(0) win 32120
<mss 1460,sackOK,timestamp 49252305 0,nop,wscale 0> (DF) [tos 0x10]
15:15:15.156320 plan9.bell-labs.com.www > wolery.Stanford.EDU.1341:
S 1042976132:1042976132(0) ack 1057306556 win 1460 <mss 1460>
15:15:15.156364 wolery.Stanford.EDU.1341 > plan9.bell-labs.com.www:
. ack 1 win 32120 (DF) [tos 0x10]
15:15:15.204186 plan9.bell-labs.com.www > wolery.Stanford.EDU.1341:
S 1042976132:1042976132(0) ack 1057306556 win 1460 <mss 1460>
15:15:15.204232 wolery.Stanford.EDU.1341 > plan9.bell-labs.com.www:
R 1057306556:1057306556(0) win 0

I do not know if this behavior is correct or not from the TCP spec.
It seems unlikely to me, given that duplicate packets are expected
and ignored just about everywhere else. As a practical matter, this
behavior makes it close to impossible to communicate with a host that
commonly sends duplicate SYN ACKs. plan9.bell-labs.com is just such;
I estimate I get past the initial handshake one connection in twenty.

This kernel does not have SYN cookies compiled in. rp_filter is 1,
all other TCP and IP tunables are at their defaults.

zw


Subject: Re: 2.2.19 pre13 doesn't like retransmitted SYN ACK packets

On Thu, 15 Mar 2001, Zack Weinberg wrote:
> 2.2.19 pre13 sends an RST in response to a retransmitted SYN ACK which
> arrives after we've sent out the final ACK of the handshake. For
> example:

Ah, that would explain the extremely crappy network conectivity I observed
with 2.2.19preX, X < 17 (15 and 16 were better, but not as good as 17 or
2.2.18). Please try 2.2.19pre17, it is handling itself just as well as
2.2.18 here.

--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh

2001-03-15 23:42:46

by Zack Weinberg

[permalink] [raw]
Subject: Re: 2.2.19 pre13 doesn't like retransmitted SYN ACK packets

On Thu, Mar 15, 2001 at 05:09:47PM -0300, Henrique de Moraes Holschuh wrote:
> On Thu, 15 Mar 2001, Zack Weinberg wrote:
> > 2.2.19 pre13 sends an RST in response to a retransmitted SYN ACK which
> > arrives after we've sent out the final ACK of the handshake. For
> > example:
>
> Ah, that would explain the extremely crappy network conectivity I observed
> with 2.2.19preX, X < 17 (15 and 16 were better, but not as good as 17 or
> 2.2.18). Please try 2.2.19pre17, it is handling itself just as well as
> 2.2.18 here.

2.2.19pre17 works. Thank you.

zw