summaryrefslogtreecommitdiffstats
path: root/samples/pktgen/pktgen_sample02_multiqueue.sh
diff options
context:
space:
mode:
authorDaniel T. Lee <danieltimlee@gmail.com>2019-06-29 15:33:58 +0200
committerDavid S. Miller <davem@davemloft.net>2019-07-01 20:02:20 +0200
commit6e32a74a6f151c3e64d7d79e54948b8938be2cdc (patch)
treec7a2c4bbe88ad76971faf46adc92d8a4ae7de112 /samples/pktgen/pktgen_sample02_multiqueue.sh
parentsamples: pktgen: add some helper functions for port parsing (diff)
downloadlinux-6e32a74a6f151c3e64d7d79e54948b8938be2cdc.tar.xz
linux-6e32a74a6f151c3e64d7d79e54948b8938be2cdc.zip
samples: pktgen: allow to specify destination port
Currently, kernel pktgen has the feature to specify udp destination port for sending packet. (e.g. pgset "udp_dst_min 9") But on samples, each of the scripts doesn't have any option to achieve this. This commit adds the DST_PORT option to specify the target port(s) in the script. -p : ($DST_PORT) destination PORT range (e.g. 433-444) is also allowed Signed-off-by: Daniel T. Lee <danieltimlee@gmail.com> Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'samples/pktgen/pktgen_sample02_multiqueue.sh')
-rwxr-xr-xsamples/pktgen/pktgen_sample02_multiqueue.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/samples/pktgen/pktgen_sample02_multiqueue.sh b/samples/pktgen/pktgen_sample02_multiqueue.sh
index 99f740ae9857..7f7a9a27548f 100755
--- a/samples/pktgen/pktgen_sample02_multiqueue.sh
+++ b/samples/pktgen/pktgen_sample02_multiqueue.sh
@@ -29,6 +29,10 @@ if [ -z "$DEST_IP" ]; then
[ -z "$IP6" ] && DEST_IP="198.18.0.42" || DEST_IP="FD00::1"
fi
[ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff"
+if [ -n "$DST_PORT" ]; then
+ read -r DST_MIN DST_MAX <<< $(parse_ports $DST_PORT)
+ validate_ports $DST_MIN $DST_MAX
+fi
# General cleanup everything since last run
pg_ctrl "reset"
@@ -60,6 +64,13 @@ for ((thread = $F_THREAD; thread <= $L_THREAD; thread++)); do
pg_set $dev "dst_mac $DST_MAC"
pg_set $dev "dst$IP6 $DEST_IP"
+ if [ -n "$DST_PORT" ]; then
+ # Single destination port or random port range
+ pg_set $dev "flag UDPDST_RND"
+ pg_set $dev "udp_dst_min $DST_MIN"
+ pg_set $dev "udp_dst_max $DST_MAX"
+ fi
+
# Setup random UDP port src range
pg_set $dev "flag UDPSRC_RND"
pg_set $dev "udp_src_min $UDP_MIN"