[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201103172412.1044840-1-razor@blackwall.org>
Date: Tue, 3 Nov 2020 19:23:56 +0200
From: Nikolay Aleksandrov <razor@...ckwall.org>
To: netdev@...r.kernel.org
Cc: roopa@...dia.com, kuba@...nel.org,
bridge@...ts.linux-foundation.org,
Nikolay Aleksandrov <nikolay@...dia.com>
Subject: [PATCH net-next 00/16] selftests: net: bridge: add tests for MLDv2
From: Nikolay Aleksandrov <nikolay@...dia.com>
Hi,
This is the second selftests patch-set for the new multicast functionality
which adds tests for the bridge's MLDv2 support. The tests use full
precooked packets which are sent via mausezahn and the resulting state
after each test is checked for proper X,Y sets, (*,G) source list, source
list entry timers, (S,G) existence and flags, packet forwarding and
blocking, exclude group expiration and (*,G) auto-add. The first 3 patches
factor out common functions which are used by IGMPv3 tests in lib.sh and
add support for IPv6 test UDP packet, then patch 4 adds the first test with
the initial MLDv2 setup.
The following new tests are added:
- base case: MLDv2 report ff02::cc is_include
- include -> allow report
- include -> is_include report
- include -> is_exclude report
- include -> to_exclude report
- exclude -> allow report
- exclude -> is_include report
- exclude -> is_exclude report
- exclude -> to_exclude report
- include -> block report
- exclude -> block report
- exclude timeout (move to include + entry deletion)
- S,G port entry automatic add to a *,G,exclude port
The variable names and set notation are the same as per RFC 3810,
for more information check RFC 3810 sections 2.3 and 7.
Thanks,
Nik
Nikolay Aleksandrov (16):
selftests: net: bridge: factor out mcast_packet_test
selftests: net: lib: add support for IPv6 mcast packet test
selftests: net: bridge: factor out and rename sg state functions
selftests: net: bridge: add initial MLDv2 include test
selftests: net: bridge: add test for mldv2 inc -> allow report
selftests: net: bridge: add test for mldv2 inc -> is_include report
selftests: net: bridge: add test for mldv2 inc -> is_exclude report
selftests: net: bridge: add test for mldv2 inc -> to_exclude report
selftests: net: bridge: add test for mldv2 exc -> allow report
selftests: net: bridge: add test for mldv2 exc -> is_include report
selftests: net: bridge: add test for mldv2 exc -> is_exclude report
selftests: net: bridge: add test for mldv2 exc -> to_exclude report
selftests: net: bridge: add test for mldv2 inc -> block report
selftests: net: bridge: add test for mldv2 exc -> block report
selftests: net: bridge: add test for mldv2 exclude timeout
selftests: net: bridge: add test for mldv2 *,g auto-add
.../selftests/net/forwarding/bridge_igmp.sh | 211 ++-----
.../selftests/net/forwarding/bridge_mld.sh | 558 ++++++++++++++++++
tools/testing/selftests/net/forwarding/lib.sh | 107 ++++
3 files changed, 721 insertions(+), 155 deletions(-)
create mode 100755 tools/testing/selftests/net/forwarding/bridge_mld.sh
--
2.25.4
Powered by blists - more mailing lists