Subject: [quicwg/base-drafts] ACK of ACK advice too strong (#2199)

From: Martin Thomson <[email-masked]>
Date: Sun, 16 Dec 2018 19:20:32 -0800

>From @ekr:

>> Once an ACK frame has been acknowledged, the packets it acknowledges SHOULD NOT be acknowledged again.
> Suppose that I receive 1 3 5, and I ack these, and that ACK is acked. I then receive 2, 4, 6. This advice would have me send an ACK frame with three ranges, whereas I could send one range.

I think that the advice here is that ranges are dropped when all ACKs for all packets in that range have been acknowledged.  Or something along those lines.

Maybe:

> An endpoint SHOULD omit an ACK Range if it has received an acknowledgment for its acknowledgments of all packets in that range.

Though that seems clumsy.  Better words would be appreciated.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/2199

---

From: ekr <[email-masked]>
Date: Sun, 16 Dec 2018 20:10:40 -0800

Maybe "Endpoints SHOULD not acknowledge packets for which it has already
received acknowledgement of acknowledgements, except where this would
create unnecessary gaps in the encoded ACK frame." Not ideal, I know/

On Sun, Dec 16, 2018 at 7:20 PM Martin Thomson <[email-masked]>
wrote:

> From @ekr <https://github.com/ekr>:
>
> Suppose that I receive 1 3 5, and I ack these, and that ACK is acked. I
> then receive 2, 4, 6. This advice would have me send an ACK frame with
> three ranges, whereas I could send one range.
>
> I think that the advice here is that ranges are dropped when all ACKs for
> all packets in that range have been acknowledged. Or something along those
> lines.
>
> Maybe:
>
> An endpoint SHOULD omit an ACK Range if it has received an acknowledgment
> for its acknowledgments of all packets in that range.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/quicwg/base-drafts/issues/2199>, or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ABD1oUE3NRmKfS48eS7GpOn6ovYIkjapks5u5w1-gaJpZM4ZVngK>
> .
>

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/2199#issuecomment-447717254

---

From: Magnus Westerlund <[email-masked]>
Date: Wed, 19 Dec 2018 09:15:18 +0000 (UTC)

I think this is connected to #2205 in an interesting way. The question that arises is if one MUST include all ACK state between highest received, and the lower PN that needs to be ACKed (as it is newly arrived due to reordering). 

An alternative would be to explicitly allow GAPs for packets that has been received and where the reception's ACKs has been ACKed. But, I guess that results in interesting bookkeeping chores in the implementations. 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/2199#issuecomment-448524004

---

From: ianswett <[email-masked]>
Date: Fri, 21 Dec 2018 14:02:09 -0800

Agreed the wording is too strong.

Take a look at PR #2245

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/2199#issuecomment-449509224

---

From: Martin Thomson <[email-masked]>
Date: Sun, 23 Dec 2018 20:09:17 -0800

Closed #2199 via #2245.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/2199#event-2042723016