Add --no-iperf flag to skip iperf3 tests and improve argument handling
This commit is contained in:
parent
89dd1e030e
commit
0effd8a28d
1 changed files with 73 additions and 59 deletions
58
runtest.sh
58
runtest.sh
|
@ -5,6 +5,7 @@ trap 'echo "[✖] Execution halted at line $LINENO. Please consult your nearest
|
|||
trap 'echo "[✌️] Script exited cleanly. Have a burrito." >&2' EXIT
|
||||
|
||||
NO_ENRICH=0
|
||||
NO_IPERF=0
|
||||
LISTENER_ENABLED=0
|
||||
LISTENER_ARGS=()
|
||||
|
||||
|
@ -27,6 +28,10 @@ while [[ $# -gt 0 ]]; do
|
|||
LISTENER_ARGS+=("--channel-hop")
|
||||
shift
|
||||
;;
|
||||
--no-iperf)
|
||||
NO_IPERF=1
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
echo "Unknown argument: $1"
|
||||
exit 1
|
||||
|
@ -76,7 +81,10 @@ log "Enriched file: $ENRICHED_FILE"
|
|||
log "SSID metrics file: $SSID_METRICS_FILE"
|
||||
|
||||
sudo -v
|
||||
while true; do sudo -n true; sleep 60; done 2>/dev/null &
|
||||
while true; do
|
||||
sudo -n true
|
||||
sleep 60
|
||||
done 2>/dev/null &
|
||||
SUDO_KEEPALIVE_PID=$!
|
||||
|
||||
if [ "$LISTENER_ENABLED" -eq 0 ]; then
|
||||
|
@ -93,9 +101,12 @@ get_tx_failed() {
|
|||
|
||||
freq_to_channel() {
|
||||
local freq=$1
|
||||
if (( freq >= 2412 && freq <= 2472 )); then echo $(((freq - 2407) / 5))
|
||||
elif (( freq == 2484 )); then echo 14
|
||||
elif (( freq >= 5180 && freq <= 5825 )); then echo $(((freq - 5000) / 5))
|
||||
if ((freq >= 2412 && freq <= 2472)); then
|
||||
echo $(((freq - 2407) / 5))
|
||||
elif ((freq == 2484)); then
|
||||
echo 14
|
||||
elif ((freq >= 5180 && freq <= 5825)); then
|
||||
echo $(((freq - 5000) / 5))
|
||||
else echo "Unknown"; fi
|
||||
}
|
||||
|
||||
|
@ -225,31 +236,34 @@ for ((COUNTER = 1; COUNTER <= NUM_TESTS; COUNTER++)); do
|
|||
packet_loss=$(echo "$ping_output" | grep -oP '\d+(?=% packet loss)')
|
||||
jitter=$(echo "$ping_output" | grep "time=" | awk '{print $(NF-1)}' | sed 's/time=//g' | awk '{sum+=$1; sumsq+=$1*$1} END {if (NR>1) print sqrt(sumsq/NR - (sum/NR)**2); else print 0}')
|
||||
|
||||
if [ "$NO_IPERF" -eq 0 ]; then
|
||||
log " Running iperf3 tests..."
|
||||
SECONDS=0
|
||||
LocalTCPUp=$(run_iperf "$IPERF_LOCAL_TARGET" tcp up)
|
||||
localtcpup_duration=$SECONDS
|
||||
SECONDS=0
|
||||
LocalTCPDown=$(run_iperf "$IPERF_LOCAL_TARGET" tcp down)
|
||||
localtcpdown_duration=$SECONDS
|
||||
SECONDS=0
|
||||
LocalUDPUp=$(run_iperf "$IPERF_LOCAL_TARGET" udp up)
|
||||
localudpup_duration=$SECONDS
|
||||
SECONDS=0
|
||||
LocalUDPDown=$(run_iperf "$IPERF_LOCAL_TARGET" udp down)
|
||||
localudpdown_duration=$SECONDS
|
||||
SECONDS=0
|
||||
RemoteTCPUp=$(run_iperf "$IPERF_REMOTE_TARGET" tcp up)
|
||||
remotetcpup_duration=$SECONDS
|
||||
SECONDS=0
|
||||
RemoteTCPDown=$(run_iperf "$IPERF_REMOTE_TARGET" tcp down)
|
||||
remotetcpdown_duration=$SECONDS
|
||||
SECONDS=0
|
||||
RemoteUDPUp=$(run_iperf "$IPERF_REMOTE_TARGET" udp up)
|
||||
remoteudpup_duration=$SECONDS
|
||||
...
|
||||
SECONDS=0
|
||||
RemoteUDPDown=$(run_iperf "$IPERF_REMOTE_TARGET" udp down)
|
||||
remoteudpdown_duration=$SECONDS
|
||||
else
|
||||
log " Skipping iperf3 tests as per --no-iperf flag"
|
||||
LocalTCPUp=0
|
||||
LocalTCPDown=0
|
||||
LocalUDPUp=0
|
||||
LocalUDPDown=0
|
||||
RemoteTCPUp=0
|
||||
RemoteTCPDown=0
|
||||
RemoteUDPUp=0
|
||||
RemoteUDPDown=0
|
||||
localtcpup_duration=0
|
||||
localtcpdown_duration=0
|
||||
localudpup_duration=0
|
||||
localudpdown_duration=0
|
||||
remotetcpup_duration=0
|
||||
remotetcpdown_duration=0
|
||||
remoteudpup_duration=0
|
||||
remoteudpdown_duration=0
|
||||
fi
|
||||
|
||||
if [ "$LISTENER_ENABLED" -eq 1 ]; then
|
||||
if [ -n "${LISTENER_PID:-}" ]; then
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue