Http/2 cleartext support

Description

I noticed that there is no support for the cleartext alternative that https://webtide.com/jetty-http2-cleartext-upgrade/ describes. or https://github.com/ops4j/org.ops4j.pax.web/commit/b0ac9e4736573b0fbe9936c76264a7afceb6588a#diff-fdc02770af27596b101e786a52326867 shows that instead falling back to HTTP 1.1 the server connector could still try this trick

Environment

None

Activity

Show:
Tuomas Kiviaho
September 11, 2017, 10:11 AM

I read from https://github.com/bradfitz/http2/issues/59 discussion a valid point why this probably can't be purely activated based on what is in classloader

— Reasons for choosing TLS-only include respect for user's privacy and early measurements showing that new protocols have a higher success rate when done with TLS. This because of the widespread assumption that anything that goes over port 80 is HTTP 1.1 makes some middle-boxes interfere and destroy traffic when instead other protocols are communicated there.

I'd hate creating yet another system property for this one.

Tuomas Kiviaho
September 12, 2017, 12:13 PM

— I'd hate creating yet another system property for this one.

System property can wait for someone actually seeing h2c as a problem, because this is supported by Jetty out-of-the-box (https://www.eclipse.org/jetty/documentation/9.3.x/http2-enabling.html) and this is also actually quite crucial when doing TLS offloading https://www.eclipse.org/jetty/documentation/9.4.x/http2-configuring-haproxy.html

On the other hand I can't see the ALPN being set up as per how Jetty does it in it's examples. I get SSL,[http/1.1, ssl, h2, h2-17, h2-16, h2-15, h2-14] instead of SSL,[ssl, alpn, h2, h2-17, http/1.1] that is in the Jetty docs.

Assignee

Unassigned

Reporter

Tuomas Kiviaho

Labels

None

Components

Fix versions

Affects versions

Priority

Major
Configure