Configuration Guide for Bearer QoS Control and Bandwidth Management
Ericsson Service-Aware Policy Controller

Contents

1Configuration Prerequisites

2

Configure Bearer QoS Control and Bandwidth Management Overview
2.1Other Conventions

3

Configure QoS Control for the Default Bearer and the APN
3.1Diameter Node Control for QoS Control for the Default Bearer and the APN
3.2Provision QoS Profiles for Default Bearer/APN
3.2.1Configuration of Bearer/APN QoS Profiles for GPRS
3.2.2Configuration of Bearer/APN QoS Profiles for EPS
3.3Provision QoS Control for Default Bearer/APN selection

4

Configure Bandwidth Management for Services
4.1Configure Static Services
4.2Preconfigured and Dynamic Services
4.3Provision Service QoS Profiles
4.3.1Configuration for GPRS
4.3.2Configuration for EPS
4.4Provision QoS Control for Services

5

Appendix A. QoS Policy Types

6

Appendix B. QoS Policy Tags

7

Appendix C. QoS Selection Tags for Output Attributes Used in Policies

8

Appendix D Configuration Summary

Reference List

Abstract

This document is a guideline to configure the SAPC node for QoS control and bandwidth management in network deployments using Gx.


1   Configuration Prerequisites

Before configuring the SAPC in an operational network, assure that:

2   Configure Bearer QoS Control and Bandwidth Management Overview

Next figure, shows the main parts related to configuration and provisioning in the SAPC.

Figure 1   Configuration and Provisioning Overview

The purpose of this document is to provide guidelines to configure the SAPC node for QoS control and bandwidth management by providing configuration examples.

This document is not intended as an exhaustive guide to configure the SAPC for every possible scenario.

The complete parameter list and details of all configured options of the SAPC are included in separate documents, refer to Managed Object Model (MOM) and Provisioning REST API.

Examples on this document cover the case of data configured in the SAPC internal repository. In case an external repository is used, refer to Database Access.

2.1   Other Conventions

This document refers to some configuration and provisioning data.

To clarify which detailed data is managed by COM or by the REST API, this document uses the following conventions:

3   Configure QoS Control for the Default Bearer and the APN

To configure QoS Control for the default bearer and the APN, do the following:

3.1   Diameter Node Control for QoS Control for the Default Bearer and the APN

To execute this function in the SAPC, include the "BEARER_QOS" value in the controls attribute of the DiameterNode object class.

For more information on the PCEF node configuration, refer to Configuration Guide for Access and Charging Control.

3.2   Provision QoS Profiles for Default Bearer/APN

A QoS Profile contains QoS characteristics for the default bearer or APN-AMBR. To provision a Bearer/APN QoS Profile, use the /profiles/ip-can-session-qos/<profileId> URI in the provisioning REST API.

3.2.1   Configuration of Bearer/APN QoS Profiles for GPRS

The applicable attributes are:

The following example shows a possible configuration of bearer QoS profiles:

Example 1   Bearer QoS Profiles

PUT /profiles/ip-can-session-qos/QosProfile_Default
{
	"arpPriorityLevel" : 7,
	"mbrDownlink" : 1024,
	"mbrUplink" : 512,
	"profileId" : "QosProfile_Default",
	"qci" : 5
}

PUT /profiles/ip-can-session-qos/QosProfile_General_Max
{
	"arpPriorityLevel" : 7,
	"mbrDownlink" : 2560,
	"mbrUplink" : 1024,
	"profileId" : "QosProfile_General_Max",
	"qci" : 5
}

The previous example configures the following bearer QoS profiles:

Note:  
Depending on the deployment, the PCEF can use MBR or APN-AMBR. Therefore, the values set in mbrUplink and mbrDownlink attributes correspond to:
  • Either Max-Requested-Bandwith-UL AVP and Max-Requested-Bandwith-DL AVP
  • Or APN-Aggregate-Max-Bitrate-UL AVP and APN-Aggregate-Max-Bitrate-UL AVP

3.2.2   Configuration of Bearer/APN QoS Profiles for EPS

The applicable attributes are:

The following example presents a Bearer QoS profile for EPS access:

Example 2   QoS Profiles for EPS

PUT /profiles/ip-can-session-qos/MinGBearerQos
{
	"arpPci" : true,
	"arpPriorityLevel" : 3,
	"arpPvi" : false,
	"mbrDownlink" : 5120,
	"mbrUplink" : 512,
	"profileId" : "MinGBearerQos",
	"qci" : 6
}

Note:  
In this case, the values configured within mbrDownLink and mbrUplink attributes always correspond to:
  • APN-Aggregate-Max-Bitrate-UL AVP and APN-Aggregate-Max-Bitrate-UL AVP

3.3   Provision QoS Control for Default Bearer/APN selection

  1. To unconditionally associate a QoS Control for the default bearer/APN depending to a subscriber or subscriber group:

    Provision the corresponding subscribers or dataplans URI in the provisioning REST API as explained in Configuration Guide for Subscription and Policies, and set maxBearerQosProfile and minBearerQosProfile attributes to a value that matches the profileId attribute of any bearer QoS profile previously provisioned in the SAPC (see Section 3.2).

    The Example 3 configures maximum and minimum bearer QoS profiles for group "Bronze":

  2. To configure QoS Control for the default bearer/APN depending on Conditions, create the needed policies using:
    • For Global policy locator:

      /locators/resources/ip-can-session/contexts/qos

    • For Subscriber group locator

      /dataplans/<dataplanName>/locators/resources/ip-can-session/contexts/qos

    • For Subscriber locator

      /subscribers/<subscriberId>/locators/resources/ip-can-session/contexts/qos

    • Within the outputAttributes object in the rule set:
      • attrName attribute to max-qos or min-qos.
      • attrValue to an expression returning a valid bearer QoS profile id (ip-can-session-qos).
        Note:  
        To assign a fixed QoS profile (for example "Qos1") to the default bearer or APN, set the same expression as max-qos or min-qos .

Example 4 shows how to assign a QoS for Default Bearer using conditions.

Example 3   Static qualification for Bearer QoS

PUT /dataplans/Bronze
{
	"dataplanName" : "Bronze",
	"staticQualification" : 
	{
		"maxBearerQosProfileId" : "QosProfile_General_Max",
		"minBearerQosProfileId" : "QosProfile_Default"
	}
}

Example 4   Configuration of QoS Policy

PUT /rules/QoS_General
{
	"condition" : "AccessData.bearer.ipCanType==0",
	"outputAttributes" : 
	[
		{
			"attrName" : "max-qos",
			"attrValue" : "(BearerQosProfile[\"QosProfile_General_Max\"]+sumQosProfile)",
			"result" : "permit"
		},
		{
			"attrName" : "min-qos",
			"attrValue" : "maxQosProfile",
			"result" : "permit"
		}
	],
	"ruleName" : "QoS_General"
}

PUT /policies/QoS_General
{
	"policyName" : "QoS_General",
	"ruleCombiningAlgorithm" : "permit-overrides",
	"rules" : [ "QoS_General" ]
}

PUT /dataplans/Bronze/locators/resources/ip-can-session/contexts/qos
{
	"policies" : [ "QoS_General" ]
}


The configuration in this example applies the following range of QoS profiles to "Bronze" subscribers when establishing the bearer for GPRS access (IP-CAN-Type is GPRS):

4   Configure Bandwidth Management for Services

4.1   Configure Static Services

To select different bandwidth limits for services (PCC Rules) in a standard PCEF or the SASN, the SAPC allows to activate/deactivate different Charging-Rule-Name values. To configure so, it is possible to do it with the following options:

4.2   Preconfigured and Dynamic Services

To assign bandwidth management to services in the SAPC, there are the following options:

For those fields not configured in a QoS profile, values are obtained from QoS-Information AVP.

4.3   Provision Service QoS Profiles

A service QoS profile contains a set of QoS related attributes values shared by services with the same QoS requirements. To provision a Service QoS Profile, use the /profiles/content-qos/<profileId> URI in the provisioning REST API.

4.3.1   Configuration for GPRS

The applicable attributes are:

The following example configures several service QoS profiles:

Example 5   Service QoS Profiles

PUT /profiles/content-qos/QosProfile_Streaming_OTHER
{
	"gbrDownlink" : 2048,
	"gbrUplink" : 1024,
	"mbrDownlink" : 4096,
	"mbrUplink" : 2048,
	"profileId" : "QosProfile_Streaming_OTHER",
	"qci" : 3
}

PUT /profiles/content-qos/QosProfile_Streaming_UTRAN
{
	"gbrDownlink" : 3072,
	"gbrUplink" : 1536,
	"mbrDownlink" : 4096,
	"mbrUplink" : 2048,
	"profileId" : "QosProfile_Streaming_UTRAN",
	"qci" : 3
}

PUT /profiles/content-qos/QosProfile_VoIP
{
	"gbrDownlink" : 4096,
	"gbrUplink" : 4096,
	"mbrDownlink" : 6144,
	"mbrUplink" : 6080,
	"profileId" : "QosProfile_VoIP",
	"qci" : 1
}

The previous example configures the following QoS profiles:

4.3.2   Configuration for EPS

The applicable attributes are:

The following example presents a QoS profile for EPS access:

Example 6   Service QoS Profiles EPS

PUT /profiles/content-qos/MinGBearerQos
{
	"arpPci" : true,
	"arpPriorityLevel" : 3,
	"arpPvi" : false,
	"mbrDownlink" : 5120,
	"mbrUplink" : 512,
	"profileId" : "MinGBearerQos",
	"qci" : 6
}

4.4   Provision QoS Control for Services

  1. To unconditionally associate a QoS Control to a service:

    Create a contents URI in the provisioning REST API (according to Configuration Guide for Access and Charging Control (Gx)) and set the qosProfileId attribute to a value that matches the profileId attribute of a previously provisioned content-qos profile (see Section 4.3).

    The example provisions a streaming service with a Service QoS Profile:

  2. To configure QoS Control for services depending on Conditions, create the needed policies using:
    • For Global policy locator:

      /locators/resources/<contentName>/contexts/qos

    • For Subscriber group locator

      /dataplans/<dataplanName>/locators/resources/<contentName>/contexts/qos

    • For Subscriber locator

      /subscribers/<subscriberId>/locators/resources/<contentName>/contexts/qos

    • Within the outputAttributes object in the rule set:
      • attrName attribute to qos.
      • attrValue to an expression returning a valid service QoS profile id (content-qos).

For some examples about how QoS profiles are conditionally assigned to services using policies, see Example 8.

Note:  
The values configured using policies prevail over the static QoS profiles provisioned in the service. These statically provisioned Service QoS Profiles are only considered when no policies apply, or if the applicable policies do not return any Service QoS Profile.

Example 8 shows how to qualify a service by with conditions:

Example 7   Provisioning of Services

PUT /contents/Streaming
{
	"contentName" : "Streaming",
	"flows" : 
	[
		{
			"destIpAddr" : "any",
			"destPort" : "",
			"direction" : "dl",
			"flowName" : "1",
			"protocol" : "ip",
			"sourceIpAddr" : "192.168.1.2",
			"sourcePort" : "5001-5050"
		},
		{
			"destIpAddr" : "any",
			"destPort" : "",
			"direction" : "dl",
			"flowName" : "2",
			"protocol" : "ip",
			"sourceIpAddr" : "192.168.1.2",
			"sourcePort" : "5101-5150"
		}
	],
	"pccRuleId" : 4033,
	"pccRuleType" : 2,
	"staticQualification" : 
	{
		"contentQosProfileId" : "QosProfile_VoIP"
	}
}

Example 8   Configuration of QoS Policy for a Streaming service

PUT /rules/QoS_Streaming_OTHER
{
	"condition" : "AccessData.bearer.accessType!=1000",
	"outputAttributes" : 
	[
		{
			"attrName" : "qos",
			"attrValue" : "ServiceQosProfile[\"QosProfile_Streaming_OTHER\"]",
			"result" : "permit"
		}
	],
	"ruleName" : "QoS_Streaming_OTHER"
}

PUT /rules/QoS_Streaming_UTRAN
{
	"condition" : "AccessData.bearer.accessType==1000",
	"outputAttributes" : 
	[
		{
			"attrName" : "qos",
			"attrValue" : "ServiceQosProfile[\"QosProfile_Streaming_UTRAN\"]",
			"result" : "permit"
		}
	],
	"ruleName" : "QoS_Streaming_UTRAN"
}

PUT /policies/QoS_Streaming
{
	"policyName" : "QoS_Streaming",
	"ruleCombiningAlgorithm" : "permit-overrides",
	"rules" : [ "QoS_Streaming_UTRAN", "QoS_Streaming_OTHER" ]
}

PUT /dataplans/Gold/locators/resources/Streaming/contexts/qos
{
	"policies" : [ "QoS_Streaming" ]
}

PUT /dataplans/Gold
{
	"dataplanName" : "Gold",
	"subscribedContents" : 
	[
		{
			"contentName" : "Streaming",
			"redirect" : false
		}
	]
}

The Service Profile "QosProfile_Streaming_UTRAN" is selected for a "Gold" subscriber group if the subscriber is using UMTS Radio Access. Otherwise, the Service Profile " QosProfile_Streaming_OTHER" is selected.

5   Appendix A. QoS Policy Types

Figure 2 shows the different policy types applicable to QoS Control that can be used and configured in the SAPC.

Figure 2   QoS Policy Types

6   Appendix B. QoS Policy Tags

The following tags related to conditional information about IP-CAN session can be used in the condition formula of rules for QoS Control.

For the policy tags obtained from AVPs received in CCR messages (see Comments column), their values are kept during the session lifetime, unless new values of the AVPs are received in subsequent CCR-U/CCR-T messages.

Table 1    Incoming Message Tags

Tag

Return Type

Possible Values

Comments


AccessData.
bearer.
accessPoint

String

any

The Called Station ID. Address where the user is connected to. Network ID + Operator ID

AccessData.
bearer.
accessType

Integer

 

Radio Access Technology used:


  • 0: WLAN

  • 1000: UTRAN

  • 1001: GERAN

  • 1002: GAN

  • 1003: HSPA_EVOLUTION

  • 1004: E-UTRAN

  • 1005: E-UTRAN-NB-IoT

  • 2000: CDMA2000_1X

  • 2001: HRPD

  • 2002: UMB

  • 2003: EHRPD

AccessData.
bearer.
eventTriggers

Multivalued Integer

any

Received EventTriggers that causes the CCR update. Use this tag together with contains function: contains (AccessData.bearer.eventTriggers, "<value>")

AccessData.
bearer.
ipCanType

Integer

0-7

Connectivity access type technology used:


  • 0: 3GPP-GPRS

  • 1: DOCSIS

  • 2: xDSL

  • 3: WiMAX

  • 4: 3GPP2

  • 5: 3GPP-EPS

  • 6: Non 3GPP-EPS

  • 7: FBA

AccessData.
bearer.
controlMode

Integer

0-2

Indicates the applied bearer control mode:


  • 0: UE_ONLY

  • 2: UE_NW

AccessData.
subscriber.
chargingChars

Integer

any

Charging Characteristics received from the gateway.(1)

AccessData.
subscriber.
id

String

any

Subscriber identifier:


  • Content of the first Subscription-Id AVP received when subsIdType is not configured

  • AccessData.subscriber.imsi if subsIdType is set to IMSI, or

  • AccessData.subscriber.msisdn if subsIdType is set to MSISDN.

AccessData.
subscriber.
imsi

String

any

Subscriber identifier in international IMSI format.

