Comments (8)
Did you enable IPv6 on your running host?
from pquic.
Hello,
Be sure to run ./picoquicdemo
from the its own directory. You probably need a newer kernel to get that flag defined. I would suggest to define it to its real value, i.e. 62, instead of zero.
If you still encounter an error, could you post a strace log of the server execution as well ?
from pquic.
Did you enable IPv6 on your running host?
No I didn't. Should I enable it? Because I thought this demo is based on IPv4.
Thanks,
Xiangrui
from pquic.
The picoquicdemo server binds two UDP sockets, one on IPv4 on 0.0.0.0, the other one on IPv6 with ::. I suspect the creation of the second socket being the source of your error.
To make the server work, either you can do the following changes:
- picoquic/picosocks.h: line 108: replace 2 by 1
- picoquic/picosocks.c: line 56: remove
AF_INET6,
and recompile picoquic with make
.
Or you enable IPv6 on your machine.
Does one of these solutions work for you?
from pquic.
Hello,
Be sure to run./picoquicdemo
from the its own directory. You probably need a newer kernel to get that flag defined. I would suggest to define it to its real value, i.e. 62, instead of zero.
If you still encounter an error, could you post a strace log of the server execution as well ?
Sorry for the delayed reply. I changed the flag to the real value (62). And I used strace
to monitor the whole process on the client-side.
Here is what I got from the strace log:
It seems that the client returned with the value 0. Is this the sign of a successful installation?
And btw, what is the kernel version for you to compile the whole project? I used 3.10 for it (might be a little bit outdated).
Thanks,
Xiangrui
from pquic.
The picoquicdemo server binds two UDP sockets, one on IPv4 on 0.0.0.0, the other one on IPv6 with ::. I suspect the creation of the second socket being the source of your error.
To make the server work, either you can do the following changes:
- picoquic/picosocks.h: line 108: replace 2 by 1
- picoquic/picosocks.c: line 56: remove
AF_INET6,
and recompile picoquic with
make
.Or you enable IPv6 on your machine.
Does one of these solutions work for you?
Thanks for the solution provided. I changed the IPV6 flags to the value that Maxime told me (with IPv6 enabled on the OS). And the client returned with 0 when the test finished.
But when I disabled IPv6 options (like you mentioned in OP1), the client exit with a strace
log like this.
Thanks,
Xiangrui
from pquic.
It seems that the client returned with the value 0. Is this the sign of a successful installation?
It's the sign of a successful execution at least. By looking closely at the full log, you should see that data is exchanged on a few streams that eventually get gracefully closed.
But when I disabled IPv6 options (like you mentioned in OP1), the client exit with a strace log like this.
I recommend not to change the code to make it IPv4 only, I suspect there are few other places to change than the two ones mentioned by Quentin. IPv6 can be trivially enabled these days.
from pquic.
It seems that the client returned with the value 0. Is this the sign of a successful installation?
It's the sign of a successful execution at least. By looking closely at the full log, you should see that data is exchanged on a few streams that eventually get gracefully closed.
But when I disabled IPv6 options (like you mentioned in OP1), the client exit with a strace log like this.
I recommend not to change the code to make it IPv4 only, I suspect there are few other places to change than the two ones mentioned by Quentin. IPv6 can be trivially enabled these days.
sure. Thanks for both of you :)
from pquic.
Related Issues (20)
- how to run pquic with multipath plugins HOT 5
- load balance work with MPQUIC
- How multiple path can exist? HOT 1
- Mac OS build errors
- How to use PQUIC with multipath plugin to transport in Internet
- error while compiling HOT 1
- How to ensure pquic use HOT 1
- Problem about using multipath plugin HOT 1
- What are the differences between plugins with & without "cond" HOT 2
- Multipath Plugin does not establish subflows
- Invalid original_destination_connection_id HOT 2
- Retention of the unused encryption keys HOT 2
- Limitless active_connection_id_limit HOT 2
- Post request
- Incorrect way of prunning the retransmission queue. HOT 2
- /usr/bin/ld: cannot find -lprofiler HOT 1
- Segmentation fault (core dumped)
- -n sni is not opening on specified server
- /usr/bin/ld: cannot find -lprofiler: No such file or directory HOT 1
- Difference between picoquic and p-quic
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pquic.