summaryrefslogtreecommitdiff
path: root/node/Constants.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'node/Constants.hpp')
-rw-r--r--node/Constants.hpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/node/Constants.hpp b/node/Constants.hpp
index fddfce6a..b85c1b93 100644
--- a/node/Constants.hpp
+++ b/node/Constants.hpp
@@ -275,6 +275,23 @@
#define ZT_MULTIPATH_BINDER_REFRESH_PERIOD 5000
/**
+ * Time horizon for VERB_QOS_MEASUREMENT and VERB_ACK packet processesing cutoff
+ */
+#define ZT_PATH_QOS_ACK_CUTOFF_TIME 30000
+
+/**
+ * Maximum number of VERB_QOS_MEASUREMENT and VERB_ACK packets allowed to be
+ * processesed within cutoff time. Separate totals are kept for each type but
+ * the limit is the same for both.
+ *
+ * This limits how often this peer will compute statistical estimates
+ * of various QoS measures from a VERB_QOS_MEASUREMENT or VERB_ACK packets to
+ * CUTOFF_LIMIT times per CUTOFF_TIME milliseconds per peer to prevent
+ * this from being useful for DOS amplification attacks.
+ */
+#define ZT_PATH_QOS_ACK_CUTOFF_LIMIT 16
+
+/**
* Path choice history window size. This is used to keep track of which paths were
* previously selected so that we can maintain a target allocation over time.
*/