I have written an application on an olimexino STM32 board (arduino-like) using a W5100 ethernet shield. It implements a web server which provides a very simple web page. For sake of RAM size, the data is sent to the client using about 20 very short frames. At the beginning it would work for a few minutes then fail. I found that I missed to process the favicon request, which produced on the client side a lot of retries that eventually would block the W5100 chip. I added a «410 gone» reply that solved the problem. However, I still experience failures after a few days which require that I reboot my application. I am thus wondering what I could have missed. My first concern is about the resending of lost frames. I still do not understand how this is handled: is it automatically done by the W5100, since my web page is smaller than the chip's transmit buffer? Or should it be done at the application level? In this case how do I know which segment is to be resent? In any case, did anyone experience a similar problem? Thanks.
Aucun commentaire:
Enregistrer un commentaire