summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h')
-rw-r--r--third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h b/third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h
new file mode 100644
index 0000000000..f19823b21e
--- /dev/null
+++ b/third_party/libwebrtc/p2p/base/p2p_transport_channel_ice_field_trials.h
@@ -0,0 +1,77 @@
+/*
+ * Copyright 2019 The WebRTC Project Authors. All rights reserved.
+ *
+ * Use of this source code is governed by a BSD-style license
+ * that can be found in the LICENSE file in the root of the source
+ * tree. An additional intellectual property rights grant can be found
+ * in the file PATENTS. All contributing project authors may
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
+#ifndef P2P_BASE_P2P_TRANSPORT_CHANNEL_ICE_FIELD_TRIALS_H_
+#define P2P_BASE_P2P_TRANSPORT_CHANNEL_ICE_FIELD_TRIALS_H_
+
+#include "absl/types/optional.h"
+
+namespace cricket {
+
+// Field trials for P2PTransportChannel and friends,
+// put in separate file so that they can be shared e.g
+// with Connection.
+struct IceFieldTrials {
+ // This struct is built using the FieldTrialParser, and then not modified.
+ // TODO(jonaso) : Consider how members of this struct can be made const.
+
+ bool skip_relay_to_non_relay_connections = false;
+ absl::optional<int> max_outstanding_pings;
+
+ // Wait X ms before selecting a connection when having none.
+ // This will make media slower, but will give us chance to find
+ // a better connection before starting.
+ absl::optional<int> initial_select_dampening;
+
+ // If the connection has recevied a ping-request, delay by
+ // maximum this delay. This will make media slower, but will
+ // give us chance to find a better connection before starting.
+ absl::optional<int> initial_select_dampening_ping_received;
+
+ // Announce GOOG_PING support in STUN_BINDING_RESPONSE if requested
+ // by peer.
+ bool announce_goog_ping = true;
+
+ // Enable sending GOOG_PING if remote announce it.
+ bool enable_goog_ping = false;
+
+ // Decay rate for RTT estimate using EventBasedExponentialMovingAverage
+ // expressed as halving time.
+ int rtt_estimate_halftime_ms = 500;
+
+ // Sending a PING directly after a switch on ICE_CONTROLLING-side.
+ // TODO(jonaso) : Deprecate this in favor of
+ // `send_ping_on_selected_ice_controlling`.
+ bool send_ping_on_switch_ice_controlling = false;
+
+ // Sending a PING directly after selecting a connection
+ // (i.e either a switch or the inital selection).
+ bool send_ping_on_selected_ice_controlling = false;
+
+ // Sending a PING directly after a nomination on ICE_CONTROLLED-side.
+ bool send_ping_on_nomination_ice_controlled = false;
+
+ // The timeout after which the connection will be considered dead if no
+ // traffic is received.
+ int dead_connection_timeout_ms = 30000;
+
+ // Stop gathering when having a strong connection.
+ bool stop_gather_on_strongly_connected = true;
+
+ // DSCP taging.
+ absl::optional<int> override_dscp;
+
+ bool piggyback_ice_check_acknowledgement = false;
+ bool extra_ice_ping = false;
+};
+
+} // namespace cricket
+
+#endif // P2P_BASE_P2P_TRANSPORT_CHANNEL_ICE_FIELD_TRIALS_H_