Hi,
I'm trying to use quic as a stand-alone transport protocol / tcp-replacement (in userspace).
Since I prefer starting with something that works, I began with compiling chromium (as suggested in the former post about »Trying to compile the sources from svn.«) The QUIC-FAQ points to »/src/net/tools/quic/« which contains a quic client and server. They can be compiled with: "ninja -C out/Debug/ quic_library quic_client quic_server"
- My first question is: Are client and server in this directory still up to date? (Since, there is also a quic directory under: »src/net/quic«)
- My second question is how to use them properly?
Starting both programs without any parameter seems to trigger some communication between them, then the client quits. But any attempt to transport some "payload" results in a crash:
In »quic_client_bin.cc« the following example can be found in the comments: "quic_client --port=6122 /index.html /favicon.ico" After adjusting the port (6121), the client crashes with: "[0917/122321:FATAL:spdy_utils.cc(123)] Check failed: !scheme.empty()." Another post in the chromium group suggests calling the client like this: "./quic_client http://<somehost>/index.html" (https://groups.google.com/a/chromium.org/forum/#!searchin/chromium-dev/quic/chromium-dev/JOzig90Xp0I/q3NsvNEzzLwJ)
This, at least, does not crash. So if this is the right way to call the client, the comment in »quic_client_bin.cc« should be updated. But the next problem is to configure the server. There is no information where to put the files to serve, and putting them in the working directory does not work.
After startup the server prints: "[0917/123745:INFO:quic_in_memory_cache.cc(124)] Attempting to initialize QuicInMemoryCache from directory: /tmp/quic-data". But putting files into »/tmp/quic-data« results in a crash of the server on startup. In the file »quic_in_memory_cache.cc« is a comment that says: "[...] Cache directory can be generated using `wget -p --save-headers <url>", but this still results in a crash:
mkdir /tmp/quic-data
cd /tmp/quic-data
wget -p --save-headers http://google.com
cd [into the chromium dir]
./quic_server
--> crashes with "[...] Unhandled error framing HTTP."
But even if this would work, I'm wondering what the quic server is supposed to do. Why does it only have a cache-dir and what are the stored headers used for?
I'd appreciate any help guiding me to a working client-server example with QUIC.
Best regard, Mario
--
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/groups/opt_out.
Transfer-Encoding: chunked
X-Original-Url: http://www.google.com/
./out/Debug/quic_client --port=6121 --hostname=localhost http://www.google.com/
Great, thank you very much for your help. This helps me a lot!
But I still have an additional question: How can I tell it actually worked?
I don't see the quic_client writing any files to disk or saying "IT WORKS". ;-)
On Thu, Sep 19, 2013 at 12:12 PM, Mario H wrote:
Great, thank you very much for your help. This helps me a lot!
But I still have an additional question: How can I tell it actually worked?
I don't see the quic_client writing any files to disk or saying "IT WORKS". ;-)Heh, yeah. instead, it would tell you if there were an error. But this is lame :> I'd be thrilled to get a patch which makes it more clear what is going on.
That's good to hear. I don't remember what it was doing with the path, but I was also having problems with an assert on where a / was. I used strace to see where it was looking when I specified /tmp/quic-data, and it was prepending it with something.
Thanks!!! So you used quic_client to talk to the quic server and it worked?Some few questions in details:Did you save index.html directly under /tmp/quic-data or /tmp/quic-data/www.google.com?
Did you start the server with quic_server --quic_in_memory_cache_dir=/tmp/quic-dataand start the client with quic_client http://localhost:6121?Thanks so much!
On Wednesday, February 12, 2014 7:20:43 PM UTC-5, eledra Nguyen wrote: