Releases: Tencent/tquic
Releases · Tencent/tquic
TQUIC v0.12.0
Added
- Buffer disordered zero rtt packets on the server endpoint
- Add dummy congestion controller for testing and expriments
- Tweak configurations and initialization of flow control
- Improve comments of bbr congestion control algorithm
- Add workflow and plot tools for benchmarking
- tquic_tools: add the
version
option
Fixed
- Fix dropping datagrams from unknown connections on the client endpoint
- Fix handling restart from idle for bbr/bbr3 algorithms
- tquic_tools: resolve minor issues
TQUIC v0.11.0
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
tototal_requests_per_thread
Fixed
- Fix RangeSet::filter() used by Redundant multipath scheduler
- Fix injected stream frames for Redundant multipath scheduler
TQUIC v0.10.0
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
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
Removed
- Remove the sfv feature flag from h3 (to resolve a build issue at docs.rs)
TQUIC v0.8.0
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
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 theqlog-dir
option - tquic_tools: change the
dump-path
option to thedump-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
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
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
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