Skip to main content

OmniHSS Profile Management

← Back to Operations Guide


Overview

OmniHSS uses profiles to define service characteristics for subscribers. Profiles allow you to create reusable service templates that can be assigned to multiple subscribers, simplifying provisioning and ensuring consistency.

Profile Types


EPC Profiles

EPC (Evolved Packet Core) Profiles define data service characteristics for LTE subscribers.

Key Parameters

ParameterDescriptionTypical Values
ue_ambr_dl_kbpsDownload speed limit10,000 - 1,000,000 Kbps
ue_ambr_ul_kbpsUpload speed limit5,000 - 500,000 Kbps
network_access_modeService type"packet_only" or "packet_and_circuit"
tracking_area_update_interval_secondsTAU timer54 seconds (typical)

Creating EPC Profiles

curl -k -X POST https://hss.example.com:8443/api/epc/profile \
-H "Content-Type: application/json" \
-d '{
"apn_profiles": [],
"name": "Premium 100Mbps",
"network_access_mode": "packet_only",
"tracking_area_update_interval_seconds": 600,
"ue_ambr_dl_kbps": 100000,
"ue_ambr_ul_kbps": 50000
}'

Common EPC Profile Templates

Basic Internet:

  • Download: 10 Mbps (10,000 Kbps)
  • Upload: 5 Mbps (5,000 Kbps)

Standard:

  • Download: 50 Mbps (50,000 Kbps)
  • Upload: 25 Mbps (25,000 Kbps)

Premium:

  • Download: 100 Mbps (100,000 Kbps)
  • Upload: 50 Mbps (50,000 Kbps)

Unlimited:

  • Download: 1 Gbps (1,000,000 Kbps)
  • Upload: 500 Mbps (500,000 Kbps)

IMS Profiles

IMS Profiles define voice service characteristics, primarily through IFC (Initial Filter Criteria) templates.

IFC Templates

IFC templates are XML documents that define call routing rules for the S-CSCF.

Template Variables:

  • {{imsi}} - Subscriber IMSI
  • {{msisdns}} - List of phone numbers
  • {{mcc}} - Home country code
  • {{mnc}} - Home network code

Creating IMS Profiles

curl -k -X POST https://hss.example.com:8443/api/ims/profile \
-H "Content-Type: application/json" \
-d '{
"ims_profile": {
"name": "Standard VoLTE",
"ifc_template": "<InitialFilterCriteria>...</InitialFilterCriteria>"
}
}'

IFC Template Example

<ServiceProfile>
<PublicIdentity>
<Identity>sip:{{imsi}}@ims.mnc{{mnc}}.mcc{{mcc}}.3gppnetwork.org</Identity>
</PublicIdentity>
<InitialFilterCriteria>
<Priority>0</Priority>
<TriggerPoint>
<ConditionTypeCNF>0</ConditionTypeCNF>
<SPT>
<ConditionNegated>0</ConditionNegated>
<Group>0</Group>
<Method>INVITE</Method>
</SPT>
</TriggerPoint>
<ApplicationServer>
<ServerName>sip:as.ims.example.com</ServerName>
<DefaultHandling>0</DefaultHandling>
</ApplicationServer>
</InitialFilterCriteria>
</ServiceProfile>

APN Profiles

APN (Access Point Name) Profiles define network access points for data connections.

APN Components

APN Identifier

Defines the APN name and IP protocol support.

Common APNs:

  • internet - General internet access
  • ims - IMS/VoLTE signaling
  • mms - Multimedia messaging
  • vzwadmin - Carrier-specific

IP Version Options:

  • "ipv4": IPv4 only
  • "ipv6": IPv6 only
  • "ipv4v6": IPv4v6 (dual stack)
  • "ipv4_or_ipv6": IPv4 or IPv6 (network choice)

APN QoS Profile

Defines quality of service parameters.

QCI (QoS Class Identifier) Values:

QCITypeUse CasePriority
1GBRConversational voiceHighest
2GBRConversational videoHigh
4GBRVideo streamingHigh
5Non-GBRIMS signalingMedium
9Non-GBRInternet (default)Lowest

