SCACHE(8)                   System Manager's Manual                  SCACHE(8)

NAME
       scache - Postfix shared connection cache server

SYNOPSIS
       scache [generic Postfix daemon options]

DESCRIPTION
       The  scache(8)  server  maintains a shared multi-connection cache. This
       information can be used by, for example, Postfix SMTP clients or  other
       Postfix delivery agents.

       The connection cache is organized into logical destination names, phys‐
       ical endpoint names, and connections.

       As  a  specific  example, logical SMTP destinations specify (transport,
       domain, port), and physical SMTP endpoints specify (transport,  IP  ad‐
       dress,  port).  An SMTP connection may be saved after a successful mail
       transaction.

       In the general case, one logical destination may refer to zero or  more
       physical  endpoints, one physical endpoint may be referenced by zero or
       more logical destinations, and one endpoint may refer to zero  or  more
       connections.

       The  exact syntax of a logical destination or endpoint name is applica‐
       tion dependent; the scache(8) server does not care.   A  connection  is
       stored  as a file descriptor together with application-dependent infor‐
       mation that is needed to re-activate a connection  object.  Again,  the
       scache(8)  server is completely unaware of the details of that informa‐
       tion.

       All information is stored with a finite time to live (ttl).   The  con‐
       nection  cache  daemon  terminates  when  no  client  is  connected for
       max_idle time units.

       This server implements the following requests:

       save_endp ttl endpoint endpoint_properties file_descriptor
              Save the specified file descriptor and connection property  data
              under  the  specified endpoint name. The endpoint properties are
              used by the client to re-activate a  passivated  connection  ob‐
              ject.

       find_endp endpoint
              Look  up  cached properties and a cached file descriptor for the
              specified endpoint.

       save_dest ttl destination destination_properties endpoint
              Save the binding between a logical destination and  an  endpoint
              under  the  destination name, together with destination specific
              connection properties. The destination properties  are  used  by
              the client to re-activate a passivated connection object.

       find_dest destination
              Look  up  cached destination properties, cached endpoint proper‐
              ties, and a cached file descriptor  for  the  specified  logical
              destination.

SECURITY
       The scache(8) server is not security-sensitive. It does not talk to the
       network, and it does not talk to local users.  The scache(8) server can
       run chrooted at fixed low privilege.

       The  scache(8)  server is not a trusted process. It must not be used to
       store information that is security sensitive.

DIAGNOSTICS
       Problems and transactions are logged to syslogd(8) or postlogd(8).

BUGS
       The session cache cannot be shared among multiple machines.

       When a connection expires from the cache, it is closed without the  ap‐
       propriate protocol specific handshake.

CONFIGURATION PARAMETERS
       Changes  to  main.cf are picked up automatically as scache(8) processes
       run for only a limited amount of time. Use the command "postfix reload"
       to speed up a change.

       The text below provides only a parameter summary. See  postconf(5)  for
       more details including examples.

RESOURCE CONTROLS
       connection_cache_ttl_limit (2s)
              The  maximal  time-to-live  value  that the scache(8) connection
              cache server allows.

       connection_cache_status_update_time (600s)
              How frequently the scache(8) server logs usage  statistics  with
              connection cache hit and miss rates for logical destinations and
              for physical endpoints.

MISCELLANEOUS CONTROLS
       config_directory (see 'postconf -d' output)
              The  default  location of the Postfix main.cf and master.cf con‐
              figuration files.

       daemon_timeout (18000s)
              How much time a Postfix daemon process may take to handle a  re‐
              quest before it is terminated by a built-in watchdog timer.

       ipc_timeout (3600s)
              The  time limit for sending or receiving information over an in‐
              ternal communication channel.

       max_idle (100s)
              The maximum amount of time that an idle Postfix  daemon  process
              waits for an incoming connection before terminating voluntarily.

       process_id (read-only)
              The process ID of a Postfix command or daemon process.

       process_name (read-only)
              The process name of a Postfix command or daemon process.

       syslog_facility (mail)
              The syslog facility of Postfix logging.

       syslog_name (see 'postconf -d' output)
              A  prefix  that  is  prepended  to  the  process  name in syslog
              records, so that, for example, "smtpd" becomes "prefix/smtpd".

       Available in Postfix 3.3 and later:

       service_name (read-only)
              The master.cf service name of a Postfix daemon process.

SEE ALSO
       smtp(8), SMTP client
       postconf(5), configuration parameters
       master(8), process manager
       postlogd(8), Postfix logging
       syslogd(8), system logging

README FILES
       CONNECTION_CACHE_README, Postfix connection cache

LICENSE
       The Secure Mailer license must be distributed with this software.

HISTORY
       This service was introduced with Postfix version 2.2.

AUTHOR(S)
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

       Wietse Venema
       Google, Inc.
       111 8th Avenue
       New York, NY 10011, USA

                                                                     SCACHE(8)