Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

FreeRTOS 8.2.3 FreeTCPIP: webserver packet corruption with concurrent accesses

Posted by sbrauss on June 28, 2016

Hi!

I have a Renesas RX62n controller running FreeRTOS 8.2.3. I use FreeTCPIP/httpd to run a webserver on it. When I produce heavy/concurrent load, I from time to time see that the packets get corrupted (I for example sometines see corrupted pictures when I access the webserver with Internet Explorer). I can also reproduce this problem with running two instances of curl in parallel on my Linux machine, that repeatedly access different files on my target. I would like to trace it, but first wanted to ask, if someone knows about such a problem?

Thanks & best regards, Stephan


FreeRTOS 8.2.3 FreeTCPIP: webserver packet corruption with concurrent accesses

Posted by rtel on June 28, 2016

This is not something I have seen myself.

What are the files hosted on (RAM disk? SD card?)? Which file system are you using - and is it thread safe?


FreeRTOS 8.2.3 FreeTCPIP: webserver packet corruption with concurrent accesses

Posted by sbrauss on June 28, 2016

Hi!

It is the code from folders Demo/Common/ethernet/FreeTCPIP/apps/httpd and RX600RX62N-RDKGNURX/RTOSDemo/webserver, so the files are in httpd-fsdata.c.

Thanks, Stephan


FreeRTOS 8.2.3 FreeTCPIP: webserver packet corruption with concurrent accesses

Posted by rtel on June 28, 2016

Ah right - my mistake, I thought you were using the FreeRTOS+TCP stack (http://www.freertos.org/tcp).


FreeRTOS 8.2.3 FreeTCPIP: webserver packet corruption with concurrent accesses

Posted by sbrauss on June 28, 2016

I just had the idea to search my original RENESAS YRDKRX62N board and give it a try with the original demo code in FreeRTOS. I also can trigger the problem with this code. I run curl twice repeatedly, both loading file logo.jpg, and also accessing the web browser with Internet Explorer. After a while, I get corrupt files. The file lenght is correct, but the contents is bad:

COUNTER=0 while true;do curl 192.168.200.169/logo.jpg > logo.jpg 2>log3.txt DIFF=diff logo.jpg logo_orig.jpg if test -n "$DIFF"; then echo -n ERROR echo ${COUNTER} exit 1 fi ((COUNTER=${COUNTER}+1)) echo ${COUNTER} done


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS