Skip to content

Releases: Tencent/tquic

TQUIC v0.11.0

08 May 07:12
5f9289c
Compare
Choose a tag to compare

Added

  • tquic_tools: group different options by category and prioritize commonly used options
  • Add the header file of BoringSSL library in tquic.h
  • Resolve new issues found by cargo clippy
  • Add integration testing for multipath
  • Update run_endpoint.sh to enable keyupdate/chacha20 testcase for server

Changed

  • tquic_tools: rename max_requests_per_thread to total_requests_per_thread

Fixed

  • Fix RangeSet::filter() used by Redundant multipath scheduler
  • Fix injected stream frames for Redundant multipath scheduler

TQUIC v0.10.0

26 Apr 07:28
ede1c92
Compare
Choose a tag to compare

Added

  • Add support for responding to key updates
  • Add datagram packetization layer PMTU discovery
  • Improve API for stream creation
  • Limit configuration value of type varint
  • Add pacing_rate to PathStats
  • tquic_server: output stats when server connection is closed
  • Add workflow and plot tools for fct testing

Fixed

  • Fix the issue where bbr3 cannot exit slow start due to high packet loss rate

Security

  • Limit memory consuption for tracking closed stream ids

TQUIC v0.9.0

10 Apr 03:49
1d631c8
Compare
Choose a tag to compare
TQUIC v0.9.0 Pre-release
Pre-release

Added

  • Improve FFI for quic_tls_config_t
  • Update the handling of probe timeout to conform with RFC 9002
  • Update limit of the output buffer for Connection::send()
  • Add plot tools for goodput and interop testing

Changed

  • Change quic_config_set_tls_config() in FFI
  • Change quic_tls_config_select_methods_t in FFI

Fixed

  • Fix NewToken frame in qlog
  • Fix the unit test case conn_write_qlog that fails with low probability

Security

  • limit the number of queued RETIRE_CONNECTION_ID frames

TQUIC v0.8.1

18 Mar 11:21
cc948f5
Compare
Choose a tag to compare
TQUIC v0.8.1 Pre-release
Pre-release

Removed

  • Remove the sfv feature flag from h3 (to resolve a build issue at docs.rs)

TQUIC v0.8.0

15 Mar 07:13
c3120ce
Compare
Choose a tag to compare
TQUIC v0.8.0 Pre-release
Pre-release

Added

  • Support anti-amplification limit for server
  • Support customized config when initiating a connection
  • Add callback based FFI for writing the keylog and qlog
  • Support compiling dynamic library for C language
  • Update the processing of LossDetection timeout in multipath mode
  • Update crate docs about PathStats/TlsConfig/TlsConfigSelector

Security

  • Discard old Path Challenges received if needed

TQUIC v0.7.0

02 Feb 11:45
0505207
Compare
Choose a tag to compare
TQUIC v0.7.0 Pre-release
Pre-release

Added

  • Add support for building on FreeBSD
  • Add more path level metrics
  • Add more quic and recovery events in qlog
  • Add tquic_qvis.sh to convert qlog files to be compatible with qvis
  • Update MultipathScheduler interface for some advanced schedulers
  • Add tquic_tools_test.sh for additional end-to-end testing
  • tquic_client: support early data
  • tquic_tools: use millisecond precision for log timestamp
  • tquic_tools: add log-file option to write logs to specified file
  • tquic_tools: add active-cid-limit option to allow more paths

Changed

  • tquic_tools: change the qlog-log option to the qlog-dir option
  • tquic_tools: change the dump-path option to the dump-dir option
  • tquic_tools: update default pto linear factor
  • tquic_client: change the local_addresses option to allow the os to choose available ports
  • tquic_client: use local_addresses option to specify the addresses to bind in both singlepath and multipath mode.

Fixed

  • Fix record separator of qlog in json-seq format

TQUIC v0.6.0

17 Jan 09:02
79d319b
Compare
Choose a tag to compare
TQUIC v0.6.0 Pre-release
Pre-release

Added

  • Support the latest version of qlog (v0.4)
  • Add cid_len option to tquic tools
  • Ignore undecrypted packets with invalid format

Changed

  • Move website dir to tquic-group/tquic-website repo

Fixed

  • Fix the selected MTU for the sending path
  • Fix anti-deadlock PTO during handshake
  • Fix the assertion of negotiated parameters in TLS unit tests

TQUIC v0.5.0

03 Jan 09:31
edcab8d
Compare
Choose a tag to compare
TQUIC v0.5.0 Pre-release
Pre-release

Added

  • Add support for building on MacOS
  • Add support for stateless reset
  • Release tls_conf_selector as soon as the handshake is completed.
  • Add linear mode and upper limit for probe timeout
  • Add FFI enable_multipath()/set_multipath_algorithm()
  • Add RoundRobin multipath scheduler
  • Add more units test for multipath transport
  • tquic_client: stop trying and exit if it fails to reconnect the server multiple times.
  • tquic_client: output the stats first and then exit when it receives an SIGINT signal.

Changed

  • Simplify FFI quic_set_logger() to avoid from return unnessary errors
  • Rename set_multipath() in Config to enable_multipath()
  • Rename set_multipath_algor() in Config to set_multipath_algorithm()
  • Change default congestion control algorithm to BBR

Fixed

  • Fix stream scheduling for multiple incredmental streams
  • Fix reinjection for multipath transport

TQUIC v0.4.0

18 Dec 03:12
f8801ba
Compare
Choose a tag to compare
TQUIC v0.4.0 Pre-release
Pre-release

Added

  • Add config API for initial_congestion_window/min_congestion_window
  • Add congestion_control_algor option for tquic_client/tquic_server
  • Add initial_congestion_window/min_congestion_window option for tquic_client/tquic_server
  • Add more unittest cases for delivery_rate/minmax
  • Simplify ffi feature in tls module
  • Add typos.toml and fix all typos
  • Add a workflow for goodput measurements

Changed

  • Rename tquic_apps to tquic_tools
  • Move examples to tquic-group/tquic-examples-* repos

Fixed

  • Keep cc unchanged for non-data packets (e.g., Initial and Handshake)
  • Update the LICENSE file

TQUIC v0.3.0

01 Dec 05:03
7608e3a
Compare
Choose a tag to compare
TQUIC v0.3.0 Pre-release
Pre-release

Added

  • Simplify the usage of Endpoint
  • Add config API for stateless retry
  • Add config API for initial RTT
  • Add quic_conn_index() for getting connection index
  • tquic_client: create the output directory if it does not exist
  • tquic_client: convert unspecified address to localhost address
  • tquic_client: prompt help messages for wrong command args
  • tquic_client: print statistics at the end of execution
  • Improve unit testing
  • Improve static analysis

Changed

  • endpoint: change Endpoint.close() to support forcily close the endpint
  • endpoint: quic_endpoint_new() no longer takes ownership of the resources provides by the C caller
  • tquic_client: change -p option to write the response header and body to stdout

Fixed

  • Ignore packets with unknown dcid
  • Fix bandwidth over-estimation issue
  • Improve interop testing and resolve new found issues