From 4ba31453caefbd1844db985bc467a86b282a2ec8 Mon Sep 17 00:00:00 2001 From: Benjamin Saunders Date: Thu, 11 Apr 2019 17:35:12 -0700 Subject: [PATCH] 3*PTO lower-bound for idle timeout --- quinn-proto/src/connection.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/quinn-proto/src/connection.rs b/quinn-proto/src/connection.rs index f1f047e76..a88d60ce9 100644 --- a/quinn-proto/src/connection.rs +++ b/quinn-proto/src/connection.rs @@ -770,8 +770,8 @@ impl Connection { self.io.timer_stop(Timer::Idle); return; } - self.io - .timer_start(Timer::Idle, now + Duration::from_millis(self.idle_timeout)); + let dt = cmp::max(Duration::from_millis(self.idle_timeout), 3 * self.pto()); + self.io.timer_start(Timer::Idle, now + dt); } fn reset_keep_alive(&mut self, now: Instant) {