MATRIXX Route Cache Controller
In a MATRIXX environment where multiple customer sub-domains are implemented, the Route Cache (a database) is required in the traffic-routing layer.
Figure 1 shows the Route Cache Controller service and the Route Cache in the MATRIXX TRA layer. The Route Cache contains data that is relevant for determining the home of a subscriber and in which customer sub-domain. The Route Cache holds subscriber identity data and session identity data that maps either subscribers or sessions to particular sub-domains. When processing network requests, the TRA-RT identifies the correct customer sub-domain using the information in the Route Cache, and the TRA-SI then routes traffic to the correct active engine for the identified customer sub-domain.
The Route Cache Controller service initializes the Route Cache on startup. For initial priming of the Route Cache, the RCC requires that the data is sent by MATRIXX Engine at engine cold restart. After the Route Cache contains cached data, if the TRA-RT-(SI/DR) server is stopped or comes down, upon restart of the TRA-RT-(SI/DR) server, the Route Cache Controller service primes the Route Cache from a route-cache checkpoint.
The Route Cache Controller service maintains the Route Cache, applying data updates to it that are received from the processing servers by way of the Route Cache Proxy. If a cache miss occurs, the Route Cache Controller service performs lookups in the engine processing servers (route-cache resolution requests) to seek information that may be missing in the Route Cache. The Route Cache Controller service also processes data updates sent from the engine processing servers, inserting the updates into the Route Cache routing tables to ensure they are kept current with real-time subscriber identity data and session identity data.
A routing entry that has not been used in any way for more than 7 days (as indicated by a session ID that is unused, terminated, or expired) is removed from the routing table.
The following summarizes how a TRA-RT-(SI/DR) processes requests in a MATRIXX environment where multiple customer sub-domains are implemented:
- A subscriber makes a phone call.
- The network request is received by the TRA-RT-(SI/DR).
- The TRA-RT-(SI/DR) uses the phone number in the network request as a key to perform the lookup in the Route Cache.
- The Route Cache returns the customer sub-domain ID (domain ID) that is relevant for that phone number.
- The TRA-RT-(SI/DR) uses its routing table to map the domain ID to the physical host of the engine responsible for processing the request.
- The TRA-RT-(SI/DR) routes the network message to the TRA-PROC on the engine (to the active processing server of the correct engine chain).