Change the wire format of the ack frame to include a compressed version
of the previous CongestionFeedback Timestamp frame.
Adds QUIC_VERSION_23. Deprecate CongestionFeedbackFrame
1 bytes - num_received_packets
First packet:
1 byte - distance from the largest observed in sequence number space.
4 bytes - mod of microseconds since the connection's creation when the
packet arrived. (1.1hrs in us)
Every other packet:
1 byte - distance from the largest observed in sequence number space.
2 bytes - mod of microseconds since the previous timestamp
Merge internal change: 73740829
The following are chromium specific changes:
+ Changed ACK frame not to send CongestionFeedback frame
+ Added received_packet_times to ACK frame.
+ The timestamp that is sent is relative to creation time, thus passed
MockClock's now() as argument to AckFrame and it is used to pass
QuicFramer's creation time and received_packet_times.
[email protected], [email protected], [email protected]
Review URL: https://codereview.chromium.org/478153003
Cr-Commit-Position: refs/heads/master@{#291830}
diff --git a/net/quic/quic_network_transaction_unittest.cc b/net/quic/quic_network_transaction_unittest.cc
index 3d119fbd..c835184 100644
--- a/net/quic/quic_network_transaction_unittest.cc
+++ b/net/quic/quic_network_transaction_unittest.cc
@@ -107,8 +107,8 @@
public ::testing::WithParamInterface<QuicVersion> {
protected:
QuicNetworkTransactionTest()
- : maker_(GetParam(), 0),
- clock_(new MockClock),
+ : clock_(new MockClock),
+ maker_(GetParam(), 0, clock_),
ssl_config_service_(new SSLConfigServiceDefaults),
proxy_service_(ProxyService::CreateDirect()),
auth_handler_factory_(
@@ -304,11 +304,11 @@
socket_factory_.AddSocketDataProvider(&hanging_data_);
}
+ MockClock* clock_; // Owned by QuicStreamFactory after CreateSession.
QuicTestPacketMaker maker_;
scoped_refptr<HttpNetworkSession> session_;
MockClientSocketFactory socket_factory_;
MockCryptoClientStreamFactory crypto_client_stream_factory_;
- MockClock* clock_; // Owned by QuicStreamFactory after CreateSession.
MockHostResolver host_resolver_;
MockCertVerifier cert_verifier_;
TransportSecurityState transport_security_state_;