Throttling
Concepts
GreenArrow Engine can throttle delivery attempts both for groups of IP addresses via its Throttle Templates, and on a per-sending-IP-address basis via Throttle Overrides. Each “Throttle Template” or “Throttle Override” entry is referred to as a “Throttle Rule”.
The throttle template is applied only to IP address VirtualMTAs. Relay server VirtualMTAs have their own, independent throttling settings.
Each Throttle Rule applies to a specific recipient domain or collection of recipient domains. For example, one Throttle Rule could apply to gmail.com, while another applies to yahoo.com and ymail.com. Within each Throttle Rule, you can define the following:
Domains
The domain(s) that this rule should apply to, listed one per line.
Domains can be defined with the following wildcards:
- A domain that is prefixed with
[*.]will match the given domain and all subdomains. For example,[*.]example.comwill matchexample.com,subdomain.example.com, andwww.subdomain.example.com. - A domain that is prefixed with
*.will match only subdomains. For example,*.example.comwill matchsubdomain.example.comandwww.subdomain.example.com, but will not matchexample.com.
Settings to use for a domain are checked in this order. The first match is used:
- An exact IP name match and an exact domain match
- An exact IP name match and the wildcard domain entry
- The wildcard IP entry and an exact domain match
- The wildcard IP entry and the wildcard domain entry
For example, when looking up delivery to foo.example.com domain strings are searched for in the following order:
foo.example.com
[*.]foo.example.com
*.example.com
[*.]example.com
*.com
[*.]com
All name or domain matches are case-insensitive.
Max Concurrent Connections
The maximum number of concurrent SMTP connections to make when delivering mail
to the listed domain(s). This is applied on a per-sending-IP addresses basis.
For example, if a Throttle Template Rule specifies a maximum of 20 concurrent
connections, and there are two sending IP addresses that the rule is applied
to, then a maximum of 40 total concurrent connections will be made at any
given time, with a maximum of 20 from each IP address.
Max Messages per Hour
The maximum number of messages to attempt to deliver per hour to the listed
domain(s). This is applied on a per-sending-IP addresses basis. For example, if
a Throttle Template Rule specifies a maximum of 10,000 messages per hour, and
there are two sending IP addresses that the rule is applied to, then a maximum
of 20,000 total delivery attempts will occur per hour, with a maximum of
10,000 delivery attempts per hour for each IP address. Leaving this field
blank causes there to be no limit.
Throttle Program
The Throttle Program to use.

Each time that GreenArrow Engine attempts to deliver a message, it first checks the configured Throttle Rules and applies the most specific matching rule. The order of precedence is:
- A Throttle Override rule that matches the sending IP address and recipient’s domain name
- A Throttle Template rule that matches the recipient’s domain name
- The Default Throttle Override of the sending IP address
- The Default Throttle Template Rule
Updating Throttle Template Settings
This section describes how to update throttle settings via GreenArrow Engine’s web interface. To update these settings by running SQL queries, see the Updating Throttle Settings in SQL page.
- Log into GreenArrow Engine’s web interface.
- Navigate to
Configure=>Virtual MTAs:
- Click the
Throttling Configurationbutton:
- Click on the desired Throttling Template’s
Editbutton:
- To edit an existing rule, find it in the list, and post the desired updates:
- To create a new rule, scroll down until you see the
Add a rulebutton towards the bottom of the page, click the button, and fill in the desired values:
Updating Throttle Overrides for Sending IP Addresses
This section describes how to update throttle settings via GreenArrow Engine’s web interface. To update these settings by running SQL queries, see the Updating Throttle Settings in SQL page. To update these settings via a command line interface, see the Updating Throttle Settings on the Command Line page.
- Log into GreenArrow Engine’s web interface.
- Navigate to
Configure=>Virtual MTAs:
- Scroll down to the IP address that you want to update, and click its
Editbutton:
- To override a Throttle Template rule, find it in the list, and click the
Overridebutton next to it. After clicking this button, a form appears which contains the fields described in theConceptssection of this document:
- To edit an existing Throttle Override Rule, find it in the
Throttling Ruleslist and update it.
- To create a new Throttle Override Rule that there isn’t a corresponding Throttle Template entry for, click the
Add a rulebutton:
