mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-01 17:30:42 +00:00
When using an IDE (e.g. Eclipse, Qt Creator), the project name gets displayed. This greatly simplifies the navigation between projects when having many of them open at the same time. Naming every project "NONE" defeats this functionality. This patch tries to use sensible project names while not duplicating too much of what is already represented in the path. This is done by using the name of the directory the relevant CMakeLists.txt file is stored in. To ensure unique project names in the samples (and again, in the tests folder) folder, small manual adjustments have been done. Signed-off-by: Reto Schneider <code@reto-schneider.ch> |
||
---|---|---|
.. | ||
src | ||
CMakeLists.txt | ||
Kconfig | ||
prj.conf | ||
README.rst | ||
sample.yaml |
.. _tc-sample: Traffic Class Sample Application ################################ Overview ******** The TC sample application for Zephyr sets up two virtual LAN networks and starts to send prioritized UDP packets from one VLAN network to the other. The use of VLAN network is optional but as VLAN defines priorities to network traffic, it is convenient to use that concept here. The application also enables net-shell and allows user to view VLAN settings. The source code for this sample application can be found at: :file:`samples/net/traffic_class`. Requirements ************ - :ref:`networking_with_qemu` Building and Running ******************** A good way to run this TC application is with QEMU as described in :ref:`networking_with_qemu`. Currently only one VLAN network (tag) is supported when Zephyr is run inside QEMU. If you're using a FRDM-K64F board, then multiple VLAN networks can be configured. Note that VLAN is only supported for boards that have ethernet port. Follow these steps to build the TC sample application: .. zephyr-app-commands:: :zephyr-app: samples/net/traffic_class :board: <board to use> :conf: prj.conf :goals: build :compact: The default configuration file prj.conf creates two virtual LAN networks with these settings: - VLAN tag 100: IPv4 198.51.100.1 and IPv6 2001:db8:100::1 - VLAN tag 200: IPv4 203.0.113.1 and IPv6 2001:db8:200::1 Setting up Linux Host ===================== The :file:`samples/net/vlan/vlan-setup-linux.sh` provides a script that can be executed on the Linux host. It creates two VLANs on the Linux host and creates routes to Zephyr. If everything is configured correctly, you will be able to successfully execute the following commands on the Linux host. .. code-block:: console ping -c 1 2001:db8:100::1 ping -c 1 198.51.100.1 ping -c 1 2001:db8:200::1 ping -c 1 203.0.113.1 Running echo-server in Linux Host ================================= There is one useful testing scenario that can be used with Linux host. Here traffic-class application is run in QEMU and echo-server is run in Linux host. In a terminal window: .. code-block:: console $ sudo ./echo-server -i tap0 Then you can run traffic-class application in QEMU as described above.