[En-Nut-Discussion] Re: TCP stops working after some time
Harald Kipp
harald.kipp at egnite.de
Wed Dec 15 15:57:26 CET 2004
Hi Dusan,
At 12:25 15.12.2004 +0100, you wrote:
>Hi Harald,
>
>what kind of tests are you doing ?
>
>Do you think it is sufficient to do only periodic connects ? I think more
>important is a case with multiple TCP connections with concurrent traffic
>and larger files (more segments). So for testing there should be also
>multithreaded client (like a web browser).
I strongly disagree.
It is most essential to reproduce the problem with
the most simple test case, which is possible.
In general, there is no such thing like a single
threaded application, because the idle thread is
part of every Nut/OS code. Additional threads
are created by the TCP stack.
>We experienced lock e.g. once a week or two. But this was with August 3.5
>version.
>
>Regarding priorities we have application with following threads and their
>priority values:
>Name Priority Status
>arpex 64 SLP
>tcpsm 32 SLP
>snmp 48 SLP
>modbus1 60 SLP
>modbus0 60 SLP
>httpd2 80 SLP
>httpd1 80 RUN
>httpd0 80 SLP
>uart1rcv 30 SLP
>uart0rcv 30 SLP
>UDPsetup 64 SLP
>rxi5 9 SLP
>WatchDog 5 SLP
>main 64 SLP
>idle 254 RDY
At least this shows, that you're using the UARTs too.
Which driver? devUart or devUsartAvr?
We are currently testing with socket timeouts, which had
been excluded from our initial test case. We plan to setup
additional tests with UART communication.
HTTP is no issue, at least not yet. Our problem appears
without using HTTP.
I also did some (unstructured) tests with heavy usage of
events and timeouts. No problems were found.
Harald
>Dusan
>
>>Date: Tue, 14 Dec 2004 12:08:52 +0100
>>From: Harald Kipp <harald.kipp at egnite.de>
>>Jean Pierre,
>>
>>I'm just re-reading the latest posts and sumbled over this one:
>>
>>At 15:10 28.11.2004 +0100, you wrote:
>> >
>> >TCP runs here without locks during weeks.
>> >Try to:
>> >1) observe TCP sockets list (with httpserv "socket list" utility). It can
>> >give you some ideas.
>> >) set timeouts with NutTcpSetSockOpt /SO_SNDTIMEO, /SO_RCVTIME ???
>> >2) do not play with your appli priorities. Keep default value(64). (in my
>> >application, Bugs both on TCP and usart lock when priority is modified).
>> >3)verify heap level.
>>
>>For 1) I've done some very heavy traffic tests without any
>>problems. The 3.9.2 stack seems to work very reliable.
>>
>>For 3) We've done some long term connect/disconnect tests.
>>Again, no problems after 130,000 cycles.
>
>_______________________________________________
>En-Nut-Discussion mailing list
>En-Nut-Discussion at egnite.de
>http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion
More information about the En-Nut-Discussion
mailing list