Subject: QUIC help

From: Bilal Ahmad <[email-masked]>
Date: Wed, 13 Nov 2019 11:59:14 +0500

Hi,
I am a research student I want to do research in QUIC protocol.
please guide me how to implement it on a pc.

also can you please help in establishing a direction as to what aspect
of quic should i be focusing on?

your help will be much appreciated for me.

Regards
Bilal Ahmad.

---

From: Stephane Bortzmeyer <[email-masked]>
Date: Wed, 13 Nov 2019 10:34:07 +0100

On Wed, Nov 13, 2019 at 11:59:14AM +0500,
 Bilal Ahmad <[email-masked]> wrote 

> please guide me how to implement it on a pc.

Well, QUIC is a complicated protcol, with a lot of things to take care
of, so implementing QUIC from scratch seems a daunting task.

It may be easier to start from existing implementations. See
<https://github.com/ngtcp2/ngtcp2> and
<https://github.com/ngtcp2/nghttp3> and <https://github.com/cloudflare/quiche>.

> of quic should i be focusing on?

There are many. It depends on your abilities / tastes. Cryptography?
Congestion? HTTP?

Which documents did you read? The Internet-Drafts are of course
necessary but they may be hard for a complete beginner. I recommend
<https://daniel.haxx.se/blog/2018/11/26/http3-explained/> for a start.

---

From: Olivier Bonaventure <[email-masked]>
Date: Wed, 13 Nov 2019 15:47:50 +0100

Hello,

> of quic should i be focusing on?

If you’d like to look beyond the version of QUIC that is currently being finalised within this working group, you might want to check Pluginized QUIC that was presented at SIGCOMM’19 in August, see https://pquic.org <https://pquic.org/>

This article and the associated code demonstrate how it is possible to create a truly extensible protocol on top of QUIC.

Olivier

-- 

Disclaimer: https://www.tessares.net/mail-disclaimer/ 
<https://www.tessares.net/mail-disclaimer/>

---

From: Christian Huitema <[email-masked]>
Date: Wed, 13 Nov 2019 10:07:21 -0800

> <https://github.com/ngtcp2/nghttp3> and <https://github.com/cloudflare/quiche>.

The Quic WG maintains a list of implementations is at
https://github.com/quicwg/base-drafts/wiki/Implementations. There are
many of these to chose from, in a variety of programming languages and
with different objectives, not just two...

> <https://daniel.haxx.se/blog/2018/11/26/http3-explained/> for a start.

Several of the implementations listed above were done by academics, with
focus such as tests or studies. If the goal is to conduct studies, I
would suggest contacting these teams.

-- Christian Huitema