Commit 44fecdd7 authored by rtenneti's avatar rtenneti Committed by Commit bot

QUIC - Added histogram to track the number of total

blocked frames sent/received when a connection is finished.

Histogram name: Net.QuicSession.BlockedFrames.Received and
                Net.QuicSession.BlockedFrames.Sent.

R=asvitkine@chromium.org, rch@chromium.org

Review URL: https://codereview.chromium.org/669793003

Cr-Commit-Position: refs/heads/master@{#300739}
parent cede870b
...@@ -339,6 +339,8 @@ QuicConnectionLogger::QuicConnectionLogger(QuicSession* session, ...@@ -339,6 +339,8 @@ QuicConnectionLogger::QuicConnectionLogger(QuicSession* session,
num_incorrect_connection_ids_(0), num_incorrect_connection_ids_(0),
num_undecryptable_packets_(0), num_undecryptable_packets_(0),
num_duplicate_packets_(0), num_duplicate_packets_(0),
num_blocked_frames_received_(0),
num_blocked_frames_sent_(0),
connection_description_(GetConnectionDescriptionString()) { connection_description_(GetConnectionDescriptionString()) {
} }
...@@ -355,6 +357,10 @@ QuicConnectionLogger::~QuicConnectionLogger() { ...@@ -355,6 +357,10 @@ QuicConnectionLogger::~QuicConnectionLogger() {
num_undecryptable_packets_); num_undecryptable_packets_);
UMA_HISTOGRAM_COUNTS("Net.QuicSession.DuplicatePacketsReceived", UMA_HISTOGRAM_COUNTS("Net.QuicSession.DuplicatePacketsReceived",
num_duplicate_packets_); num_duplicate_packets_);
UMA_HISTOGRAM_COUNTS("Net.QuicSession.BlockedFrames.Received",
num_blocked_frames_received_);
UMA_HISTOGRAM_COUNTS("Net.QuicSession.BlockedFrames.Sent",
num_blocked_frames_sent_);
if (num_frames_received_ > 0) { if (num_frames_received_ > 0) {
int duplicate_stream_frame_per_thousand = int duplicate_stream_frame_per_thousand =
...@@ -442,6 +448,7 @@ void QuicConnectionLogger::OnFrameAddedToPacket(const QuicFrame& frame) { ...@@ -442,6 +448,7 @@ void QuicConnectionLogger::OnFrameAddedToPacket(const QuicFrame& frame) {
frame.window_update_frame)); frame.window_update_frame));
break; break;
case BLOCKED_FRAME: case BLOCKED_FRAME:
++num_blocked_frames_sent_;
net_log_.AddEvent( net_log_.AddEvent(
NetLog::TYPE_QUIC_SESSION_BLOCKED_FRAME_SENT, NetLog::TYPE_QUIC_SESSION_BLOCKED_FRAME_SENT,
base::Bind(&NetLogQuicBlockedFrameCallback, base::Bind(&NetLogQuicBlockedFrameCallback,
...@@ -636,6 +643,7 @@ void QuicConnectionLogger::OnWindowUpdateFrame( ...@@ -636,6 +643,7 @@ void QuicConnectionLogger::OnWindowUpdateFrame(
} }
void QuicConnectionLogger::OnBlockedFrame(const QuicBlockedFrame& frame) { void QuicConnectionLogger::OnBlockedFrame(const QuicBlockedFrame& frame) {
++num_blocked_frames_received_;
net_log_.AddEvent( net_log_.AddEvent(
NetLog::TYPE_QUIC_SESSION_BLOCKED_FRAME_RECEIVED, NetLog::TYPE_QUIC_SESSION_BLOCKED_FRAME_RECEIVED,
base::Bind(&NetLogQuicBlockedFrameCallback, &frame)); base::Bind(&NetLogQuicBlockedFrameCallback, &frame));
......
...@@ -151,6 +151,10 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger ...@@ -151,6 +151,10 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger
int num_undecryptable_packets_; int num_undecryptable_packets_;
// Count of the number of duplicate packets received. // Count of the number of duplicate packets received.
int num_duplicate_packets_; int num_duplicate_packets_;
// Count of the number of BLOCKED frames received.
int num_blocked_frames_received_;
// Count of the number of BLOCKED frames sent.
int num_blocked_frames_sent_;
// Vector of inital packets status' indexed by packet sequence numbers, where // Vector of inital packets status' indexed by packet sequence numbers, where
// false means never received. Zero is not a valid packet sequence number, so // false means never received. Zero is not a valid packet sequence number, so
// that offset is never used, and we'll track 150 packets. // that offset is never used, and we'll track 150 packets.
......
...@@ -17268,6 +17268,22 @@ Therefore, the affected-histogram name has to have at least one dot in it. ...@@ -17268,6 +17268,22 @@ Therefore, the affected-histogram name has to have at least one dot in it.
</summary> </summary>
</histogram> </histogram>
<histogram name="Net.QuicSession.BlockedFrames.Received">
<owner>rtenneti@chromium.org</owner>
<summary>
The number of BLOCKED frames recevied by a QuicSession when the session is
closed.
</summary>
</histogram>
<histogram name="Net.QuicSession.BlockedFrames.Sent">
<owner>rtenneti@chromium.org</owner>
<summary>
The number of BLOCKED frames sent by a QuicSession when the session is
closed.
</summary>
</histogram>
<histogram name="Net.QuicSession.ClosedDuringInitializeSession"> <histogram name="Net.QuicSession.ClosedDuringInitializeSession">
<owner>rch@chromium.org</owner> <owner>rch@chromium.org</owner>
<summary> <summary>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment