First bench.sh
This commit is contained in:
parent
6989b0ac95
commit
fce51b9b09
1 changed files with 61 additions and 0 deletions
61
bench.sh
Normal file
61
bench.sh
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
mode=$1
|
||||||
|
dest=$2
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
echo "Usage: ${0} <'connect'|'send'|'receive'> <destination>"
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ ! "$mode" ] ; then
|
||||||
|
echo 'Mode not specified!'
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! "$dest" ] ; then
|
||||||
|
echo 'Dest not specified!'
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
'connect')
|
||||||
|
prefix=''
|
||||||
|
command='echo -n'
|
||||||
|
;;
|
||||||
|
'send')
|
||||||
|
prefix='dd if=/dev/zero bs=4k count=256 | '
|
||||||
|
command='cat > /dev/null'
|
||||||
|
;;
|
||||||
|
'receive')
|
||||||
|
prefix=''
|
||||||
|
command='dd if=/dev/zero bs=4k count=256'
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Mode must be one of connect, send, receive"
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
mkdir -p "$dest"
|
||||||
|
for m in $(cat macs) ; do
|
||||||
|
for c in $(cat ciphers) ; do
|
||||||
|
for k in $(cat kex) ; do
|
||||||
|
echo
|
||||||
|
echo "${dest}/${mode}__${m}__${c}__${k}.log"
|
||||||
|
$prefix /usr/bin/time ssh -o MACs=$m -o Ciphers=$c -o KexAlgorithms=$k $dest "${command}" 2>&1 >/dev/null |
|
||||||
|
tee -a "${dest}/${mode}__${m}__${c}__${k}.log"
|
||||||
|
sleep 0.1 || break
|
||||||
|
done
|
||||||
|
sleep 0.1 || break
|
||||||
|
done
|
||||||
|
sleep .01 || break
|
||||||
|
done
|
||||||
|
|
||||||
|
(
|
||||||
|
echo 'Mode MAC Cipher KEX Time'
|
||||||
|
for f in ${dest}/*.log ; do
|
||||||
|
echo -n "$f "
|
||||||
|
cut -f 2 -w < $f | awk '{s+=$0}END{print s/NR}' RS=" "
|
||||||
|
done | sort -gk 2 | head -10 | tr '_' ' '
|
||||||
|
) | column -t
|
||||||
Loading…
Add table
Add a link
Reference in a new issue