5 Trace streaming format
32.4233GPPRelease 16Subscriber and equipment traceTelecommunication managementTrace data definition and managementTS
5.1 Introduction
In Streaming Trace data reporting the individual trace records are carried in payload of the transport protocol messages Figure 5.1-1 illustrates the concept.
Figure 5.1-1: Transport of Trace Records
As depicted in the Figure 5.1-1, each streaming protocol-specific message delivers one or more trace records from the MnS Producer to the MnS Consumer. The header of the transport protocol message is protocol-specific. It may contain protocol specific extensions and/or options related to the transport stream. The payload of the transport protocol carries one or more Streaming Trace Records. The format of the individual Streaming Trace Records is specified in clause 5.2.
The procedures related to the connection establishment and meta-data exchange between the Streaming Trace data reporting MnS Producer and MnS Consumer are out of scope of the present document and are specified in TS 28.532 [43]
5.2 Streaming Trace Record
5.2.1 Introduction
The Streaming Trace Record comprises a header, a payload and an optional common trace payload that contains the trace administrative message as shown in Error: Reference source not found5.2.1-1.
Trace Record
Payload
Header
Vendor specific
extension
Common
fields
Vendor Specified
Content
Size
Trace Record
Payload
Header
Vendor specific
extension
Common
fields
Vendor Specified
Content
Size
Figure 5.2.1.1: Streaming Trace Record
The format of the Header in Streaming Trace Record is specified in the clause 5.2.2. The format of the Payload and the Common Trace Payload carrying the Trace Administrative Message in Streaming Trace Record is specified in the clause 5.2.3 and 5.2.4 respectively.
The Streaming Trace Records may be used to carry the captured Trace data being reported by the MnS Producer to the MnS Consumer or to convey various administrative messages from the MnS Producer to the MnS Consumer. These cases are further explained in clause 5.2.4. Cases where MnS Consumer may transfer data or convey administrative messages to the MnS Producer are out of scope of the present document.
5.2.2 Streaming Trace Record Header
The streaming trace record header contains the common fields as specified in the Error: Reference source not found2.2-1, in addition it may also contain vendor specific extensions.
Table 5.2.2.1 : Common fields in the streaming trace record header
Trace Record Header field name |
Description |
timeStamp (M) |
Time stamp (in milliseconds since Epoch) of when the streaming trace record is produced internally in the Producer encoded as (64 bit integer) |
nfInstanceId (M) |
Unique id of the Producer NF instance that produced this streaming trace record represented by a (String) |
nfType (M) |
Type of the Producer NF that produced this streaming trace record represented by a (String) |
traceReference (M) |
Trace Reference (see clause 5.6 of 3GPP TS 32.422 [23]) (represented by a 3 bytes octet string) |
traceRecordingSessionReference (M) |
Trace Recording Session Reference (see clause 5.7 of 3GPP TS 32.422 [23]) represented by a (2 byte octet string. See Note 1.) |
traceRecordTypeId (M) |
Identifier of the trace record type (see clause 5.2.4 for details) represented by an ENUM with the following values: NORMAL TRACE_SESSION_START, TRACE_SESSION_STOP, TRACE_RECORDING_SESSION_START, TRACE_RECORDING_SESSION_STOP, TRACE_STREAM_HEARTBEAT. TRACE_RECORDING_SESSION_NOT_STARTED, TRACE_RECORDING_SESSION_DROPPED_EVENTS, (See Note 2). |
ranUeId (O) |
RAN defined UE Id (see 3GPP TS 38.463 [25] and 38.473 [26]) represented as of the UE (8 byte octet string. See Note 3.) |
payloadSchemaURI (O) |
URI identifying the schema to be used in order to decode the payload represented by a (String. See Note 4.) |
vendorExtension (O) |
Vendor-specific extension(s) represented by a (Arraylist of String. See Note 5.) |
NOTE 1: The traceRecordingSessionReference must be present for the Streaming Trace Records with non-zero size payload where the payload carries data captured for a Trace Recording Session and in administrative messages related to a Trace Recording Session (e.g. "Trace Recording Session Start" or "Trace Recording Session Stop"). NOTE 2: The traceRecordTypeId with value "NORMAL" is used for Streaming Trace Records that do not carry an administrative message. NOTE 3: The ranUeId field is present in the trace record header if it has been captured in the traced signaling messages. NOTE 4: The payloadSchemaURI is not required for Streaming Trace Records with payload of zero-size, or payload using common payload format (e.g. used to convey Streaming Trace administrative messages). NOTE 5: The vendorExtension is typically a generic list of key-value pairs. |
5.2.3 Streaming Trace Record Payload
The streaming trace record payload carries the captured Trace data being reported by the MnS Producer to the MnS Consumer and comprises the fields defined in Table 5.2.3-1.
Table 5.2.3.1 : Fields in the trace record payload
Trace Record Payload parameter name |
Description |
payloadSize (O) |
Size of payload, in bytes represented by a (64 bit integer. The field may be omitted if the solution set specific encoding/decoding has its own support for indicating the size.) |
payload (M) |
Sequence of bytes representing the binary encoded data of the specific trace recordArray of bytes. See Note 1. |
NOTE 1: For example, trace record content per clause 4 of the present document with schema indicated in the header field payloadSchemaURI required for decoding. |
5.2.4 Streaming Trace administrative messages
5.2.4.1 Introduction
The following administrative messages are defined to for trace stream management purposes:
– Trace Session Start
– Trace Session Stop
– Trace Recording Session Start
– Trace Recording Session Stop
– Trace Stream Heartbeat
– Trace Recording Session Not Started
– Trace Recording Session Dropped Events
5.2.4.2 Trace Session Start administrative message
The Trace Session Start administrative message shall be used to convey the start of a Trace Session (see 3GPP TS 32.422 [3] for details). The Streaming Trace Record in this case may have zero-size payload. The value of the traceRecordTypeId field in the Streaming Trace Record Header is set to "TRACE_SESSION_START". The start trace session administrative message is not used for signalling based activation as there is no separate trigger for starting the session and the trace recording session.
5.2.4.3 Trace Session Stop administrative message
The Trace Session Stop administrative message shall be used to convey the stop of a Trace Session (see 3GPP TS 32.422 [3] for details). The Streaming Trace Record in this case may have zero-size payload. The value of the traceRecordTypeId field in the Streaming Trace Record Header is set to "TRACE_SESSION_STOP".The stop trace session administrative message is not used for signalling based activation as there is no separate trigger for stoping the session and the trace recording session.
5.2.4.3a Trace Recording Session Start administrative message
The Trace Recording Session Start administrative message shall be used to convey the start of a Trace Recording Session (see 3GPP TS 32.422 [3] for details). The Streaming Trace Record in this case may have zero-size payload. The value of the traceRecordTypeId field in the Streaming Trace Record Header is set to "TRACE_ RECORDING_SESSION_START".
5.2.4.3b Trace Recording Session Stop administrative message
The Trace Recording Session Stop administrative message shall be used to convey the stop of a Trace Recording Session (see 3GPP TS 32.422 [3] for details). The Streaming Trace Record in this case may have zero-size payload. The value of the traceRecordTypeId field in the Streaming Trace Record Header is set to "TRACE_ RECORDING_SESSION_STOP".
5.2.4.4 Trace Stream Heartbeat administrative message
The Trace Stream Heartbeat administrative message may be used in absence of the captured trace data and other administrative messages from the MnS Producer to the MnS Consumer. The message is intended to indicate that a streaming trace connection is alive and does not indicate whether there is an ongoing Trace Session or not.
Transport protocol level keep-alive mechanisms may be used as an alternative (e.g. use of Ping and Pong WebSocket frames in IETF RFC 6455 [40]) and are out of scope of the present document.
5.2.4.5 Trace Recording Session Not Started administrative message
The Trace Recording Session Not Started administrative message shall be used to convey that a trace recording session could not be started. For example, the number of simultaneous UE traces may be limited so that UE traces are not started when this limit is reached. It includes the detailed reason as string in the payload.
5.2.4.6 Trace Recording Session Dropped Events administrative message
The Trace Recording Session Dropped Events administrative message shall be used to convey the number of dropped trace records. The message provides indication that trace records are dropped from a particular trace recording session. It includes the number of trace records dropped in the payload.
5.2.5 Void
5.3 Void
Annex A (normative):
Trace Report File Format