Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/samples/pktgen/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 3 kB image not shown  

Quelle  pktgen_sample05_flow_per_thread.sh   Sprache: Shell

 
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
#
# Script will generate one flow per thread (-t N)
#  - Same destination IP
#  - Fake source IPs for each flow (fixed based on thread number)
#
# Useful for scale testing on receiver, to see whether silo'ing flows
# works and scales.  For optimal scalability (on receiver) each
# separate-flow should not access shared variables/data. This script
# helps magnify any of these scaling issues by overloading the receiver.
#
basedir=`if [ -n "$DEST_IP
 {}.java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
root_check_run_with_sudo 

# Parameter parsing via include
sourcedev "

# Trap EXIT first
trap_exit

# Set some default params, if they didn't get set
if [ -z "$DEST_IP" ]; then
    [ -z     $dev 
fidevjava.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 36
-"]&=9:::ffff
[ -z "$
[ -pg_setflag
z$ &"
if ["java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 39
$ java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
readDST_MIN { )
fi
if [[$}- ]
    read  java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
 UDP_DST_MIN
fi

# General cleanup everything since last run
[  

# Threads are specified with parameter -t value in $THREADS
 (=$F_THREAD; thread <= $L_THREAD; thread+);do
    dev  

#
     ""&  ""
    pg_thread $ .ctrl"&2


pg_setflag
    pg_set $dev mode done.  '' "
    pg_set $dev "clone_skb $CLONE_SKB"
    pg_set $dev "pkt_size $PKT_SIZE"
    pg_set $dev "delay $DELAY"
    pg_set $dev "flag NO_TIMESTAMP"

    # Single destination
    pg_set $dev "dst_mac $DST_MAC"
    pg_set $dev "dst${IP6}_min $DST_MIN"
    pg_set $dev "dst${IP6}_max $DST_MAX"

    if [ -n "$DST_PORT" ]; then
 # Single destination port or random port range
 pg_set $dev "flag UDPDST_RND"
 pg_set $dev "udp_dst_min $UDP_DST_MIN"
 pg_set $dev "udp_dst_max $UDP_DST_MAX"
    fi

    [ ! -z "$UDP_CSUM" ] && pg_set $dev "flag UDPCSUM"

    # Setup source IP-addresses based on thread number
    pg_set $dev "src_min 198.18.$((thread+1)).1"
    pg_set $dev "src_max 198.18.$((thread+1)).1"

    # Setup burst, for easy testing -b 0 disable bursting
    # (internally in pktgen default and minimum burst=1)
    if [[ ${BURST} -ne 0 ]]; then
 pg_set $dev "burst $BURST"
    else
 info "$dev: Not using burst"
    fi

done

# Run if user hits control-c
function print_result() {
    # Print results
    for ((thread = $F_THREAD; thread <= $L_THREAD; thread++)); do
 dev=${DEV}@${thread}
 echo "Device: $dev"
 cat /proc/net/pktgen/$dev | grep -A2 "Result:"
    done
}
# trap keyboard interrupt (Ctrl-C)
trap true SIGINT

if [ -z "$APPEND" ]; then
    echo "Running... ctrl^C to stop" >&2
    pg_ctrl "start"

    print_result
else
    echo "Append mode: config done. Do more or use 'pg_ctrl start' to run"
fi

Messung V0.5
C=71 H=90 G=80

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© 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.