OpenEPC includes a comprehensive Policy and Charging Control architecture, composed of the following functions and components:

  • Policy and Charging Rules Function (PCRF)
  • Policy and Charging Enforcement Function (PCEF), modularly integrated within the PGW functionality
  • Bearer Binding and Event Reporting Function (BBERF), modularly integrated within the SGW, ePDG and ANGw functionality
  • User-data Plane packet functions for gating, traffic shaping and volume measurements
  • Offline Charging System (OFCS) (an Online Charging System is currently under design and evaluation for implementation)
  • Example implementations for the Application Function (AF) PCC functionality (e.g. the OpenIMSCore P-CSCF Rx module for IMS bearers management – VoLTE)
The OpenEPC PCC follows the standard concepts of EPS bearers and provides a comprehensive coverage of the gating, QoS signaling and enforcement as well as charging features, all based on evolved concepts like Service Data Flows (SDF) or QoS Class Identifier (QCI). A QoS enforcement module is included, allowing for shaping of User-data Plane flows (e.g. for downlink in the PGW/PCEF) with Maximum Bit-Rate (MBR) and APN Aggregate Maximum Bit-Rate (AMBR)

The PCRF includes a simple policy engine, for deriving gating, QoS and charging rules based on demanded service requirements, as received from the AF. The engine takes into account as additional input the subscription profile for the targeted subscriber, as retrieved from the HSS/SPR function. The PCC rules are pushed and kept synchronized over handovers to, respectively in-between the EPC Gateway functions. The RAN Gateways will further push the rules as part of bearer management towards the MME, respectively SGSN, on their path towards the enforcement points in the Base Stations and User Endpoints. Similarly, events are propagated back from the EPC and RAN layers, through the PCC system, up to the AFs.

The PCC reference points have been implemented according to 3GPP Rel.8 and later up to Rel.12 standards:

  • Rx between AF and PCRF
  • Sp between PCRF and HSS/SPR (not yet standardized in 3GPP, hence based on an Sh reference)
  • Gx between PCRF and PCEF
  • Gxa/Gxb/Gxc (generically referred as Gxx) between the PCERF and the BBERF in the SGW/ANGw/ePDG
  • Gz between PCEF and OFCS, implemented in the Diameter option as Rf
  • Gy support
The PCC is well integrated between the EPC and IMS architectures, the system being able not only to successfully allocated dedicated bearers for IMS signaling and media flows, but also to correlate CDRs, combining the information from various functional layers of the architecture.