From e3c90c181aa22501110af0ee14aa471634ab66e1 Mon Sep 17 00:00:00 2001 From: Lucas Clemente Date: Wed, 7 Sep 2016 14:00:14 +0200 Subject: [PATCH] only consider novel packages for RTT --- ackhandler/sent_packet_handler.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ackhandler/sent_packet_handler.go b/ackhandler/sent_packet_handler.go index 13d725f6..3fed4bb3 100644 --- a/ackhandler/sent_packet_handler.go +++ b/ackhandler/sent_packet_handler.go @@ -169,6 +169,7 @@ func (h *sentPacketHandler) ReceivedAck(ackFrame *frames.AckFrame, withPacketNum var ackedPackets congestion.PacketVector var lostPackets congestion.PacketVector ackRangeIndex := 0 + rttUpdated := false var el, elNext *PacketElement for el = h.packetHistory.Front(); el != nil; el = elNext { @@ -188,8 +189,8 @@ func (h *sentPacketHandler) ReceivedAck(ackFrame *frames.AckFrame, withPacketNum // Update the RTT if packetNumber == h.LargestAcked { + rttUpdated = true timeDelta := time.Now().Sub(packet.SendTime) - // TODO: Don't always update RTT h.rttStats.UpdateRTT(timeDelta, ackFrame.DelayTime, time.Now()) if utils.Debug() { utils.Debugf("\tEstimated RTT: %dms", h.rttStats.SmoothedRTT()/time.Millisecond) @@ -231,7 +232,7 @@ func (h *sentPacketHandler) ReceivedAck(ackFrame *frames.AckFrame, withPacketNum h.stopWaitingManager.ReceivedAck(ackFrame) h.congestion.OnCongestionEvent( - true, /* TODO: rtt updated */ + rttUpdated, h.BytesInFlight(), ackedPackets, lostPackets,