Skip to main content

Compatible Version Negotiation for QUIC
draft-ietf-quic-version-negotiation-14

Yes

Zaheduzzaman Sarker
(Martin Duke)

No Objection

Erik Kline
Paul Wouters

Note: This ballot was opened for revision 12 and is now closed.

Zaheduzzaman Sarker
Yes
Erik Kline
No Objection
John Scudder
No Objection
Comment (2022-10-25 for -12) Sent
Thanks for a clear and readable, albeit dense, spec. One nit: s/the the/the/
Paul Wouters
No Objection
Roman Danyliw
No Objection
Comment (2022-10-26 for -12) Sent
Thank you to Joey Salazar for the SECDIR review.

** Section 4.
   Clients MUST ignore any received Version Negotiation packets that
   contain the version that they initially attempted.  

Shouldn’t this read “… that contain _any of the versions_  that they initially attempted” since multiple versions may have been previously offered?

** Section 5.  Editorial.  The text defined “Fully-Deployed Versions” in this section but uses it first in Section 4.
Warren Kumari
No Objection
Comment (2022-10-26 for -12) Sent
Thank you for this document -- in addition to providing a useful / important capability, it's also surprisingly readable and understandable, even by someone not deeply knowledgable about QUIC / QUIC startup. This is especially impressive for a topic like this...


I'd also like to thank the OpsDir reviewer (Qin Wu) for the helpful review, and the authors for addressing the comments.
Éric Vyncke
No Objection
Comment (2022-10-24 for -12) Sent
# Éric Vyncke, INT AD, comments for draft-ietf-quic-version-negotiation-12
CC @evyncke

Thank you for the work put into this document. 

Please find below some non-blocking COMMENT points (but replies would be appreciated even if only for my own education).

Special thanks to Matt Joras for the shepherd's detailed write-up including the WG consensus *even* if the justification of the intended status is rather weak.

Please note that Petr Špaček is the DNS directorate reviewer (at the chairs' request) and you may want to consider his review as well (and I have read the email dialogue with David):
https://mailarchive.ietf.org/arch/msg/dnsdir/swTm6QGRLQqnsVC87asXiedii9s/

I hope that this review helps to improve the document,

Regards,

-éric

## COMMENTS

### Section 2

In `the versions are compatible` what is meant by 'compatible' ? Identical version ? Some clarity early in the document will help the reader without waiting the section 2.2.

### Section 11

As the "TCP" reference is only used in a note in section 1.2, it should probably be an informative reference.

### Section 4

```
   For QUIC version 1, version negotiation errors are signaled using a
   transport error of type VERSION_NEGOTIATION_ERROR; see Section 10.2.
```
Just wondering how an already deployed QUIC version 1 implementation that was not updated will know how to send this error type as it is only specified by the document in 2022... I am sure that I miss something else I would have balloted a DISCUSS.

### Section 5

Just to write my appreciation of this section that takes deployment in consideration. Good idea!

### Section 7.2

Same explanations about the use of "SHOULD" will probably be welcome by implementers.

## Notes

This review is in the ["IETF Comments" Markdown format][ICMF], You can use the
[`ietf-comments` tool][ICT] to automatically convert this review into
individual GitHub issues. 

[ICMF]: https://github.com/mnot/ietf-comments/blob/main/format.md
[ICT]: https://github.com/mnot/ietf-comments
Martin Duke Former IESG member
Yes
Yes (for -12) Not sent

                            
Alvaro Retana Former IESG member
No Objection
No Objection (2022-10-24 for -12) Sent
This document updates rfc8999, which points at rfc9000 "for a more thorough description of how an endpoint that supports QUIC version 1 generates and consumes a Version Negotiation packet".  

There is also text in §4 that seems to modify how a QUIC version 1 endpoint behaves.

Should rfc9000 also be updated?
Lars Eggert Former IESG member
No Objection
No Objection (2022-10-26 for -12) Sent
# GEN AD review of draft-ietf-quic-version-negotiation-12

CC @larseggert

Thanks to Robert Sparks for the General Area Review Team (Gen-ART) review
(https://mailarchive.ietf.org/arch/msg/gen-art/q4nfiA-lk3-dpm66IdFh8oGUOr0).

## Nits

All comments below are about very minor potential issues that you may choose to
address in some way - or ignore - as you see fit. Some were flagged by
automated tools (via https://github.com/larseggert/ietf-reviewtool), so there
will likely be some false positives. There is no need to let me know what you
did with these suggestions.

### Grammar/style

#### Section 1, paragraph 2
```
al versions are broadly similar to the the previous version. This specificat
                                   ^^^^^^^
```
Possible typo: you repeated a word.

#### Section 4, paragraph 5
```
ated version. If the client would have selected a different version, the cli
                            ^^^^^^^^^^^^^^^^^^^
```
Did you mean "had selected"?

## Notes

This review is in the ["IETF Comments" Markdown format][ICMF], You can use the
[`ietf-comments` tool][ICT] to automatically convert this review into
individual GitHub issues. Review generated by the [`ietf-reviewtool`][IRT].

[ICMF]: https://github.com/mnot/ietf-comments/blob/main/format.md
[ICT]: https://github.com/mnot/ietf-comments
[IRT]: https://github.com/larseggert/ietf-reviewtool
Robert Wilton Former IESG member
No Objection
No Objection (2022-10-24 for -12) Sent
Thank you for another clear and well written document.

One minor comment:

(1) p 9, sec 3.  Version Information                                                                                                                                                                                                                                                                                                                                                         
                                                                                                                                                                                                                                                                                                                                                                                             
   Client-Sent Available Versions:  When sent by a client, the Available                                                                                                                                                                                                                                                                                                                     
      Versions field lists all the versions that this first flight is                                                                                                                                                                                                                                                                                                                        
      compatible with, ordered by descending preference.  Note that the                                                                                                                                                                                                                                                                                                                      
      version in the Chosen Version field MUST be included in this list                                                                                                                                                                                                                                                                                                                      
      to allow the client to communicate the chosen version's                                                                                                                                                                                                                                                                                                                                
      preference.  Note that this preference is only advisory, servers                                                                                                                                                                                                                                                                                                                       
      MAY choose to use their own preference instead.                                                                                                                                                                                                                                                                                                                                        
   Server-Sent Available Versions:  When sent by a server, the Available                                                                                                                                                                                                                                                                                                                     
      Versions field lists all the Fully-Deployed Versions of this                                                                                                                                                                                                                                                                                                                           
      server deployment, see Section 5.  Note that the version in the                                                                                                                                                                                                                                                                                                                        
      Chosen Version field is not necessarily included in this list,                                                                                                                                                                                                                                                                                                                         
      because the server operator could be in the process of removing                                                                                                                                                                                                                                                                                                                        
      support for this version.  For the same reason, the Available                                                                                                                                                                                                                                                                                                                          
      Versions field MAY be empty.                                                                                                                                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                                                                                                                                                                             
It might be helpful to explicitly indicate whether the sever-sent available versions are ordered (as per the client), or unordered.  I presume that it is latter because it isn't stated, but it may improve readability of the document if this was explicit.                                                                                                                              
                                                                                                                                                                                                                                                                                                                                                                                             
Regards,
Rob

// Thank to Qin for OPSDIR review.