summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-09 07:05:58 +0000
committerrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-09 07:05:58 +0000
commit368e14be4491f62f0c9a3e3402b242edbb08a51a (patch)
tree7f032d43b33e084bb44b568cc044718b7f73b789 /net
parent30c15214001ea95d0b04fab6459f616f191f8d18 (diff)
downloadchromium_src-368e14be4491f62f0c9a3e3402b242edbb08a51a.zip
chromium_src-368e14be4491f62f0c9a3e3402b242edbb08a51a.tar.gz
chromium_src-368e14be4491f62f0c9a3e3402b242edbb08a51a.tar.bz2
Add histograms for tracking the Address Family for QUIC connections.
BUG= Review URL: https://codereview.chromium.org/270573006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269178 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/quic/quic_connection_logger.cc14
-rw-r--r--net/quic/quic_connection_logger.h4
2 files changed, 15 insertions, 3 deletions
diff --git a/net/quic/quic_connection_logger.cc b/net/quic/quic_connection_logger.cc
index cd579ff..477cc7e 100644
--- a/net/quic/quic_connection_logger.cc
+++ b/net/quic/quic_connection_logger.cc
@@ -424,6 +424,13 @@ void QuicConnectionLogger:: OnPacketRetransmitted(
void QuicConnectionLogger::OnPacketReceived(const IPEndPoint& self_address,
const IPEndPoint& peer_address,
const QuicEncryptedPacket& packet) {
+ if (local_address_from_self_.GetFamily() == ADDRESS_FAMILY_UNSPECIFIED) {
+ local_address_from_self_ = self_address;
+ UMA_HISTOGRAM_ENUMERATION("Net.QuicSession.ConnectionTypeFromSelf",
+ self_address.GetFamily(),
+ ADDRESS_FAMILY_LAST);
+ }
+
last_received_packet_size_ = packet.length();
net_log_.AddEvent(
NetLog::TYPE_QUIC_SESSION_PACKET_RECEIVED,
@@ -551,7 +558,7 @@ void QuicConnectionLogger::OnConnectionCloseFrame(
void QuicConnectionLogger::OnPublicResetPacket(
const QuicPublicResetPacket& packet) {
net_log_.AddEvent(NetLog::TYPE_QUIC_SESSION_PUBLIC_RESET_PACKET_RECEIVED);
- UpdatePublicResetAddressMismatchHistogram(client_address_,
+ UpdatePublicResetAddressMismatchHistogram(local_address_from_shlo_,
packet.client_address);
}
@@ -581,7 +588,10 @@ void QuicConnectionLogger::OnCryptoHandshakeMessageReceived(
QuicSocketAddressCoder decoder;
if (message.GetStringPiece(kCADR, &address) &&
decoder.Decode(address.data(), address.size())) {
- client_address_ = IPEndPoint(decoder.ip(), decoder.port());
+ local_address_from_shlo_ = IPEndPoint(decoder.ip(), decoder.port());
+ UMA_HISTOGRAM_ENUMERATION("Net.QuicSession.ConnectionTypeFromPeer",
+ local_address_from_shlo_.GetFamily(),
+ ADDRESS_FAMILY_LAST);
}
}
}
diff --git a/net/quic/quic_connection_logger.h b/net/quic/quic_connection_logger.h
index 69faed3..8baa1b8 100644
--- a/net/quic/quic_connection_logger.h
+++ b/net/quic/quic_connection_logger.h
@@ -126,7 +126,9 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger
// Number of times a truncated ACK frame was received.
size_t num_truncated_acks_received_;
// The kCADR value provided by the server in ServerHello.
- IPEndPoint client_address_;
+ IPEndPoint local_address_from_shlo_;
+ // The first local address from which a packet was received.
+ IPEndPoint local_address_from_self_;
// Count of the number of frames received.
int num_frames_received_;
// Count of the number of duplicate frames received.