From 4263265fc30bab0f7982d304d2a088354ccd481e Mon Sep 17 00:00:00 2001 From: ianswett Date: Sat, 20 Jan 2018 23:42:19 -0500 Subject: [PATCH 1/2] Include max_ack_delay Include max_ack_delay in the handshake and RTO timers, as I originally intended. --- draft-ietf-quic-recovery.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/draft-ietf-quic-recovery.md b/draft-ietf-quic-recovery.md index 4a5ce0d57a..d96cb3db06 100644 --- a/draft-ietf-quic-recovery.md +++ b/draft-ietf-quic-recovery.md @@ -710,6 +710,7 @@ Pseudocode for SetLossDetectionAlarm follows: alarm_duration = 2 * smoothed_rtt alarm_duration = max(alarm_duration, kMinTLPTimeout) alarm_duration = alarm_duration * (2 ^ handshake_count) + alarm_duration = alarm_duration + max_ack_delay else if (loss_time != 0): // Early retransmit timer or time loss detection. alarm_duration = loss_time - time_of_last_sent_packet @@ -719,7 +720,8 @@ Pseudocode for SetLossDetectionAlarm follows: kMinTLPTimeout) else: // RTO alarm - alarm_duration = smoothed_rtt + 4 * rttvar + alarm_duration = + smoothed_rtt + 4 * rttvar + max_ack_delay alarm_duration = max(alarm_duration, kMinRTOTimeout) alarm_duration = alarm_duration * (2 ^ rto_count) From 6dd14ce482f0cfed29410759873b8b7bb5e8b3bf Mon Sep 17 00:00:00 2001 From: ianswett Date: Mon, 22 Jan 2018 04:47:04 -0500 Subject: [PATCH 2/2] Update draft-ietf-quic-recovery.md --- draft-ietf-quic-recovery.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/draft-ietf-quic-recovery.md b/draft-ietf-quic-recovery.md index d96cb3db06..66f77d7005 100644 --- a/draft-ietf-quic-recovery.md +++ b/draft-ietf-quic-recovery.md @@ -708,9 +708,9 @@ Pseudocode for SetLossDetectionAlarm follows: alarm_duration = 2 * kDefaultInitialRtt else: alarm_duration = 2 * smoothed_rtt - alarm_duration = max(alarm_duration, kMinTLPTimeout) + alarm_duration = max(alarm_duration + max_ack_delay, + kMinTLPTimeout) alarm_duration = alarm_duration * (2 ^ handshake_count) - alarm_duration = alarm_duration + max_ack_delay else if (loss_time != 0): // Early retransmit timer or time loss detection. alarm_duration = loss_time - time_of_last_sent_packet