litespeedtech / lsquic

LiteSpeed QUIC and HTTP/3 Library
MIT License
1.5k stars 327 forks source link

Add es_enable_webtransport #386

Open ghost opened 2 years ago

ghost commented 2 years ago

The first step to support WebTransport is for the server/client to send the setting SETTINGS_ENABLE_WEBTRANSPORT.

This support can be exposed as an Engine Setting, like the two other settings are.

Then in maybe_send_settings in lsquic_full_conn.c this should be read and appended to the outgoing SETTINGS frame.

Does this sound like a reasonable first step? If we can manage this, then lsquic will at least be able to receive and establish a WebTransport session (but more work is need to establish proper WebTransport streams under this session).

I can probably PR this if it sounds reasonable.

zhenzhu478 commented 2 years ago

Sounds great! When will it be done in Lsquic release?

zhenzhu478 commented 2 years ago

Hi

The first step to support WebTransport is for the server/client to send the setting SETTINGS_ENABLE_WEBTRANSPORT.

This support can be exposed as an Engine Setting, like the two other settings are.

Then in maybe_send_settings in lsquic_full_conn.c this should be read and appended to the outgoing SETTINGS frame.

Does this sound like a reasonable first step? If we can manage this, then lsquic will at least be able to receive and establish a WebTransport session (but more work is need to establish proper WebTransport streams under this session).

I can probably PR this if it sounds reasonable.

Hi Alex Any update about this PR? Really looking forward to it.

litespeedtech commented 2 years ago

Since it is a big change, we can create a branch for webtransport, and accept pull requests there.

zhenzhu478 commented 2 years ago

Since it is a big change, we can create a branch for webtransport, and accept pull requests there.

Thanks for your reply, and when should this PR be done?

litespeedtech commented 2 years ago

It is up to the person who submits the pull request.