haproxy/include/types
Willy Tarreau f27b5ea8dc [MEDIUM] new option "independant-streams" to stop updating read timeout on writes
By default, when data is sent over a socket, both the write timeout and the
read timeout for that socket are refreshed, because we consider that there is
activity on that socket, and we have no other means of guessing if we should
receive data or not.

While this default behaviour is desirable for almost all applications, there
exists a situation where it is desirable to disable it, and only refresh the
read timeout if there are incoming data. This happens on sessions with large
timeouts and low amounts of exchanged data such as telnet session. If the
server suddenly disappears, the output data accumulates in the system's
socket buffers, both timeouts are correctly refreshed, and there is no way
to know the server does not receive them, so we don't timeout. However, when
the underlying protocol always echoes sent data, it would be enough by itself
to detect the issue using the read timeout. Note that this problem does not
happen with more verbose protocols because data won't accumulate long in the
socket buffers.

When this option is set on the frontend, it will disable read timeout updates
on data sent to the client. There probably is little use of this case. When
the option is set on the backend, it will disable read timeout updates on
data sent to the server. Doing so will typically break large HTTP posts from
slow lines, so use it with caution.
2009-10-03 22:01:18 +02:00
..
acl.h [MEDIUM] acl: set types on all currently known ACL verbs 2008-07-25 19:31:03 +02:00
backend.h [MEDIUM] backend: introduce the "static-rr" LB algorithm 2009-10-03 18:41:19 +02:00
buffers.h [MAJOR] struct chunk rework 2009-10-01 10:17:37 +02:00
capture.h [MAJOR] last bunch of capture changes for mempool v2 2007-05-13 22:46:04 +02:00
checks.h [MEDIUM] Health check reporting code rework + health logging, v3 2009-10-01 10:17:37 +02:00
fd.h [MEDIUM] remove TCP_CORK and make use of MSG_MORE instead 2009-08-19 11:29:44 +02:00
freq_ctr.h [MEDIUM] measure and report session rate on frontend, backends and servers 2009-03-05 18:43:00 +01:00
global.h [MINOR] add "description", "node" and show-node"/"show-desc", remove "node-name", v2 2009-10-03 07:10:14 +02:00
hdr_idx.h [BUG] files were missing for hdr_idx in previous commit 2006-12-04 02:20:02 +01:00
httperr.h [MAJOR] udpated the stats page to clearly distinguish FEs and BEs 2007-01-01 21:38:07 +01:00
lb_fwlc.h [CLEANUP] proxy: move last lb-specific bits to their respective files 2009-10-03 18:41:18 +02:00
lb_fwrr.h [CLEANUP] proxy: move last lb-specific bits to their respective files 2009-10-03 18:41:18 +02:00
lb_map.h [CLEANUP] proxy: move last lb-specific bits to their respective files 2009-10-03 18:41:18 +02:00
log.h [BUILD] fix build on AIX due to recent log changes 2007-12-05 11:11:55 +01: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: add options to ignore invalid header names 2009-04-02 21:36:34 +02:00
proto_tcp.h [MAJOR] implement tcp request content inspection 2008-07-16 10:29:07 +02:00
protocols.h [MINOR] move the initial task's nice value to the listener 2009-08-16 19:36:56 +02:00
proxy.h [MEDIUM] new option "independant-streams" to stop updating read timeout on writes 2009-10-03 22:01:18 +02:00
queue.h [MAJOR] ported pendconn to mempools v2 2007-05-13 20:19:55 +02:00
server.h [MEDIUM] Collect & show information about last health check, v3 2009-09-23 23:15:36 +02:00
session.h [MEDIUM] implement error dump on unix socket with "show errors" 2009-03-04 15:53:18 +01:00
signal.h [MINOR] add basic signal handling functions 2009-05-10 09:24:23 +02:00
stream_interface.h [MEDIUM] new option "independant-streams" to stop updating read timeout on writes 2009-10-03 22:01:18 +02:00
task.h [MINOR] show sess: report number of calls to each task 2009-03-28 17:54:35 +01:00
template.h [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00