Subject: RE: Mapping QUIC version to that included in Alt-Svc header

From: Mike Bishop <[email-masked]>
Date: Mon, 23 Jan 2017 17:15:01 +0000

That (percent-encoded tokens) is what the original PR contained.  Then Martin and Jana came out with a versioning scheme for QUIC where practically every commonly-used version would require percent-encoding all four bytes.  So I added a straight hex option to compactly cover those cases.  (Martin is arguing for hex-only, and let the existing pseudo-ASCII versions be the ones to suffer.  He's also given the same don't-need-quotes feedback, and I’ll remove them in the next rev.)

Sent from my Windows 10 phone

From: Julian Reschke
Sent: Monday, January 23, 2017 3:37 AM
To: Mike Bishop; Aron .; IETF QUIC WG
Subject: Re: Mapping QUIC version to that included in Alt-Svc header

On 2017-01-23 06:23, Mike Bishop wrote:
> Look at draft -01 of the HTTP mapping.  It proposes a change to the
> Alt-Svc mapping to support two different formats of the version, neither
> if which requires any client inference.
> ...

<https://greenbytes.de/tech/webdav/draft-ietf-quic-http-01.html#rfc.section.2.1>:

> v = version
> version = DQUOTE ( "c" version-string / "x" version-number ) DQUOTE
> version-string = token; percent-encoded QUIC version
> version-number = 1*8 HEXDIG; hex-encoded QUIC version

Nit: this is inconsistent with other uses of quoted-string:

1) It looks like quoted-string, but isn't really (no "\" escaping)

2) It requires quoting when it is not needed.

This should be fixed by removing the "version" ABNF. Just state in prose 
that the value of parameter v (which can be either token or 
quoted-string) has either the "c" or "x" notation.

That said...:

> QUIC versions are four-octet sequences with no additional constraints on format. Versions containing octets not allowed in tokens ([RFC7230], Section 3.2.6) MUST be encoded using the hexidecimal representation. Versions containing only octets allowed in tokens MAY be encoded using either representation.

This is bad as it means that there are multiple ways to encode the same 
parameter.

IMHO it would be much better just to use format we already use in 
Alt-Svc; see 
<https://greenbytes.de/tech/webdav/rfc7838.html#rfc.section.3.p.4>.

Best regards, Julian

---

From: Martin J. Dürst <[email-masked]>
Date: Tue, 24 Jan 2017 08:26:08 +0900

> That (percent-encoded tokens) is what the original PR contained.  Then Martin and Jana came out with a versioning scheme for QUIC where practically every commonly-used version would require percent…

I haven't looked at the details, but this kind of stuff smells of 
overengineering from miles away, and very badly. Why can't we keep 
things simple?

Regards,   Martin.