selftests: netfilter: add MTU arguments to flowtables
Add some documentation, default values defined in original script and Originator/Link/Responder arguments using getopts like in tools/power/cpupower/bench/cpufreq-bench_plot.sh Signed-off-by: Fabian Frederick <fabf@skynet.be> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
6d006a4e38
commit
dd08734d8a
|
@ -2,13 +2,18 @@
|
||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
#
|
#
|
||||||
# This tests basic flowtable functionality.
|
# This tests basic flowtable functionality.
|
||||||
# Creates following topology:
|
# Creates following default topology:
|
||||||
#
|
#
|
||||||
# Originator (MTU 9000) <-Router1-> MTU 1500 <-Router2-> Responder (MTU 2000)
|
# Originator (MTU 9000) <-Router1-> MTU 1500 <-Router2-> Responder (MTU 2000)
|
||||||
# Router1 is the one doing flow offloading, Router2 has no special
|
# Router1 is the one doing flow offloading, Router2 has no special
|
||||||
# purpose other than having a link that is smaller than either Originator
|
# purpose other than having a link that is smaller than either Originator
|
||||||
# and responder, i.e. TCPMSS announced values are too large and will still
|
# and responder, i.e. TCPMSS announced values are too large and will still
|
||||||
# result in fragmentation and/or PMTU discovery.
|
# result in fragmentation and/or PMTU discovery.
|
||||||
|
#
|
||||||
|
# You can check with different Orgininator/Link/Responder MTU eg:
|
||||||
|
# sh nft_flowtable.sh -o1000 -l500 -r100
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
# Kselftest framework requirement - SKIP code is 4.
|
# Kselftest framework requirement - SKIP code is 4.
|
||||||
ksft_skip=4
|
ksft_skip=4
|
||||||
|
@ -78,11 +83,24 @@ ip -net nsr2 addr add dead:2::1/64 dev veth1
|
||||||
# ns2 is going via nsr2 with a smaller mtu, so that TCPMSS announced by both peers
|
# ns2 is going via nsr2 with a smaller mtu, so that TCPMSS announced by both peers
|
||||||
# is NOT the lowest link mtu.
|
# is NOT the lowest link mtu.
|
||||||
|
|
||||||
ip -net nsr1 link set veth0 mtu 9000
|
omtu=9000
|
||||||
ip -net ns1 link set eth0 mtu 9000
|
lmtu=1500
|
||||||
|
rmtu=2000
|
||||||
|
|
||||||
ip -net nsr2 link set veth1 mtu 2000
|
while getopts "o:l:r:" o
|
||||||
ip -net ns2 link set eth0 mtu 2000
|
do
|
||||||
|
case $o in
|
||||||
|
o) omtu=$OPTARG;;
|
||||||
|
l) lmtu=$OPTARG;;
|
||||||
|
r) rmtu=$OPTARG;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
ip -net nsr1 link set veth0 mtu $omtu
|
||||||
|
ip -net ns1 link set eth0 mtu $omtu
|
||||||
|
|
||||||
|
ip -net nsr2 link set veth1 mtu $rmtu
|
||||||
|
ip -net ns2 link set eth0 mtu $rmtu
|
||||||
|
|
||||||
# transfer-net between nsr1 and nsr2.
|
# transfer-net between nsr1 and nsr2.
|
||||||
# these addresses are not used for connections.
|
# these addresses are not used for connections.
|
||||||
|
@ -136,7 +154,7 @@ table inet filter {
|
||||||
# as PMTUd is off.
|
# as PMTUd is off.
|
||||||
# This rule is deleted for the last test, when we expect PMTUd
|
# This rule is deleted for the last test, when we expect PMTUd
|
||||||
# to kick in and ensure all packets meet mtu requirements.
|
# to kick in and ensure all packets meet mtu requirements.
|
||||||
meta length gt 1500 accept comment something-to-grep-for
|
meta length gt $lmtu accept comment something-to-grep-for
|
||||||
|
|
||||||
# next line blocks connection w.o. working offload.
|
# next line blocks connection w.o. working offload.
|
||||||
# we only do this for reverse dir, because we expect packets to
|
# we only do this for reverse dir, because we expect packets to
|
||||||
|
|
Loading…
Reference in New Issue