-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Roadmap
5.1
- configuration
- implementation
- outer context integration and testing
- metrics
- tracing
- send file
- network activity logging
-
alt-svcheader
- API
- breaking changes
- identify
- decide
- dev
- options
- connection close payload
- request cancellation superseding request reset
- breaking changes
- Improve Netty Quic reset
- go away strategies ?
- documentation
- ...
5.x
- Compression
- DNS HTTPS resource record
- Connect UDP
- push ?
- client
- server
Breaking changes
Implementing HTTP/3 implies a few potential breaking changes, the strategy to handle them will be on a case by case basis and attempt to minimize the amount of breaking changes to delay them until Vert.x 6 is implemented, here is a non exhaustive list:
- stream id declares long type instead of int
- settings
- ...
Open concerns
Compression
There is no facility for payload compression and current one for HTTP/1 and HTTP/2 are not reusable.
Discovery
No support for HTTPS resource records in DNS resolver.
Shutdown / GoAway
- H2:
GoAwaycarries stream id + error code + debug data - H3:
GoAwayonly carries stream id, but quic can close with an error code + reason data, error code seems similar but reason is not the same semantic than debug.
Reset semantic
- H2: reset means immediate termination of a stream
- H3: reset only applies to the stream outbound and means no more data will be set
Introduce stream cancellation that performs the most adapted operation according to the protocol:
- H2 : reset with
0x8(CANCEL) code - H3 : reset or abort reading with REQUEST_CANCELLED code
Contribution
bibi
codingchili