Session-Level Charging Method (optional):

The APN QoS profile can also pin the default charging method for the IP-CAN session, sent as the top-level Online/Offline AVPs in the Gx CCA-I.

FieldTypeDefaultDescription
online_charging_enabledbooleannullWhen set, forces the session-level Online AVP (true = enable, false = disable). When null, the PCRF echoes the value the PGW sent in the CCR-I.
offline_charging_enabledbooleannullWhen set, forces the session-level Offline AVP (true = enable, false = disable). When null, the PCRF echoes the value the PGW sent in the CCR-I.

See PCRF — Session-Level Online/Offline Charging for the full behaviour and AVP value reference.

Creating Complete APN Configuration

# 1. Create APN Identifier
APN_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/identifier \
-H "Content-Type: application/json" \
-d '{"apn": "internet", "ip_version": "ipv4v6"}' \
| jq -r '.response.id')

# 2. Create APN QoS Profile
QOS_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/qos_profile \
-H "Content-Type: application/json" \
-d '{
"name": "Best Effort",
"allocation_retention_priority": 8,
"apn_ambr_dl_kbps": 50000,
"apn_ambr_ul_kbps": 25000,
"pre_emption_capability": false,
"pre_emption_vulnerability": true,
"qci": 9
}' | jq -r '.response.id')

# 3. Create APN Profile
curl -k -X POST https://hss.example.com:8443/api/apn/profile \
-H "Content-Type: application/json" \
-d "{
\"apn_identifier_id\": $APN_ID,
\"apn_qos_profile_id\": $QOS_ID,
\"name\": \"Internet APN\"
}"

Assigning APNs to EPC Profile

APNs are linked to EPC Profiles through the join_epc_profile_to_apn_profile table.

Insert records into the join table to link APN profile IDs to the EPC profile ID. Multiple APN profiles can be assigned to one EPC profile.


Roaming Profiles

See detailed documentation in Roaming Control Guide.


Profile Assignment

Subscriber Profile Relationships

Assigning Profiles to Subscribers

# Assign EPC and IMS profiles during subscriber creation
curl -k -X POST https://hss.example.com:8443/api/subscriber \
-H "Content-Type: application/json" \
-d '{
"subscriber": {
"imsi": "001001123456789",
"key_set_id": 1,
"epc_profile_id": 1,
"ims_profile_id": 1,
"roaming_profile_id": 1
}
}'

# Update subscriber profile
curl -k -X PUT https://hss.example.com:8443/api/subscriber/1 \
-H "Content-Type: application/json" \
-d '{
"subscriber": {
"epc_profile_id": 2
}
}'

Profile Management Best Practices

Design Principles

  1. Create Standard Profiles - Define common service tiers (Basic, Standard, Premium)
  2. Reuse Profiles - Assign same profile to multiple subscribers
  3. Document Changes - Track profile modifications
  4. Test Before Production - Verify profile works with test subscriber first

Profile Naming Convention

[Service Tier]-[Speed]-[Features]

Examples:
- "Basic-10Mbps-Internet"
- "Premium-100Mbps-VoLTE"
- "Enterprise-1Gbps-MultiAPN"

Profile Migration

When changing a subscriber's profile:

Important: Profile changes take effect on the next:

  • Tracking Area Update (TAU)
  • Attach
  • IMS Registration (for IMS profile changes)

Troubleshooting Profile Issues

Subscriber not getting expected speed:

  1. Check assigned EPC profile AMBR values
  2. Check APN QoS profile AMBR values
  3. Verify MME/P-GW enforcing QoS correctly
  4. Check for network congestion

IMS registration fails:

  1. Verify IMS profile assigned
  2. Check IFC template XML validity
  3. Review S-CSCF logs for IFC processing errors
  4. Confirm S-CSCF selection configuration

APN not available:

  1. Verify APN profile linked to EPC profile
  2. Check APN identifier matches network request
  3. Review PDN connectivity request from UE

← Back to Operations Guide | Next: Roaming Control →