2.4.2.1.1 Workflow for GTT Throttle Action
The GTT Throttle action works based on the following rules:
-
When an MSU hits a GTT action of the type SFTHROT, the MSU count of that action gets updated.
Note:
The Shared Metric Service (SMS) framework is used to accumulate the total number of MSU count per SFTHROT action. -
The MSU count is updated only on the Message Processor (MP) on which the message is received for that action. On the other hand, the Threshold configuration for SFTHROT action is across the MPs.
Note:
For each GTT Action, user provisions a threshold value that is the maximum number of MSUs hitting the GTT action per second.
-
Two sysmetrics are registered. The first is for MSU count per MP and second one for cumulative MSU count across the site.
-
Aggregation of the MSU count from all the MPs is done by the MP Leader. There is only one MP leader across the site. It performs the aggregation of MSU counts. Rest of the MPs across the site are known as followers.
-
Whenever a message comes to any MP, it will increment the sysmetric count of that MP known as local sysmetric count. All the follower MPs will send the local sysmetric count data to the MP Leader to get the aggregated value of that action.
-
The MP Leader will receive the data from all the other MPs including it's own local sysmetric count. It will do the aggregation and broadcast the cumulative count to all the MPs.
-
The SMS framework is used to send local sysmetric count to MP leader and receive the aggregated sysmetric count from it. The aggregation of the count is taken care by SMS framework hence, any degradation in SMS service will impact the feature.
-
When GTT message is received for SFTHROT action, then the aggregated sysmetric count is compared with the configured threshold value for that action:
- If the aggregated sysmetric count value is lesser than the configured threshold value, then the message is allowed and the local sysmetric count value is increased by 1.
- If the aggregated
sysmetric count value is more than the configured threshold value, then the
local sysmetric count value does not get increased due to throttling. The GTT
message is discarded, discard measurement is pegged for that action, and an
alarm is raised.
- The alarm will get cleared once the aggregated sysmetric count drops below 90% of the configured threshold value.
- As there is no local sysmetric is pegged, the aggregated count will be decreased in next sliding window. Convergence time is 2 sec.
- Once the cumulative value drops below the configured threshold, it will allow the GTT messages for that action and the local sysmetric count will be increased.
Note:
For GTT Throttle action, an error margin of +2% to -2% of the provisioned threshold value must be considered. The error margin depends on the cloud infrastructure load & burst pattern of incoming traffic.
The following figure shows the process flow for GTT Throttle action:
Figure 2-6 Process Flow of GTT Throttle Action
