]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - samples/pktgen/pktgen.conf-1-1
samples/pktgen: Add sample scripts for pktgen facility
[karo-tx-linux.git] / samples / pktgen / pktgen.conf-1-1
1 #! /bin/sh
2
3 #modprobe pktgen
4
5
6 function pgset() {
7     local result
8
9     echo $1 > $PGDEV
10
11     result=`cat $PGDEV | fgrep "Result: OK:"`
12     if [ "$result" = "" ]; then
13          cat $PGDEV | fgrep Result:
14     fi
15 }
16
17 function pg() {
18     echo inject > $PGDEV
19     cat $PGDEV
20 }
21
22 # Config Start Here -----------------------------------------------------------
23
24
25 # thread config
26 # Each CPU has own thread. Two CPU exammple. We add eth1, eth2 respectivly.
27
28 PGDEV=/proc/net/pktgen/kpktgend_0
29   echo "Removing all devices"
30  pgset "rem_device_all"
31   echo "Adding eth1"
32  pgset "add_device eth1"
33   echo "Setting max_before_softirq 10000"
34  pgset "max_before_softirq 10000"
35
36
37 # device config
38 # delay 0 means maximum speed.
39
40 CLONE_SKB="clone_skb 1000000"
41 # NIC adds 4 bytes CRC
42 PKT_SIZE="pkt_size 60"
43
44 # COUNT 0 means forever
45 #COUNT="count 0"
46 COUNT="count 10000000"
47 DELAY="delay 0"
48
49 PGDEV=/proc/net/pktgen/eth1
50   echo "Configuring $PGDEV"
51  pgset "$COUNT"
52  pgset "$CLONE_SKB"
53  pgset "$PKT_SIZE"
54  pgset "$DELAY"
55  pgset "dst 10.10.11.2"
56  pgset "dst_mac  00:04:23:08:91:dc"
57
58
59 # Time to run
60 PGDEV=/proc/net/pktgen/pgctrl
61
62  echo "Running... ctrl^C to stop"
63  pgset "start"
64  echo "Done"
65
66 # Result can be vieved in /proc/net/pktgen/eth1