Connect up IETF QUIC Max ACK Delay transport parameter
This CL sets the QuicSentPacketManager's ACK Delay from the
MAX ACK Delay transport parameter.
gfe-relnote: N/A done only if IETF QUIC enabled & negotiated.
PiperOrigin-RevId: 260502360
Change-Id: Idd8a9d0fe36e7ab0794aa7532d608489866248eb
diff --git a/quic/core/quic_config.h b/quic/core/quic_config.h
index ae15b6a..3c82a68 100644
--- a/quic/core/quic_config.h
+++ b/quic/core/quic_config.h
@@ -414,6 +414,16 @@
QuicUint128 ReceivedStatelessResetToken() const;
+ // Manage the IETF QUIC Max ACK Delay transport parameter.
+ // The sent value is the delay that this node uses
+ // (QuicSentPacketManager::local_max_ack_delay_).
+ // The received delay is the value received from
+ // the peer (QuicSentPacketManager::peer_max_ack_delay_).
+ void SetMaxAckDelayToSendMs(uint32_t max_ack_delay_ms);
+ uint32_t GetMaxAckDelayToToSendMs() const;
+ bool HasReceivedMaxAckDelayMs() const;
+ uint32_t ReceivedMaxAckDelayMs() const;
+
bool negotiated() const;
void SetCreateSessionTagIndicators(QuicTagVector tags);
@@ -501,6 +511,11 @@
// Maximum number of incoming unidirectional streams that the connection can
// support.
QuicFixedUint32 max_incoming_unidirectional_streams_;
+
+ // Maximum ack delay. The sent value is the value used on this node.
+ // The received value is the value received from the peer and used by
+ // the peer.
+ QuicFixedUint32 max_ack_delay_ms_;
};
} // namespace quic