mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-08-08 09:42:06 +03:00
Implement basic ACK_FREQUENCY support.
Summary: As in title. This doesn't actually send any frames, but implements basic support for the transport parameter and responding to the frames. Reviewed By: yangchi Differential Revision: D26134787 fbshipit-source-id: 2c48e01084034317c8f36f89c69d172e3cb42278
This commit is contained in:
committed by
Facebook GitHub Bot
parent
4f320d8e7b
commit
21f190220e
@@ -2942,6 +2942,20 @@ TEST_F(QuicTransportTest, ScheduleAckTimeout) {
|
||||
EXPECT_NEAR(transport_->getAckTimeout()->getTimeRemaining().count(), 25, 5);
|
||||
}
|
||||
|
||||
TEST_F(QuicTransportTest, ScheduleAckTimeoutFromMaxAckDelay) {
|
||||
// Make srtt large so we will use maxAckDelay
|
||||
transport_->getConnectionState().lossState.srtt = 25000000us;
|
||||
transport_->getConnectionState().ackStates.maxAckDelay = 10ms;
|
||||
EXPECT_FALSE(transport_->getAckTimeout()->isScheduled());
|
||||
transport_->getConnectionState().pendingEvents.scheduleAckTimeout = true;
|
||||
transport_->onNetworkData(
|
||||
SocketAddress("::1", 10003),
|
||||
NetworkData(
|
||||
IOBuf::copyBuffer("Never on time, always timeout"), Clock::now()));
|
||||
EXPECT_TRUE(transport_->getAckTimeout()->isScheduled());
|
||||
EXPECT_NEAR(transport_->getAckTimeout()->getTimeRemaining().count(), 10, 5);
|
||||
}
|
||||
|
||||
TEST_F(QuicTransportTest, CloseTransportCancelsAckTimeout) {
|
||||
transport_->getConnectionState().lossState.srtt = 25000000us;
|
||||
EXPECT_FALSE(transport_->getAckTimeout()->isScheduled());
|
||||
|
Reference in New Issue
Block a user