AccessData.
subscriber.
msisdn

String

any

Subscriber identifier in international E.164 format (MSISDN).

AccessData.
subscriber.
ueIpAddress

String

any

Subscriber IPv4 address in dot notation format.

AccessData.
subscriber.
ueIpv6Prefix

String

any

Subscriber IPv6 Prefix, in colon notation, preferred form, without the length part.

AccessData.
subscriber.
ueIpAddressType

Integer

0-2

Type of UE allocated address:


  • 0: IPv4

  • 1: IPv6

  • 2: Dual (IPv4 and IPv6)

AccessData.
subscriber.
locationInfo.
sgsnAddress

IP Address

any

SGSN IP Address

AccessData.
subscriber.
locationInfo.
anGwIpAddress.v4

IP Address

any

SGW/AGW IPv4 address.

AccessData.
subscriber.
locationInfo.
anGwIpAddress.v6

IP Address

any

SGW/AGW IPv6 address.

AccessData.
userEquipmentInfo.
model

Integer

any

IMEI-SV Type Allocation Code

AccessData.
userEquipmentInfo.
serialNr

Integer

any

IMEI-SV Serial Number

AccessData.
userEquipmentInfo.
version

Integer

any

IMEI-SV Software Version Number

(1)  Ericsson recommends not using this value if charging characteristics for the subscriber has been provisioned.


Also, the following tags related to conditional information about QoS can be used in the condition formula of rules:

Table 2    Subscriber Location Policy Tags

Tag

Return Type

Possible Values

Comments


AccessData.
subscriber.
locationInfo.
cellIdentity

Integer

0-65535 for GPRS,
0-268435455 for EPS

Cell identity where the user currently is registered.


For 3GPP-GPRS and 3GPP-EPS access types, the cell identity is obtained from the 3GPP-User-Location-Info AVP.


For non-LTE, the cell identity is obtained when geographic location type is Cell Global Identification (CGI).

For LTE scenarios, E-UTRAN Cell Identifier (ECI) is obtained when geographic location type is ECGI.

AccessData.
subscriber.
locationInfo.
countryCode

Integer

any

Mobile Country Code (MCC) part of the SGSN PLMN Id.


It is obtained from 3GPP-SGSN-MCC-MNC AVP.

AccessData.
subscriber.
locationInfo.
locationAreaCode

Integer

0-65535

Location area code where the user currently is registered, within the geographic location.


For 3GPP-GPRS and 3GPP-EPS, the location area code is obtained from 3GPP-User-Location-Info AVP, or if this AVP is not available, the location area code is obtained from RAI AVP.

AccessData.
subscriber.
locationInfo.
networkCode

Integer

any

Mobile Network Code part of the SGSN PLMN Id.


It is obtained from 3GPP-SGSN-MCC-MNC AVP.

AccessData.
subscriber.
locationInfo.
presenceReportingArea
[“presenceAreaName”].
isInArea

Boolean

true


false

PRA status of the UE received from the access network:


  • true: INSIDE the Area

  • false: OUTSIDE of the Area


It is obtained from the Presence-Reporting-Area-Status AVP.

AccessData.
subscriber.
locationInfo.
routingAreaCode

Integer

0-65535

For non-LTE scenarios, the routing area code is the code of routing area where the user currently is registered, within the Routing Area Identification (RAI) geographical location type.


The routing area code is obtained from 3GPP-User-Location-Info AVP, or if this AVP is not available, obtained from RAI AVP.

For LTE scenarios, the Tracking Area Code (TAC) obtained is from 3GPP-User-Location-Info AVP, when geographic location type is TAI.

AccessData.
subscriber.
locationInfo.
routingAreaIdentity

String

any

RAI of the SGSN where the UE is registered.


The RAI is obtained from RAI AVP. The value is encoded as a UTF-8 string on either 11 (if the MNC contains two digits) or 12 (if the MNC contains three digits) octets

AccessData.
subscriber.
locationInfo.
serviceAreaCode

Integer

0-65535

