| Index: net/quic/quic_connection_logger.h
|
| diff --git a/net/quic/quic_connection_logger.h b/net/quic/quic_connection_logger.h
|
| index ed9577ac361761ec0b98805f6e5f7eead0de5da7..7272c386653632c1cbee4ecfa209e65d0a2a6632 100644
|
| --- a/net/quic/quic_connection_logger.h
|
| +++ b/net/quic/quic_connection_logger.h
|
| @@ -5,7 +5,10 @@
|
| #ifndef NET_QUIC_QUIC_CONNECTION_LOGGER_H_
|
| #define NET_QUIC_QUIC_CONNECTION_LOGGER_H_
|
|
|
| +#include <bitset>
|
| +
|
| #include "net/base/ip_endpoint.h"
|
| +#include "net/base/network_change_notifier.h"
|
| #include "net/quic/quic_connection.h"
|
| #include "net/quic/quic_protocol.h"
|
|
|
| @@ -60,6 +63,13 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger
|
| void OnSuccessfulVersionNegotiation(const QuicVersion& version);
|
|
|
| private:
|
| + // Do a factory get for an "Ack_" or "Nack_" style histogram for recording
|
| + // packet loss stats.
|
| + base::HistogramBase* GetAckHistogram(const char* ack_or_nack);
|
| + // At destruction time, this records results of |pacaket_received_| into
|
| + // histograms for specific connection types.
|
| + void RecordAckNackHistograms();
|
| +
|
| BoundNetLog net_log_;
|
| // The last packet sequence number received.
|
| QuicPacketSequenceNumber last_received_packet_sequence_number_;
|
| @@ -78,6 +88,13 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger
|
| size_t num_truncated_acks_received_;
|
| // The kCADR value provided by the server in ServerHello.
|
| IPEndPoint client_address_;
|
| + // Vector of inital packets status' indexed by packet sequence numbers, where
|
| + // false means never received. Zero is not a valid packet sequence number, so
|
| + // that offset is never used, and we'll track 100 packets.
|
| + std::bitset<101> packets_received_;
|
| + // The available type of connection (WiFi, 3G, etc.) when connection was first
|
| + // used.
|
| + NetworkChangeNotifier::ConnectionType connection_type_;
|
| DISALLOW_COPY_AND_ASSIGN(QuicConnectionLogger);
|
| };
|
|
|
|
|