1 Introduction
Note:
The performance and capacity of the UDR system may vary based on the call model, feature or interface configuration, and underlying CNE and hardware environment, including but not limited to, the size of the json payload, operation type, and traffic model.- HTTP 1.1 and HTTP2 based RESTful interface and APIs to provision other Network Functions
- Provisioning clients to access the stored data
- Storage and retrieval of subscription data by UDM
- Storage and retrieval of policy data by PCF
- Storage and retrieval of structured data for exposure
- Storage and retrieval of SLF information consumed by NRF
- Subscription and Notification feature
- Leverages a common Oracle Communications Cloud Native Framework
- Is compliant with 3GPP 29.505 Release 15 specification UDM data access
- Is compliant with 3GPP 29.519 Rel 16(backward compatible with Rel 15) specification for PCF data access
- Is compliant with 3GPP 29.519 Rel16 specification for NEF data access
- Has tiered architecture providing separation between the connectivity, business logic and data layers
- Uses MySQL NDB Cluster CGE edition as the backend database in the Data Tier
- Registers with NRF in the 5G network, so the other NFs in the network can discover UDR through NRF
- Registers UDR with services: DR-SERVICE and GROUP-ID-MAP
- Supports storage and retrieval of unstructured data by any 5G NF. The specifications of UDSF is not defined by 3gpp
- This functionality is part of Oracle's 5G UDR solution
Subscriber Location Function (SLF):
- Supports Nudr-groupid-map service as defined by 3GPP
- Registers with NRF for Nudr-groupid-map service
- Is complaint with 3GPP Release 16 for APIs to be consumed by 5G NRF
- Supports REST or JSON based provisioning APIs for SLF data
- REST/JSON based provisioning of 5G EIR profile
- Bulk import of 5G EIR subscriber data via PDBI interface
- N5g-eir_EquipmentIdentityCheck Service API
- 5G EIR as per 3GPP TS 29.511
1.1 Architecture
- Connectivity Tier
- Business Tier
- Data Tier
Connectivity Tier
- Ingress API Gateway receives requests from other NFs and forwards them to nudr-drservice of Business Tier.
- Load balances the traffic and provides required authentication using OAuth2.
- Provides TLS support
- Egress API Gateway sends Egress traffic arising from UDR (notifications and NRF management APIs).
- Diameter gateway provides gateway functionality for Ingress and Egress diameter traffic.
- It runs on Kubernetes or OCCNE as a microservice.
- Ingress Gateway microservice: Provides API gateway functionality for ingress traffic received from clients and forwards them to backend microservices. It load balances the requests among all replicas of backend microservices.
- Egress Gateway microservice: Provides API gateway functionality for egress traffic sent to clients and provides configuration to proxy the egress traffic through SCP.
Business Tier
- Provides the business logic of UDR
- It runs on Kubernetes or OCCNE and it has the
following microservices:
- NRF client: handles registration, heartbeat, update, and deregistration with NRF.
- Nudr-drservice: Handles flexible URI support, run time schema validation, and connects to Data Tier for database operations. It also provides the SLF lookup functionality and N5g-eic service when UDR is deployed in EIR mode as per 3GPP 29.511 specification.
- Nudr-dr-prov: It is similar to the Nudr-dr microservice but handles only provisioning requests. It also provides provisioning APIs when UDR is deployed in EIR mode for storing EIR equipment status data per PEI or SUPI.
- Nudr-notify-service: Handles notification messages to PCF and UDM for data subscriptions.
- Nudr-config service and config-server: Handles all OAM traffic from CNC Console and stores the UDR microservice configurations.
- Nudr-diameter-proxy: Exposes the diameter endpoint for Sh interface, where diameter clients such as cnPCRF or PCF can connect. It interacts with nudr-notify microservice for notification processing.
- Nudr-diameter gateway: provides an API gateway functionality for the Diameter messages. It loadbalances the diameter traffic to backend nudr-diameter proxy pods and maintains connections with diameter peer nodes. The diameter notifications i.e Egress messages are also routed through diameter-gateway.
- Nudr-on-demand-migration service: when enabled, it is used to migrate subscribers from 4G UDR to 5G UDR.
- Nudr-perf-info: monitors all microservices in the namespace and collects the metrics such as CPU, memory, load so on.
- Nudr-nrf-client: Is integrated with perf-info to get the load of microservices. It collects the load data from perf-info microservices and sends the information to NRF.
- Nudr-appinfo: monitors all the microservices and databases health and provides an interface to query the health of microservices.
- Nudr-alternatRoute: queries an alternate route for a destination. It enables querying DNS to get an alternate IP for a FQDN and provides a way to configure priority to the alternate routes or virtual IP address.
- Bulk Import Tool: Reads the CSV files and provisions the PCF, SLF, EIR, and 4G policy subscribers from the CSV records. It also provides a way to read iXML files and converts them to CSV format for provisioning. This tool interacts with nudr-dr service for provisioning.
- Migration Tool: Connects to 4G UDR as a diameter client and reads the subscriber data through nudr-diameter gateway. This tool interacts with nudr-dr service for provisioning the subscriber data read from 4G UDR. For more details, see the Migrating Subscriber Data from 4G UDR to 5G UDR section in the Oracle Communications Cloud Native Core, Unified Data Repository User Guide.
- Subscriber Export Tool: The subscriber export tool is part of collection of tools offered by UDR and is used to export the subscriber database from SLF and EIR. The subscriber export tool is deployed in the same namespace of SLF and implemented as a stand alone tool. A new nudr-export-tool microservice is introduced. For more information, see Subscriber Export Tool section in the Oracle Communications Cloud Native Core, Unified Data Repository User Guide.
cnData Tier
- Uses Oracle MySQL NDB Cluster, CGE edition as a backend database. This provides High Availability (HA) and georedundancy capabilities.
- Deploys database on either Baremetal, virtualized, Kubernetes platform (kubevirt based), or on CNE as cnDBTier.
Converged Policy DB Solution
UDR has evolved to provide Converged Policy DB Solution to bring its 4G and 5G subscribers together in one common database solution. It provides SOAP based provisioning and Diameter Sh interface as part of the solution.
- Provisioning Gateway is integrated with 5G UDR to support all features required
for the converged 4G and 5G DB solution. The Provisioning Gateway needs to be
deployed in UDR mode to support this solution:
- UDR Mode: This mode is applicable when deployed with UDR for converged policy DB solution. In this mode, Provisioning Gateway supports SOAP or XML interface, which is similar to 4G UDR.
- Provisioning Gateway provides provisioning endpoint for SOAP or XML interface with backward compatible interface specifications of 4G UDR.
- Converged data model for 4G and 5G subscriber information is integrated.
- Diameter Sh interface provides access to the subscriber information to 4G PCRF or 5G PCF.
- Migration tool migrates subscribers from 4G UDR to 5G UDR seamlessly by retaining all information.
- On-demand migration feature migrates specific subscribers on-demand when events such as Sh-event, Provisioning event, or NUDR event occurs.
Ingress and Egress Gateway Traffic Management
For more information on Ingress and Egress Gateway Traffic Management, see Oracle Communications Cloud Native Core, Cloud Native Environment User Guide.
1.2 Functionality
- Storage and retrieval of structured data for exposure
- Integration with cnDBTier
- Integration with Debug Tool
- Alternate route service for NRF in NRF-client
- Configurable API version in the NFProfile
- Flexible URI support: A user can define a new URI for any resource at run time for basic CRUD (create, read, update, and delete) operations on the UDSF (Unstructured Data Storage Function) resources.
- SOAP/XML Interface via Provisioning Gateway. See Oracle Communications Cloud Native Core, Provisioning Gateway Guide and Oracle Communications Cloud Native Core, Provisioning Gateway Interface Specification Guide for details.
- On-demand migration of 4G subscribers due to Sh event or Provisioning event, or Nudr event
- Bulk Import Tool: To bulk provision PCF, SLF, EIR and 4G Policy subscribers from CSV records. Also supports 4G UDR iXML format for bulk provisioning of 4G Policy Data.
- Migration Tool: To migrate subscribers from 4G UDR
- Provisioning Support using REST/JSON: UDR provides provisioning APIs to create subscribers and to provision different types of NF data (PCF, UDM, SLF, NEF, and EIR). For more details, see Oracle Communications Cloud Native Core, Unified Data Repository REST Specification Guide.
- Multi-keys: UDR supports multiple keys for a subscriber and provides flexibility to define the new ones
- Runtime Schema Validation: UDR allows users to modify and validate the schema in use for data storage without service restart.
- Schema Versioning: Using this feature, UDR maintains different versions of schema, starting from default version v0 (software version shipped to customers) and as customer upgrades schema, it creates new versions such as v0, v1, v2.
- Schema Management APIs are provided to manage schemas of PCF, UDM, EIR, and SLF data schemas.
- Subscription or Notification: The subscription or notification feature enables consumers to subscribe for and receive notifications when the nudr-drservice receives and processes the subscription request to subscribe the subscriber's resources. Whenever it receives any update or delete request for subscribers (subscribed for notifications), the nudr-drservice sends an internal signal (HTTP2 POST request) to nudr-notify-service. The nudr-notify-service is responsible to send out the notification requests to the target.
- Supports automatic database and user creation on cnDBTier, as part of Helm installation
- Supports Helm Test to validate the Network Function deployment. For more details, see Oracle Communications Cloud Native Core, Unified Data Repository Installation, Upgrade, and Fault Recovery Guide.
- Supports Customized Labels, Annotations, and Naming Conventions of Kubernetes Resources in the Helm charts.
- Supports TLS with Ingress and Egress API Gateway
- Supports integration with Provisioning Gateway to receive provisioning updates to SLF
- Supports integration with CNC Console for Manual Subscriber Provisioning on GUI and configuration of all UDR services. Also, SLF groupname configurations can be done on CNC Console GUI
- Supports integration with SCP for the Egress notification traffic
- Supports monitoring of bulk import of subscribers
- Supports Service Mesh Data Plane configurations using Helm for ASM
- Supports logging enhancements for all microservices and traceability using ocLogId
- Supports tracing enhancements to trace requests across all microservices using Jaegar
- Supports IPv6 on the SBI interface (HTTP2 based REST interface).
- Supports multiple sites redundancy with cnDBTier
- Supports server header in the error responses
- Integrated with common NRF client
- Supports OAuth2 authentication with NFInstanceId and Key ID
- Exposes Diameter Sh Interface for 4G Policy data (for all entities), which PCRF uses. It also generates PNR notifications for profile updates
- Uses diameter gateway for Ingress and Egress diameter traffic
- Provides Management Information Base (MIB) for monitoring alerts
- Supports Import and Export of UDR and Provisioning Gateway configuration data through CNC Console.
- Supports overload handling for UDR microservices
- Provides Fault Recovery Procedures for UDR database. See Oracle Communications Cloud Native Core, Unified Data Repository Installation, Upgrade, and Fault Recovery Guide.
- UDSF API: UDR supports basic CRUD operations for UDSF resources as per Rel 15v specification
- Supports integration with CNE services, such as Prometheus or Garafana for metrics, EFK or Kibana for logging, and Jaegar for Tracing
- SLF functionality: Provides the Nudr-groupid-map service towards 5G NRF. Complies with 3GPP release 16, spec 29.504 v16.2.0 and provides provisioning APIs based on SLF Groupname and Nudr-group-id-map
- 5G PCF's AM, SM, UEPolicySet and UsageMonitoring data APIs: UDR supports storage and retrieval of policy data. It is compliant with 3GPP spec v29.519, v16.2 (backward compatible with v15.3.0). See Rollback to v15.3.0 version of PCF Data
- UDM: UDR supports storage and retrieval of subscription data by UDM. It also supports encryption of stored UDM data. For this, it utilizes the encryption technology of DB Tier (MySQL NDB Cluster).
- UDM API support: Complies with 3GPP spec 29.505 v15.4.0
- Rate limiting for Ingress traffic
- Supports 3GPP SBI correlation header
- Supports configuration of pod disruption budget
- SLF supports provisioning of CHFGrpID, which are not mapped under SLFGrpname
- Supports Default Grp ID for subscribers of SLF
- Supports User Agent Header validation at ingress traffic
- Supports exposure data for NEF
- Supports Diameter Pod Congestion on diameter-gateway
- Supports LCI and OCI Headers in responses and notifications
- Segregates provisioning and signaling traffic using Ingress Gateway instances
- Supports configuration of different TLS certs for provisioning and signaling traffic
- Supports the 5G EIR functionality on the UDR
- Supports 5G EIR bulk provisioning of subscriber data
- Supports Subscriber Activity Logging that provides the network operators to log the subscriber activity for the configured list of subscribers
- Supports exporting of SLF subscriber data into Comma Separated Value (CSV) file format. The subscriber export is deployed as a stand-alone tool. The subscriber export tool is by default scheduled for daily runs. The periodicity is are daily, weekly, and monthly and these are configurable.
- Supports periodic exporting of EIR database containing all International Mobile Equipment Identity (IMEI) and associated International Mobile Subscriber Identity (IMSI), and Mobile Station Integrated Services Digital Network (MSISDN) using the subscriber export tool. It provides automated and on-demand export of EIR database.
- The subscriber export tool provides the capability to securely transfer the exported data to a remote server using Secure File Transfer Protocol (SFTP). It also supports monitoring of the status of exported data transfer through CNC Console.
- The remote file transfer for subscriber bulk import for EIR provides the capability for securely transferring the files from the remote server using SFTP. This feature supports transferring-in the Provisioning Database Interface (PDBI) import files and transferring-out the result log files to a remote server.
- ETag (Entity Tag): When two different Cloud Native Policy and Charging Rules Function (cnPCRF) is connected to UDR in a georedundant setup and both the PCRF are updating the UsageMonData for the same subscriber simultaneously, there is possibility of data loss as the update can overwrite each other. ETag support for UDR helps to make sure that the update is successful at UDR only when the consumer has the latest set of data, which is determined by the ETag value received at UDR.
- Etag Notifications: UDR sends updated ETag notifications header to the consumer about the current state of the usage monitoring data. This enables the consumer to update the ETag values in the subsequent update operations.
- Controlled Shutdown on UDR: UDR supports controlled shutdown feature to provide the partial or complete isolation of the site from the network so that the operator can perform necessary recovery procedures when required.
- Auto Enrollment: Consumer NFs such as cnPCRF need UDR to enroll the subscriber record with policy data sent on the N36 interface. This is required for subscribers in roaming scenarios, where cnPCRF does a PATCH operation to update the subscriber data. Auto enrollment enables UDR to auto enroll the subscriber if the subscriber record does not exist. Auto enrollment also supports UDR in creating mandatory attribute smPolicySnssaiData with configured default values when NF such as cnPCRF does not include smPolicySnssaiData attribute in sm-data.
- Aspen Service Mesh (ASM) supports the following enhancements for UDR:
- Transmission Control Protocol (TCP) Connection in destination rules
- TCP connection and The Hypertext Transfer Protocol (HTTP) stream in envoy filters
- HTTP route in virtual service
- The Network Function (NF) Scoring feature calculates the score for a site based on NF specific factors such as alerts. The NF Scoring feature helps the operator to determine the health of a site as compared to other sites. Comparing the NF scores within or across the sites helps the customers to select the appropriate site.
- Converged Quota Support for Provisioning Interface feature updates
the data model to support storage of 4G policy quota and dynamic quota under
sm-data/umData and sm-data/umDataLimits respectively from VSA. This feature
enables cnPCRF to access and manage 4G and 5G quota from umData and
umDataLimits. The following interfaces are compatible with the converged data
model:
- Provisioning interface using SOAP/XML
- Bulk provisioning using file import in iXML and CSV format
- N36 signaling interface
- Provisioning Interface using REST/JSON
- On-Demand Migration
- Diameter-Sh
- Network Policies are an application-centric construct that allows you to specify how a pod is allowed to communicate with various network entities. Network Policies creates pod-level rules to control communication between the cluster's pods and services. It determines which pods and services can access one another inside the cluster.
- The Diameter Connection Configuration triggers a Connection Establishment Request (CER) from the Diameter Gateway pod to each of the configured diameter endpoints. This feature enables the distribution of the diameter connection in a controlled manner by balancing the diameter traffic evenly between the Diameter Gateway pods. This is achieved by adding peer node details as a configuration in the Diameter Gateway.
- Conflict Resolution: In a multisite deployment, UDR updates subscriber data on all the sites during replication down time. When the replication is restored and if there are any conflicts in the subscriber data updates, they are automatically resolved in all the database tables by MySQL NDB Cluster in cnDBTier. However, in some cases, automatic resolution by MySQL causes subscriber data conflicts and anomalies in the database model. This feature provides an application-defined resolution to resolve the subscriber data conflicts by adding a timestamp column to determine whether an update is required on the replica.
- Error Response Enhancement for SLF Lookup Request: SLF supports the “cause” attribute in the problem details for all error responses as per 3GPP 29.504 specification. The "cause" attribute in the problem details object of the HTTP error response payload is used to indicate the application-related information for that specific occurrence of the error. This enables the HTTP client to take appropriate action. The error response is enhanced to support error causes scenario for SLF lookup requests.
- Migration Tool Support for Converged Quota: The migration tool is enhanced to support converged quota and it also supports monitoring and pausing the migration tool using REST API and CNC Console.
- Support for EXML Format: This feature allows to export the subscriber data in EXML format, which is compatible with 4G OCUDR export format. It supports the export of 4G policy data (VSA and umData/umDataLimits) in EXML format from 5G UDR to 4G OCUDR using the subscriber export tool.
- User Equipment Optimization support for Equipment Identity Register (EIR): As per 3GPP standards, all User Equipment (UE) in the operators network is declared within the EIR database as Whitelisted, Greylisted, or Blacklisted. The UEs that are not declared in the EIR database are categorized Blacklisted by default. As all UE Permanent Equipment Identifier (PEI) and International Mobile Equipment Identity (IMEI) cannot be provisioned in EIR database, this feature allows the operators to configure a default response for unknown UE.
- The provisioning logs enhances the provisioning logging functionality by enabling a logging type that is independent of the logging level. This feature helps in collecting the subscriber provisioning logs by enabling the provisioning logging mechanism. It also enables the operators to log the 5G subscriber provisioning requests for create, update, and delete operations.
- Error Response Enhancement: The error responses used to contain only the error description in the details field, which was insufficient to troubleshoot any error. Using the enhanced error response mechanism, UDR sends additional pieces of information such as server FQDN, NF service name, vendor name, and error ID in the details field of the payload to help in the quick identification of the source of an error response.
- Ingress Gateway Pod Protection: This feature protects the Ingress Gateway pods from overloading due to uneven traffic distribution, traffic bursts, or congestion. During overload conditions, the Ingress Gateway pods may undergo stability issues. As a front end microservice for HTTP traffic, it is important for Ingress Gateway to have pod protection implemented.
- UDR supports automation of certificate lifecycle management in integration with Oracle Communications Certificate Manager (OCCM). This enables to automatically create, renew, and delete certificates for a given CA, with the possibility to track previously created certificates and renew/delete them when required.
- Suppress Notification feature enables cnUDR to store the User-Agent header received in the POST request from cnPCRF in the subscription table. cnUDR compares the User-Agent header received during an update operation from cnPCRF with the stored User-Agent header, if the User-Agent header matches, then the notification is suppressed. The notification is sent if the User-Agent header does not match or if the there is no User-Agent header in the update request.
- The configuration for common service APIs was earlier supported only using REST API. With the implementation of Common Service APIs in CNC Console. UDR now supports the configuration of Ingress Gateway and Egress Gateway parameters using the CNC Console.
- UDR can enhance security by supporting TLS 1.3 for all consumer NFs, producer NFs, the Data Director, SBI Interfaces, and any interfaces that previously supported TLS 1.2. UDR uses HTTPS with TLS encryption to establish secure connections with these components.
- Error Logging Enhancement: With this feature, UDR sends additional information to the existing “ERROR” log messages to identify the cause of the issue and minimize the troubleshooting time. Additional attributes are added to the existing ERROR logs which gets populated with appropriate values during failure scenarios.
- International Mobile Subscriber Identity (IMSI) Fallback Lookup Enhancement feature enables EIR to return equipment status as WHITELISTED, BLACKLISTED, or GREYLISTED for the matched IMEI in the EIR database.
- Diameter S13 Interface feature provides support between EIR and Mobility Management Entity (MME) to retrieve the UE equipment status of the subscriber.
- Traffic Segregation feature provides an option for traffic segregation at UDR based on traffic types. Within a Kubernetes cluster, traffic segregation can divide applications or workloads into distinct sections such as Operations Administration and Maintenance (OAM), Service Based Interface (SBI), Kubernetes control traffic, and so on. The new functionality ensures that critical networks are not cross-connected or sharing the same routes, thereby preventing network congestion.
- Post Operation for an Existing Subscription feature enables UDR to support POST request that overwrites the existing subscription.
1.3 Operations Supported
UDR supports the following operations:
- Create Subscriber: Provisions a subscriber with the given set of keys
- Update Subscriber: Updates the subscriber information
- Get subscriber: Retrieves the subscriber information completely
- Delete Subscriber: Deletes the subscriber information and related data
- Insert Data: Creates a subscriber if not present and inserts the specific data (policy_data/udsf_data/udm_data/SLF Data/exposure_data).
- Update Data: Creates a subscriber if not present and updates the complete data for a particular subscriber as given in request.
- Patch Data: Supports patch update of a specific data or parts of it. If not present, it adds the data. This operation is valid only when subscriber is already present.
- Get Data: Retrieves the requested data for a particular subscriber.
- Delete Data: Deletes the requested data for a particular subscriber.
- Subscription Request: Subscribes to a subscriber resources and get notified in case of updates.
- Notification: UDR generates notifications when there are updates to subscriber resources subscribed in previous request. These notifications are sent to notification URI received in subscription request.
1.4 Integration with Other Services
- CNE Services: Such as Prometheus or Grafana for metrics, UDR is integrated with EFK or Kibana for logging and Jaeger for tracing.
- Provisioning Gateway and 4G Policy Data: For receiving provisioning updates to SLF. For more information, see Oracle Communications Cloud Native Core, Provisioning Gateway Guide.
- SCP for Egress Notification Traffic. For more information, see the Configuring User Parameters section in the Oracle Communications Cloud Native Core, Unified Data Repository Installation, Upgrade, and Fault Recovery Guide.
- Cloud Native Configuration Console (CNCC): It provides a GUI interface for subscriber provisioning and configuration of UDR services. The CNCC GUI allows UDR administrators to configure SLF groupname.
- Debug Tool: For more information, see the Troubleshooting chapter of Oracle Communications Cloud Native Core, Unified Data Repository Troubleshooting Guide.
- cnDBTier: For more information, see the Oracle Communications Cloud Native Core, cnDBTier Installation, Upgrade, and Fault Recovery Guide.
1.5 Availability
- Deploy on a Cloud Native Environment with at least 99.999% Availability
- Deploy with n + k application redundancy, where k is greater than or equal to 1
- Maintain production software within n-3 software releases where n= the current GA release
- Apply bug fixes, critical patches, and configuration recommendations provided by Oracle in a timely manner
- Maintain fault recovery procedures external to the applications for reconstruction of lost or altered files, data, programs, or cloud native environment
- Install, configure, operate and maintain in accordance with Oracle’s applicable installation, operation, administration, and maintenance specifications
- Maintain active support contract and provide access to the deployed UDR and your personnel to assist Oracle in addressing any outage
UDR availability is measured over the period of each calendar year and is calculated as follows:
Table 1-1 Measuring UDR Availability
Item | Description |
---|---|
Planned Product Availability | Product available time in each month less Excluded Time (defined below) in each month |
Actual Product Availability | Planned Product Availability less any Unscheduled Outage |
Product Availability Level | (Actual Product Availability across all Production instances divided by Planned Product Availability across all Production instances) x 100 |
Note:
Excluded Time means:- Scheduled maintenance time
- Lack of power or backhaul connectivity, except to the extent that such lack of backhaul connectivity was caused directly by the CNC NF
- Hardware failure
- Issues arising out of configuration errors or omissions
- Failures caused by third party equipment or software not provided by Oracle
- Occurrence of any event under Force Majeure
- Any time associated with failure to maintain the recommended architecture and redundancy model requirements above