1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-16 00:00:07 +01:00
libwebsockets/minimal-examples/http-client/minimal-http-client-multi
Andy Green 9cb4f25476 h2: LCCSCF_H2_MANUAL_RXFLOW and refactor txcr
This changes the approach of tx credit management to set the
initial stream tx credit window to zero.  This is the only way
with RFC7540 to gain the ability to selectively precisely rx
flow control incoming streams.

At the time the headers are sent, a WINDOW_UPDATE is sent with
the initial tx credit towards us for that specific stream.  By
default, this acts as before with a 256KB window added for both
the stream and the nwsi, and additional window management sent
as stuff is received.

It's now also possible to set a member in the client info
struct and a new option LCCSCF_H2_MANUAL_RXFLOW to precisely
manage both the initial tx credit for a specific stream and
the ongoing rate limit by meting out further tx credit
manually.

Add another minimal example http-client-h2-rxflow demonstrating how
to force a connection's peer's initial budget to transmit to us
and control it during the connection lifetime to restrict the amount
of incoming data we have to buffer.
2020-01-02 08:31:02 +00:00
..
CMakeLists.txt clean: internally use LWS_WITH_CLIENT and _SERVER 2019-08-26 09:58:57 +01:00
minimal-http-client-multi.c h2: LCCSCF_H2_MANUAL_RXFLOW and refactor txcr 2020-01-02 08:31:02 +00:00
README.md minimal client: add different paths to multi 2018-06-04 07:14:49 +08:00
selftest.sh selftests 2018-04-19 16:16:48 +08:00
warmcat.com.cer tls certs: update warmcat.com and libwebsockets.org public certs 2019-09-22 03:08:36 -07:00

lws minimal http client multi

build

 $ cmake . && make

usage

The application goes to https://warmcat.com and receives the page data same as minimal http client.

However it does it for 8 client connections concurrently.

Commandline Options

Option Meaning
-s Stagger the connections by 100ms, the last by 1s
-p Use http/1.1 pipelining or h2 simultaneous streams
--h1 Force http/1 only
-l Connect to server on https://localhost:7681 instead of https://warmcat.com:443
-n Read numbered files like /1.png, /2.png etc. Default is just read /