-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Ben Hutchings says: ==================== pktgen documentation cleanup and samples This series cleans up the pktgen documentation, adds and improves the original sample scripts. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
- Loading branch information
Showing
9 changed files
with
553 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
#!/bin/bash | ||
|
||
#modprobe pktgen | ||
|
||
|
||
function pgset() { | ||
local result | ||
|
||
echo $1 > $PGDEV | ||
|
||
result=`cat $PGDEV | fgrep "Result: OK:"` | ||
if [ "$result" = "" ]; then | ||
cat $PGDEV | fgrep Result: | ||
fi | ||
} | ||
|
||
# Config Start Here ----------------------------------------------------------- | ||
|
||
|
||
# thread config | ||
# Each CPU has its own thread. One CPU example. We add eth1. | ||
|
||
PGDEV=/proc/net/pktgen/kpktgend_0 | ||
echo "Removing all devices" | ||
pgset "rem_device_all" | ||
echo "Adding eth1" | ||
pgset "add_device eth1" | ||
|
||
|
||
# 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" | ||
|
||
|
||
# Time to run | ||
PGDEV=/proc/net/pktgen/pgctrl | ||
|
||
echo "Running... ctrl^C to stop" | ||
trap true INT | ||
pgset "start" | ||
echo "Done" | ||
cat /proc/net/pktgen/eth1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
#!/bin/bash | ||
|
||
#modprobe pktgen | ||
|
||
|
||
function pgset() { | ||
local result | ||
|
||
echo $1 > $PGDEV | ||
|
||
result=`cat $PGDEV | fgrep "Result: OK:"` | ||
if [ "$result" = "" ]; then | ||
cat $PGDEV | fgrep Result: | ||
fi | ||
} | ||
|
||
# Config Start Here ----------------------------------------------------------- | ||
|
||
|
||
# thread config | ||
# Each CPU has its own thread. One CPU example. We add eth1. | ||
|
||
PGDEV=/proc/net/pktgen/kpktgend_0 | ||
echo "Removing all devices" | ||
pgset "rem_device_all" | ||
echo "Adding eth1" | ||
pgset "add_device eth1" | ||
|
||
|
||
# device config | ||
# delay 0 | ||
# We need to do alloc for every skb since we cannot clone here. | ||
|
||
CLONE_SKB="clone_skb 0" | ||
# 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" | ||
# Random address with in the min-max range | ||
pgset "flag IPDST_RND" | ||
pgset "dst_min 10.0.0.0" | ||
pgset "dst_max 10.255.255.255" | ||
|
||
# 8k Concurrent flows at 4 pkts | ||
pgset "flows 8192" | ||
pgset "flowlen 4" | ||
|
||
pgset "dst_mac 00:04:23:08:91:dc" | ||
|
||
# Time to run | ||
PGDEV=/proc/net/pktgen/pgctrl | ||
|
||
echo "Running... ctrl^C to stop" | ||
trap true INT | ||
pgset "start" | ||
echo "Done" | ||
cat /proc/net/pktgen/eth1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
#!/bin/bash | ||
|
||
#modprobe pktgen | ||
|
||
|
||
function pgset() { | ||
local result | ||
|
||
echo $1 > $PGDEV | ||
|
||
result=`cat $PGDEV | fgrep "Result: OK:"` | ||
if [ "$result" = "" ]; then | ||
cat $PGDEV | fgrep Result: | ||
fi | ||
} | ||
|
||
# Config Start Here ----------------------------------------------------------- | ||
|
||
|
||
# thread config | ||
# Each CPU has its own thread. One CPU example. We add eth1. | ||
# IPv6. Note increase in minimal packet length | ||
|
||
PGDEV=/proc/net/pktgen/kpktgend_0 | ||
echo "Removing all devices" | ||
pgset "rem_device_all" | ||
echo "Adding eth1" | ||
pgset "add_device eth1" | ||
|
||
|
||
# device config | ||
# delay 0 | ||
|
||
CLONE_SKB="clone_skb 1000000" | ||
# NIC adds 4 bytes CRC | ||
PKT_SIZE="pkt_size 66" | ||
|
||
# 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 "dst6 fec0::1" | ||
pgset "src6 fec0::2" | ||
pgset "dst_mac 00:04:23:08:91:dc" | ||
|
||
# Time to run | ||
PGDEV=/proc/net/pktgen/pgctrl | ||
|
||
echo "Running... ctrl^C to stop" | ||
trap true INT | ||
pgset "start" | ||
echo "Done" | ||
cat /proc/net/pktgen/eth1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
#!/bin/bash | ||
|
||
#modprobe pktgen | ||
|
||
|
||
function pgset() { | ||
local result | ||
|
||
echo $1 > $PGDEV | ||
|
||
result=`cat $PGDEV | fgrep "Result: OK:"` | ||
if [ "$result" = "" ]; then | ||
cat $PGDEV | fgrep Result: | ||
fi | ||
} | ||
|
||
# Config Start Here ----------------------------------------------------------- | ||
|
||
|
||
# thread config | ||
# Each CPU has its own thread. One CPU example. We add eth1. | ||
# IPv6. Note increase in minimal packet length | ||
|
||
PGDEV=/proc/net/pktgen/kpktgend_0 | ||
echo "Removing all devices" | ||
pgset "rem_device_all" | ||
echo "Adding eth1" | ||
pgset "add_device eth1" | ||
|
||
|
||
# device config | ||
# delay 0 means maximum speed. | ||
|
||
# We need to do alloc for every skb since we cannot clone here. | ||
CLONE_SKB="clone_skb 0" | ||
|
||
# NIC adds 4 bytes CRC | ||
PKT_SIZE="pkt_size 66" | ||
|
||
# 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 "dst6_min fec0::1" | ||
pgset "dst6_max fec0::FFFF:FFFF" | ||
|
||
pgset "dst_mac 00:04:23:08:91:dc" | ||
|
||
# Time to run | ||
PGDEV=/proc/net/pktgen/pgctrl | ||
|
||
echo "Running... ctrl^C to stop" | ||
trap true INT | ||
pgset "start" | ||
echo "Done" | ||
cat /proc/net/pktgen/eth1 |
Oops, something went wrong.