'ConnectionRateThrottle'' ''''


Incoming SMTP connection rate V8.8 and later

Whenever an outside site connects to sendmail's SMTP port, sendmail fork(2)s a copy of itself. That copy (the child) processes the incoming connection and its message. The primary load-limiting mechanisms are the QueueLA (QueueLA), RefuseLA (RefuseLA), and DelayLA (DelayLA) options. However, these options rely on the system load average, which can generally be sluggish and can lag behind events. This ConnectionRateThrottle option, and similar options, exist to help flatten out the actual load until the load average can catch up. The ConnectionRateThrottle option is used like this:

O ConnectionRateThrottle=num                   configuration file (V8.8 and later) 
-OConnectionRateThrottle=num                   command line (V8.8 and later) 
define(`confCONNECTION_RATE_THROTTLE', `num')  mc configuration (V8.8 and later) 

The num is of type numeric. If it is present and greater than zero, connections are slowed when more than that number of connections arrive within one second. If num is less than or equal to zero, or absent, no threshold is enforced. If the entire option is missing, the default becomes zero. The default for the mc technique is to omit this option.

To illustrate how the slowdown operates, consider a situation in which num is set to 3, and 12 connections come in simultaneously. The first three connections are handled immediately. The next three are handled after one second. The three after that are handled after two seconds, and so on. The 12th connection would be handled after a delay of three seconds.

Note that this option and the MaxDaemonChildren option (MaxDaemonChildren) affect incoming connections differently. Also see the DelayLA option (DelayLA) as a way to delay incoming messages on high load.

The ConnectionRateThrottle option is not safe. If specified from the command line, it can cause sendmail to relinquish its special privileges.

    Part I: Build and Install
    Part II: Administration
    Part III: The Configuration File
    Chapter 21. The D (Define a Macro) Configuration Command
    Chapter 24. The O (Options) Configuration Command