Messages in this thread | | | Date | Mon, 22 Feb 1999 00:10:53 +0100 (CET) | From | Matthias Moeller <> | Subject | local tcp stalls |
| |
After upgrading to kernel 2.2.x I get tcp stalls from time to time. The applications are Xemacs/Gnus<->INN and IPop3d<->Pop3client. All this stuff is running on the same machine.
Even with a self written server and client I could reproduce the problem. The simple server is spawned by inetd and puts 1Mb of data to stdout. The client reads the data in a select() read() loop. Sometimes (not always) the select() call never returns and the write() operation of the server blocks as well. This only happens when the client reads small amounts of data (5-20 bytes) at the same time.
I checked 2.2.0, 2.2.1 and 2.2.2pre5, all the same. Using kernel 2.0.34 I never had this problem.
The machine is a single PII-350 on a GA686BXD dual board.
(BTW I think somebody reported the same problem some weeks ago but got no answer.)
Here are the last lines of a tcpdump of a stalled connection:
[...] 23:50:07.634627 localhost.1319 > localhost.pop-2: . ack 59105 win 0 <nop,nop,timestamp 692966 692966> (DF) 23:50:07.705625 localhost.pop-2 > localhost.1319: P 62977:63489(512) ack 1 win 31072 <nop,nop,timestamp 692973 692968> (DF) 23:50:07.705625 localhost.pop-2 > localhost.1319: P 62977:63489(512) ack 1 win 31072 <nop,nop,timestamp 692973 692968> (DF) 23:50:07.705648 localhost.1319 > localhost.pop-2: . ack 63489 win 27104 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.705648 localhost.1319 > localhost.pop-2: . ack 63489 win 27104 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.705825 localhost.pop-2 > localhost.1319: P 63489:64513(1024) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.705825 localhost.pop-2 > localhost.1319: P 63489:64513(1024) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706134 localhost.pop-2 > localhost.1319: P 64513:66561(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706134 localhost.pop-2 > localhost.1319: P 64513:66561(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706440 localhost.pop-2 > localhost.1319: P 66561:68609(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706440 localhost.pop-2 > localhost.1319: P 66561:68609(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706452 localhost.1319 > localhost.pop-2: . ack 68609 win 23232 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706452 localhost.1319 > localhost.pop-2: . ack 68609 win 23232 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706617 localhost.pop-2 > localhost.1319: P 68609:69633(1024) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706617 localhost.pop-2 > localhost.1319: P 68609:69633(1024) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706924 localhost.pop-2 > localhost.1319: P 69633:71681(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.706924 localhost.pop-2 > localhost.1319: P 69633:71681(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707229 localhost.pop-2 > localhost.1319: P 71681:73729(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707229 localhost.pop-2 > localhost.1319: P 71681:73729(2048) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707241 localhost.1319 > localhost.pop-2: . ack 73729 win 18112 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707241 localhost.1319 > localhost.pop-2: . ack 73729 win 18112 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707406 localhost.pop-2 > localhost.1319: P 73729:74753(1024) ack 1 win 31072 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707418 localhost.1319 > localhost.pop-2: . ack 74753 win 17088 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707418 localhost.1319 > localhost.pop-2: . ack 74753 win 17088 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707593 localhost.1319 > localhost.pop-2: . ack 75777 win 16064 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707593 localhost.1319 > localhost.pop-2: . ack 75777 win 16064 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707768 localhost.1319 > localhost.pop-2: . ack 76801 win 15040 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707768 localhost.1319 > localhost.pop-2: . ack 76801 win 15040 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707943 localhost.1319 > localhost.pop-2: . ack 77825 win 14016 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.707943 localhost.1319 > localhost.pop-2: . ack 77825 win 14016 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708118 localhost.1319 > localhost.pop-2: . ack 78849 win 12992 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708118 localhost.1319 > localhost.pop-2: . ack 78849 win 12992 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708293 localhost.1319 > localhost.pop-2: . ack 79873 win 11968 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708293 localhost.1319 > localhost.pop-2: . ack 79873 win 11968 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708469 localhost.1319 > localhost.pop-2: . ack 80897 win 10944 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708469 localhost.1319 > localhost.pop-2: . ack 80897 win 10944 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708643 localhost.1319 > localhost.pop-2: . ack 81921 win 9920 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708643 localhost.1319 > localhost.pop-2: . ack 81921 win 9920 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708818 localhost.1319 > localhost.pop-2: . ack 82945 win 8896 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708818 localhost.1319 > localhost.pop-2: . ack 82945 win 8896 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708998 localhost.1319 > localhost.pop-2: . ack 83969 win 7872 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.708998 localhost.1319 > localhost.pop-2: . ack 83969 win 7872 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.709185 localhost.1319 > localhost.pop-2: . ack 84993 win 6848 <nop,nop,timestamp 692973 692973> (DF) 23:50:07.709185 localhost.1319 > localhost.pop-2: . ack 84993 win 6848 <nop,nop,timestamp 692973 692973> (DF)
I am no tcp expert, I hope the dump is okay.
ciao Matthias
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |