AW: Re: Re: [En-Nut-Discussion] Webserver Image problem
olischulz at web.de
Sat Jan 17 10:54:00 CET 2004
> it seems that tcpsm.c v1.7 solved this problem. We no more
> observed lost FINs.
> We tested 1 second refresh of an XML file via http GET.
> Thanks Oliver
You are welcome. I spent about 4 weeks full time of debugging an testing to
find this tricky bug..... :-) No, just kidding.
While writing the new buffer code I fixed some small bugs, that jumped into
my face parsing the existing code. I cannot remember every small change I
did, but there were two interresting changes.
1. I added a buffer flush to NutTcpCloseSocket. If not using streaming on
TCP sockets, but only NutTcpDeviceWrite and NutTcpCloseSocket, there was no
buffer flush after closing the socket.
2. Activated the retransmission timer for NutTcpConnect. While testing the
code on Ethernut 1.3, I encountered some problems with the Realtek nic and
its driver. Although the nic sometimes reported a good packet transmission,
no packet was sent on LAN. Because the retransmission timer on NutTcpConnect
was not started, the application became stucked.
This Realtek driver issue was really a strange thing. After adding one
NutDelay(1) in NicPutPacket everything was fine. But network throughput
became very slow. I think there is a kind of timing problem in the driver...
Hopefully I did not add any new bug to Nut/OS...
More information about the En-Nut-Discussion