Overview
The system displays a 'rtrBlockedByThroughputControl' error with warnings that Throughput has been exceeded.
A sample error is displayed below:
2021-00-00T00:00:00.000000+00:00 [...] App: [...] on outside session caused 'rtrBlockedByThroughputControl' (0x04000000). Sent SMPP error 0x0058: Throughput exceeded
2021-00-00T00:00:00.000000+00:00 [...] textpass: Throughput limit of AO routing rule [...] hit, caused by message from application [...]
This article describes the logic behind these errors and when they are triggered.
Information
The reason this error happens is that this throughput (the sum total of traffic received on all binds for a particular application) limit is reached. This is a parameter that can be edited in the MGR GUI. To edit this parameter, complete the following steps:
- Open the SMS Applications > Applications > "Name_of_the_rule" location
- Define the values, based on the variables you want to set up in this rule.
- Throughput AO Committed: This value represents the committed messages per second allowed from the HUB to the application (default 65,535). Our system commits to supporting the "Committed" throughput.
- Throughput AO Maximum: This value represents the maximum messages per second allowed from the application to the HUB (default 65,535). Our system will try to use the "Maximum" throughput if there are still spare resources to do so.
The same logic applies to AT, considering that AO is "Application Originated" and AT is "Application Terminated".
Bear in mind that the total throughput defined for the Application is shared across all nodes that are in the same network discovery. So, depending on how many nodes are currently available in the network, the total throughput is shared across them.
Said in other words, for N number of RTRs on a Lithium farm, the configured throughput in this section is N times smaller for each RTR.
- Throughput AO Committed: This value represents the committed messages per second allowed from the HUB to the application (default 65,535). Our system commits to supporting the "Committed" throughput.
The alarm described in this article will occur when the Throughput AO Maximum is crossed for that instance. For example, if T/put Maximum is the same as T/put committed. In order to increase the throughput value through each RTR in your Lithium farm, you need to multiply the desired throughput through each RTR. That being said, it should be something like:
N number of RTRs * Desired throughput = The application throughput configured in the Web manager.
In some cases, the traffic through the RTRs can be a little asymmetric. Some buffer amount should be added at the top of these values.