From: rtrimana Date: Fri, 19 Apr 2019 18:50:04 +0000 (-0700) Subject: Adding more new devices. X-Git-Url: http://plrg.eecs.uci.edu/git/?p=pingpong.git;a=commitdiff_plain;h=0e1a130642de8343806aa43e4cfc132ca2ae2a45 Adding more new devices. --- diff --git a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation.sh b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation.sh index be08cd6..b8eb8dc 100755 --- a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation.sh +++ b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation.sh @@ -294,26 +294,6 @@ PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_S # NEW DEVICES -# ================================================= DLINK MOTION SENSOR ================================================ -INPUT_PCAP="$SIGNATURES_BASE_DIR/dlink-sensor/wlan1/dlink-sensor.wlan1.local.pcap" - -# No signature found for both phone and device sides -OUTPUT_PCAP="$OUTPUT_DIR/dlink-sensor/wlan1/dlink-sensor-processed.pcap" -TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/dlink-sensor/timestamps/dlink-sensor-apr-12-2019.timestamps" -DEVICE_IP="192.168.1.246" -ON_SIGNATURE="$OUTPUT_DIR/dlink-sensor/signatures/dlink-sensor-onSignature-phone-side.sig" -OFF_SIGNATURE="$OUTPUT_DIR/dlink-sensor/signatures/dlink-sensor-offSignature-phone-side.sig" -ON_ANALYSIS="$OUTPUT_DIR/dlink-sensor/analyses/dlink-sensor-onClusters-phone-side.cls" -OFF_ANALYSIS="$OUTPUT_DIR/dlink-sensor/analyses/dlink-sensor-offClusters-phone-side.cls" -EPSILON="10.0" -DELETED_SEQUENCES_ON="-1" -DELETED_SEQUENCES_OFF="-1" - -PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" -#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" -# ====================================================================================================================== - - # ================================================= TP LINK BULB COLOR ================================================= INPUT_PCAP="$SIGNATURES_BASE_DIR/tplink-bulb-color/wlan1/tplink-bulb-color.wlan1.local.pcap" @@ -404,46 +384,6 @@ PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_S #./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" # ====================================================================================================================== -# ================================================= ARLO CAMERA RECORD ================================================= -INPUT_PCAP="$SIGNATURES_BASE_DIR/arlo-camera-record/wlan1/arlo-camera-record.wlan1.local.pcap" - -# Signature -OUTPUT_PCAP="$OUTPUT_DIR/arlo-camera-record/wlan1/arlo-camera-record-processed.pcap" -TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/arlo-camera-record/timestamps/arlo-camera-record-apr-15-2019.timestamps" -# We used a different phone here -DEVICE_IP="192.168.1.130" -ON_SIGNATURE="$OUTPUT_DIR/arlo-camera-record/signatures/arlo-camera-record-onSignature-phone-side.sig" -OFF_SIGNATURE="$OUTPUT_DIR/arlo-camera-record/signatures/arlo-camera-record-offSignature-phone-side.sig" -ON_ANALYSIS="$OUTPUT_DIR/arlo-camera-record/analyses/arlo-camera-record-onClusters-phone-side.cls" -OFF_ANALYSIS="$OUTPUT_DIR/arlo-camera-record/analyses/arlo-camera-record-offClusters-phone-side.cls" -EPSILON="10.0" -DELETED_SEQUENCES_ON="-1" -DELETED_SEQUENCES_OFF="-1" - -PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" -#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" -# ====================================================================================================================== - -# ================================================= ARLO CAMERA SOUND ================================================== -INPUT_PCAP="$SIGNATURES_BASE_DIR/arlo-camera-sound/wlan1/arlo-camera-sound.wlan1.local.pcap" - -# Signature -OUTPUT_PCAP="$OUTPUT_DIR/arlo-camera-sound/wlan1/arlo-camera-sound-processed.pcap" -TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/arlo-camera-sound/timestamps/arlo-camera-sound-apr-17-2019.timestamps" -# We used a different phone here -DEVICE_IP="192.168.1.130" -ON_SIGNATURE="$OUTPUT_DIR/arlo-camera-sound/signatures/arlo-camera-sound-onSignature-phone-side.sig" -OFF_SIGNATURE="$OUTPUT_DIR/arlo-camera-sound/signatures/arlo-camera-sound-offSignature-phone-side.sig" -ON_ANALYSIS="$OUTPUT_DIR/arlo-camera-sound/analyses/arlo-camera-sound-onClusters-phone-side.cls" -OFF_ANALYSIS="$OUTPUT_DIR/arlo-camera-sound/analyses/arlo-camera-sound-offClusters-phone-side.cls" -EPSILON="10.0" -DELETED_SEQUENCES_ON="-1" -DELETED_SEQUENCES_OFF="-1" - -PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" -#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" -# ====================================================================================================================== - # =================================================== AMAZON PLUG ====================================================== INPUT_PCAP="$SIGNATURES_BASE_DIR/amazon-plug/wlan1/amazon-plug.wlan1.local.pcap" @@ -532,27 +472,108 @@ PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_S #./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" # ====================================================================================================================== -# =============================================== RACHIO SPRINKLER STANDBY ============================================= -INPUT_PCAP="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/wlan1/rachio-sprinkler-standby.wlan1.local.pcap" +# ================================================= ECOBEE THERMOSTAT ================================================== +INPUT_PCAP="$SIGNATURES_BASE_DIR/ecobee-thermostat/wlan1/ecobee-thermostat.wlan1.local.pcap" # Phone Signature -OUTPUT_PCAP="$OUTPUT_DIR/rachio-sprinkler-standby/wlan1/rachio-sprinkler-standby-processed.pcap" -TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/timestamps/rachio-sprinkler-standby-apr-17-2019.timestamps" -DEVICE_IP="192.168.1.246" -ON_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-onSignature-phone-side.sig" -OFF_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-offSignature-phone-side.sig" -ON_ANALYSIS="$OUTPUT_DIR/rachio-sprinkler-standby/analyses/rachio-sprinkler-standby-onClusters-phone-side.cls" -OFF_ANALYSIS="$OUTPUT_DIR/rachio-sprinkler-standby/analyses/rachio-sprinkler-standby-offClusters-phone-side.cls" +OUTPUT_PCAP="$OUTPUT_DIR/ecobee-thermostat/wlan1/ecobee-thermostat-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/ecobee-thermostat/timestamps/ecobee-thermostat-apr-17-2019.timestamps" +DEVICE_IP="192.168.1.130" +ON_SIGNATURE="$OUTPUT_DIR/ecobee-thermostat/signatures/ecobee-thermostat-onSignature-phone-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/ecobee-thermostat/signatures/ecobee-thermostat-offSignature-phone-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/ecobee-thermostat/analyses/ecobee-thermostat-onClusters-phone-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/ecobee-thermostat/analyses/ecobee-thermostat-offClusters-phone-side.cls" +EPSILON="10.0" +DELETED_SEQUENCES_ON="1,1,1" +DELETED_SEQUENCES_OFF="1" + +PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" +#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =============================================== ECOBEE THERMOSTAT FAN ================================================ +INPUT_PCAP="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/wlan1/ecobee-thermostat-fan.wlan1.local.pcap" + +# Phone Signature +OUTPUT_PCAP="$OUTPUT_DIR/ecobee-thermostat-fan/wlan1/ecobee-thermostat-fan-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/timestamps/ecobee-thermostat-fan-apr-18-2019.timestamps" +DEVICE_IP="192.168.1.130" +ON_SIGNATURE="$OUTPUT_DIR/ecobee-thermostat-fan/signatures/ecobee-thermostat-fan-onSignature-phone-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/ecobee-thermostat-fan/signatures/ecobee-thermostat-fan-offSignature-phone-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/ecobee-thermostat-fan/analyses/ecobee-thermostat-fan-onClusters-phone-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/ecobee-thermostat-fan/analyses/ecobee-thermostat-fan-offClusters-phone-side.cls" +EPSILON="10.0" +DELETED_SEQUENCES_ON="1,1" +DELETED_SEQUENCES_OFF="1" + +PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" +#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# TODO: No signature??? +# ===================================================== NEST CAMERA ==================================================== +INPUT_PCAP="$SIGNATURES_BASE_DIR/nest-camera/wlan1/nest-camera.wlan1.local.pcap" + +# Phone Signature +OUTPUT_PCAP="$OUTPUT_DIR/nest-camera/wlan1/nest-camera-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/nest-camera/timestamps/nest-camera-apr-18-2019.timestamps" +DEVICE_IP="192.168.1.130" +ON_SIGNATURE="$OUTPUT_DIR/nest-camera/signatures/nest-camera-onSignature-device-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/nest-camera/signatures/nest-camera-offSignature-device-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/nest-camera/analyses/nest-camera-onClusters-device-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/nest-camera/analyses/nest-camera-offClusters-device-side.cls" +EPSILON="10.0" +DELETED_SEQUENCES_ON="2" +DELETED_SEQUENCES_OFF="0" + +PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" +#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =================================================== NEST CAMERA MIC ================================================== +INPUT_PCAP="$SIGNATURES_BASE_DIR/nest-camera-mic/wlan1/nest-camera-mic.wlan1.local.pcap" + +# Phone Signature +OUTPUT_PCAP="$OUTPUT_DIR/nest-camera-mic/wlan1/nest-camera-mic-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/nest-camera-mic/timestamps/nest-camera-mic-apr-18-2019.timestamps" +DEVICE_IP="192.168.1.130" +ON_SIGNATURE="$OUTPUT_DIR/nest-camera-mic/signatures/nest-camera-mic-onSignature-device-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/nest-camera-mic/signatures/nest-camera-mic-offSignature-device-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/nest-camera-mic/analyses/nest-camera-mic-onClusters-device-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/nest-camera-mic/analyses/nest-camera-mic-offClusters-device-side.cls" +EPSILON="10.0" +DELETED_SEQUENCES_ON="-1" +DELETED_SEQUENCES_OFF="-1" + +PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" +./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# ================================================= RACHIO SPRINKLER =================================================== +INPUT_PCAP="$SIGNATURES_BASE_DIR/rachio-sprinkler/wlan1/rachio-sprinkler.wlan1.local.pcap" + +# Device Signature +OUTPUT_PCAP="$OUTPUT_DIR/rachio-sprinkler/wlan1/rachio-sprinkler-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler/timestamps/rachio-sprinkler-apr-18-2019.timestamps" +DEVICE_IP="192.168.1.143" +ON_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler/signatures/rachio-sprinkler-onSignature-device-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler/signatures/rachio-sprinkler-offSignature-device-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/rachio-sprinkler/analyses/rachio-sprinkler-onClusters-device-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/rachio-sprinkler/analyses/rachio-sprinkler-offClusters-device-side.cls" EPSILON="10.0" DELETED_SEQUENCES_ON="-1" DELETED_SEQUENCES_OFF="-1" PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" #./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =============================================== RACHIO SPRINKLER STANDBY ============================================= +INPUT_PCAP="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/wlan1/rachio-sprinkler-standby.wlan1.local.pcap" # Device Signature OUTPUT_PCAP="$OUTPUT_DIR/rachio-sprinkler-standby/wlan1/rachio-sprinkler-standby-processed.pcap" -TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/timestamps/rachio-sprinkler-standby-apr-17-2019.timestamps" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/timestamps/rachio-sprinkler-standby-apr-18-2019.timestamps" DEVICE_IP="192.168.1.143" ON_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-onSignature-device-side.sig" OFF_SIGNATURE="$OUTPUT_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-offSignature-device-side.sig" @@ -563,9 +584,31 @@ DELETED_SEQUENCES_ON="-1" DELETED_SEQUENCES_OFF="-1" PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" -./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# TODO: NEED TO REDO THIS??? +# ================================================= ROOMBA VACUUM ROBOT ================================================ +INPUT_PCAP="$SIGNATURES_BASE_DIR/roomba-vacuum-robot/wlan1/roomba-vacuum-robot.wlan1.local.pcap" + +# Device Signature +OUTPUT_PCAP="$OUTPUT_DIR/roomba-vacuum-robot/wlan1/roomba-vacuum-robot-processed.pcap" +TIMESTAMP_FILE="$SIGNATURES_BASE_DIR/roomba-vacuum-robot/timestamps/roomba-vacuum-robot-apr-18-2019.timestamps" +DEVICE_IP="192.168.1.153" +ON_SIGNATURE="$OUTPUT_DIR/roomba-vacuum-robot/signatures/roomba-vacuum-robot-onSignature-device-side.sig" +OFF_SIGNATURE="$OUTPUT_DIR/roomba-vacuum-robot/signatures/roomba-vacuum-robot-offSignature-device-side.sig" +ON_ANALYSIS="$OUTPUT_DIR/roomba-vacuum-robot/analyses/roomba-vacuum-robot-onClusters-device-side.cls" +OFF_ANALYSIS="$OUTPUT_DIR/roomba-vacuum-robot/analyses/roomba-vacuum-robot-offClusters-device-side.cls" +EPSILON="10.0" +DELETED_SEQUENCES_ON="-1" +DELETED_SEQUENCES_OFF="-1" + +PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$EPSILON' '$DELETED_SEQUENCES_ON' '$DELETED_SEQUENCES_OFF'" +#./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS" # ====================================================================================================================== + +# TODO: NEED TO REDO THIS ON/OFF EXPERIMENT??? # =================================================== RING DOORBELL RING =============================================== INPUT_PCAP="$SIGNATURES_BASE_DIR/ring-doorbell-ring/wlan1/ring-doorbell-ring.wlan1.local.pcap" diff --git a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation.sh b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation.sh index c7a3302..5a6f458 100755 --- a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation.sh +++ b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation.sh @@ -424,6 +424,91 @@ RESULTS_FILE="$OUTPUT_DIR/sengled-bulb-intensity/sengled-bulb-intensity.eth1.val SIGNATURE_DURATION="906" EPSILON="10.0" +PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" +#./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# ================================================= ECOBEE THERMOSTAT ================================================== +PCAP_FILE="$SIGNATURES_BASE_DIR/ecobee-thermostat/wlan1/ecobee-thermostat.wlan1.local.pcap" + +# PHONE SIDE +ON_ANALYSIS="$SIGNATURES_BASE_DIR/ecobee-thermostat/analyses/ecobee-thermostat-onClusters-phone-side.cls" +OFF_ANALYSIS="$SIGNATURES_BASE_DIR/ecobee-thermostat/analyses/ecobee-thermostat-offClusters-phone-side.cls" +ON_SIGNATURE="$SIGNATURES_BASE_DIR/ecobee-thermostat/signatures/ecobee-thermostat-onSignature-phone-side.sig" +OFF_SIGNATURE="$SIGNATURES_BASE_DIR/ecobee-thermostat/signatures/ecobee-thermostat-offSignature-phone-side.sig" +RESULTS_FILE="$OUTPUT_DIR/ecobee-thermostat/ecobee-thermostat.wlan1.validation.pcap___phone-side.detectionresults" +SIGNATURE_DURATION="733" +EPSILON="10.0" + +PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" +#./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" + +# ====================================================================================================================== + +# =============================================== ECOBEE THERMOSTAT FAN ================================================ +PCAP_FILE="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/wlan1/ecobee-thermostat-fan.wlan1.local.pcap" + +# PHONE SIDE +ON_ANALYSIS="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/analyses/ecobee-thermostat-fan-onClusters-phone-side.cls" +OFF_ANALYSIS="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/analyses/ecobee-thermostat-fan-offClusters-phone-side.cls" +ON_SIGNATURE="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/signatures/ecobee-thermostat-fan-onSignature-phone-side.sig" +OFF_SIGNATURE="$SIGNATURES_BASE_DIR/ecobee-thermostat-fan/signatures/ecobee-thermostat-fan-offSignature-phone-side.sig" +RESULTS_FILE="$OUTPUT_DIR/ecobee-thermostat-fan/ecobee-thermostat-fan.wlan1.validation.pcap___phone-side.detectionresults" +SIGNATURE_DURATION="1953" +EPSILON="10.0" + +PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" +#./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" + +# ====================================================================================================================== + +# =================================================== NEST CAMERA MIC ================================================== +PCAP_FILE="$SIGNATURES_BASE_DIR/nest-camera-mic/wlan1/nest-camera-mic.wlan1.local.pcap" + +# DEVICE SIDE +ON_ANALYSIS="$SIGNATURES_BASE_DIR/nest-camera-mic/analyses/nest-camera-mic-onClusters-device-side.cls" +OFF_ANALYSIS="$SIGNATURES_BASE_DIR/nest-camera-mic/analyses/nest-camera-mic-offClusters-device-side.cls" +ON_SIGNATURE="$SIGNATURES_BASE_DIR/nest-camera-mic/signatures/nest-camera-mic-onSignature-device-side.sig" +OFF_SIGNATURE="$SIGNATURES_BASE_DIR/nest-camera-mic/signatures/nest-camera-mic-offSignature-device-side.sig" +RESULTS_FILE="$OUTPUT_DIR/nest-camera-mic/nest-camera-mic.wlan1.validation.pcap___device-side.detectionresults" +SIGNATURE_DURATION="97" +EPSILON="10.0" + PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" ./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" -# ====================================================================================================================== \ No newline at end of file +# ====================================================================================================================== + +# ================================================= RACHIO SPRINKLER =================================================== +PCAP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler/wlan1/rachio-sprinkler.wlan1.local.pcap" + +# DEVICE SIDE +ON_ANALYSIS="$SIGNATURES_BASE_DIR/rachio-sprinkler/analyses/rachio-sprinkler-onClusters-device-side.cls" +OFF_ANALYSIS="$SIGNATURES_BASE_DIR/rachio-sprinkler/analyses/rachio-sprinkler-offClusters-device-side.cls" +ON_SIGNATURE="$SIGNATURES_BASE_DIR/rachio-sprinkler/signatures/rachio-sprinkler-onSignature-device-side.sig" +OFF_SIGNATURE="$SIGNATURES_BASE_DIR/rachio-sprinkler/signatures/rachio-sprinkler-offSignature-device-side.sig" +RESULTS_FILE="$OUTPUT_DIR/rachio-sprinkler/rachio-sprinkler.wlan1.validation.pcap___device-side.detectionresults" +SIGNATURE_DURATION="2695" +EPSILON="10.0" + +PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" +#./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# TODO: NEED TO REDO THIS ON/OFF EXPERIMENT??? +# =============================================== RACHIO SPRINKLER STANDBY ============================================= +PCAP_FILE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/wlan1/rachio-sprinkler-standby.wlan1.local.pcap" + +# PHONE SIDE - too many false positives so we don't take it + +# DEVICE SIDE +ON_ANALYSIS="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/analyses/rachio-sprinkler-standby-onClusters-device-side.cls" +OFF_ANALYSIS="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/analyses/rachio-sprinkler-standby-offClusters-device-side.cls" +ON_SIGNATURE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-onSignature-device-side.sig" +OFF_SIGNATURE="$SIGNATURES_BASE_DIR/rachio-sprinkler-standby/signatures/rachio-sprinkler-standby-offSignature-device-side.sig" +RESULTS_FILE="$OUTPUT_DIR/rachio-sprinkler-standby/rachio-sprinkler-standby.wlan1.validation.pcap___device-side.detectionresults" +SIGNATURE_DURATION="2791" +EPSILON="10.0" + +PROGRAM_ARGS="'$PCAP_FILE' '$ON_ANALYSIS' '$OFF_ANALYSIS' '$ON_SIGNATURE' '$OFF_SIGNATURE' '$RESULTS_FILE' '$SIGNATURE_DURATION' '$EPSILON'" +#./gradlew run -DmainClass=edu.uci.iotproject.detection.layer3.Layer3SignatureDetector --args="$PROGRAM_ARGS" +# ====================================================================================================================== diff --git a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation_results_analysis.sh b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation_results_analysis.sh index 15f9adb..9d49bc1 100755 --- a/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation_results_analysis.sh +++ b/Code/Projects/PacketLevelSignatureExtractor/execute_signature_validation_results_analysis.sh @@ -264,14 +264,13 @@ PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXAC # =================================================== SENGLED BULB ===================================================== TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/sengled-bulb/timestamps/sengled-bulb-apr-16-2019.timestamps" -# DEVICE SIDE +# PHONE SIDE RESULTS_FILE="$RESULTS_BASE_DIR/sengled-bulb/sengled-bulb.wlan1.validation.pcap___phone-side.detectionresults" ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" EXACT_MATCH="true" PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" #./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" -# PHONE SIDE # DEVICE SIDE RESULTS_FILE="$RESULTS_BASE_DIR/sengled-bulb/sengled-bulb.eth1.validation.pcap___device-side.detectionresults" ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" @@ -283,18 +282,61 @@ PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXAC # =============================================== SENGLED BULB INTENSITY =============================================== TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/sengled-bulb-intensity/timestamps/sengled-bulb-intensity-apr-17-2019.timestamps" -# DEVICE SIDE +# PHONE SIDE RESULTS_FILE="$RESULTS_BASE_DIR/sengled-bulb-intensity/sengled-bulb-intensity.wlan1.validation.pcap___phone-side.detectionresults" ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" EXACT_MATCH="true" PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" #./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" -# PHONE SIDE # DEVICE SIDE RESULTS_FILE="$RESULTS_BASE_DIR/sengled-bulb-intensity/sengled-bulb-intensity.eth1.validation.pcap___device-side.detectionresults" ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" EXACT_MATCH="true" PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" -./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" +#./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# ================================================= ECOBEE THERMOSTAT ================================================== +TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/ecobee-thermostat/timestamps/ecobee-thermostat-apr-17-2019.timestamps" + +# PHONE SIDE +RESULTS_FILE="$RESULTS_BASE_DIR/ecobee-thermostat/ecobee-thermostat.wlan1.validation.pcap___phone-side.detectionresults" +ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" +EXACT_MATCH="true" +PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" +#./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =============================================== ECOBEE THERMOSTAT FAN ================================================ +TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/ecobee-thermostat-fan/timestamps/ecobee-thermostat-fan-apr-18-2019.timestamps" + +# PHONE SIDE +RESULTS_FILE="$RESULTS_BASE_DIR/ecobee-thermostat-fan/ecobee-thermostat-fan.wlan1.validation.pcap___phone-side.detectionresults" +ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" +EXACT_MATCH="true" +PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" +#./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =================================================== RACHIO SPRINKLER ================================================= +TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/rachio-sprinkler/timestamps/rachio-sprinkler-apr-18-2019.timestamps" + +# DEVICE SIDE +RESULTS_FILE="$RESULTS_BASE_DIR/rachio-sprinkler/rachio-sprinkler.wlan1.validation.pcap___device-side.detectionresults" +ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" +EXACT_MATCH="true" +PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" +#./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" +# ====================================================================================================================== + +# =============================================== RACHIO SPRINKLER STANDBY ============================================= +TIMESTAMPS_FILE="$TIMESTAMPS_BASE_DIR/rachio-sprinkler-standby/timestamps/rachio-sprinkler-standby-apr-18-2019.timestamps" + +# DEVICE SIDE +RESULTS_FILE="$RESULTS_BASE_DIR/rachio-sprinkler-standby/rachio-sprinkler-standby.wlan1.validation.pcap___device-side.detectionresults" +ANALYSIS_RESULTS_FILE="$RESULTS_FILE.analysis" +EXACT_MATCH="true" +PROGRAM_ARGS="'$TIMESTAMPS_FILE' '$RESULTS_FILE' '$ANALYSIS_RESULTS_FILE' '$EXACT_MATCH'" +#./gradlew run -DmainClass=edu.uci.iotproject.evaluation.DetectionResultsAnalyzer --args="$PROGRAM_ARGS" # ====================================================================================================================== \ No newline at end of file diff --git a/Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/SignatureGenerator.java b/Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/SignatureGenerator.java index c074014..57e0a0e 100644 --- a/Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/SignatureGenerator.java +++ b/Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/SignatureGenerator.java @@ -216,6 +216,8 @@ public class SignatureGenerator { int numberOfEventsPerType = triggerTimes.size() / 2; int lowerBound = numberOfEventsPerType - (int)(numberOfEventsPerType * 0.1); int upperBound = numberOfEventsPerType + (int)(numberOfEventsPerType * 0.1); + //int lowerBound = numberOfEventsPerType - (int)(numberOfEventsPerType * 0.5); + //int upperBound = numberOfEventsPerType + (int)(numberOfEventsPerType * 0.5); int minPts = lowerBound; DBSCANClusterer onClusterer = new DBSCANClusterer<>(eps, minPts); List> onClusters = onClusterer.cluster(onPairs);