.. _sockets-echo-sample:

Socket Echo Server
##################

Overview
********

The sockets/echo sample application for Zephyr implements an IPv4 TCP echo
server using a BSD Sockets compatible API. The purpose of this sample is to
show how it's possible to develop a sockets application portable to both
POSIX and Zephyr. As such, it is kept minimal and supports only IPv4 and TCP.

The source code for this sample application can be found at:
:zephyr_file:`samples/net/sockets/echo`.

Requirements
************

- :ref:`networking_with_host`
- or, a board with hardware networking

Building and Running
********************

Build the Zephyr version of the sockets/echo application like this:

.. zephyr-app-commands::
   :zephyr-app: samples/net/sockets/echo
   :board: <board_to_use>
   :goals: build
   :compact:

After the sample starts, it expects connections at 192.0.2.1, port 4242.
The easiest way to connect is:

.. code-block:: console

    $ telnet 192.0.2.1 4242

After a connection is made, the application will echo back any line sent
to it. The application implements a single-threaded server using blocking
sockets, and thus can serve only one client connection at time. After the
current client disconnects, the next connection can proceed.

Running application on POSIX Host
=================================

The same application source code can be built for a POSIX system, e.g.
Linux. (Note: if you look at the source, you will see that the code is
the same except the header files are different for Zephyr vs POSIX.)

To build for a host POSIX OS:

.. code-block:: console

    $ make -f Makefile.posix

To run:

.. code-block:: console

    $ ./socket_echo

To test:

.. code-block:: console

    $ telnet 127.0.0.1 4242

As can be seen, the behavior of the application is the same as the Zephyr
version.

Running on cc3220sf_launchxl
============================

See the note on Provisioning and Fast Connect in :ref:`cc3220sf_launchxl`.

After having connected to an Access Point using the sample Wi-Fi shell,
the IP address will be printed to the console upon running this echo
application.

Proceed to test as above.
