This patchset adds some basic test for L2 MC behaviours.
The first three patches add a MC related commands to LNST.
The 4th patch adds the ability to count CPU traffic, so it will be possible
to check if the traffic were really offloaded and hadn't gone via slowpath.
Patches 5 & 6 update the current MDB test to be more generic and to check
that the traffic is offloaded.
Patch 7 adds a test to check that the MDB is ignored when MC is disabled.
Patches 8-10 add tests for mrouter bridge config option (as in IGMP
configuration, not to be confused with any L3 property).
Patch 11 adds a test for unregistered MC packets.
This patchset does not address:
* LAG in MC.
* static MDB,
Nogah Frankel (11):
common: add a consts file for mrouter port related consts
Interface: add mcast flood and mrouter set functions
Bridge: add set mcast bridge functions
Interface: Add cpu ifstat function
recipes: switchdev: TestLib: Change iperf_mc to be more generic
recipes: switchdev: TestLib: Check whether packets goes in slowpath
recipes: switchdev: Add the mdb mcast disabled test
recipes: switchdev: Add basic mrouter test
recipes: switchdev: Add mrouter learning test
recipes: switchdev: Add a test for many floods with mrouters
recipes: switchdev: Add a test for unregistered MC traffic
lnst/Common/Consts.py | 16 +++
lnst/Controller/Machine.py | 20 +++
lnst/Controller/Task.py | 15 +++
lnst/Slave/BridgeTool.py | 10 ++
lnst/Slave/InterfaceManager.py | 42 ++++++
lnst/Slave/NetTestSlave.py | 43 +++++++
recipes/switchdev/TestLib.py | 94 +++++++-------
recipes/switchdev/l2-020-bridge_mdb.py | 38 ++++--
.../switchdev/l2-022-bridge_mdb_mcast_disabled.py | 85 ++++++++++++
.../switchdev/l2-022-bridge_mdb_mcast_disabled.xml | 70 ++++++++++
.../l2-023-bridge_mdb_mc_router_port_basic.py | 108 ++++++++++++++++
.../l2-023-bridge_mdb_mc_router_port_basic.xml | 70 ++++++++++
.../l2-024-bridge_mdb_mc_router_port_learning.py | 91 +++++++++++++
.../l2-024-bridge_mdb_mc_router_port_learning.xml | 70 ++++++++++
.../l2-025-bridge_mdb_flood_with_mc_router.py | 142 +++++++++++++++++++++
.../l2-025-bridge_mdb_flood_with_mc_router.xml | 70 ++++++++++
recipes/switchdev/l2-026-bridge_mdb_unreg_flood.py | 92 +++++++++++++
.../switchdev/l2-026-bridge_mdb_unreg_flood.xml | 70 ++++++++++
18 files changed, 1093 insertions(+), 53 deletions(-)
create mode 100644 lnst/Common/Consts.py
create mode 100644 recipes/switchdev/l2-022-bridge_mdb_mcast_disabled.py
create mode 100644 recipes/switchdev/l2-022-bridge_mdb_mcast_disabled.xml
create mode 100644 recipes/switchdev/l2-023-bridge_mdb_mc_router_port_basic.py
create mode 100644 recipes/switchdev/l2-023-bridge_mdb_mc_router_port_basic.xml
create mode 100644 recipes/switchdev/l2-024-bridge_mdb_mc_router_port_learning.py
create mode 100644 recipes/switchdev/l2-024-bridge_mdb_mc_router_port_learning.xml
create mode 100644 recipes/switchdev/l2-025-bridge_mdb_flood_with_mc_router.py
create mode 100644 recipes/switchdev/l2-025-bridge_mdb_flood_with_mc_router.xml
create mode 100644 recipes/switchdev/l2-026-bridge_mdb_unreg_flood.py
create mode 100644 recipes/switchdev/l2-026-bridge_mdb_unreg_flood.xml
--
2.4.3