]> rtime.felk.cvut.cz Git - can-eth-gw.git/blob - bench/bench
linux: Fix bug
[can-eth-gw.git] / bench / bench
1 #!/bin/sh
2 N=100
3 MODE=oneattime
4 SLEEP=1
5 LOGANDPRINT="tee -a result | cut -c 2-"
6 RESULTFILE=/dev/null
7 SENDRES=0
8
9 if test $# -eq 1; then
10         RESULTFILE=$1
11         SENDRES=1
12 fi
13
14 #-----------------
15 # bench kernel
16 #-----------------
17 modprobe canethgw
18 mkcegwdev
19
20 cegw vcan0 127.0.0.1:10501 127.0.0.1:10502 &
21 JOB=$!
22
23 sleep $SLEEP
24 echo "#kernel udp->can" | tee -a result | cut -c 2-
25 cegwbench -s udp@127.0.0.1:10501 -d can@vcan0 -n $N -m $MODE -t 1 >> $RESULTFILE
26
27 sleep $SLEEP
28 echo "#kernel can->udp" | tee -a result | cut -c 2-
29 cegwbench -s can@vcan0 -d udp@127.0.0.1:10502 -n $N -m $MODE -t 1 >> $RESULTFILE
30
31 sleep $SLEEP
32 kill $JOB
33 modprobe -r canethgw
34
35 #-----------------
36 # bench user
37 #-----------------
38 canethgw -s can@vcan0 -d udp@127.0.0.1:10502 -l udp@127.0.0.1:10501 &
39 PID=$!
40 sleep $SLEEP
41
42 echo "#user udp->can" | tee -a result | cut -c 2-
43 cegwbench -s udp@127.0.0.1:10501 -d can@vcan0 -n $N -m $MODE -t 1 >> $RESULTFILE
44
45 sleep $SLEEP
46 echo "#user can->udp" | tee -a result | cut -c 2-
47 cegwbench -s can@vcan0 -d udp@127.0.0.1:10502 -n $N -m $MODE -t 1 >> $RESULTFILE
48
49 sleep $SLEEP
50 kill -2 $PID
51 # send result
52 if test $SENDRES -eq 1; then
53         cat $RESULTFILE | nc `cat /etc/retip` 10600
54 fi
55