History log of /lsquic/EXAMPLES.txt
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# a74702c6 06-May-2022 George Wang <gwang@litespeedtech.com>

Release 3.1.0

# b54d1e63 11-Feb-2021 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Make libevent optional; move binaries into bin/

# 06b2a236 06-Jan-2021 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.27.1

- [API] New knob to set outgoing packet batch size.
- Aborted connection now become tickable immediately.
- Abort connection when HTTP/3 frame cannot be opened (can only happen
when malloc fails).

# b1a7c3f9 16-Sep-2020 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.20.0

- [FEATURE] QUIC and HTTP/3 Internet Draft 30 support.
- [FEATURE] Unreliable Datagram Extension support.
- [FEATURE] Adaptive congestion controller.
- [BUGFIX] Do not send MAX_STREAM_DATA frames on crypto streams.
- [BUGFIX] Fail with CRYPTO_BUFFER_EXCEEDED when too much CRYPTO
data comes in.
- [BUFFIX] Spin bit is now strictly per path; value is reset on
DCID change.
- [BUGFIX] Check that max value of max_streams_uni and
max_streams_bidi TPs is 2^60.
- [BUGFIX] Close IETF mini conn immediately if crypto session
cannot be initialized.
- Deprecate ID-28 (no browser uses it): it's no longer in the
default versions list.
- New programs duck_server and duck_client that implement the
experimental siduck-00 protocol. They quack!
- IETF crypto streams: don't limit ourselves from sending.
- Command-line programs: turn off QL loss bits if -G is used, as
Wireshark cannot decrypt QUIC packets when this extension is used.
- Turn all h3 framing unit tests back on.
- Fix malo initialization when compiled in no-pool mode.

# b8fa6195 29-Jul-2020 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.19.0

- [FEATURE] DPLPMTUD support. IETF connections now search for the
maximum packet size, improving throughput.
- [DEBUG] Record event in stream history when on_close() is called
in dtor.

# 9a690580 17-May-2020 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Rename test/unittests to tests/ and test/ to bin/

# 7d09751d 10-Jan-2020 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.8.7

- [BUGFIX] Initial packet size check for IETF mini conn applies to
UDP payload, not QUIC packet.
- Support old and new school loss_bits transport parameter.
- Use Q run length of 64 as suggested in the loss bits Draft.
- Undo square wave count when packet is delayed.
- Code cleanup; minor fixes.

# de46bf2f 31-Dec-2019 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.8.1

- [FEATURE] Use occasional packet number gaps to detect optimistic
ACK attacks.
- [BUGFIX] Q050 client: all packet numbers are in the App PNS.
- [OPTIMIZATION] Merge multi-range ACK frames, not just single-range
ACK frames.
- IETF QUIC: use RTT estimate in ack timeout calculation.
- IETF handshake: abort conn when unexpected errors occur.
- Use PING rather than MAX_DATA frames to elicit ACKs from peer.
- Server: enforce 1200 byte Initial minimum packet size.
- [CLEANUP] Remove code to disable gQUIC crypto.
- [CLEANUP] Remove n_timestamps from ACK info struct.
- Optimize driver: reuse previous ancillary message when possible.

# 0adf085a 16-Oct-2019 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.4.7

- Add echo client and server to the distibution.
- Add MD5 client and server to the distibution.
- Fix http_client: check command-line arguments better, prevent crash.
- Fix IETF conn: can_write_ack() should only care about APP PNS.
- Client: delay stream creation until handshake succeds.
- Reset HTTP stream whose write end is closed prematurely.
- Fix tickable(): mirror behavior of tick() wrt buffered packets.
- Log reason why engine is tickable.

# 92f6e17b 18-Sep-2019 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 2.4.0

[FEATURE] QUIC and HTTP/3 Internet Draft 23 support

# 5392f7a3 11-Sep-2019 LiteSpeed Tech <info@litespeedtech.com>

