---
Author: Kálmán Mikecz
Version: 1551-CNL 113 846, Rev. A
Date: 2016-11-21

---
= GTPv2 v13.7.0 Protocol Modules for TTCN-3 Toolset with Titan, Description
:author: Kálmán Mikecz
:revnumber: 1551-CNL 113 846, Rev. A
:revdate: 2016-11-21
:toc:

= Functionality

The GTPv2 v13.7.0 protocol module implements the message structures of the related protocol <<_4, [4]>> in a formalized way, using the standard specification language TTCN-3. This allows defining of test data (templates) in the TTCN-3 language and correctly encoding/decoding messages when executing test suites using the Titan TTCN-3 test environment.

The GTPv2 v13.7.0 protocol module uses Titan’s RAW encoding attributes <<_3, [3]>> and hence is usable with the Titan test toolset only.

== Implemented Protocols

This set of protocol modules implements protocol messages and constants of the GTPv2 v13.7.0 protocol as described in <<_4, [4]>>.

=== Modified and Non-Implemented Protocol Elements

None.

=== Ericsson-Specific Changes

The Ericsson Private Extensions are defined in <<_5, [5]>>.

== Backward Incompatibilities

None.

== System Requirements

Protocol modules are a set of TTCN-3 source code files that can be used as part of TTCN-3 test suites only. Hence, protocol modules alone do not put specific requirements on the system used. However, in order to compile and execute a TTCN-3 test suite using the set of protocol modules the following system requirements must be satisfied:

* Titan TTCN-3 Test Executor version CRL 113 200/5 R4A (5.3.pl0) or higher installed. For Installation Guide see <<_2, [2]>>.

NOTE: This version of the test port is not compatible with Titan releases earlier than CRL 113 200/5 R4A.

= Usage

== Installation

The set of protocol modules can be used in developing TTCN-3 test suites using any text editor; however, to make the work more efficient a TTCN3enabled text editor is recommended (for example `nedit`, `xemacs`). Since the GTPv2 v13.7.0 protocol is used as a part of a TTCN-3 test suite, this requires TTCN-3 Test Executor be installed before the module can be compiled and executed together with other parts of the test suite. For more details on the installation of TTCN-3 Test Executor see the relevant section of <<_2, [2]>>.

== Configuration

None.

== Examples

None.

= Interface Description

== Top Level PDU

The top level PDUs are the TTCN-3 records `PDU_GTPCv2`.

[[encoding-decoding-and-other-related-functions]]
== Encoding/Decoding and other Related Functions

This product also contains encoding/decoding functions, which assure correct encoding of messages when sent from Titan and correct decoding of messages when received by Titan.

=== Implemented Encoding and Decoding Functions

[cols=3*,option=header]
|===

|Name |Type of formal parameters |Type of return value
|`enc_PDU_GTPCv2` |in PDU_GTPCv2 |octetstring
|`dec_PDU_GTPCv2` |in octetstring |PDU_GTPCv2
|`dec_PDU_GTPCv2_backtrack` |in octetstring, out PDU_GTPCv2 |integer
|`dec_PDU_GTPCv2_fast` |in octetstring, out PDU_GTPCv2 |integer
|===

= Terminology

None.

= Abbreviations

PDU:: Protocol Data Unit

GTPv2:: GPRS Tunnelling Protocol version 2

TTCN-3:: Testing and Test Control Notation version 3

= References

[[_1]]
[1] ETSI ES 201 873-1 v4.4.1 (2012-04) +
The Testing and Test Control Notation version 3. Part 1: Core Language

[[_2]]
[2] User Guide for TITAN TTCN-3 Test Executor

[[_3]]
[3] Programmer’s Technical Reference for Titan TTCN–3 Test Executor

[[_4]]
[4] 3GPP TS 29.274 v13.7.0 (2016-11) +
3rd Generation Partnership Project; +
Technical Specification GroupCore Network and Terminals; +
3GPP Evolved Packet System (EPS); +
Evolved General Packet Radio Service (GPRS) Tunneling Protocol for Control plane (GTPv2-C); +
Stage 3 (Release 13)

[[_5]]
[5] SGSN-MME Private Extensions under IANA Enterprise number 10923

