-
-
Notifications
You must be signed in to change notification settings - Fork 1
[EXTENSION] Replace TLS with QUIC #4
Copy link
Copy link
Open
Labels
extensionAn extension to an existing component of JTP (either the protocol itself or any small component)An extension to an existing component of JTP (either the protocol itself or any small component)needs-discussionThe issue or pull request needs more discussionThe issue or pull request needs more discussionprotocolA protocol changeA protocol change
Metadata
Metadata
Assignees
Labels
extensionAn extension to an existing component of JTP (either the protocol itself or any small component)An extension to an existing component of JTP (either the protocol itself or any small component)needs-discussionThe issue or pull request needs more discussionThe issue or pull request needs more discussionprotocolA protocol changeA protocol change
Extension Kind
Other
Motivation
Using TLS, JTP will send chunked packets which get streamed over a TLS connection, if a packet gets stalled all other packtes have to wait in queue, even if the data is independent (i.e. two parallel packets are sent and packet A must wait longer than packet B. Packet A will stall the stream, given it appears earlier, and Packet B even if done will have to wait)
Proposed Wire Format
Instead of the current transport layer being:
It would be:
Semantics and Behaviour
a server MAY choose to use TCP or QUIC although with the significant improvements brough about by QUIC a server SHOULD use QUIC over TCP when possible
Backwards Compatibility
Purely additive — existing implementations can ignore it
Alternatives Considered
No response
Implementation Notes
A change would completely overhaul the TCP interaction in the rust implementation (in this repository)
Checklist