Skip to content

feat(transport): implement 0-RTT methods #6

@achyuthcodes30

Description

@achyuthcodes30

Description

Implement QUIC 0-RTT (zero-round-trip) handshake support in zaprpc, allowing clients to initiate RPC requests immediately on resumed sessions!

QUIC 0-RTT allows previously authenticated clients to send requests immediately on connection resumption, improving latency for RPC calls.

Expected Work

  • Implement the ServeEarly method for Server, using the AcceptEarly method from quic-go and allowing users to opt in to rejection of unsafe early data (eg: non idempotent methods), make sure handleSession is updated accordingly
  • Implement NewEarlyConn, similar to NewConn, making sure it uses the DialEarly method from quic-go and TLS Session Resumption is opted in for by the user with TLS ClientSessionCache
  • If Zap fails with 0-RTT, gracefully fallback to normal handshake

References

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions