Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge normative -spin-exp text into -transport #2369

Closed
britram opened this issue Jan 24, 2019 · 15 comments
Closed

Merge normative -spin-exp text into -transport #2369

britram opened this issue Jan 24, 2019 · 15 comments
Labels
-transport editorial An issue that does not affect the design of the protocol; does not require consensus.

Comments

@britram
Copy link
Contributor

britram commented Jan 24, 2019

#2364 proposes to merge the normative part of -spin-exp (how to generate the signal, and how to probabalistically participate) into -transport.

There appears to be some lack of clarity on the Bangkok consensus in the discussion on that PR; per @larseggert let's discuss this here on this issue (and the list) instead of in the PR.

@britram
Copy link
Contributor Author

britram commented Jan 24, 2019

There are a few apparently-open questions (which I thought were resolved, and apparently @ihlar too, since he submitted #2364); my understanding of the state is in bold below:

  1. Is the plan to (a) merge the spin bit text into -transport or to (b) publish spin-exp as a separate RFC.

  2. If 1(b), is the intended status of the spin bit (a) Proposed Standard or (b) Experimental (as the spin bit must be Proposed Standard if 1(a)).

This understanding derives from the state of discussions after the London and Bangkok meetings (copied from #2364 comments):

  • in London, we decided to adopt the spin bit as an experimental feature within the working group to generate more experience to inform an eventual adoption decision.

  • in Bangkok, we achieved rough consensus to adopt the feature into the base protocol. The plan as I understood it is that documents were to be held separate until the spin-exp document reflected Bangkok consensus and the transport document was done with large-scale technical changes, after which they would be merged (which is what Moving text on spinbit into transport #2364 does). This plan together the discussion about 2119 language made it clear to me that the spin bit would be Proposed Standard.

@britram britram added editorial An issue that does not affect the design of the protocol; does not require consensus. -transport -spin-exp labels Jan 24, 2019
@britram
Copy link
Contributor Author

britram commented Jan 24, 2019

(also from the #2364 discussion...) FWIW, I do think that advanced heuristics for deriving metrics from the spin bit signal are properly experimental, but since that's generalized measurement methodology work, it rather belongs in IPPM than QUIC (note this is a personal opinion, without IPPM chair hat). Most of the simple how-to-measure text currently in spin-exp should move into the (informational) -manageability draft, and my understanding as editor is that a PR for that is forthcoming (addressing quicwg/ops-drafts#58).

@mirjak
Copy link
Contributor

mirjak commented Jan 24, 2019

My understanding was always that the plan was to merge this into the transport doc and never that the the spin-exp is meant to be published as an own doc. The chairs only hold us at some point to create an own doc (instead of trying to get an PR up to date) such that it is easier to people to experiment until we have a final decision and merge it in.

We even had a hum on this in Bangkok:

  1. To include the spin bit in the specification, as laid out here. Some decisions can still be made.

Yes: Strong hum (4-5 hums for inclusion, no against)

No: Medium-Strong hum (less)

I asked at the end of the session if we are ready to merge and got a yes. I don't know what this discussion is about because we really have already clear consensus here. I would just recommend to close the issue.

@ihlar
Copy link
Contributor

ihlar commented Jan 24, 2019

I agree with the statements above, and I cannot recollect that option b was ever discussed.

@marten-seemann
Copy link
Contributor

Not sure about the process and the formalities, but since the spin-bit is an optional feature, and several implementations are not planning to implement it, I think it would improve the readability of the already very long transport document (141 pages!) to keep it clearly separated in its own document. This would relieve implementers from having to skip over irrelevant text.

@britram
Copy link
Contributor Author

britram commented Jan 24, 2019

on review of the minutes, agree with @mirjak: paging @martinthomson and @janaiyengar with their editor hats on: once you're awake can you have a look and close this issue?

@kazuho
Copy link
Member

kazuho commented Jan 24, 2019

I am not sure if "including spin-bit in the specification" means including it in the transport draft, considering the fact that we already have multiple documents that specify the QUIC protocol: invariants, transport, TLS, recovery. Having another document seems to be a natural way of integrating a specific feature.

Among the documents, I think it might be natural to assume that the transport document would have the shortest lifetime, while there is fair chance that TLS and recovery documents will be reused in QUIC v2. I'd also assume the spin-bit draft to have a longer lifetime, because I do not think we want to change the definition of the spin bits for each QUIC version.

That seems to be one reason to prefer having spin bit as a separate draft regardless of the intended status of spin bit. Is there a specific reason to incorporate the spin-bit specification into the transport draft?

@ihlar
Copy link
Contributor

ihlar commented Jan 24, 2019

That's an interesting perspective.
On that note though, an argument for describing how to set the bit in the transport draft is that version specific changes to the protocol will require updates to the text on how to set the bit.
We might see things like mulitpath, reliability modes with vastly different acking schemes etc, which could have direct impact on how/if/when to filp bits.

Also, it is only the normative text that would be included in the transport draft and that's not a large amount of text at all.

Finally, there are two pieces of text relating to the bit that we want to publish, the normative part which is short and intended for implementors and text on how to detect the bit and how/what to measure etc. That second piece is the one which will require more text and is likely of less interest to implementors, therefore a good fit for it would be the manageability document.

@loganaden
Copy link
Contributor

@britram yes, I'm working on it. I'm reading the latest changes that are proposed and adjusting accordingly for quicwg/ops-drafts#58

@hardie
Copy link

hardie commented Jan 24, 2019 via email

@janaiyengar
Copy link
Contributor

janaiyengar commented Jan 26, 2019 via email

@hardie
Copy link

hardie commented Jan 27, 2019 via email

@britram
Copy link
Contributor Author

britram commented Jan 28, 2019

In advance of the Tokyo meeting, I came in here to say what @hardie said. On review the std/exp question was pretty clearly answered in BKK.

I personally don't care deeply whether the normative bits of the spin bit live in -transport or in their own document, though I don't buy the arguments for doing so. Addressing @marten-seemann's point: yes, -transport is big (but, after the recent editorial rework, much easier to navigate, so there's that). #2364 seems to weigh in at ~2 old-style pages, so while all efforts to reduce document size are appreciated, I don't think not adding the spin bit generation language will make a material difference. Other strictly-optional features of the transport protocol are not separated out. For example, connection migration is strictly-speaking optional on the client side, and is far more complicated both technically and editorially, such that a separate document on connection migration might even make the entire set of final documents more usable. But nobody has yet suggested that (and, to make it very clear, I am not suggesting that either).

@ronieven
Copy link

I think like Marcus that the normative text should be in the transport document. It is a short text and this way it will be clearer to the reader.

@mnot mnot added this to Editorial Issues in Late Stage Processing Feb 27, 2019
@martinthomson
Copy link
Member

I think that we did this already.

Late Stage Processing automation moved this from Editorial Issues to Text Incorporated Aug 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-transport editorial An issue that does not affect the design of the protocol; does not require consensus.
Projects
Late Stage Processing
  
Issue Handled
Development

No branches or pull requests

10 participants