Adding notes in the source code and scripts.
authorrtrimana <rtrimana@uci.edu>
Wed, 12 Feb 2020 19:41:27 +0000 (11:41 -0800)
committerrtrimana <rtrimana@uci.edu>
Wed, 12 Feb 2020 19:41:27 +0000 (11:41 -0800)
Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation.sh
Code/Projects/PacketLevelSignatureExtractor/execute_signature_generation_imc_dataset.sh
Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/SignatureGenerator.java
Code/Projects/PacketLevelSignatureExtractor/src/main/java/edu/uci/iotproject/analysis/TriggerTrafficExtractor.java

index 353e4a1e5693f3a039c5b554679c4f30d4fb45f2..8afb3f1297d75d13103c149a2bc8c73f9c9b8d4f 100755 (executable)
@@ -1012,7 +1012,7 @@ PROGRAM_ARGS="'$INPUT_PCAP' '$OUTPUT_PCAP' '$TIMESTAMP_FILE' '$DEVICE_IP' '$ON_S
 #./gradlew run -DmainClass=edu.uci.iotproject.SignatureGenerator --args="$PROGRAM_ARGS"
 # ======================================================================================================================
 
-# TODO: RETRAINING
+# TODO: PUBLIC DATASET
 # ==================================================== TP-LINK PLUG ====================================================
 INPUT_PCAP="$SIGNATURES_BASE_DIR/tplink-plug/wlan1/tplink-plug.wlan1.local.pcap"
 
@@ -1025,8 +1025,8 @@ ON_ANALYSIS="$OUTPUT_DIR/tplink-plug/analyses/tplink-plug-onClusters-device-side
 OFF_ANALYSIS="$OUTPUT_DIR/tplink-plug/analyses/tplink-plug-offClusters-device-side.cls"
 EPSILON="10.0"
 # TODO: Change the deleted sequences to 0 if we want to get just the outbound signatures
-DELETED_SEQUENCES_ON="-1"
-DELETED_SEQUENCES_OFF="-1"
+DELETED_SEQUENCES_ON="0"
+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"
index 994348626c5a7115635c6be50cd974ea2ce28ba1..b237ea905c16d4584aac925241860636c5d8dbd8 100755 (executable)
@@ -13,7 +13,7 @@
 # TODO: Please don't forget to preprocess the dataset using the instructions
 # TODO:     in PingPong/evaluation-datasets/public-dataset/smarthome/README
 
-# TODO: For a number of devices the upper bound multipliers should be as high as 0.9 or 0.99 due to
+# TODO: For a number of devices the CLUSTER_BOUNDS_MULTIPLIER should be as high as 0.9 or 0.99 due to
 # TODO:     inconsistent network traces (see SignatureGenerator.java).
 # TODO: For most cases, INCLUSION_WINDOW_MILLIS needs to be 30_000 (see TriggerTrafficExtractor.java).
 
@@ -40,7 +40,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -59,7 +59,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -78,7 +78,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -97,7 +97,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -429,7 +429,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="2,0"
 DELETED_SEQUENCES_OFF="2,0"
 
-# TODO: Need to change lower and upper bound multipliers to 0.9 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.9 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -467,7 +467,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -486,7 +486,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="2,1"
 DELETED_SEQUENCES_OFF="2,0"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -506,7 +506,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: UDP based device
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -526,7 +526,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: UDP based device
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -565,7 +565,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: UDP based device
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -585,7 +585,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: NO SIGNATURE HERE! BIG CLUSTERS!
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -604,7 +604,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -623,7 +623,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -642,7 +642,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -661,7 +661,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -680,7 +680,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -699,7 +699,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -718,7 +718,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -737,7 +737,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -756,7 +756,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="2"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -775,7 +775,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -794,7 +794,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0,1"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -813,7 +813,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -832,7 +832,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0"
 DELETED_SEQUENCES_OFF="0,1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -851,7 +851,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -870,7 +870,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -889,7 +889,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="3,2"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -908,7 +908,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0,1"
 DELETED_SEQUENCES_OFF="1,0,1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.4 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.4 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -927,7 +927,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="0,0"
 DELETED_SEQUENCES_OFF="0,1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.4 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.4 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -946,7 +946,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
 # TODO: Also the datapoints could only be 4
 # TODO: 05/04/2019 12:13:20 PM #05/04/2019 12:14:03 PM #05/04/2019 12:31:39 PM #05/04/2019 12:32:21 PM
 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'"
