12.3 Generic performance assurance management service
28.5323GPPGeneric management servicesManagement and orchestrationRelease 17TS
12.3.1 RESTful HTTP-based solution set
12.3.1.1 Void
12.3.1.2 Performance threshold monitoring service
12.3.1.2.1 Mapping of operations
None.
12.3.1.2.2 Mapping of notifications
12.3.1.2.2.1 Introduction
The IS notifications are mapped to SS equivalents according to table 12.3.1.2.2.1-1.
Table 12.3.1.2.2.1-1: Mapping of IS notifications to SS equivalents
IS notifications |
HTTP Method |
Resource URI |
S |
notifyThresholdCrossing |
POST |
/notificationSink |
M |
12.3.1.2.2.2 Notification notifyThresholdCrossing
The IS notification parameters are mapped to SS equivalents according to table 12.3.1.2.2.2-1.
Table 12.3.1.2.2.2-1: Mapping of IS notification input parameters to SS equivalents (HTTP POST)
IS parameter name |
SS parameter location |
SS parameter name |
SS parameter type |
S |
objectClass |
request body |
href |
Uri |
M |
objectInstance |
||||
notificationId |
request body |
notificationId |
NotificationId |
M |
notificationType |
request body |
notificationType |
NotificationType |
M |
eventTime |
request body |
eventTime |
DateTime |
M |
systemDN |
request body |
systemDN |
SystemDN |
M |
observedPerfMetricName |
request body |
observedPerfMetricName |
string |
M |
observedPerfMetricValue |
request body |
observedPerfMetricValue |
PerfMetricValue |
M |
observedPerfMetricDirection |
request body |
observedPerfMetricDirection |
PerfMetricDirection |
M |
thresholdValue |
request body |
thresholdValue |
PerfMetricValue |
M |
hysteresis |
request body |
hysteresis |
PerfMetricValue) |
M |
monitorGranularityPeriod |
request body |
monitorGranularityPeriod |
integer |
M |
additionalText |
request body |
additionalText |
string |
O |
12.3.1.2.3 Resources
12.3.1.2.3.1 Resource structure
Table 12.3.1.2.3.1-1 provides an overview of the resources and applicable HTTP methods.
Table 12.3.1.2.3.1-1: Resources and methods overview
Resource name |
Resource URI |
HTTP method |
Description |
notificationSink |
/notificationSink |
POST |
Send notifications |
12.3.1.2.3.2 Resource definitions
12.3.1.2.3.2.1 Resource "/notificationSink"
12.3.1.2.3.2.1.1 Description
This resource represents a resource on a MnS consumer to which notifications are sent to.
12.3.1.2.3.2.1.2 URI
The resource URI is provided by the notification subscription.
12.3.1.2.3.2.1.3 HTTP methods
12.3.1.2.3.2.1.3.1 POST
This method shall support the URI query parameters specified in table 12.3.1.2.3.2.1.3.1-1.
Table 12.3.1.2.3.2.1.3.1-1: URI query parameters supported by the POST method on this resource
Name |
Data type |
Description |
S |
n/a |
n/a |
n/a |
n/a |
This method shall support the request data structures specified in table 12.3.1.2.3.2.1.3.1-2 and the response data structures and response codes specified in table 12.3.1.2.3.2.1.3.1-3.
Table 12.3.1.2.3.2.1.3.1-2: Data structures supported by the POST Request Body on this resource
Data type |
Description |
S |
NotifyThresholdCrossing |
Type in case a notifyThresholdCrossing notification is sent |
M |
Table 12.3.1.2.3.2.1.3.1-3: Data structures supported by the POST Response Body on this resource
Data type |
Response codes |
Description |
S |
n/a |
204 No Content |
In case of success no message body is returned |
M |
Error-Response |
4xx/5xx |
In case of failure the error object is returned. |
M |
12.3.1.2.4 Data type definitions
12.3.1.2.4.1 General
Table 12.3.1.2.4.1-1: Data types defined in this specification
Data type |
Reference |
Description |
NotifyThresholdCrossing |
12.3.1.2.4.2.1 |
Used in the request body of HTTP POST for the notification type notifyThresholdCrossing |
PerfNotificationTypes |
12.3.1.2.4.6.4 |
Performance notification types (notifyThresholdCrossing) |
Table 12.3.1.1.4.1-2: Data types imported
Data type |
Reference |
Description |
DateTime |
TS 28.623 [44] |
Date and time |
Float |
TS 28.623 [44] |
Float type |
Uri |
TS 28.623 [44] |
URI type |
SystemDN |
TS 28.623 [44] |
systemDN type |
NotificationId |
TS 28.623 [44] |
Notification identifier as defined in ITU-T Rec. X. 733 [4] |
NotificationHeader |
TS 28.623 [44] |
Notification header |
ErrorResponse |
TS 28.623 [44] |
Used in the response body of multiple HTTP methods in case of error |
12.3.1.2.4.2 Structured data types
12.3.1.2.4.2.1 Type NotifyThresholdCrossing
Table 12.3.1.2.4.2.1-1: Definition of type NotifyThresholdCrossing
Attribute name |
Data type |
Description |
S |
href |
Uri |
URI of the resource where the event (threshold crossing) occurred |
M |
notificationId |
NotificationId |
Notification identifier as defined in ITU-T Rec. X. 733 [4] |
M |
notificationType |
NotificationType |
Notification type (notifyThresholdCrossing) |
M |
eventTime |
DateTime |
Event (threshold crossing) occurrence time |
M |
systemDN |
SystemDN |
System DN |
M |
observedPerfMetricName |
string |
Name of the performance metric that has crossed the threshold |
M |
observedPerfMetricValue |
PerfMetricValue |
Value of the performance metric, that has crossed the threshold, when the threshold crossing was observed |
M |
observedPerfMetricDirection |
PerfMetricDirection |
Direction ("UP" or "DOWN") of the performance metric, when the threshold crossing was observed |
M |
thresholdValue |
PerfMetricValue |
Threshold value of the triggered threshold |
M |
hysteresis |
PerfMetricValue |
Hysteresis of the triggered threshold |
M |
monitorGranularityPeriod |
integer |
Granularity period of the threshold monitor |
M |
additionalText |
string |
Vendor specific information |
O |
12.3.1.2.4.3 Void
12.3.1.2.4.4 Void
12.3.1.2.4.5 Void
12.3.1.2.4.6 Simple data types and enumerations
12.3.1.2.4.6.1 General
This clause defines simple data types and enumerations that are used by the data structures defined in the previous clauses.
12.3.1.2.4.6.2 Simple data types
Table 12.3.1.2.4.6.2-1: Simple data types
Type name |
Type definition |
Description |
PerfMetricValue |
Union(integer, Float) |
The type of a performance metric is either integer or Float |
12.3.1.2.4.6.3 Enumeration PerfNotificationTypes
Table 12.3.1.2.4.6.3-1: Enumeration PerfNotificationTypes
Enumeration value |
Description |
notifyThresholdCrossing |
Notification type is notifyThresholdCrossing |
12.3.1.2.4.6.4 Enumeration PerfMetricDirection
Table 12.3.1.2.4.6.4-1: Enumeration PerfMetricDirection
Enumeration value |
Description |
UP |
Performance metric values are going up |
DOWN |
Performance metric values are going down |
12.3.2 Performance data XML file format definition
12.3.2.1 Introduction
This clause describes the format of performance data file. The XML file format definition is based on XML schema ([26], [27], [28] and [29]).
12.3.2.2 Mapping table
Table 12.3.2.2-1 maps the file content items in the clause 11.3.2.1.2 to those used in the XML schema based file format definitions. XML attributes are useful where data values bind tightly to its parent XML element. They have been used where appropriate.
Table 12.3.2.2-1: Mapping of File Content Items to XML tags
File Content Item |
XML schema based XML tag |
Description |
---|---|---|
measDataFile |
XML element: measDataFile |
Document element |
measFileHeader |
XML element: fileHeader |
|
measData |
XML element: measData |
|
measFileFooter |
XML element: fileFooter |
|
fileFormatVersion |
XML element: fileHeader XML attribute: fileFormatVersion |
|
senderName |
XML element: fileHeader XML attribute: dnPrefix XML element: fileHeader:fileSender XML attribute: senderName |
The DN of the sender is split into the DN prefix contained in "dnPrefix" and the Local DN (LDN) contained in "senderName". |
senderType |
XML element fileHeader:fileSender XML attribute: senderType |
|
vendorName |
XML element fileHeader XML attribute vendorName |
|
collectionBeginTime |
XML element: fileHeader:measData XML attribute beginTime |
|
measObjRootDn |
XML element fileHeader XML attribute dnPrefix XML element measData:measEntity XML attribute localDn |
The DN of the root object is split into the DN prefix contained in "dnPrefix" and the Local DN (LDN) contained in "localDn". |
measObjRootUserLabel |
XML element: measData:measEntity XML attribute: userLabel |
|
measObjRootSwVersion |
XML element: measData:measEntity XML attribute: swVersion |
|
measInfo |
XML element measInfo |
An instance of this XML element is added for each expired granularity period. |
measInfoId |
XML element measData:measInfo XML attribute measInfoId |
|
jobId |
XML element measData:measInfo:job XML attribute jobId |
|
reportingPeriod |
XML element measData:measInfo:repPeriod XML attribute duration |
The XML attribute "duration" shall use the truncated representation for duration "PTnS" (see [28]). |
granularityPeriod |
XML element measData:measInfo:granPeriod XML attribute duration |
The XML attribute "duration" shall use the truncated representation for duration "PTnS" (see [28]). |
measTimeStamp |
XML element measData:measInfo:granPeriod XML attribute endTime |
|
measTypes |
XML element measData:measInfo:measTypes or XML element measData:measInfo:measType XML attribute p |
Depending on sender’s choice for optional positioning presence, either XML element "measTypes" or XML elements "measType" will be used. |
measValues |
XML element measData:measInfo:measValue |
|
measObjLdn |
XML element measData:measInfo:measValue XML attribute measObjLdn |
|
measResults |
XML element measData:measInfo:measValue:measResults or, when the positioning option is used, measData:measInfo:measValue:r |
Depending on sender’s choice for optional positioning, either XML element "measResults" or XML elements "r" is used. |
suspectFlag |
XML element measData:measInfo:measValue:suspect |
|
collectionEndTime |
XML element fileFooter:measData XML attribute endTime |
|
There is no corresponding File Content Item. |
XML element measType XML attribute p |
Only for the positioning option: XML attribute "p" of XML element "measType", used to link the performance metric type specified in "measType" to the result value. Its value is a positive integer (excl. zero) and shall be unique for each instance of "measType" in a file. |
There is no corresponding File Content Item. |
XML element r XML attribute p |
Only for the positioning option: XML attribute "p" of the XML element "r", used to link the result value in "r" to its performance metric type in "measType". The value of "p" shall match the value of the XML attribute "p" in the corresponding XML element "measType". |
12.3.2.3 Void
12.3.2.3.1 Void
12.3.2.3.2 Void
12.3.2.4 XML schema
This clause specifies the XML schema that shall be used for XML files containing performance data.
Name: measData.xsd
Version: 2.0.0
Identifier: measData.xsd-v2.0.0
<?xml version="1.0" encoding="UTF-8"?>
<!–
3GPP TS 28.532 Performance data XML file format definition
measData.xsd-v2.0.0
–>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:md="http://www.3gpp.org/ftp/specs/archive/28_series/28.532#measData"
targetNamespace="http://www.3gpp.org/ftp/specs/archive/28_series/28.532#measData"
elementFormDefault="qualified">
<element name="measDataFile">
<complexType>
<sequence>
<element name="fileHeader">
<complexType>
<sequence>
<element name="fileSender">
<complexType>
<attribute name="senderName" type="string" use="optional"/>
<attribute name="senderType" type="string" use="optional"/>
</complexType>
</element>
<element name="measData">
<complexType>
<attribute name="beginTime" type="dateTime" use="required"/>
</complexType>
</element>
</sequence>
<attribute name="fileFormatVersion" type="string" use="required"/>
<attribute name="vendorName" type="string" use="optional"/>
<attribute name="dnPrefix" type="string" use="optional"/>
</complexType>
</element>
<element name="measData" minOccurs="0" maxOccurs="unbounded">
<complexType>
<sequence>
<element name="measEntity">
<complexType>
<attribute name="localDn" type="string" use="optional"/>
<attribute name="userLabel" type="string" use="optional"/>
<attribute name="swVersion" type="string" use="optional"/>
</complexType>
</element>
<element name="measInfo" minOccurs="0" maxOccurs="unbounded">
<complexType>
<sequence>
<element name="job" minOccurs="0">
<complexType>
<attribute name="jobId" type="string" use="required"/>
</complexType>
</element>
<element name="granPeriod">
<complexType>
<attribute name="duration" type="duration" use="required"/>
<attribute name="endTime" type="dateTime" use="required"/>
</complexType>
</element>
<element name="repPeriod" minOccurs="0">
<complexType>
<attribute name="duration" type="duration" use="required"/>
</complexType>
</element>
<choice>
<element name="measTypes">
<simpleType>
<list itemType="Name"/>
</simpleType>
</element>
<element name="measType" minOccurs="0" maxOccurs="unbounded">
<complexType>
<simpleContent>
<extension base="Name">
<attribute name="p" type="positiveInteger" use="required"/>
</extension>
</simpleContent>
</complexType>
</element>
</choice>
<element name="measValue" minOccurs="0" maxOccurs="unbounded">
<complexType>
<sequence>
<choice>
<element name="measResults">
<simpleType>
<list itemType="md:measResultType"/>
</simpleType>
</element>
<element name="r" minOccurs="0" maxOccurs="unbounded">
<complexType>
<simpleContent>
<extension base="md:measResultType">
<attribute name="p" type="positiveInteger" use="required"/>
</extension>
</simpleContent>
</complexType>
</element>
</choice>
<element name="suspect" type="boolean" minOccurs="0"/>
</sequence>
<attribute name="measObjLdn" type="string" use="required"/>
</complexType>
</element>
</sequence>
<attribute name="measInfoId" type="string" use="optional"/>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="fileFooter">
<complexType>
<sequence>
<element name="measData">
<complexType>
<attribute name="endTime" type="dateTime" use="required"/>
</complexType>
</element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<simpleType name="measResultType">
<union memberTypes="integer float string">
<simpleType>
<restriction base="string">
<enumeration value="NULL"/>
</restriction>
</simpleType>
</union>
</simpleType>
</schema>