Release 2.2.0: server included, ID-22 supported (#76)

# 19f667fb 17-Jan-2019 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 1.17.14

- [FEATURE] http_client can now collect stats: time to connect, TTFB,
time to download, requests per seconds, and bandwidth. See -t flag.

- [BUGFIX] http_client: -B, -K, and -r can be used at the same time.

- [BUGFIX] http_client: do not display cert chain before each request.
Now this is only done once per connection, if the handshake is
successful and -a option is given.

- [BUGFIX] Do not wait to dispatch on_close() after reading. If a
stream is scheduled to be closed after on_read() callback returns,
close it immediately instead of waiting until the end of the tick.
If client creates new request from on_close() event, they will be
processed in the same tick instead of waiting for the next one.

- [BUGFIX] HEADERS stream is critical: always treat it with highest
priority.

# 229fce07 04-Jan-2019 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Release 1.17.11

Fix strict aliasing warning in when compiling with optimizations

# c44946ec 22-May-2018 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Latest changes

- [API Change] Add optional callback to call when handshake is done
- [API Change, BUGFIX] After send failure, wait until transport available

# 07354a9a 17-May-2018 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

DNS resolution: can specify hostname via -H or -s

# ee5aee68 17-May-2018 Kaito <B.Jaeger1@gmx.net>

Added DNS Resolution feature to the client.

# bdba46fd 24-Apr-2018 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Latest changes:

- Fix busy loop: tickable must make progress. When connection is
self-reporting as tickable, it must make progress when ticked. There
are two issues:
1. If there are buffered packets, the connection is only tickable if
they can be sent out.
2. A connection is tickable if there are streams on the servicing
queue. When the tick occurs, we must service the stream
independent of whether any packets are sent.
- Fix assertion in pacer which can be incorrect under some
conditions.
- cmake: do not turn on address sanitizer if in Travis.

# 430169b6 23-Apr-2018 Kaito <B.Jaeger1@gmx.net>

Added a Note to EXAMPLES.txt that tells users that google has different ip-adresses in different regions and that they might have to check the correct one for them.

# 10c492f0 03-Apr-2018 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Update copyright year; add CONTRIBUTORS.txt

# bfc7bfd8 27-Feb-2018 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Latest changes

- [API Change] lsquic_engine_connect() returns pointer to the connection
object.
- [API Change] Add lsquic_conn_get_engine() to get engine object from
connection object.
- [API Change] Add lsquic_conn_status() to query connection status.
- [API Change] Add add lsquic_conn_set_ctx().
- [API Change] Add new timestamp format, e.g. 2017-03-21 13:43:46.671345
- [OPTIMIZATION] Process handshake STREAM frames as soon as packet
arrives.
- [OPTIMIZATION] Do not compile expensive send controller sanity check
by default.
- [OPTIMIZATION] Add fast path to gquic_be_gen_reg_pkt_header.
- [OPTIMIZATION] Only make squeeze function call if necessary.
- [OPTIMIZATION] Speed up Q039 ACK frame parsing.
- [OPTIMIZATION] Fit most used elements of packet_out into first 64 bytes.
- [OPTIMIZATION] Keep track of scheduled bytes instead of calculating.
- [OPTIMIZATION] Prefetch next unacked packet when processing ACK.
- [OPTIMIZATION] Leverage fact that ACK ranges and unacked list are.
ordered.
- [OPTIMIZATION] Reduce function pointer use for STREAM frame generation
- Fix: reset incoming streams that arrive after we send GOAWAY.
- Fix: delay client on_new_conn() call until connection is fully set up.
- Fixes to buffered packets logic: splitting, STREAM frame elision.
- Fix: do not dispatch on_write callback if no packets are available.
- Fix WINDOW_UPDATE send and resend logic.
- Fix STREAM frame extension code.
- Fix: Drop unflushed data when stream is reset.
- Switch to tracking CWND using bytes rather than packets.
- Fix TCP friendly adjustment in cubic.
- Fix: do not generate invalid STOP_WAITING frames during high packet
loss.
- Pacer fixes.

# e0197994 26-Sep-2017 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

Latest changes

- Add support for Mac OS
- Add support for Raspberry Pi
- Fix BoringSSL compilation: include <openssl/hmac.h> explicitly

# 50aadb33 23-Sep-2017 Dmitri Tikhonov <dtikhonov@litespeedtech.com>

LSQUIC Client: Initial release