haproxy public development tree
Go to file
Amaury Denoyelle df50d3e39f MINOR: mux-quic: limit emitted MSD frames count per qcs
The previous commit has implemented a new calcul method for
MAX_STREAM_DATA frame emission. Now, a frame may be emitted as soon as a
buffer was consumed by a QCS instance.

This will probably increase the number of MAX_STREAM_DATA frame
emission. It may even cause a series of frame emitted for the same
stream with increasing values under high load, which is completely
unnecessary.

To improve this, limit the number of MAX_STREAM_DATA frames built to one
per QCS instance. This is implemented by storing a reference to this
frame in QCS structure via a new member <tx.msd_frm>.

Note that to properly reset QCS msd_frm member, emission of flow-control
frames have been changed. Now, each frame is emitted individually. On
one side, it is better as it prevent to emit frames related to different
streams in a single datagram, which is not desirable in case of packet
loss. However, this can also increase sendto() syscall invocation.
2025-04-30 16:08:47 +02:00
.github CI: fedora rawhide: enable unit tests 2025-04-15 16:53:54 +02:00
addons CLEANUP: assorted typo fixes in the code, commits and doc 2025-04-03 11:37:25 +02:00
admin
dev DEV: h2: fix h2-tracer.lua nil value index 2025-04-08 17:44:41 +02:00
doc DOC: ring: refer to newer RFC5424 2025-04-29 21:39:01 +02:00
examples EXAMPLES: add "games.cfg" and an example game in Lua 2025-04-01 09:10:00 +02:00
include MINOR: mux-quic: limit emitted MSD frames count per qcs 2025-04-30 16:08:47 +02:00
reg-tests REGTEST: add new reg-test for the 4 new clienthello fetches 2025-04-17 16:39:47 +02:00
scripts TESTS: unit-tests: store sh -x in a result file 2025-03-06 21:22:38 +01:00
src MINOR: mux-quic: limit emitted MSD frames count per qcs 2025-04-30 16:08:47 +02:00
tests TESTS: Fix build for filltab25.c 2025-04-03 15:59:41 +02:00
.cirrus.yml
.gitattributes
.gitignore
.mailmap
.travis.yml
BRANCHES
BSDmakefile
CHANGELOG [RELEASE] Released version 3.2-dev12 2025-04-25 10:19:03 +02:00
CONTRIBUTING
INSTALL DOC: update INSTALL to reflect the minimum compiler version 2025-04-02 18:09:47 +02:00
LICENSE
MAINTAINERS
Makefile MINOR: ssl: Add traces to ssl init/close functions 2025-04-30 11:11:26 +02:00
README.md
SUBVERS
VERDATE [RELEASE] Released version 3.2-dev12 2025-04-25 10:19:03 +02:00
VERSION [RELEASE] Released version 3.2-dev12 2025-04-25 10:19:03 +02:00

HAProxy

alpine/musl AWS-LC openssl no-deprecated Illumos NetBSD FreeBSD VTest

HAProxy logo

HAProxy is a free, very fast and reliable reverse-proxy offering high availability, load balancing, and proxying for TCP and HTTP-based applications.

Installation

The INSTALL file describes how to build HAProxy. A list of packages is also available on the wiki.

Getting help

The discourse and the mailing-list are available for questions or configuration assistance. You can also use the slack or IRC channel. Please don't use the issue tracker for these.

The issue tracker is only for bug reports or feature requests.

Documentation

The HAProxy documentation has been split into a number of different files for ease of use. It is available in text format as well as HTML. The wiki is also meant to replace the old architecture guide.

Please refer to the following files depending on what you're looking for:

  • INSTALL for instructions on how to build and install HAProxy
  • BRANCHES to understand the project's life cycle and what version to use
  • LICENSE for the project's license
  • CONTRIBUTING for the process to follow to submit contributions

The more detailed documentation is located into the doc/ directory:

License

HAProxy is licensed under GPL 2 or any later version, the headers under LGPL 2.1. See the LICENSE file for a more detailed explanation.