2.1.97: Socket hangs in SYN_SENT

Thomas Quinot (thomas@Cuivre.FR.EU.ORG)
22 Apr 1998 09:52:32 GMT


When trying to fetch news from a particular remote host
(news.povray.org, if this matters), the NNTP sockets
often (but not always) get stuck in SYN_SENT state during
inet_stream_connect :

$ netstat -A inet
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 cuivre.rezel.enst.f:4711 203.103.185.50:nntp SYN_SENT

$ ps alxw
0 6 26280 26277 0 0 856 360 inet_stream S ? 0:00 testhost
news.povray.org -s

And it hangs silently for days until I kill it.

Fortunately, I was able to get a tcpdump of what happens in such situations :

$ tcpdump
11:45:02.113833 cuivre.rezel.enst.fr.4711 > 203.103.185.50.119: S 1082471357:1082471357(0) win 31856 <mss 1460,sackOK,timestamp 22412283[|tcp]> (DF)
11:45:05.110265 cuivre.rezel.enst.fr.4711 > 203.103.185.50.119: S 1082471357:1082471357(0) win 31856 <mss 1460,sackOK,timestamp 22412583[|tcp]> (DF)
11:45:05.695342 203.103.185.50.119 > cuivre.rezel.enst.fr.4711: . ack 1082471358 win 17376 <nop,nop,timestamp 1165486 22412583> (DF)
11:45:05.695484 cuivre.rezel.enst.fr.4711 > 203.103.185.50.119: R 1082471358:1082471358(0) win 0

(and then nothing)

I think the third packet (from the remote host) is incorrect : it
should be a SYN, ACK and not just an ACK. But I'm afraid the current
behaviour is not the intended one.

No such problem in 2.0.33.

-- 
    Thomas.Quinot@Cuivre.FR.EU.ORG     <URL:http://Web.FdN.FR/~tquinot/>

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu