Struct webrtc_ice::agent::agent_stats::CandidatePairStats
source · pub struct CandidatePairStats {Show 27 fields
pub timestamp: Instant,
pub local_candidate_id: String,
pub remote_candidate_id: String,
pub state: CandidatePairState,
pub nominated: bool,
pub packets_sent: u32,
pub packets_received: u32,
pub bytes_sent: u64,
pub bytes_received: u64,
pub last_packet_sent_timestamp: Instant,
pub last_packet_received_timestamp: Instant,
pub first_request_timestamp: Instant,
pub last_request_timestamp: Instant,
pub last_response_timestamp: Instant,
pub total_round_trip_time: f64,
pub current_round_trip_time: f64,
pub available_outgoing_bitrate: f64,
pub available_incoming_bitrate: f64,
pub circuit_breaker_trigger_count: u32,
pub requests_received: u64,
pub requests_sent: u64,
pub responses_received: u64,
pub responses_sent: u64,
pub retransmissions_received: u64,
pub retransmissions_sent: u64,
pub consent_requests_sent: u64,
pub consent_expired_timestamp: Instant,
}
Expand description
Contains ICE candidate pair statistics.
Fields§
§timestamp: Instant
The timestamp associated with this struct.
local_candidate_id: String
The id of the local candidate.
remote_candidate_id: String
The id of the remote candidate.
state: CandidatePairState
The state of the checklist for the local and remote candidates in a pair.
nominated: bool
It is true when this valid pair that should be used for media, if it is the highest-priority one amongst those whose nominated flag is set.
packets_sent: u32
The total number of packets sent on this candidate pair.
packets_received: u32
The total number of packets received on this candidate pair.
bytes_sent: u64
The total number of payload bytes sent on this candidate pair not including headers or padding.
bytes_received: u64
The total number of payload bytes received on this candidate pair not including headers or padding.
last_packet_sent_timestamp: Instant
The timestamp at which the last packet was sent on this particular candidate pair, excluding STUN packets.
last_packet_received_timestamp: Instant
The timestamp at which the last packet was received on this particular candidate pair, excluding STUN packets.
first_request_timestamp: Instant
The timestamp at which the first STUN request was sent on this particular candidate pair.
last_request_timestamp: Instant
The timestamp at which the last STUN request was sent on this particular candidate pair. The average interval between two consecutive connectivity checks sent can be calculated with (last_request_timestamp - first_request_timestamp) / requests_sent.
last_response_timestamp: Instant
Timestamp at which the last STUN response was received on this particular candidate pair.
total_round_trip_time: f64
The sum of all round trip time measurements in seconds since the beginning of the session, based on STUN connectivity check responses (responses_received), including those that reply to requests that are sent in order to verify consent. The average round trip time can be computed from total_round_trip_time by dividing it by responses_received.
current_round_trip_time: f64
The latest round trip time measured in seconds, computed from both STUN connectivity checks, including those that are sent for consent verification.
available_outgoing_bitrate: f64
It is calculated by the underlying congestion control by combining the available bitrate for all the outgoing RTP streams using this candidate pair. The bitrate measurement does not count the size of the IP or other transport layers like TCP or UDP. It is similar to the TIAS defined in RFC 3890, i.e., it is measured in bits per second and the bitrate is calculated over a 1 second window.
available_incoming_bitrate: f64
It is calculated by the underlying congestion control by combining the available bitrate for all the incoming RTP streams using this candidate pair. The bitrate measurement does not count the size of the IP or other transport layers like TCP or UDP. It is similar to the TIAS defined in RFC 3890, i.e., it is measured in bits per second and the bitrate is calculated over a 1 second window.
circuit_breaker_trigger_count: u32
The number of times the circuit breaker is triggered for this particular 5-tuple, ceasing transmission.
requests_received: u64
The total number of connectivity check requests received (including retransmissions). It is impossible for the receiver to tell whether the request was sent in order to check connectivity or check consent, so all connectivity checks requests are counted here.
requests_sent: u64
The total number of connectivity check requests sent (not including retransmissions).
responses_received: u64
The total number of connectivity check responses received.
responses_sent: u64
The total number of connectivity check responses sent. Since we cannot distinguish connectivity check requests and consent requests, all responses are counted.
retransmissions_received: u64
The total number of connectivity check request retransmissions received.
retransmissions_sent: u64
The total number of connectivity check request retransmissions sent.
consent_requests_sent: u64
The total number of consent requests sent.
consent_expired_timestamp: Instant
The timestamp at which the latest valid STUN binding response expired.