PCRF Server is carrier grade software platform used to implement the convergent policy management, real-time policy decision solutions across B/OSS domain, core network domain and content application domain for the network service providers.

PCRF Server includes a 3GPP-compliant implementation of Policy and Charging Rules Function out of box to provision, manage and execute the Quality of Service policies, Bandwidth control policies, Subscriber-aware policies, and Application gating policies in the 2G/3G and LTE networks.

PCRF Server provides a flexible, solid, robust, and scalable software platform for the development and management of any type of policy solutions specialized for telecom industry.

PCRF Server also offers outstanding flexibility in integration with various core network equipment or B/OSS systems using industry standard (e.g. 3GPP) or non-standard interfaces/protocols.

PCRF Server enables the rapid prototyping and provisioning of new policies or products for innovative and unique services/applications to the subscribers.
PCRF Server is composed of the following subsystems:

  • PCRF Application
  • Repository Subsystem
  • Central Management Subsystem
  • SPR Proxy Subsystem
  • Load Balancer Application
  • Studio Subsystem

The PCRF Application is the main server engine that process the policy requests from the core network elements or B/OSS systems at real-time. The main components of the PCRF Server are the Diameter-based 3GPP Gx Connector, Diameter-based 3GPP Rx Connector, Diameter-based 3GPP Sy Connector, Policy and Charging Rules Server, Policy Decision Platform, Subscriber Profile Cache and Subscription Management Service.

Repository Subsystem is the repository to store all business assets, technical assets and configuration items used by the PCRF Server, Central Management Server, Load Balancer, and Studio. This is a mandatory component to run PCRF Server.

Central Management Subsystem is the centralized server node to monitor and manage the PCRF Server, Repository Server, and Load Balancer instances/nodes. It’s the core component for PCRF Server to provide the OA&M functions.

The SPR Proxy subsystem is a component that exposes the Web Services API within PCRF Server for management of the internal Subscriber Profile Repository (that is, subscriptions and subscribers).
Load Balancer Application is the key component in the distributed deployment environment for PCRF Server. It provides the Diameter application level load balancing capability.

Studio Subsystem is the Web-based Graphical User Interface component in PCRF Server. It serves the business users who want to create new policy plans or product or technical users who want to use the advanced extension capability in the software. An Operations and Maintenance Console (OMC) for the OA&M function is also integrated in the Studio.

Product Architecture

Overall PCRF Architecture

Figure 1. PCRF Server Reference Architecture

PCRF Server is composed of four layers:

  • Network Access Layer: Responsible for receiving network request and sending back response
  • Business Layer: Responsible for handling business logic
  • Presentation Layer: Provide UI interface to design business entities and manage or configure different modules
  • Persistence Layer: Responsible for the persistence of business entities
Network Layer

The external interfaces supported by PCRF Server are described in the table below:

Protocol TypeFunctionDescription
SMTPNotificationSend Email notification
SMPPNotificationSend SMS notification
RadiusAuthentication NotificationInterface with AAA Sserver
DiameterNetwork Policy ProvisionGx reference point
DiameterApplication Policy ProvisionRx reference point
DiameterSpending Limits reportSy Reference point
DiameterCredit ControlGy Reference point
SOAP/Vendor specificSubscriber ProvisionInterface for external CRM or Service Activator. e.g. HPSA.
SNMPNetwork ManagementManage PCRF Server in NMS (Network Management Systems)
LDAPLoad SPR DataUd reference point
SOAPNotify SPR Data ModificationUd reference point

Gx Interface

PCRF Server supports the Gx interface as defined in 3GPP Release 7, 8, 9 and 10 (see Gx specific Diameter AVPs table and Gx re-used Diameter AVPs table in 3GPP TS 29.212 V7.10, V8.3.0, V9.4.0 and V10.4.0).
PCRF Server is very flexible and can be configured to support any specific AVPs in the network element and accommodate customer specific scenarios.

