A TCP Echo Client Example (using a multiple RTOS tasks)
Not all demo projects will include this example. If this example is
included in a demo project then it may be necessary to set
mainCREATE_TCP_ECHO_TASKS_SEPARATE to 1 at the top of
the project’s main.c source file to include the example in the
FreeRTOS+TCP and FreeRTOS+FAT Examples
The example creates two RTOS tasks that use the same TCP socket. One RTOS task sends TCP echo requests to an external echo server using the standard echo port (port 7), the other RTOS task listens for the echo replies. A separate example uses the same RTOS task to both send echo requests and listen for echo replies.
The IP address of the echo server must be configured using the configECHO_SERVER_ADDR0 to configECHO_SERVER_ADDR3 constants in FreeRTOSConfig.h, and the echo server must (stating the obvious) be enabled and not blocked by a firewall. Windows ships with an echo server but it is not enabled by default. Third party echo servers are also available.