Need help with a problem:
The Unit Under Test (UUT) has Redhat's embedded Linux kernel
(based on Linux/PPC kernel 2.2.13),
from the Redhat EDK 1.0, running on an embedded PowerPC processor with 8M of RAM, and is connected to a LAN. A TCP Client on a PC, also connected to the LAN, connects to a
TCP Server on the UUT once every
5 secs. After about 6 minutes, the Client is unable to connect to the UUT's Server any more, although a UDP Server on the UUT continues to receive UDP pkts forever. This is very repeatable, and occurs after the 6 minute time
period regardless of the frequency of
connects(), 1/s or 1/5s or 1/20s. If I pause the Client from connecting just before the 6 minute time period connect() failure is to occur, and wait at least 1 minute (can't be less), and then allow the Client to continue connecting, then the Client is able to connect for another 6 minutes before the connect() failure occurs. If I only pause for 20 secs instead of the full minute, then the Client connects for the remaining connects as usual, and fails to connect. I feel that I have eliminated the TIME-WAIT state problem
associated with closing sockets as the
problem by making sure the Client closes the connection first and also by setting the TIME-WAIT period to a very short time. For test purposes, I put the TCP Server in the main(), and it
is a barebones minimum:
- socket()
- bind() - listen() - accept() - close() I appreciate any suggestions or help regarding this problem. Thanks,
ShutEye Thinkin |
- Re: Embedded TCP Server stops accepting after 6 minutes Steven (Valcom)
- Re: Embedded TCP Server stops accepting after 6 minu... John Summerfield
- Re: Embedded TCP Server stops accepting after 6 minu... Steven (Valcom)
- Re: Embedded TCP Server stops accepting after 6 minu... John Summerfield
- Re: Embedded TCP Server stops accepting after 6 minu... Steven (Valcom)
- RE: Embedded TCP Server stops accepting after 6 minu... Steven Vacca