Look Ahead Window Message Timing Configuration

The MATRIXX policy look ahead window feature has two configurable parameters: Look ahead window size and wake-up delay. The engine also calculates the next time to wake up and check for policy changes. This feature is useful if your environment re-evaluates a lot of Diameter Sy (SNR), Gx (RAR), or 5G Nchf_SpendingLimitControl (Notify) policies concurrently.

The message randomization time delay is calculated by summing a Sy/Gx/Nchf_SpendingLimitControl randomized time you set, a configurable Delay time, and an internal calculation. You use the answers to these create_config.info questions to configure your randomized delay time:

  • Sy/Gx/Nchf_SpendingLimitControl randomized time (in seconds): Global:Session:Policy:Notify:How long (in seconds) to randomize the delay of policy re-evaluation?
  • Policy delay Time (in minutes): Global:Session:Policy:Notify:How long (in minutes) is the delay time to trigger the policy re-evaluation?

Your settings depend on the individual characteristics of your MATRIXX environment.

These guidelines help you with these settings:
  • The more subscribers you have, the higher you should set the Sy/Gx randomized time and delay time.
  • If you make frequent policy changes, use low Sy/Gx randomized time and random delay time settings because the randomized time is only valuable between policy changes.

For more information about these settings, see the discussion about configuring policy RAR and SNR behavior.

A Closer Look at the Look Ahead Window Calculation

The look-ahead window identifies the time the engine should look ahead to check for policy changes. At that time, the engine picks one of these options:
  • If there is no policy change, it does not send a notification.
  • If there is policy change, a notification is sent to the client, but Revalidation-Time is not set if look ahead is enabled. The client does not communicate further with the engine for this session.
  • The engine sets re-validation time for the session, and then wakes up again at the re-validation time (wake up time + wake up delay) to check for a policy change.
If no changes are detected in the window, the next time to wake up is set to "now" plus the window size.

When the engine reaches the wake up time plus the wake-up delay (to avoid a race condition), it checks again for any policy changes that may happen in the look-ahead window. If any are found, a notification is sent (Gx RAR, Sy SNR, N28 notify messages) and the wake up time is set to that time. If none are found, nothing is sent out the wake-up time is set to the end of look ahead window.