1Sample and benchmark scripts for pktgen (packet generator) 2========================================================== 3This directory contains some pktgen sample and benchmark scripts, that 4can easily be copied and adjusted for your own use-case. 5 6General doc is located in kernel: Documentation/networking/pktgen.txt 7 8Helper include files 9==================== 10This directory contains two helper shell files, that can be "included" 11by shell source'ing. Namely "functions.sh" and "parameters.sh". 12 13Common parameters 14----------------- 15The parameters.sh file support easy and consistant parameter parsing 16across the sample scripts. Usage example is printed on errors:: 17 18 Usage: ./pktgen_sample01_simple.sh [-vx] -i ethX 19 -i : ($DEV) output interface/device (required) 20 -s : ($PKT_SIZE) packet size 21 -d : ($DEST_IP) destination IP 22 -m : ($DST_MAC) destination MAC-addr 23 -t : ($THREADS) threads to start 24 -c : ($SKB_CLONE) SKB clones send before alloc new SKB 25 -b : ($BURST) HW level bursting of SKBs 26 -v : ($VERBOSE) verbose 27 -x : ($DEBUG) debug 28 29The global variable being set is also listed. E.g. the required 30interface/device parameter "-i" sets variable $DEV. 31 32Common functions 33---------------- 34The functions.sh file provides; Three different shell functions for 35configuring the different components of pktgen: pg_ctrl(), pg_thread() 36and pg_set(). 37 38These functions correspond to pktgens different components. 39 * pg_ctrl() control "pgctrl" (/proc/net/pktgen/pgctrl) 40 * pg_thread() control the kernel threads and binding to devices 41 * pg_set() control setup of individual devices 42 43See sample scripts for usage examples. 44