Egress Throttle Groups

An Egress Throttle Group is a collection of Diameter Connections or Peers, or both, that are logically grouped together to monitor Egress Message Rate and Pending Transactions for multiple Peers and Connections across multiple DA-MPs on a DSR Network Element. If a Peer is assigned to the Egress Throttle Group, then all Diameter Connections to that Peer are implicitly part of the Egress Throttle Group.

The following Egress Throttle Group (ETG) features provide management of egress message throttling from a DSR to Peer Diameter Nodes on a specified set of Diameter Connections:

ETG Rate Limiting and Pending Transaction Limiting throttling are done for Request Messages only.

Note: The Per Connection Egress Message Throttling and User Configurable Connection Pending Transaction Limiting features for Egress Message Throttling are defined at a single Diameter Connection level and are local to each DA-MP. These features are described in Per Connection Egress Message Throttling and User Configurable Connection Pending Transaction Limiting.
Aggregated egress traffic controls falls into 2 categories:

Egress Message Rate controls are used to throttle traffic levels to a set of Diameter Nodes so that the cumulative rate of traffic is controlled. EMR controls are across a set of configured connections and/or peers.

Egress Pending Transactions controls are used to control the maximum number of Pending Requests that can be sent to a set of Diameter Nodes. This can be used for load-balancing when a network element is not responding at expected rates, and limits the total number of Requests that can be pending to a set of Diameter Nodes. EPT controls are across a set of connections and/or peers, and are cumulative across all DA-MPs.

Egress Throttle Groups Description

Egress Throttle Groups are implemented as part of the Diameter Routing Function.

An Egress Throttle Group is independent of a Route Group (Connection Route Group or Peer Route Group). The members of an Egress Throttle Group may or may not be same as defined in a Route Group; there is no defined relationship between Egress Throttle Groups and Route Groups.

The Egress Message Rate throttling is controlled by the configured maximum Egress Message Rate (EMR) on an aggregated basis and the "Egress Throttle Group - Rate Limiting Congestion Level (ETG-R CL-) (range: CL-0- CL-3) for the ETG.

The Egress Pending Transaction Limiting throttling is controlled by the configured maximum Egress Pending Transactions (EPT) on an aggregated basis and the "Egress Throttle Group - Pending Transaction Limiting Congestion Level (ETG-PCL) (range: CL-0- CL-3) for the ETG.

An Egress Throttle Group can contain the following configuration data:
  • Up to 128 Peers, Connections, or Peers and Connections
  • Maximum Egress Message Rate (EMR), used for calculation of Onset and Abatement Thresholds
    • Onset and Abatement Thresholds, as percentages of the Maximum EMR, to use with Message Priority to determine which Requests to throttle
    • Convergence Time to control responsiveness of egress Request rate control
    • Abatement Time
  • Maximum Egress Pending Transactions(EPT), used for calculation of Onset and Abatement Thresholds
    • Onset and Abatement Thresholds, as percentages of the Maximum EPT, to use with Message Priority to determine which Requests to throttle
    • Abatement Time

DSR supports a maximum of 5 congestion levels (CL-0 to CL-4) that indicate the Congestion Level of a resource. CL0 indicates that the resource has no congestion, and CL-4 indicates that the resource is completely blocked. CL-1, CL-2, and CL-3 indicate increasing levels of congestion.

Egress Throttle Groups (ETG) can be configured in Diameter Configuration; each Egress Throttle Group will have its own Congestion Level states based on its configuration.

  1. As an Egress Throttle Group 's egress Request message traffic rate increases and exceeds the Egress Throttle Group Rate Limiting onset thresholds configured in the Egress Throttle Group, the Egress Throttle Group 's Congestion Level also increases.
  1. As the Egress Throttle Group 's total number of Pending Transactions increases and exceeds the Egress Throttle Group Pending Transaction Limiting onset thresholds configured in the Egress Throttle Group , the Egress Throttle Group 's Congestion Level also increases.

As the Egress Throttle Group 's Congestion Level increases, Message Priority becomes a factor in determining if a message can be routed to a member of the Egress Throttle Group, or will be throttled. Requests with Message Priority less than Congestion Level will not be routed to any member of the Egress Throttle Group.