Service area code where the user is registered, within the Service Area Identification (SAI) geographical location type.


For 3GPP-GPRS and 3GPP-EPS, it is obtained from 3GPP-User-Location-Info AVP.

AccessData.
subscriber.
locationInfo.
timezone

Integer

Steps of 15 minutes


[-48, +56]

Offset between universal time and local time in steps of 15 minutes (900 seconds) of where the UE currently resides.

Also, the following tags related to dynamic information about QoS can be used in the condition formula of rules:

Table 3    QoS related Policy Tags

Tag

Return Type

Possible Values

Comments

AccessData.
bearer.
isQosNegotiationPossible

Boolean

true


false

Indicates if the bearer QoS for the default bearer has been enforced in the bearer plane.

AccessData.
requestedQos.
classIdentifier

Integer

1–9

It identifies a set of specific QoS parameters that define the QoS requested for the IP-CAN bearer, excluding the applicable bit rates.


AccessData.
requestedQos.
mbrUplink

Integer

any

Maximum bit rate in the uplink direction for the IP-CAN bearer.

AccessData.
requestedQos.
mbrDownlink

Integer

any

Maximum bit rate in the downlink direction for the IP-CAN bearer.

Note:  
AccessData.requestedQos.xx tags refer to the values sent by the PCEF in CCR messages (QoS-Information AVP). When the SAPC performs Bearer QoS Control, it is not recommended to use AccessData.requestedQos.xx tags, as such requested QoS can be modified in upgrades or downgrades.

7   Appendix C. QoS Selection Tags for Output Attributes Used in Policies

The following set of tags can be used in an output attribute (attrValue item of outputAttributes attribute) to make mathematical operations to calculate the QoS for default bearer or APNs.

Table 4    QoS Selection Tags

Tag

Return Type

Format

Comments

BearerQosProfile

Bearer QoS Profile

BearerQosProfile["QosProfile Name"]

A bearer QoS profile name previously configured.

ServiceQosProfile

Service QoS Profile

ServiceQosProfile["QosProfile Name"]

A service QoS profile name previously configured.

maxQosProfile


(1)

Bearer QoS Profile

maxQosProfile

Bearer QoS profile corresponding to the highest value among the QoS profiles associated to the authorized preconfigured services.


(2)

sumQosProfile


(3)

Bearer QoS Profile

sumQosProfile

Bearer QoS profile corresponding to the aggregation of QoS profiles of the authorized preconfigured services running on the bearer.


(4)

(1)   Do not use this function in network scenarios that support dedicated bearers. Use instead QoS for services.

(2)  This function selects the highest value for every field of the service QoS profiles. For priority-related parameters like QCI, it is the lowest numeric value.

(3)   Related to QoS for APN (as APN-AMBR are the aggregation of MBRs of non-GBR bearers for an APN), do not use this function in network scenarios having services running in GBR-bearers.

(4)  Adding the individual throughput parameters (MBRs) of the QoS profiles, and selecting the highest value in the rest of the QoS parameters.


8   Appendix D Configuration Summary

The next table summarizes the configuration possibilities grouped by the SAPC functions.

Table 5    Functions and Configuration

Function

Unconditionally

Conditionally (Policies)

QoS Control for the default bearer and the APN

Yes


Section 3.3

Yes


Section 3.3

Bandwidth Management (QoS Control for services)

Static Services

Yes


Section 4.1

Yes


Section 4.1

Preconfigured

Yes


Section 4.4

Yes


Section 4.4


Reference List

Ericsson Documents
[1] Configuration Guide for Access and Charging Control.
[2] Configuration Guide for Subscription and Policies.
[3] Managed Object Model (MOM).
Standards
[4] Mobile Radio Interface Layer 3 Core Network Protocols, 3GPP TS 24.008
[5] End-to-end Quality of Service (QoS) signalling flows, 3GPP TS 29.208
[6] Policy control over Gx interface, 3GPP TS 29.209
[7] Policy and Charging Control over Gx reference point, 3GPP TS 29.212