[En-Nut-Discussion] TCP/HTTP problem
ole.reinhardt at embedded-it.de
Wed Jun 5 23:47:50 CEST 2013
> We made a product with AT91_SAM7X256 and Nut/OS 4.8.7. Recently we
> found a problem with accessing the webpage via Internet. We can
> replicate the issue with one IP router (we use port forwarding from
> port 80 to 80). The webpage becomes inaccessible for a while but then
> returns to the working condition after about a minute. In the
> inaccessible state, the webpage is not reachable via both the LAN
> side &the WAN side but pings work. We watch the messages with
> Wireshark during the test. We see TCP RST sent by our product
> (Nut/OS) during the inaccessible state.
> Did anyone see this problem before? Is there a solution for this
No, I have not seen exactly this problem before, but might have an idea
what is happening.
TCP RST packages are send (beside others) in the following conditions:
- PC tries a connection to a closed port
- Ethernut tries to abort a connection.
I assume you hit the first situation.
AFAIK Nut/OS 4.8.7 did not yet implement TCP connection back-log. It
might be possible, that your Web-Server does not provide enough
listening threads to handle all incomming requests at a time (especially
if you have lots of included files like images, css, js, etc.) which
must be loaded to completely render the web-page. In this case your
Web-Server might not be able to accept more connections and the TCP
stack will send out RST packages for all incomming connections that can
not be handled.
And a few moments later all previous connections got closed, and are now
free to handle further requests, so you can access the page a few
moments later again without problems.
It might be a good idea to upgrade to the latest stable Nut/OS version,
which supports TCP connection backlog.
kernel concepts GmbH Tel: +49-271-771091-14
Sieghuetter Hauptweg 48 Mob: +49-177-7420433
More information about the En-Nut-Discussion