rsocket-java icon indicating copy to clipboard operation
rsocket-java copied to clipboard

QUIC Transport Support

Open atshow opened this issue 3 years ago • 10 comments

We know QUIC has become the IETF standard, and netty supports QUIC . Do we have any plans to support it?

atshow avatar Jun 11 '21 06:06 atshow

Hey @atshow!

In short - we do plan! In general - we wait for reactor-netty to support that!

Stay tuned! Best, Oleg

OlegDokuka avatar Jun 11 '21 07:06 OlegDokuka

I have raised the issue https://github.com/reactor/reactor-netty/issues/1463

linux-china avatar Jun 11 '21 07:06 linux-china

@OlegDokuka do you have any demo for RSocket on QUIC? https://github.com/reactor/reactor-netty/releases/tag/v1.0.12

linux-china avatar Nov 09 '21 17:11 linux-china

@linux-china not at the moment. That requires ground rework of the transport API that we have right now. I have touched the ground in rsocket-js rework, but this has to be ported to java impl. Also, I presented the basic architecture in this slides -> https://www.icloud.com/keynote/0XbQI-VRGW0CPBBRVE_79BvOA#RSocket_over_QUIC

OlegDokuka avatar Nov 09 '21 17:11 OlegDokuka

@OlegDokuka @violetagg How about a demo transport implementation for QUIC ? and @gabis-precog did an implementation with RSocket-PY https://github.com/rsocket/rsocket-py/blob/master/examples/server_quic.py

linux-china avatar Mar 29 '22 18:03 linux-china

@linux-china I was planning to release QUIC support in 1.2.x once the transport API is reworked to offer proper abstraction for transports that have a built-in multiplexer/demultiplexer (e. g. QUIC or HTTP/2 or HTTP/3).

However, we can always offer experimental preview support earlier.

OlegDokuka avatar Mar 29 '22 20:03 OlegDokuka

@OlegDokuka Any news on this topic? Anything the community can help with? Maybe with testing previews?

mepeisen avatar Apr 20 '23 07:04 mepeisen

@mepeisen there is a branch - https://github.com/rsocket/rsocket-java/tree/enhancement/aeron-support, the main problem is memory leak which I fail to track and there is a lack of time on my end to finish that effort

OlegDokuka avatar Apr 22 '23 06:04 OlegDokuka

@OlegDokuka is there a bit of code (test, example) that triggers the memory leak ?

jell-o-fishi avatar Apr 22 '23 06:04 jell-o-fishi

@atshow https://github.com/rsocket/rsocket-java/tree/enhancement/aeron-support/rsocket-transport-aeron/src/test/java/io/rsocket/transport/aeron

OlegDokuka avatar Apr 24 '23 06:04 OlegDokuka