haproxy/include/proto
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
..
acl.h [MEDIUM] acl: when possible, report the name and requirements of ACLs in warnings 2008-08-03 09:41:05 +02:00
backend.h [MAJOR] migrate the connection logic to stream interface 2008-11-02 10:19:10 +01:00
buffers.h [BUILD] add format(printf) to printf-like functions 2009-04-03 12:01:47 +02:00
checks.h [MEDIUM] minor update to the task api: let the scheduler queue itself 2009-03-08 09:38:41 +01:00
client.h [CLEANUP] remove unused include/types/client.h 2008-07-16 10:30:40 +02:00
cttproxy.h [MEDIUM] check for cttproxy support when required 2007-03-24 17:24:39 +01:00
dumpstats.h [MEDIUM] implement error dump on unix socket with "show errors" 2009-03-04 15:53:18 +01:00
fd.h [MEDIUM] Fix memory freeing at exit 2008-05-30 07:07:19 +02:00
freq_ctr.h [OPTIM] rate-limit: cleaner behaviour on low rates and reduce consumption 2009-03-06 09:18:27 +01:00
hdr_idx.h [MAJOR] huge rework of the HTTP request FSM 2007-01-21 19:16:41 +01:00
httperr.h [MEDIUM] errorloc now checked first from backend then from frontend 2006-12-24 17:47:20 +01:00
log.h [BUILD] add format(printf) to printf-like functions 2009-04-03 12:01:47 +02:00
pipe.h [MEDIUM] introduce pipe pools 2009-01-25 13:49:53 +01:00
port_range.h [MEDIUM] add support for binding to source port ranges during connect 2009-06-10 12:23:32 +02:00
proto_http.h [MEDIUM] http: capture invalid requests/responses even if accepted 2009-04-02 21:36:37 +02:00
proto_tcp.h [MEDIUM] extract TCP request processing from HTTP 2008-11-30 23:15:34 +01:00
proto_uxst.h [MEDIUM] minor update to the task api: let the scheduler queue itself 2009-03-08 09:38:41 +01:00
protocols.h [MINOR] add a generic unbind_all_listeners() primitive 2007-11-04 22:42:49 +01:00
proxy.h [MINOR] compute the max of sessions/s on fe/be/srv 2009-05-10 18:52:49 +02:00
queue.h [BUG] do not dequeue the backend's pending connections on a dead server 2008-12-07 23:51:12 +01:00
server.h [MINOR] compute the max of sessions/s on fe/be/srv 2009-05-10 18:52:49 +02:00
session.h [BUG] session: errors were not reported in termination flags in TCP mode 2009-03-15 22:34:05 +01:00
signal.h [MINOR] add basic signal handling functions 2009-05-10 09:24:23 +02:00
stream_interface.h [MINOR] replace client_retnclose() with stream_int_retnclose() 2008-11-30 19:48:07 +01:00
stream_sock.h [MEDIUM] enable inter-stream_interface wakeup calls 2008-12-28 11:09:02 +01:00
task.h [MINOR] show sess: report number of calls to each task 2009-03-28 17:54:35 +01:00
template.h