haproxy/include/common
Willy Tarreau c6f4ce8fc4 [MEDIUM] add support for binding to source port ranges during connect
Some users are already hitting the 64k source port limit when
connecting to servers. The system usually maintains a list of
unused source ports, regardless of the source IP they're bound
to. So in order to go beyond the 64k concurrent connections, we
have to manage the source ip:port lists ourselves.

The solution consists in assigning a source port range to each
server and use a free port in that range when connecting to that
server, either for a proxied connection or for a health check.
The port must then be put back into the server's range when the
connection is closed.

This mechanism is used only when a port range is specified on
a server. It makes it possible to reach 64k connections per
server, possibly all from the same IP address. Right now it
should be more than enough even for huge deployments.
2009-06-10 12:23:32 +02:00
..
appsession.h [MEDIUM] minor update to the task api: let the scheduler queue itself 2009-03-08 09:38:41 +01:00
base64.h
cfgparse.h [MINOR] improve reporting of misplaced acl/reqxxx rules 2009-03-31 10:49:21 +02:00
compat.h [CLEANUP] remove dependency on obsolete INTBITS macro 2008-07-16 10:30:44 +02:00
config.h [OPTIM] force inlining of large functions with gcc >= 3 2008-11-02 10:19:08 +01:00
debug.h [MINOR] term_trace: add better instrumentations to trace the code 2008-08-16 14:55:08 +02:00
defaults.h [MINOR] add basic signal handling functions 2009-05-10 09:24:23 +02:00
eb32tree.h [MINOR] update ebtree to version 4.1 2009-03-21 10:23:36 +01:00
eb64tree.h [MINOR] update ebtree to version 4.1 2009-03-21 10:23:36 +01:00
ebpttree.h [MINOR] update ebtree to version 4.1 2009-03-21 10:23:36 +01:00
ebtree.h [OPTIM] force inlining of large functions with gcc >= 3 2008-11-02 10:19:08 +01:00
epoll.h [BUILD] declare epoll_* as static when using our own functions 2007-04-15 23:57:41 +02:00
errors.h [MINOR] add an options field to the listeners 2007-11-04 22:42:48 +01:00
memory.h [MEDIUM] memory: update pool_free2() to support NULL pointers 2008-08-03 20:48:50 +02:00
mini-clist.h [MINOR] add a new back-reference type : struct bref 2008-12-07 20:00:15 +01:00
rbtree.h [MINOR] imported the rbtree function from Linux kernel 2007-01-07 02:12:57 +01:00
regex.h
sessionhash.h [MAJOR] remove files distributed under an obscure license 2007-09-09 21:56:53 +02:00
standard.h [MEDIUM] add support for binding to source port ranges during connect 2009-06-10 12:23:32 +02:00
template.h
ticks.h [MEDIUM] scheduler: get rid of the 4 trees thanks and use ebtree v4.1 2009-03-21 10:25:14 +01:00
time.h [MINOR] add curr_sec_ms and curr_sec_ms_scaled for current second. 2009-03-05 16:56:16 +01:00
tools.h [MINOR] forgot to include common/tools.h in the archive. 2006-12-22 14:40:41 +01:00
uri_auth.h [MEDIUM] Fix memory freeing at exit, part 2 2008-06-07 11:06:14 +02:00
version.h [BUILD] centralize version and date into one file for each 2007-09-09 23:31:11 +02:00