Skip to content
This repository has been archived by the owner on Sep 12, 2023. It is now read-only.

implement transmission of data by msquic library #316

Open
SiminBadri opened this issue Jul 29, 2022 · 2 comments
Open

implement transmission of data by msquic library #316

SiminBadri opened this issue Jul 29, 2022 · 2 comments
Labels
dev::feature New feature(s)

Comments

@SiminBadri
Copy link
Contributor

It has been decided to use QUIC as the transmission protocol in WOLF. There are plenty of libraries that implemented this protocol such as:

The two first libraries are written in RUST that are not intended (because the exported 'dll' and 'lib' are large in size). The others have to be reviewed and implemented and then the proper one would be selected as the transmission library for WOLF.

@SiminBadri SiminBadri added dev::feature New feature(s) status::work in progress Issues/Pull Requests that are not complete yet labels Jul 29, 2022
@SiminBadri SiminBadri self-assigned this Jul 29, 2022
@SiminBadri SiminBadri removed the status::work in progress Issues/Pull Requests that are not complete yet label Aug 10, 2022
@SiminBadri
Copy link
Contributor Author

The last two libraries MsQuic and lsquic were reviewed. MsQuic is supported only for windows and Linux platforms currently. MsQuic may be built with other configurations, but they are not to be considered officially supported.

lsquic is built on all platforms windows, osx, ios, android, and Linux. Also, it is possible to remove or add the option of http3 header wrapping.

It seems lsquic is the best available library for QUIC implementation at the moment.

@SiminBadri SiminBadri removed their assignment Aug 10, 2022
@PooyaEimandar PooyaEimandar reopened this Apr 13, 2023
@PooyaEimandar
Copy link
Contributor

MsQuic has been developed based on OpenSSL while lsquic supports boringSSL.
Generally speaking, I prefer boringSSL but QT and most of Wolf's dependencies are using openSSL, so we don't have any choice to go with MsQuic.
We need to develop w_quic_client and w_quic_server under namespace of wolf::stream

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dev::feature New feature(s)
Projects
None yet
Development

No branches or pull requests

2 participants