Coming from #334, there is currently a SHOULD that is not necessary. We should update the text to state that MP_NEW_CONNECTION_ID frames are used to allocate CIDs on a specific Path ID, and that NEW_CONNECTION_ID frames are equivalent to MP_NEW_CONNECTION_ID frames with Path ID 0.
See original discussion below.
I don't understand the motivation behind
After a successful handshake indicating multipath support by both endpoints,
endpoints SHOULD also use the MP_NEW_CONNECTION_ID and
MP_RETIRE_CONNECTION_ID frames to provide new connection IDs
or, respectively, retire them for the initial path with Path ID 0.
We can just say that MP_NEW_CONNECTION_ID with path ID 0 is equivalent to NEW_CONNECTION_ID. That's how we dealt with the fact that there's one bespoke value in RESET_STREAM_AT. It really doesn't matter which frame the peer uses, but in my code, I'd always go for the shortest encoding.
-08 does not use normative language here anymore, so I'll close this issue. However, there is another related issue that can be used for discussion if needed which is #320
Coming from #334, there is currently a SHOULD that is not necessary. We should update the text to state that MP_NEW_CONNECTION_ID frames are used to allocate CIDs on a specific Path ID, and that NEW_CONNECTION_ID frames are equivalent to MP_NEW_CONNECTION_ID frames with Path ID 0. See original discussion below.
We can just say that MP_NEW_CONNECTION_ID with path ID 0 is equivalent to NEW_CONNECTION_ID. That's how we dealt with the fact that there's one bespoke value in RESET_STREAM_AT. It really doesn't matter which frame the peer uses, but in my code, I'd always go for the shortest encoding.
_Originally posted by @marten-seemann in https://github.com/quicwg/multipath/pull/334#discussion_r1606214314_