Diameter Request messages are assigned a Message Priority 0, 1, or 2; Answers always have Priority 3. The Priority of the Request message controls when an ETG performs throttling is shown in Table 1

Message Priority and ETG Congestion Level
Request Message Priority When Permitted to route to Member of ETG
0 Congestion Level 0
1 Congestion Level 0, 1
2 Congestion Level 0, 1, 2

When the EMR for an Egress Throttle Group reaches the Egress Throttle Group 's Maximum Egress Request Rate or the Egress Throttle Group 's Pending Transactions reaches the Egress Throttle Group 's Maximum Egress Pending Requests, no Requests will be routed to any members of the Egress Throttle Group.

Egress Throttle Group Rate Limiting

The ETG Message Rate Controls are optional, but if defined and enabled, then ETG Message Rate Congestion level will be updated as indicated in Table 2.

ETG Message Rate Congestion Levels Based on Threshold
Onset and Abatement Thresholds ETG Rate Congestion Level (ETG-RCL) Impact
Onset Threshold-3 (OT-3) When ETG rate exceeds Threshold, set ETG-RCL = CL-3
Abatement Threshold-3 (AT-3) When ETG rate falls below Threshold, set ETG-RCL = CL-2
Onset Threshold-2 (OT-2) When ETG rate exceeds Threshold, set ETG-RCL = CL-2
Abatement Threshold-2 (AT-2) When ETG rate falls below Threshold, set ETG-RCL = CL-1
Onset Threshold-1 (OT-1) When ETG rate exceeds Threshold, set ETG-RCL = CL-1
Abatement Threshold-1 (AT-1) When ETG rate falls below Threshold, set ETG-RCL = CL-0

In an Egress Throttling Group, if Maximum Egress Request Rate is configured, then OT-1 and AT-1 thresholds must be configured. OT-2, AT-2, OT-3 and AT-3 are optional but must be configured in pairs; for example, if OT-2 is configured, AT-2 must also be configured. Finally, AT-3 must be configured if OT-3 is expected to be configured.

In addition to the thresholds, the Convergence Time and the Abatement Time provide a high degree of user control over the characteristics of transitions between Congestion Levels due to throttling.
  • Convergence Time - The rate convergence time is the amount of time it takes for the measured rate to converge on the actual rate.
    For example, if the actual rate jumps from 0 MPS to 1000 MPS and the Rate Convergence Time is 5 seconds, it takes that long for the measured rate to converge on the actual rate, and the that long for the measured measured rate will be reported as follows:
    • T(0) = 0 MPS
    • T(1) = 200 MPS
    • T(2) = 400 MPS
    • T(3) = 600 MPS
    • T(4) = 800 MPS
    • T(5) = 1000 MPS

    The EMR is calculated every 100ms by subtracting the oldest traffic count from the newest traffic count, and averaging the difference over the elapsed time between them.

  • EMR Abatement Time - Amount of time that a throttled connection's adjusted EMR must remain below an abatement level before allowing it to abate to a lower Congestion Level.

EMR onset requires only one EMR sample to exceed an onset threshold to advance the ETG-RCL. Multi-step throttling is supported. For example, the EMR Congestion Level can be increased from CL-0 to CL-1, CL-2, or CL-3 after one EMR sample period. This allows for a rapid response to traffic load increases while taking a more conservative approach to traffic load decreases.

Only single step abatement is supported. For example CL-3-> CL-2 abatement is supported but not CL-3-> CL-1.

Rate Limiting must be enabled on the Diameter > Maintenance > Egress Throttle Groups GUI page before Egress Message Rate throttling can be started for Egress Throttle Groups. If Rate Limiting is enabled, then any routable Request message sent to a Peer or Connection on any DA-MP on that NE contained in the ETG will be used for rate calculation purposes. (Diameter management messages such as CER/CEA, DWR/DWA, and DPR/DPA are not counted in the egress message rate.)
Note: For local nodes, CEAs are sent in response to erroneous CERs.

Egress Throttle Group Pending Transaction Limiting

