GrumpyOldTroll / draft-jholland-quic-multicast

Work in progress to propose a multicast extension to quic.
Other
6 stars 6 forks source link

Add channel state diagrams #50

Closed GrumpyOldTroll closed 2 years ago

GrumpyOldTroll commented 2 years ago

We at least need a channel state diagram for client, and probably also for server. (like https://www.rfc-editor.org/rfc/rfc9000#fig-stream-send-states and https://www.rfc-editor.org/rfc/rfc9000#fig-stream-recv-states and https://www.ietf.org/archive/id/draft-ietf-quic-multipath-01.html#fig-path-states)

MaxF12 commented 2 years ago

Agreed, I was thinking about states when I made the object as well. So far I have 4 (Idle, joining, joined and timed out). Do you think we need more?

GrumpyOldTroll commented 2 years ago

I think I was thinking different names for them in the client, but maybe :

For the server side I was thinking:

I wasn't sure whether we need a "client confirmed" state where we've seen an ack of channel data on the server, I'm ambivalent on it.

I think it might also be useful to define some hold-down conditions and timers, which I don't think we've gotten into yet. We probably need a retry section and some general advice about how to handle error-based leave/decline events that hold down a retry for some time, maybe a growing time.