selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test

Test that ECN bits in the VXLAN envelope are correctly deduced from the
overlay packet.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Petr Machata 2018-11-19 16:11:22 +00:00 committed by David S. Miller
parent d417ecf533
commit 1e5abfb3ff

View File

@ -70,6 +70,7 @@ export VXPORT
test_unicast
test_ttl
test_tos
test_ecn_encap
reapply_config
ping_ipv4
test_flood
@ -521,6 +522,31 @@ test_tos()
log_test "VXLAN: envelope TOS inheritance"
}
__test_ecn_encap()
{
local q=$1; shift
local tos=$1; shift
RET=0
tc filter add dev v1 egress pref 77 prot ip \
flower ip_tos $tos action pass
sleep 1
vxlan_ping_test $h1 192.0.2.3 "-Q $q" v1 egress 77 10
tc filter del dev v1 egress pref 77 prot ip
log_test "VXLAN: ECN encap: $q->$tos"
}
test_ecn_encap()
{
# In accordance with INET_ECN_encapsulate()
__test_ecn_encap 0x00 0x00
__test_ecn_encap 0x01 0x01
__test_ecn_encap 0x02 0x02
__test_ecn_encap 0x03 0x02
}
test_all()
{
echo "Running tests with UDP port $VXPORT"