Rx Interface

PCRF Server supports the Rx interface as defined in 3GPP Release 10 (see Rx specific Diameter AVPs table and Rx re-used Diameter AVPs table in 3GPP TS 29.214 V10.4.0).
This interface is very flexible and can be configured to support any specific AVPs in the network element and accommodate customer specific scenarios.

Sy Interface

PCRF Server supports the Sy interface as defined in 3GPP Release 11 (see Sy specific Diameter AVPs table and Sy re-used Diameter AVPs table in 3GPP TS 29.219 V11.0).
PCRF Server is very flexible and can be configured to support any specific AVPs in the network element and accommodate customer specific scenarios.

Gy Interface

PCRF Server supports the Gy interface and acts as DCCA proxy between PCEF and OCS
PCRF Server is very flexible and can be configured to support any specific AVPs in the network element and accommodate customer specific scenarios.

Sp Interface

PCRF Server supports the Sp interface between the PCRF and the SPR.
This interface allows the PCRF to request subscription information related to the IP CAN transport level policies from the SPR based on a subscriber ID, a PDN identifier and possible further IP CAN session attributes, as specified in 3GPP TS 23.203 v9.x. This interface allows the SPR to notify the PCRF when the subscription information has been changed if the PCRF has requested such notifications. The SPR shall stop sending the updated subscription information when a cancellation notification request has been received from the PCRF.
The details associated with the Sp interface are not specified in the current 3GPP Release, so it is open to the PCRF and SPR vendors to define the best Sp interface to meet the customer requirements.

Ud Interface

PCRF Server supports the Ud interface between the PCRF and the UDR.
This interface allows the PCRF to create, read, modify and delete user data stored in the UDR using the access interface. It is based in LDAP.

This interface supports subscriptions/notifications functionality to allow the PCRF being notified about specific events that may occur on specified user data in the UDR. The events can be changes on the existing user data, addition of user data, and so on.
PCRF Server supports the Ud interface based on LDAP protocol, as defined in 3GPP TS 23.335 v9.x and TS 29.335 v9.x.

RADIUS Interface

PCRF Server provides a RADIUS based AAA interface which is connected with external AAA server. It receives the AAA-Start and AAA-Stop radius message forwarded from AAA server when IP-CAN session is established or terminated. It works with AAA management (component that provides the mapping between the IP Address and the MSISDN) to manage the mapping between IP address and MSISDN.

RADIUS CoA Interface

PCRF Server generally supports non-3GPP enforcement points by means of extending the data model and processing flows. PCRF Server provides the connector and the processing flow used to provision policy rules to a non-3GPP enforcement point via RADIUS / RADIUS CoA interface. PCRF Server does not provide RADIUS Vendor Specific Attributes (VSAs) for policy information out of the box but those can be added by extending the data model and modifying the processing flows. Please note that the extent of Policy Control capabilities via RADIUS interface are limited compared to 3GPP Diameter Gx interface.

Business Layer

The business layer encompasses the main functionality and components of the PCRF application. The most relevant components are listed below:

Policy Engine

The Policy Engine Subsystem makes policy decision based on the policy plan definition and the input facts.
PCRF Server provides the following policy plans:

  • Advanced Policy Plan
  • Simple Policy Plan
  • Quota Policy Plan
  • Counter Policy Plan
  • Calendar Policy Plan
  • Decision Table Policy Plan
  • Application Policy Plan
  • Constrain Policy Plan
  • Post-Process Policy Plan

The Policy Engine Subsystem is designed as stateless mode which never maintains the status of counters or other entities.

PCRF Server Base Policy Flow

The PCRF Base Policy Flow Subsystem is designed to encapsulate a basic policy flow. The flow covers:

  • Fetch subscriber/subscription data
  • Query counter data
  • Fetch product data
  • Build policy plan
  • Make policy decision
  • Monitor subscriber event
  • Monitor session event
AF Service