If Egress Throttle Group Rate Limiting is configured and enabled in an Egress Throttle Group, then the ETG Pending Transaction Congestion Level will be updated as indicated in Table 3.
ETG Pending Transaction Congestion Levels Based on Threshold
Onset and Abatement Thresholds ETG Pending Transaction Congestion Level (ETG-PCL) Impact
Onset Threshold-3 (OT-3) When ETG Pending Transactions exceeds Threshold, set ETG-PCL = CL-3
Abatement Threshold-3 (AT-3) When ETG Pending Transactions falls below Threshold, set ETG-PCL = CL-2
Onset Threshold-2 (OT-2) When ETG Pending Transactions exceeds Threshold, set ETG-PCL = CL-2
Abatement Threshold-2 (AT-2) When ETG Pending Transactions falls below Threshold, set ETG-PCL = CL-1
Onset Threshold-1 (OT-1) When ETG Pending Transactions exceeds Threshold, set ETG-PCL = CL-1
Abatement Threshold-1 (AT-1) When ETG Pending Transactions falls below Threshold, set ETG-PCL = CL-0

In an Egress Throttling Group, if Maximum Egress Pending Transactions is configured, then OT-1 and AT-1 thresholds must be configured. OT-2, AT-2, OT-3 and AT-3 are optional but must be configured in pairs; for example, if OT-2 is configured, AT-2 must also be configured. Finally, AT-3 must be configured if OT-3 is expected to be configured.

The local sample of number of pending Transactions to an ETG is periodically collected and sent to the DA-MP Leader for aggregation. The aggregated value is then sent back to each DA-MP for threshold and abatement calculation. No adjustment is applied to EPT, and aggregated values are sent back to each DA-MP.

The EPT Abatement Time is the amount of time that egress Pending Transactions must remain below an abatement level before allowing it to abate to a lower Congestion Level. No adjustment is applied to EPT abatement.

Pending Transaction Limiting must be enabled Maintenance GUI before Egress Pending Transaction Limiting can be started for Egress Throttle Groups. If Egress Pending Transaction Limiting is enabled, then any pending Request sent to a Peer or Connection on any DA-MP on that NE contained in the Egress Throttle Group will be used for Pending Transaction Limiting calculation.

Assumptions and Limitations

Egress Throttling Groups have the following assumptions and limitations:
  • EMR abatement can occur only on an integer-multiple of 125ms. For example, if an EMR Abatement Time of 600ms is configured, then the "actual" abatement period would be 625ms (5 * 125ms). Egress Pending Transactions are updated every 125ms; if an EPT Abatement of 600ms is configured, then the "actual" abatement period would be 625ms (5 * 125 ms).
  • Local EMR for a 90 ms sample period is the normalized per-second message rate based on the amount of traffic transmitted during the sample period. With a particular combination of traffic characteristic, thresholds, and Convergence Time, this can cause EMR congestion onset to occur in the presence of short traffic bursts that would normally, over a second, not have resulted in an EMR threshold being crossed. As an example, suppose local messages transmitted to an ETG during a 90ms sample X are 100 and subsequent samples (X+n) during subsequent 910 ms (1 second - 90ms) are less than 100 msgs. Local EMR for sample period X will be: 100*(1000ms/90ms) = 1100 messages/sec even though in reality the Local Message Rate was lower than 1100 msgs/sec. With a higher Convergence Time, the effect of this limitation can be reduced.
  • Because the sampling timer and MP Leader aggregation are asynchronous, the ETG aggregated rate can lag by up to 250 ms.

Diameter Configuration for Egress Throttle Groups

Egress Throttle Groups are used to perform 2 functions: Rate limiting and Pending Transaction Limiting. Each of the functions are independent of each other and can be optionally configured and controlled separately.

The Diameter > Configuration > Egress Throttle Groups GUI pages provide fields for configuring each function. Each function, if configured in the system, must have its Admin State changed to Enabled on the Diameter > Maintenance > Egress Throttle Groups GUI page.

Egress Throttle Groups configuration procedures are provided in Egress Throttle Groups configuration.

Egress Throttle Groups maintenance information and procedures are provided in Egress Throttle Groups.