Subject: [quicwg/base-drafts] HoLB from NCID frames (#1280)

From: Mike Bishop <[email-masked]>
Date: Mon, 09 Apr 2018 18:11:22 +0000 (UTC)

Since NEW_CONNECTION_ID frames are defined to be sequential (because the packet number gaps are cumulative), receipt of NCID frames out of order requires reassembly; the later CIDs aren't usable without the previous ones.  This is particularly pernicious in the situations described in #1276, where one side is effectively out of CIDs, while the other side believes it has many future IDs issued.

Possibly solutions include:
- Eliminating the packet number gap via #1079 
- Switching from a gap to an offset, so that CIDs need not be used sequentially

In either case, the CIDs associated with a connection would become an unordered set, rather than a list in fixed order.

-- 
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/1280

---

From: MikkelFJ <[email-masked]>
Date: Mon, 09 Apr 2018 19:58:57 +0000 (UTC)

1079 won't resolve all gaps if optimistic ACK attack protection is on.

-- 
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/1280#issuecomment-379875191

---

From: Mike Bishop <[email-masked]>
Date: Mon, 09 Apr 2018 21:01:48 +0000 (UTC)

The issue here is that the server is currently using CID1 and the packet number has reached A.  It has received:
- CID3, gap Y packets
- CID4, gap Z packets

Missing in flight is the frame that says "CID2, gap X packets".  It can't use CID3 because it needs to go to packet number A + X + Y, but X is unknown.

So optimistic ACK protection is fine.  You don't need there to be no gaps in your own packet number sequence; you need to not be required to introduce a particular gap in your own packet number space that was specified by your peer.

-- 
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/1280#issuecomment-379892853

---

From: Martin Thomson <[email-masked]>
Date: Mon, 09 Apr 2018 17:41:54 -0700

Yes, my plan was to resolve #1079 and then later remove the sequence number.  Thanks for opening this Mike.

-- 
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/1280#issuecomment-379937458