AF Service Subsystem is designed to encapsulate the following AF related policy functionalities:

  • AF policy mapping: The function converts AF flow policy to network policy
  • AF policy authorization: The function validates whether the AF flow request is authorized
  • AF event mapping: The function converts event triggers between AF and network
  • Session management: The function manages the relationship between Gx session and Rx session
Presentation Layer

To define or extend policies in the PCRF application, the administrator makes use of the Design Studio. This graphically oriented user interface is used to define policy rules and their associated data requirements, validate the structure of the rule, and package newly defined or updated rule sets for deposits in the PCRF Repository. Policies can be constructed by using the pre-defined policy templates supplied with the product, or a service provider can define and deploy its own unique policy logic using the powerful data model facilities and the native PCRF workflow engine.

Persistence Layer

The PCRF Server supports the ability to retrieve data from a BackEnd SPR data store or can manage profile data in a co-located SPR, depending on the requirements outlined by the customer.

Security Layer

From an overall security standpoint, the PCRF Server security posture is a rather robust one.
PCRF Server supports security in the following basis:

Network Security
  • Firewall
  • Protocol level security: SSL/HTTPS, IPSec, SNMP
Operating System Level Security
  • Security configuration (SSH, SFTP), security patching
User Management Security
  • 3 layers (role, user, permission)
  • User authorization
  • User authentication

Management Layer

PCRF Server provides the following OA&M functionality:

Topology Management
  • Physical topology: Physical architecture with system information and inter-connections
  • Logical topology: Process architecture with dependencies
  • Machine management: Add new machine, remove old machine, get machine information (cpu, memory, disk usage, etc)
  • Process management: Add new process, remove old process; start/stop process; get process information (is running, CPU usage by process, memory usage by process, etc)
  • View management: Group the topology view to adapt hundreds of machines/processes
Configuration Management
  • View and modify the runtime parameters like thread pool size
Performance Management
  • Monitor the real time performance items like CPU usage, throughput, etc
  • Query/count the performance history, get the time based view/graph (histogram graph, pie graph, etc)
Alarm Management
  • Generate real time alarm (alarm box, topo UI, etc)
  • Handle and mark the alarm events. e.g.: write down the analysis reasons for an alarm
  • Query/count the alarm history
  • Modify the alarm threshold. e.g.: CPU usage > 90% result in alarm level 1
Log Management
  • Query log. e.g.: query a specified machine’s log
  • Set log level. e.g.: set connector’s log to debug to help diagnose
High Availability

As a critical component of the network, PCRF Server provides true high availability (HA) through a distributed architecture, wherein the components are protected through a carrier-grade active redundancy deployment model. PCRF Server is designed and tested to ensure 99.999% solution availability at the hardware and software level. The solution rapidly detects when a component is unresponsive, distributing the workload transparently across the remaining elements of the solution.

Geographical Redundancy

PCRF Server has several level of redundancy to provide a high level of security and performance:

  • On the same blade, using IP bonding, HW x 2)
  • At the same site, several blades are used with the same function and the Diameter protocol allows configuring primary and secondary address at the client (GGSN/PCEF) side
  • For geographic redundancy between sites (small distance)
  • For geographic redundancy between sites (long distance). Requires double the HW and replication of the subscriber information static to both databases
  • For disaster recovery plan. Active-passive solution is compatible with geographical redundancy

The elements of the PCRF solution required a connectivity of 1GB and low latency or better to optimize the communication.


The PCRF application can scale from very small test deployments of two (or even a single server) to the very largest scale deployments. The PCRF distributed architecture delivers carrier-level scalability. It relies on the solution design that ensures linear scalability across the critical processing engines.


The benchmarks have shown that the PCRF application can sustain the workload demands of the largest operators. Applications in the PCRF solution suite are stress-tested in the lab under conditions designed to reflect real-world conditions.
PCRF Server runs on carrier grade Proliant server blades like the HP BL460c G8 with C7000 Enclosure.