Land Recent QUIC Changes.

These LOG(INFO)s claimed 8-9% of time under a load test.

Reduce logspam in QuicUnackedPacketMap.

Merge internal change: 61895796
https://codereview.chromium.org/179773007/


QUIC WINDOW_UPDATE and BLOCKED frames instigate ACKs.

Merge internal change: 61894847
https://codereview.chromium.org/180013004/


Avoiding quic double-close bugs by detecting it at the connection.

Merge internal change: 61890466
https://codereview.chromium.org/180793003/


BLOCKED frames not being cleared. These are not yet used.

(minor) Clear last BLOCKED frames in QuicConnection

Merge internal change: 61875848
https://codereview.chromium.org/180793002/


QUIC - minor cleanup while merging internal change.

Merge internal change: 61850595
https://codereview.chromium.org/177073016/


Create QUIC_VERSION_16 which breaks the sent_info field out of the ACK
frame into a new STOP_WAITING frame.  Does not change when this
information is sent.  That will happen in a follow-up CL.

Send STOP_WAITING_FRAME for QUIC version 16 and above with Ack frame.
Added logging for WINDOW_UPDATE and BLOCKED frames.

Merge internal change: 61838258
https://codereview.chromium.org/180383004/


QUIC test refactor to move tests from the QuicSentPacketManagerTest to
the new TcpLossAlgorithmTest.

Merge internal change: 61837708
https://codereview.chromium.org/177203008/


Ctrl-F for "packet XY" in debug logs now matches sent packets "Sending
packet XY", and received packets "Got packet XY".

(minor) Improve QUIC packet sent debug log message

Merge internal change: 61836667
https://codereview.chromium.org/177003007/


Auotmated rollback of internal changelist 57996291.

*** Reason for rollback ***

Now that clients no longer suggests 100 by default, it would be nice to
experiment with allowing the client to suggest larger CWNDs.

*** Original change description ***

Temporarily change the maximum server initial congestion window to 10
from 100, because many existing Chrome clients are still negotiating
100, causing visible performance issues, particularly for YouTube
rebuffers.

***

Merge internal change: 61825277
https://codereview.chromium.org/178853003/


Refactor to create a new LossDetectionInterface used by the
QuicSentPacketManager.

Merge internal change: 61813052
https://codereview.chromium.org/178453005/


Preparation for only writing a fraction of the iov due to flow control
blocking in ReliableQuicStream::WritevData.

Add max_bytes argument to QuicSession::WritevData

Merge internal change: 61810929
https://codereview.chromium.org/177203006/

[email protected]

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253647 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/net/quic/test_tools/quic_test_utils.cc b/net/quic/test_tools/quic_test_utils.cc
index 745237a..5268149 100644
--- a/net/quic/test_tools/quic_test_utils.cc
+++ b/net/quic/test_tools/quic_test_utils.cc
@@ -65,6 +65,9 @@
   ON_CALL(*this, OnCongestionFeedbackFrame(_))
       .WillByDefault(testing::Return(true));
 
+  ON_CALL(*this, OnStopWaitingFrame(_))
+      .WillByDefault(testing::Return(true));
+
   ON_CALL(*this, OnRstStreamFrame(_))
       .WillByDefault(testing::Return(true));
 
@@ -109,6 +112,11 @@
   return true;
 }
 
+bool NoOpFramerVisitor::OnStopWaitingFrame(
+    const QuicStopWaitingFrame& frame) {
+  return true;
+}
+
 bool NoOpFramerVisitor::OnRstStreamFrame(
     const QuicRstStreamFrame& frame) {
   return true;
@@ -184,6 +192,13 @@
   return true;
 }
 
+bool FramerVisitorCapturingFrames::OnStopWaitingFrame(
+    const QuicStopWaitingFrame& frame) {
+  stop_waiting_.reset(new QuicStopWaitingFrame(frame));
+  ++frame_count_;
+  return true;
+}
+
 bool FramerVisitorCapturingFrames::OnRstStreamFrame(
     const QuicRstStreamFrame& frame) {
   rst_.reset(new QuicRstStreamFrame(frame));
@@ -325,7 +340,7 @@
 
 MockSession::MockSession(QuicConnection* connection)
     : QuicSession(connection, DefaultQuicConfig()) {
-  ON_CALL(*this, WritevData(_, _, _, _, _, _))
+  ON_CALL(*this, WritevData(_, _, _, _, _))
       .WillByDefault(testing::Return(QuicConsumedData(0, false)));
 }