quicwg / base-drafts

Internet-Drafts that make up the base QUIC specification
https://quicwg.org
1.63k stars 205 forks source link

Erik Kline's Transport Comment 2 #4514

Closed LPardue closed 3 years ago

LPardue commented 3 years ago

Erik Kline said:

[ section 9.6.3 ]

  • Entirely optional, but I wonder if it's worth noting that in certain situations, for example an IPv6-only client and IPv4-only server, the client might be required to evaluate use of an alternate address family address if, for example, some transition mechanism (a la NAT64) was in use.
martinthomson commented 3 years ago

My personal preference is to avoid the transition technology quagmire. However, that is partly because I'm not very well versed in it. I would also prefer if servers offer v6 for v6-only clients.

If someone were able to offer text I might be OK with that. As we do send IP literals in the protocol, it isn't crazy to acknowledge the need to deal with that.

As it is, I think that we're OK without reference to transition technologies.

ianswett commented 3 years ago

I think I'd prefer to not add any text on this one.

ekline commented 3 years ago

Fair enough!

MikeBishop commented 3 years ago

Yeah, presumably a v6-only client using a transition technology has some mechanism to deal with v4 addresses anyway, whether that's a way to map them to a v6 address or simply failing to transition.

ekline commented 3 years ago

Well, sometimes client implementations might be aware of the transition mechanism. This can happen when, for example, DNS64 is used and the IPv6 address received is a NAT64 address that makes things "just work" for the IPv6-only client contacting an IPv4-only server.

If you wanted some sample text, I might suggest something along these lines:

Note that if the only non-zero address available is from a different address family than the endpoint implementation can make reasonable use of (e.g., and IPv6-only client receives only an IPv4 address), the implementation may need to coordinate with any address family transition technologies in use. The precise mechanisms by which this can be done vary by transition technology and are out of scope of this document.

This shouldn't cause any unnecessary Informative references to be added.

Again: only if you want to note it so that implementors can bear it in mind.