Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/tools/testing/selftests/drivers/net/hw/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  hw_stats_l3_gre.sh   Sprache: Shell

 
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

# Test L3 stats on IP-in-IP GRE tunnel without key.

# This test uses flat topology for IP tunneling tests. See ipip_lib.sh for more
# details.

ALL_TESTS="
 ping_ipv4
 test_stats_rx
 test_stats_tx
"
NUM_NETIFS=6
lib_dir=$(dirname "$0")
source "$lib_dir"/../../../net/forwarding/lib.sh
source "$lib_dir"/../../../net/forwarding/ipip_lib.sh
source "$lib_dir"/../../../net/forwarding/tc_common.sh

setup_prepare()
{
 h1=${NETIFS[p1]}
 ol1=${NETIFS[p2]}

 ul1=${NETIFS[p3]}
 ul2=${NETIFS[p4]}

 ol2=${NETIFS[p5]}
 h2=${NETIFS[p6]}

 ol1mac=$(mac_get $ol1)

 forwarding_enable
 vrf_prepare
 h1_create
 h2_create
 sw1_flat_create gre $ol1 $ul1
 sw2_flat_create gre $ol2 $ul2
 ip stats set dev g1a l3_stats on
 ip stats set dev g2a l3_stats on
}

cleanup()
{
 pre_cleanup

 ip stats set dev g1a l3_stats off
 ip stats set dev g2a l3_stats off

 sw2_flat_destroy $ol2 $ul2
 sw1_flat_destroy $ol1 $ul1
 h2_destroy
 h1_destroy

 vrf_cleanup
 forwarding_restore
}

ping_ipv4()
{
 RET=0

 ping_test $h1 192.0.2.18 " gre flat"
}

send_packets_ipv4()
{
 # Send 21 packets instead of 20, because the first one might trap and go
 # through the SW datapath, which might not bump the HW counter.
 $MZ $h1 -c 21 -d 20msec -p 100 \
     -a own -b $ol1mac -A 192.0.2.1 -B 192.0.2.18 \
     -q -t udp sp=54321,dp=12345
}

test_stats()
{
 local dev=$1; shift
 local dir=$1; shift

 local a
 local b

 RET=0

 a=$(hw_stats_get l3_stats $dev $dir packets)
 send_packets_ipv4
 b=$(busywait "$TC_HIT_TIMEOUT" until_counter_is ">= $a + 20" \
       hw_stats_get l3_stats $dev $dir packets)
 check_err $? "Traffic not reflected in the counter: $a -> $b"

 log_test "Test $dir packets: $prot"
}

test_stats_tx()
{
 test_stats g1a tx
}

test_stats_rx()
{
 test_stats g2a rx
}

trap cleanup EXIT

setup_prepare
setup_wait

tests_run

exit $EXIT_STATUS

Messung V0.5
C=86 H=92 G=88

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.