From dd4dc7a18e125047f803a8e9fb07b7aca5cb7a8d Mon Sep 17 00:00:00 2001 From: Sebastian Jansson Date: Thu, 27 Jun 2019 18:18:38 +0200 Subject: [PATCH] Adds additional fields to NetworkStateEstimate. This is part of a series of CLs with the goal to make the network state estimate fields more semantically useful. Bug: webrtc:10742 Change-Id: I3185dc8c4574710a4dce44a4ffd6cefe0fb4e8cc Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144036 Commit-Queue: Sebastian Jansson Reviewed-by: Jonas Olsson Cr-Commit-Position: refs/heads/master@{#28406} --- api/transport/network_types.h | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/api/transport/network_types.h b/api/transport/network_types.h index dcbe3c4edc..df046dbc11 100644 --- a/api/transport/network_types.h +++ b/api/transport/network_types.h @@ -227,18 +227,32 @@ struct ProcessInterval { // Under development, subject to change without notice. struct NetworkStateEstimate { - Timestamp last_feed_time = Timestamp::MinusInfinity(); + double confidence = NAN; + // The time the estimate was received/calculated. + Timestamp update_time = Timestamp::MinusInfinity(); + Timestamp last_receive_time = Timestamp::MinusInfinity(); Timestamp last_send_time = Timestamp::MinusInfinity(); - TimeDelta time_delta = TimeDelta::MinusInfinity(); + + // Total estimated link capacity. DataRate link_capacity = DataRate::MinusInfinity(); - DataRate link_capacity_std_dev = DataRate::MinusInfinity(); - DataRate link_capacity_min = DataRate::MinusInfinity(); - double cross_traffic_ratio = NAN; + // Lower bound of link capacity estimate. + DataRate link_capacity_lower = DataRate::MinusInfinity(); + // Expected available capacity for sending data after cross traffic is taken + // into consideration. + DataRate available_capacity = DataRate::MinusInfinity(); + TimeDelta pre_link_buffer_delay = TimeDelta::MinusInfinity(); TimeDelta post_link_buffer_delay = TimeDelta::MinusInfinity(); TimeDelta propagation_delay = TimeDelta::MinusInfinity(); + + // Only for debugging + TimeDelta time_delta = TimeDelta::MinusInfinity(); + Timestamp last_feed_time = Timestamp::MinusInfinity(); double cross_delay_rate = NAN; double spike_delay_rate = NAN; + DataRate link_capacity_std_dev = DataRate::MinusInfinity(); + DataRate link_capacity_min = DataRate::MinusInfinity(); + double cross_traffic_ratio = NAN; }; } // namespace webrtc