aboutsummaryrefslogtreecommitdiffstats
path: root/samples/pktgen/pktgen.conf-2-2
diff options
context:
space:
mode:
authorBen Hutchings <ben.hutchings@codethink.co.uk>2015-02-24 02:32:07 +0000
committerDavid S. Miller <davem@davemloft.net>2015-02-23 22:03:18 -0500
commit7c95a9d962f9ffdf02a3d82a6ae108c254a29122 (patch)
tree0efaf1c8ea66db3315ae45f02023ddd1af7be4ff /samples/pktgen/pktgen.conf-2-2
parentpktgen: Fix grammar errors and some poor wording in documentation (diff)
downloadlinux-dev-7c95a9d962f9ffdf02a3d82a6ae108c254a29122.tar.xz
linux-dev-7c95a9d962f9ffdf02a3d82a6ae108c254a29122.zip
samples/pktgen: Add sample scripts for pktgen facility
These are Robert Olsson's samples which used to be available from <ftp://robur.slu.se/pub/Linux/net-development/pktgen-testing/examples/> but currently are not. Change the documentation to refer to these consistently as 'sample scripts', matching the directory name used here. Cc: Robert Olsson <robert@herjulf.se> Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'samples/pktgen/pktgen.conf-2-2')
-rwxr-xr-xsamples/pktgen/pktgen.conf-2-282
1 files changed, 82 insertions, 0 deletions
diff --git a/samples/pktgen/pktgen.conf-2-2 b/samples/pktgen/pktgen.conf-2-2
new file mode 100755
index 000000000000..7ce86470a3a9
--- /dev/null
+++ b/samples/pktgen/pktgen.conf-2-2
@@ -0,0 +1,82 @@
+#! /bin/sh
+
+#modprobe pktgen
+
+
+function pgset() {
+ local result
+
+ echo $1 > $PGDEV
+
+ result=`cat $PGDEV | fgrep "Result: OK:"`
+ if [ "$result" = "" ]; then
+ cat $PGDEV | fgrep Result:
+ fi
+}
+
+function pg() {
+ echo inject > $PGDEV
+ cat $PGDEV
+}
+
+# Config Start Here -----------------------------------------------------------
+
+
+# thread config
+# Each CPU has own thread. Two CPU exammple. We add eth1, eth2 respectivly.
+
+PGDEV=/proc/net/pktgen/kpktgend_0
+ echo "Removing all devices"
+ pgset "rem_device_all"
+ echo "Adding eth1"
+ pgset "add_device eth1"
+ echo "Setting max_before_softirq 10000"
+ pgset "max_before_softirq 10000"
+
+PGDEV=/proc/net/pktgen/kpktgend_1
+ echo "Removing all devices"
+ pgset "rem_device_all"
+ echo "Adding eth2"
+ pgset "add_device eth2"
+ echo "Setting max_before_softirq 10000"
+ pgset "max_before_softirq 10000"
+
+
+# device config
+# delay 0 means maximum speed.
+
+CLONE_SKB="clone_skb 1000000"
+# NIC adds 4 bytes CRC
+PKT_SIZE="pkt_size 60"
+
+# COUNT 0 means forever
+#COUNT="count 0"
+COUNT="count 10000000"
+DELAY="delay 0"
+
+PGDEV=/proc/net/pktgen/eth1
+ echo "Configuring $PGDEV"
+ pgset "$COUNT"
+ pgset "$CLONE_SKB"
+ pgset "$PKT_SIZE"
+ pgset "$DELAY"
+ pgset "dst 10.10.11.2"
+ pgset "dst_mac 00:04:23:08:91:dc"
+
+PGDEV=/proc/net/pktgen/eth2
+ echo "Configuring $PGDEV"
+ pgset "$COUNT"
+ pgset "$CLONE_SKB"
+ pgset "$PKT_SIZE"
+ pgset "$DELAY"
+ pgset "dst 192.168.2.2"
+ pgset "dst_mac 00:04:23:08:91:de"
+
+# Time to run
+PGDEV=/proc/net/pktgen/pgctrl
+
+ echo "Running... ctrl^C to stop"
+ pgset "start"
+ echo "Done"
+
+# Result can be vieved in /proc/net/pktgen/eth[1,2]