@@ -968,7 +968,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: Clusters are small, presumably due to broken PCAP files (their recording seems to be inconsistent and noisy)
-# TODO: Need to change lower and upper bound multipliers to 0.9 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.9 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -987,7 +987,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="2"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1006,7 +1006,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1,0,0"
 DELETED_SEQUENCES_OFF="0,0,2"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1025,7 +1025,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1044,7 +1044,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1063,7 +1063,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.3 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1082,7 +1082,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1101,7 +1101,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1120,7 +1120,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1139,7 +1139,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1159,7 +1159,7 @@ DELETED_SEQUENCES_ON="0,0"
 DELETED_SEQUENCES_OFF="2,0"
 
 # TODO: Made the dataset smaller (just 10 events)
-# TODO: Need to change lower and upper bound multipliers to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1179,7 +1179,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: This contains empty PCAP files
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1199,7 +1199,7 @@ DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
 # TODO: This contains empty PCAP files
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1218,7 +1218,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="3"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.1 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1237,7 +1237,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="3,1,0"
 DELETED_SEQUENCES_OFF="2,0"
 
-# TODO: Need to change lower and upper bound multipliers to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1256,7 +1256,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1,1"
 DELETED_SEQUENCES_OFF="1,1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.5 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1275,7 +1275,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1294,7 +1294,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.99 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.99 and INCLUSION_WINDOW_MILLIS = 30_000
 # TODO: However, the clusters are really small due to inconsistent traffic patterns (seems to be a PCAP-capturing problem on their end)
 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"
@@ -1314,7 +1314,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.99 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.99 and INCLUSION_WINDOW_MILLIS = 30_000
 # TODO: However, the clusters are really small due to inconsistent traffic patterns (seems to be a PCAP-capturing problem on their end)
 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"
@@ -1354,7 +1354,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1373,7 +1373,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1392,7 +1392,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1411,7 +1411,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1430,7 +1430,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="0"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1449,7 +1449,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1468,7 +1468,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1487,7 +1487,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1506,7 +1506,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1525,7 +1525,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="1"
 DELETED_SEQUENCES_OFF="0"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1544,7 +1544,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
@@ -1563,7 +1563,7 @@ EPSILON="10.0"
 DELETED_SEQUENCES_ON="-1"
 DELETED_SEQUENCES_OFF="-1"
 
-# TODO: Need to change lower and upper bound multipliers to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
+# TODO: Need to change CLUSTER_BOUNDS_MULTIPLIER to 0.2 and INCLUSION_WINDOW_MILLIS = 30_000
 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"
 # ======================================================================================================================
index ea3e39b41b49e24e00847d2c41481b5fc5d69917..786c65f3d4104cd9098af5670dacbf83aab853ac 100644 (file)
@@ -29,9 +29,25 @@ import java.util.stream.Stream;
  * lengths with training data to determine certain events
  * or actions for smart home devices.
  *
+ * Notes:
+ * This first version of software is created based on binary events (i.e., ON/OFF).
+ * We first tested it with the TP-Link plug. The events ON and OFF were generated alternately for 100 times using
+ * the automation scripts (see the automation folder). Thus, this program tries to extract signatures by
+ * assuming that:
+ *
+ * (1) there are 2 types of events (binary), and
+ * (2) the two types are triggered alternately.
+ *
+ * Hence, for non-binary events, we still can trigger the same event for 100 times and PingPong still groups them
+ * in 2 groups of 50 occurrences each. Please keep in mind that the 2 groups are simply named "ON" and "OFF"
+ * in this program although we tested PingPong against other types of events. For non-binary events (e.g., Intensity)
+ * we still trigger the phone app alternately between two values---to have a comprehensive understanding, we alternately
+ * triggered the intensity values of 1% and 100%. We suspect that the variation in lengths are due to the different
+ * lengths of the string "1%" to "100%".
+ *
  * @author Janus Varmarken
  * @author Rahmadi Trimananda (rtrimana@uci.edu)
- * @version 0.1
+ * @version 1.0
  */
 public class SignatureGenerator {
 
index 701d086c40b41929626c839d819b47d56495c904..019eecf145d9dec585cf08446d598426db7650f7 100644 (file)
@@ -28,7 +28,7 @@ public class TriggerTrafficExtractor implements PcapPacketFilter {
 
     public static final int INCLUSION_WINDOW_MILLIS = 15_000;
     // TODO: Relax the inclusion time if needed
-//    public static final int INCLUSION_WINDOW_MILLIS = 30_000;
+    //public static final int INCLUSION_WINDOW_MILLIS = 30_000;
 
     public TriggerTrafficExtractor(String pcapFilePath, List<Instant> triggerTimes, String deviceIp) throws PcapNativeException, NotOpenException {
         mPcapFilePath = pcapFilePath;