How to use QUIC without HTTP/SPDY semantics

1,059 views
Skip to first unread message

Henning Böger

unread,
Mar 4, 2016, 7:00:43 AM3/4/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Hi,

we would like to use QUIC as a raw transport protocol for a different application protocol (CoAP).
We are currently struggling to use QUIC without the HTTP / SPDY semantics.

What we basically need:
  • Initiate connection (client)
  • Listen for incoming connections (server)
  • Send raw application data (both client and server)
  • Receive raw application data (both client and server)

We have already looked into /src/net/quic and /src/tools/quic (the test client/server), as well as /src/components/cronet.

However, all these clients/servers use the HTTP/SPDY semantics, and we found it hard to separate the raw data transport.

We would really appreciate any help / pointers in the right direction how to get to a raw data transport with QUIC.
Thanks! 

Ryan Hamilton

unread,
Mar 4, 2016, 9:38:45 AM3/4/16
to proto...@chromium.org, samuel.e...@maibornwolff.de
You'll need a custom session and stream class. Check out the files in net/quic/p2p as a guide.

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.
To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

Henning Böger

unread,
Mar 4, 2016, 10:05:11 AM3/4/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Thank you! We will give it a try.

Ingemar Johansson

unread,
Mar 9, 2016, 9:58:14 AM3/9/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
I see that there are a number of initiatives in this direction , please see the previous post on this matter 
I am a co-supervisor of this project, and the latest news is that the students managed to send raw data from one peer to the other. I'll ask the students to chime in as they have the details

/Ingemar 

Henning Böger

unread,
Mar 11, 2016, 10:54:44 AM3/11/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Thanks! We are currently working with the p2p code and making modest progress. Seems like this is the best way to go for the moment.

Dan Crawford

unread,
Nov 10, 2016, 5:13:07 PM11/10/16
to QUIC Prototype Protocol Discussion group
Hi Ingemar,

I'm looking at doing something similiar with QUIC (not using http/spdy). Did you and your students have any success with this ?

Thanks,
-Dan

Richard T

unread,
Nov 10, 2016, 5:28:08 PM11/10/16
to QUIC Prototype Protocol Discussion group
Hello, I cannot find the "net/quic/p2p" directory that was referred earlier in this post. Has it been moved to somewhere else ?

Here is the link to "net/quic", there is no "p2p":
https://github.com/google/proto-quic/tree/master/src/net/quic

Shawyoun Shaidani

unread,
Nov 26, 2016, 6:50:50 PM11/26/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Are there any updates for this? I couldn't find the P2P code. Basically, I have a TCP based application that I want to migrate to QUIC, and I have no idea how to change the Chromium source code to do so. The only other example I have seen is Mario L's paper, but I'm not sure how applicable that code will be. He's posted in this community before but I don't know how to "tag" him here.

Dmitry Sobinov

unread,
Nov 27, 2016, 11:19:14 PM11/27/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
You can probably check this class and all the related stuff in the quarts directory:

https://cs.chromium.org/chromium/src/net/quic/quartc/quartc_session_interface.h

Original p2p code is indeed missing.

Regards,
Dmitry

Richard T

unread,
Nov 28, 2016, 10:28:44 AM11/28/16
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Hello Showyoun:

I have found the code for the p2p directory in an older commit of the chromium source. At the top level src directory do:

git checkout 6581bb3e791018e48d078a910ddfdce19a1c10bb

However, because of the lack of documentation I still don't know how to use the QuickP2Psession.

It would be super useful if there is a simple client and server example that uses them. We are also trying to have a TCP based application to use QUIC instead. The sample client and server that comes with Quic is all glued to SPDY and HTTP.

Could you post where we can find the paper by Mario L. That would be very useful.

Thanks

howard liao

unread,
May 21, 2018, 12:15:50 AM5/21/18
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
i check the lastest version of proto quic, there is a directory named quartc, not sure what is it? is it a p2p quic source code?  

在 2016年3月4日星期五 UTC+8下午8:00:43,Henning Böger写道:

Ryan Hamilton

unread,
May 21, 2018, 7:40:37 PM5/21/18
to QUIC Prototype Protocol Discussion group, Samuel Eckermann
Yes, it's the base of a p2p implementation of WebRTC over QUIC.

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+unsubscribe@chromium.org.

howard liao

unread,
May 30, 2018, 6:26:10 AM5/30/18
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
there are neither simple client nor server example for the quartc, i just find the unittest that simulating the socket transport, 
are there an implementation of the quartc client and server?

在 2018年5月22日星期二 UTC+8上午7:40:37,r...@chromium.org写道:
Yes, it's the base of a p2p implementation of WebRTC over QUIC.
On Sun, May 20, 2018 at 9:15 PM, howard liao <howardbr...@gmail.com> wrote:
i check the lastest version of proto quic, there is a directory named quartc, not sure what is it? is it a p2p quic source code?  

在 2016年3月4日星期五 UTC+8下午8:00:43,Henning Böger写道:
Hi,

we would like to use QUIC as a raw transport protocol for a different application protocol (CoAP).
We are currently struggling to use QUIC without the HTTP / SPDY semantics.

What we basically need:
  • Initiate connection (client)
  • Listen for incoming connections (server)
  • Send raw application data (both client and server)
  • Receive raw application data (both client and server)

We have already looked into /src/net/quic and /src/tools/quic (the test client/server), as well as /src/components/cronet.

However, all these clients/servers use the HTTP/SPDY semantics, and we found it hard to separate the raw data transport.

We would really appreciate any help / pointers in the right direction how to get to a raw data transport with QUIC.
Thanks! 

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.

howard liao

unread,
May 30, 2018, 10:04:12 AM5/30/18
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
have you successfully to build p2p client and server examples?

在 2018年5月21日星期一 UTC+8下午12:15:50,howard liao写道:

howard liao

unread,
Jun 6, 2018, 8:30:38 AM6/6/18
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
i'v already successfully removed the spdy semantics from quic.  


在 2016年3月4日星期五 UTC+8下午8:00:43,Henning Böger写道:
Hi,

Max Demers

unread,
Jul 14, 2018, 12:05:16 PM7/14/18
to proto...@chromium.org, samuel.e...@maibornwolff.de
Any tips for removing spdy semantics? I am still working to make my own client/server tests separate from the provided ones. Did you use the quartc to help guide you?

howard liao

unread,
Jul 17, 2018, 11:55:18 PM7/17/18
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de

try use quartc 

在 2018年7月15日星期日 UTC+8上午12:05:16,Max Demers写道:

sunny ruan

unread,
Mar 5, 2019, 8:19:58 PM3/5/19
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
 hello Sobinov,
 what is the abbreviation of quartc?

在 2016年11月28日星期一 UTC+8下午12:19:14,Dmitry Sobinov写道:

Ralf Lübben

unread,
Sep 18, 2023, 9:34:21 AM9/18/23
to QUIC Prototype Protocol Discussion group, samuel.e...@maibornwolff.de
Hi

I also like to use QUIC streams as a "raw socket", are there any new examples? It seems the mentioned examples from p2p and quartc are no longer available and it is still very hard to separate SPDY/HTTP3 from the chromium/quiche sources.

Any feedback is appreciated.

Ralf

Tony Peters

unread,
Sep 18, 2023, 10:43:36 AM9/18/23
to proto...@chromium.org
Yes I would like to use quic in p2p  environment 

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.
Reply all
Reply to author
Forward
0 new messages