Policy Decision Cache for Telecommunications Subscriber Reconnection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In telecommunications networks, frequent regeneration of policy decisions for subscribers upon reconnection is unnecessary and burdens the system, as criteria for policy decisions typically remain unchanged for similar users with similar profiles and subscription plans.

Innovation Solution

Implementing a caching system that stores policy decisions and criteria, allowing retrieval from cache if criteria match existing entries, and recalculating and caching new decisions only when criteria do not match, thereby reducing the need for continuous policy reevaluation and database access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If policy decisions are regenerated for each subscriber reconnection, then policy accuracy is maintained, but system load increases and performance deteriorates

Engineering Contradiction:
Improvepolicy accuracyVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary action by caching policy decisions before subscriber reconnection events occur. When a policy decision is made for a subscriber, it is stored in the cache with associated criteria values. Upon reconnection, the system checks the cache first and retrieves the pre-computed policy decision if criteria match, eliminating the need to regenerate the decision and thus maintaining accuracy while improving throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of policy decisions and stores them in a cache memory structure. Instead of regenerating the same policy decision for each reconnection event, the system copies the cached policy decision (which contains the decision and associated criteria values) and returns it to the subscriber, thereby maintaining policy accuracy while significantly reducing system load and improving productivity.

Inventive Principle:
Principle #26Copying

2Productivity

If policy decisions are cached for reuse, then system load is reduced and throughput improves, but memory resources are consumed

Engineering Contradiction:
Improvesystem throughputVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The cache structure is designed with local quality by organizing stored policy decisions into specific data structures (policy decision cache entries) that contain only the necessary components: policy decision, criteria values, and subscriber identifiers. This localized organization optimizes memory usage by storing only relevant information needed for quick retrieval during reconnection events, rather than caching entire subscriber profiles or unnecessary data.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs preliminary action by pre-allocating and structuring the cache memory with policy decision entries before they are needed. The cache is prepared with the appropriate data structure format, allowing efficient storage and retrieval of policy decisions with their associated criteria values, thereby optimizing memory utilization while maintaining high throughput performance.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If policy criteria are frequently evaluated for each reconnection, then policy updates are ensured, but latency increases

Engineering Contradiction:
Improvepolicy update accuracyVSAvoidreconnection latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The cache acts as an intermediary between the subscriber reconnection event and the policy decision database. When a subscriber reconnects, the system first checks the cache (intermediary layer) for matching criteria values. If found, the cached policy decision is returned immediately without querying the database, thus reducing latency. If not found or expired, the cache intermediary facilitates the database query to ensure policy updates are applied, maintaining reliability while minimizing time loss.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9807191B1System, method, and computer program for caching policy request decisions in a consumer telecommunications network
Publication Date: 2017.10.31 AMDOCS DEV LTD
  • US9807191B1 patent drawing
  • US9807191B1 patent drawing
  • US9807191B1 patent drawing

AI summary

A system, method, and computer program product are provided for caching policy request decisions in a consumer telecommunications network. In use, a cache for storing a plurality of policy decisions is maintained, each of the plurality of policy decisions having at least one first policy decision criteria value associated therewith. Additionally, at least one policy request associated with at least one subscriber of a network is received from a requesting system, the at least one policy request having at least one second policy decision criteria value associated therewith. Further, it is determined whether the at least one second policy decision criteria value associated with the at least one policy request is stored in the cache. Responsive to determining that the at least one second policy decision criteria value associated with the at least one policy request is stored in the cache, a first policy decision associated with the at least one second policy decision criteria is retrieved from the cache, and the first policy decision is provided to the requesting system. Responsive to the determining that the at least one second policy decision criteria value associated with the at least one policy request is not stored in the cache, a new second policy decision corresponding to the at least one second policy decision criteria value is calculated, the new second policy decision is provided to the requesting system, and the new second policy decision corresponding to the at least one second policy decision criteria value is stored in the cache.