<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 21 Nov 2019, 19:00 Loïc Hoguin, <<a href="mailto:essen@ninenines.eu">essen@ninenines.eu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 21/11/2019 18:21, Lukas Larsson wrote:<br>
> I don't think it is too bad an idea to start now either. From what I can <br>
> tell the rfc:s are pretty stable already.<br>
<br>
The QUIC ones yes, minus the priority mechanism. But HTTP/3 depends on <br>
both priorities being figured out and also the pushed mechanism. I'm not <br>
sure how far the latter got or if it's going to be supported at all <br>
initially. So for my use case it's not as stable as it could be.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Ah yes, I've not been following those at all as they don't matter for the distribution case. </div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
>     On 21/11/2019 17:22, Lukas Larsson wrote:<br>
>      > One of the use-cases (besides the obvious HTTP/3 use-case) that<br>
>     we have<br>
>      > been thinking about would be to allow the Erlang distribution to run<br>
>      > over QUIC.<br>
> <br>
>     That's what I want for RabbitMQ and based on experiments emulating some<br>
>     aspects of QUIC, this is an insanely promising prospect. I expect QUIC<br>
>     to triple the throughput for mirrored RabbitMQ queues *at the very<br>
>     least*.<br>
> <br>
> <br>
> Do you? Why? What aspect of it do you think would do that?<br>
<br>
I said too much. :-)<br>
<br>
>     Some aspects of the distribution do not play well with QUIC though,<br>
>     like<br>
>     `monitor(process, {Name, Node})`. This is the one thing in the<br>
>     distribution protocol for which you can't guarantee ordering over<br>
>     multiple QUIC streams because you don't have the pid that you have for<br>
>     all other messages. <br>
> <br>
> <br>
> Hmm, yes. Not trivial to solve but should be doable.<br>
<br>
My current solution is "don't use it". rpc:call(whereis) plus monitor is <br>
almost the same as well.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Mhm, it is rare enough that using some slow fall back would work.</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
>     Right now you also must parse the message in order<br>
>     to figure out on which stream you have to send it, it would probably be<br>
>     better to have this info readily available. <br>
> <br>
> <br>
> Fixing this should be very simple. The information is there we just need <br>
> to put it in the tuple returned.<br>
<br>
I'd love to have this today. :-)<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I'll see what we can do.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
>     Of course you could always<br>
>     use a single QUIC channel but then what's the point. :-)<br>
> <br>
>      > We were thinking about re-using the ssl applications TLS 1.3<br>
>      > implementation. It is not trivial as transport and TLS are<br>
>     upsidedown<br>
>      > for QUIC, but should be doable sais Ingela and Peter :p<br>
> <br>
>     If we can have a good interface that has TLS return the<br>
>     encrypted/decrypted binary data rather than write it directly to the<br>
>     socket, I could also use it in Gun to support TLS connections over TLS<br>
>     proxies. Right now it uses the callback module and while it works it's<br>
>     fairly complex.<br>
> <br>
> <br>
> Maybe this would be a good starting point for us. Building an API that <br>
> makes this possible.<br>
<br>
So much to do so little time. :-)<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Indeed.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
-- <br>
Loïc Hoguin<br>
<a href="https://ninenines.eu" rel="noreferrer noreferrer" target="_blank">https://ninenines.eu</a><br>
</blockquote></div></div></div>