3GPP TS 36.444 V13.2.0 (2016-03)
Technical Specification
3rd Generation Partnership Project;
Technical Specification Group Radio Access Network;
Evolved Universal Terrestrial Radio Access Network 
(E-UTRAN); 
M3 Application Protocol (M3AP)
(Release 13)

	

The present document has been developed within the 3rd Generation Partnership Project (3GPP TM) and may be further elaborated for the purposes of 3GPP.
The present document has not been subject to any approval process by the 3GPP Organizational Partners and shall not be implemented.
This Specification is provided for future development work within 3GPP only. The Organizational Partners accept no liability for any use of this Specification.
Specifications and reports for implementation of the 3GPP TM system should be obtained via the 3GPP Organizational Partners' Publications Offices.




Keywords
LTE, MBMS, radio

3GPP
Postal address

3GPP support office address
650 Route des Lucioles - Sophia Antipolis
Valbonne - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Internet
http://www.3gpp.org 

Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.

© 2016, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.

UMTS™ is a Trade Mark of ETSI registered for the benefit of its members
3GPP™ is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners
LTE™ is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners
GSM® and the GSM logo are registered and owned by the GSM Association

Contents
Foreword	6
1	Scope	7
2	References	7
3	Definitions, symbols and abbreviations	8
3.1	Definitions	8
3.2	Symbols	8
3.3	Abbreviations	9
4	General	9
4.1	Procedure specification principles	9
4.2	Forwards and backwards compatibility	10
4.3	Specification notations	10
5	M3AP Services	10
6	Services Expected from Signalling Transport	10
7	Functions of M3AP	10
8	M3AP Procedures	11
8.1	Elementary procedures	11
8.2	MBMS Session Start	11
8.2.1	General	11
8.2.2	Successful Operation	12
8.2.3	Unsuccessful Operation	13
8.2.4	Abnormal Conditions	13
8.3	MBMS Session Stop	13
8.3.1	General	13
8.3.2	Successful Operation	14
8.3.3	Unsuccessful Operation	14
8.3.4	Abnormal Conditions	14
8.4	Error Indication	14
8.4.1	General	14
8.4.2	Successful Operation	15
8.4.3	Abnormal Conditions	15
8.5	Reset	15
8.5.1	General	15
8.5.2	Successful Operation	16
8.5.2.1	Reset Procedure Initiated from the MME	16
8.5.2.2	Reset Procedure Initiated from the E-UTRAN	17
8.5.3	Abnormal Conditions	18
8.5.3.1	Abnormal Condition at the EPC	18
8.5.3.2	Abnormal Condition at the E-UTRAN	18
8.5.3.3	Crossing of Reset Messages	18
8.6	MBMS Session Update	18
8.6.1	General	18
8.6.2	Successful Operation	18
8.6.3	Unsuccessful Operation	19
8.6.4	Abnormal Conditions	19
8.7	M3 Setup	19
8.7.1	General	19
8.7.2	Successful Operation	20
8.7.3	Unsuccessful Operation	20
8.7.4	Abnormal Conditions	20
8.8	MCE Configuration Update	20
8.8.1	General	20
8.8.2	Successful Operation	21
8.8.3	Unsuccessful Operation	21
8.8.4	Abnormal Conditions	22
9	Elements for M3AP Communication	22
9.1	Message Functional Definition and Content	22
9.1.1	General	22
9.1.2	Message Contents	22
9.1.2.1	Presence	22
9.1.2.2	Criticality	22
9.1.2.3	Range	23
9.1.2.4	Assigned Criticality	23
9.1.3	MBMS SESSION START REQUEST	23
9.1.4	MBMS SESSION START RESPONSE	23
9.1.5	MBMS SESSION START FAILURE	24
9.1.6	MBMS SESSION STOP REQUEST	24
9.1.7	MBMS SESSION STOP RESPONSE	24
9.1.8	ERROR INDICATION	24
9.1.9	RESET	25
9.1.10	RESET ACKNOWLEDGE	25
9.1.11	MBMS SESSION UPDATE REQUEST	26
9.1.12	MBMS SESSION UPDATE RESPONSE	26
9.1.13	MBMS SESSION UPDATE FAILURE	27
9.1.14	M3 SETUP REQUEST	27
9.1.15	M3 SETUP RESPONSE	27
9.1.16	M3 SETUP FAILURE	28
9.1.17	MCE CONFIGURATION UPDATE	28
9.1.18	MCE CONFIGURATION UPDATE ACKNOWLEDGE	28
9.1.19	MCE CONFIGURATION UPDATE FAILURE	29
9.2	Information Element Definitions	29
9.2.0	General	29
9.2.1	Radio Network Layer Related IEs	29
9.2.1.1	Message Type	29
9.2.1.2	Cause	29
9.2.1.3	MBMS E-RAB QoS parameters	31
9.2.1.4	Void	32
9.2.1.5	GBR QoS Information	32
9.2.1.6	Bit Rate	32
9.2.1.7	Criticality Diagnostics	32
9.2.1.8	Allocation and Retention Priority	33
9.2.1.9	Time to Wait	34
9.2.1.10	Global MCE ID	34
9.2.1.11	MBMS Cell List	34
9.2.1.12	E-UTRAN CGI	34
9.2.2	Transport Network Layer Related IEs	35
9.2.2.1	IP Address	35
9.2.2.2	GTP-TEID	35
9.2.3	NAS Related IEs	35
9.2.3.1	MCE MBMS M3AP ID	35
9.2.3.2	MME MBMS M3AP ID	35
9.2.3.3	TMGI	35
9.2.3.4	MBMS Session Identity	36
9.2.3.5	MBMS Session Duration	36
9.2.3.6	MBMS Service Area	36
9.2.3.7	PLMN Identity	36
9.2.3.8	Minimum Time to MBMS Data Transfer	37
9.2.3.9	Absolute Time of MBMS Data	37
9.2.3.10	Re-establishment	37
9.3	Message and Information Element Abstract Syntax (with ASN.1)	38
9.3.1	General	38
9.3.2	Usage of Private Message Mechanism for Non-standard Use	38
9.3.3	Elementary Procedure Definitions	38
9.3.4	PDU Definitions	42
9.3.5	Information Element definitions	52
9.3.6	Common definitions	57
9.3.7	Constant definitions	58
9.3.8	Container definitions	60
9.4	Message Transfer Syntax	65
9.5	Timers	65
10	Handling of Unknown, Unforeseen and Erroneous Protocol Data	65
Annex A (informative):	Change history	65


Foreword
This Technical Specification has been produced by the 3rd Generation Partnership Project (3GPP).
The contents of the present document are subject to continuing work within the TSG and may change following formal TSG approval. Should the TSG modify the contents of the present document, it will be re-released by the TSG with an identifying change of release date and an increase in version number as follows:
Version x.y.z
where:
x	the first digit:
1	presented to TSG for information;
2	presented to TSG for approval;
3	or greater indicates TSG approved document under change control.
y	the second digit is incremented for all changes of substance, i.e. technical enhancements, corrections, updates, etc.
z	the third digit is incremented when editorial only changes have been incorporated in the document.

1	Scope
The present document specifies the E-UTRAN radio network layer signalling protocol for the M3 interface. The M3 Application Protocol (M3AP) supports the functions of M3 interface by signalling procedures defined in this document. M3AP is developed in accordance to the general principles stated in TS 36.401 [2] and TS 36.300 [3].
2	References
The following documents contain provisions which, through reference in this text, constitute provisions of the present document.
• References are either specific (identified by date of publication, edition number, version number, etc.) or nonspecific.
• For a specific reference, subsequent revisions do not apply.
• For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same Release as the present document.
[1]	3GPP TR 21.905: "Vocabulary for 3GPP Specifications".
[2]	3GPP TS 36.401: "E-UTRAN Architecture Description".
[3]	3GPP TS 36.300: “Evolved Universal Terrestrial Radio Access (E-UTRA) and Evolved Universal Terrestrial Radio Access Network (E-UTRAN); Overall description; Stage 2”.
[4]	ITU-T Recommendation X.691 (2002-07): "Information technology - ASN.1 encoding rules: Specification of Packed Encoding Rules (PER)".
[5]	ITU-T Recommendation X.680 (2002-07): "Information technology - Abstract Syntax Notation One (ASN.1): Specification of basic notation".
[6]	3GPP TS 23.246: "Multimedia Broadcast/Multicast Service (MBMS); Architecture and functional description".
[7]	3GPP TS 23.203: "Policy and charging control architecture"
[8]	3GPP TS 29.061: "Interworking between the Public Land Mobile Network (PLMN) supporting packet based services and Packet Data Networks (PDN)".
[9]	3GPP TS 36.445: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); M1 Data Transport".
[10]	3GPP TS 48.018: "General Packet Radio Service (GPRS); BSS GPRS Protocol (BSSGP)".
[11]	3GPP TS 36.413: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); S1 Application Protocol (S1AP)".
[12]	3GPP TS 29.281: "General Packet Radio Service (GPRS); Tunnelling Protocol User Plane (GTPv1-U)".
[13]	3GPP TS 23.003: "Technical Specification Group Core Network and Terminals; Numbering, addressing and identification".
[14]	3GPP TS 23.007: "Technical Specification Group Core Network and Terminals; Restoration procedures".
3	Definitions, symbols and abbreviations
3.1	Definitions
For the purposes of the present document, the terms and definitions given in TR 21.905 [1] and the following apply. A term defined in the present document takes precedence over the definition of the same term, if any, in TR 21.905 [1].
Elementary Procedure: M3AP consists of Elementary Procedures (EPs). An Elementary Procedure is a unit of interaction between MCEs and the EPC. These Elementary Procedures are defined separately and are intended to be used to build up complete sequences in a flexible manner. If the independence between some EPs is restricted, it is described under the relevant EP description. Unless otherwise stated by the restrictions, the EPs may be invoked independently of each other as stand alone procedures, which can be active in parallel. The usage of several M3AP EPs together or together with EPs from other interfaces is specified in stage 2 specifications (e.g. TS 23.246 [6] and TS 36.300 [3]).
An EP consists of an initiating message and possibly a response message. Two kinds of EPs are used:
-	Class 1: Elementary Procedures with response (success and/or failure).
-	Class 2: Elementary Procedures without response.
For Class 1 EPs, the types of responses can be as follows:
Successful:
-	A signalling message explicitly indicates that the elementary procedure successfully completed with the receipt of the response.
Unsuccessful:
-	A signalling message explicitly indicates that the EP failed.
-	On time supervision expiry (i.e. absence of expected response).
Successful and Unsuccessful:
-	One signalling message reports both successful and unsuccessful outcome for the different included requests. The response message used is the one defined for successful outcome.
Class 2 EPs are considered always successful.
MCE MBMS M3AP ID: Unique identity, referencing the MBMS-service-associated logical M3-connection within an MCE.
MME MBMS M3AP ID: Unique identity, referencing the MBMS-service-associated logical M3-connection within an MME.
MBMS E-RAB: An MBMS E-RAB refers to the concatenation of an M1 bearer and the corresponding radio bearer, as defined in TS 36.300 [3].
MBMS-service-associated signalling: When M3AP messages associated to one MBMS service uses the MBMS-service-associated logical M3-connection for association of the message to the MBMS service in MCE and EPC.
MBMS-service-associated logical M3-connection: The MBMS-service-associated logical M3-connection uses the identities MME MBMS M3AP ID and MCE MBMS M3AP ID. For a received MBMS service associated M3AP message the MME identifies the associated MBMS service based on the MME MBMS M3AP ID IE and the MCE identifies the associated MBMS service based on the MCE MBMS M3AP ID IE.
3.2	Symbols
Not applicable.
3.3	Abbreviations
For the purposes of the present document, the abbreviations given in TR 21.905 [1] and the following apply. An abbreviation defined in the present document takes precedence over the definition of the same abbreviation, if any, in TR 21.905 [1].
DL	Downlink
E-RAB	E-UTRAN Radio Access Bearer
eNB	E-UTRAN NodeB
EP	Elementary Procedure
EPC	Evolved Packet Core
E-UTRAN	Evolved UTRAN
GBR	Guaranteed Bit Rate
GTP	GPRS Tunneling Protocol
IE	Information Element
MBMS	Multimedia Broadcast Multicast Service
MBSFN	Multimedia Broadcast multicast service Single Frequency Network
MCE	Multi-cell/multicast Coordination Entity
MME	Mobility Management Entity
NAS	Non-Access Stratum
PLMN	Public Land Mobile Network
QoS	Quality of Service
SC-PTM	Single Cell Point to Multipoint
TEID	Tunnel Endpoint Identifier
UE	User Equipment
UL	Uplink
4	General
4.1	Procedure specification principles
The principle for specifying the procedure logic is to specify the functional behaviour of the MCE exactly and completely. The EPC functional behaviour is left unspecified. 
The following specification principles have been applied for the procedure text in clause 8:
-	The procedure text discriminates between:
1)	Functionality which "shall" be executed
The procedure text indicates that the receiving node "shall" perform a certain function Y under a certain condition. If the receiving node supports procedure X but cannot perform functionality Y requested in the REQUEST message of a Class 1 EP, the receiving node shall respond with the message used to report unsuccessful outcome for this procedure, containing an appropriate cause value.
2)	Functionality which "shall, if supported" be executed
The procedure text indicates that the receiving node "shall, if supported," perform a certain function Y under a certain condition. If the receiving node supports procedure X, but does not support functionality Y, the receiving node shall proceed with the execution of the EP, possibly informing the requesting node about the not supported functionality.
-	Any required inclusion of an optional IE in a response message is explicitly indicated in the procedure text. If the procedure text does not explicitly indicate that an optional IE shall be included in a response message, the optional IE shall not be included. For requirements on including Criticality Diagnostics IE, see section 10. 
4.2	Forwards and backwards compatibility
The forwards and backwards compatibility of the protocol is assured by mechanism where all current and future messages, and IEs or groups of related IEs, include ID and criticality fields that are coded in a standard format that will not be changed in the future. These parts can always be decoded regardless of the standard version.
4.3	Specification notations
For the purposes of the present document, the following notations apply:
Procedure	When referring to an elementary procedure in the specification the Procedure Name is written with the first letters in each word in upper case characters followed by the word "procedure", e.g. MBMS procedure.

Message	When referring to a message in the specification the MESSAGE NAME is written with all letters in upper case characters followed by the word "message", e.g. MESSAGE NAME message.

IE	When referring to an information element (IE) in the specification the Information Element Name is written with the first letters in each word in upper case characters and all letters in Italic font followed by the abbreviation "IE", e.g. Information Element IE.

Value of an IE	When referring to the value of an information element (IE) in the specification the "Value" is written as it is specified in subclause 9.2 enclosed by quotation marks, e.g. "Value".
5	M3AP Services
M3AP provides the signalling service between MCE and EPC that is required to fulfil the M3AP functions described in clause 7. M3AP services are defined as
MBMS associated services: They are related to the whole M3 interface instance between the MCE and MME utilising an MBMS associated signalling connection.
Non MBMS associated services: They are related to the whole M3 interface instance between the MCE and MME utilising a Non MBMS associated signalling connection.
6	Services Expected from Signalling Transport
The signalling connection shall provide in sequence delivery of M3AP messages. M3AP shall be notified if the signalling connection breaks.
7	Functions of M3AP
The M3AP protocol provides the following functions:
-	Session Management. This overall functionality is responsible for starting, stopping and updating MBMS sessions.
-	Reset functionality to ensure a well defined initialisation on the M3 interface.
-	Error Indication functionality to allow a proper error reporting/handling in cases where no failure messages are defined. 
-	M3 Setup functionality for initial M3 interface setup for providing configuration information.
-	MCE Configuration Update function is to update application level configuration data needed for the MCE and MME to interoperate correctly on the M3 interface.
The mapping between the above functions and M3 EPs is shown in the table below.
Table 7-1: Mapping between M3AP functions and M3AP EPs
Function
Elementary Procedure(s)
Session Management
a) MBMS Session Start
b) MBMS Session Stop
c) MBMS Session Update
Error Indication Functionality
Error Indication
Reset Functionality
Reset
M3 Setup
M3 Setup
Configuration Update
MCE Configuration Update

8	M3AP Procedures
8.1	Elementary procedures
In the following tables, all EPs are divided into Class 1 and Class 2 EPs (see subclause 3.1 for explanation of the different classes):
Table 8-1: Class 1 procedures
Elementary Procedure
Initiating Message
Successful Outcome
Unsuccessful Outcome


Response message
Response message
MBMS Session Start
MBMS SESSION START REQUEST
MBMS SESSION START RESPONSE
MBMS SESSION START FAILURE
MBMS Session Stop
MBMS SESSION STOP REQUEST
MBMS SESSION STOP RESPONSE

MBMS Session Update
MBMS SESSION UPDATE REQUEST
MBMS SESSION UPDATE RESPONSE
MBMS SESSION UPDATE FAILURE
Reset
RESET
RESET ACKNOWLEDGE

M3 Setup
M3 SETUP REQUEST
M3 SETUP RESPONSE
M3 SETUP FAILURE
MCE Configuration Update
MCE CONFIGURATION UPDATE
MCE CONFIGURATION UPDATE ACKNOWLEDGE
MCE CONFIGURATION UPDATE FAILURE

Table 8-2: Class 2 procedures
Elementary Procedure
Message
Error Indication
ERROR INDICATION

The following applies concerning interference between Elementary Procedures:
-	The Reset procedure takes precedence over all other EPs.
8.2	MBMS Session Start
8.2.1	General
The purpose of the MBMS Session Start procedure is to request the MCE to determine whether an MBMS E-RAB for an upcoming MBMS Session for a given MBMS Bearer Service can be accommodated by the E-UTRAN. The MCE is also requested to establish an MBMS service associated logical M3 connection. The MBMS Session Start procedure is triggered by the EPC (MME).
The procedure uses MBMS Service associated signaling.
8.2.2	Successful Operation

Figure 8.2.2-1: MBMS Session Start procedure. Successful operation.
The MME initiates the procedure by sending an MBMS SESSION START REQUEST message to the MCE.
If the MCE receives the MBMS SESSION START REQUEST message including the MBMS Cell List IE, the MCE may use it as defined in TS 36.300 [3].
In MBSFN operation
-	The MCE shall use the information in the MBMS E-RAB QoS parameters IE to determine whether the requested configuration can be accommodated within E-UTRAN.
-	If the Time of MBMS Data Transfer IE is included in the MBMS SESSION START REQUEST message, the MCE shall, if supported, take it into account for the synchronization of the corresponding MCCH Update instead of the Minimum Time to MBMS Data Transfer IE. The MCE shall ensure the eNB applies the MCCH update from the last modification period before the time indicated by the Time of MBMS Data Transfer IE.
In SC-PTM operation, the MCE shall forward the information in the MBMS E-RAB QoS parameters IE to the relevant eNBs.
If the MCE receives the MBMS SESSION START REQUEST message including the Re-establishment IE for a service which is already ongoing, it shall, if supported, accept this message and replace the MBMS context for that service (see TS 23.007 [14]).
If the MCE receives the MBMS SESSION START REQUEST message including the Alternative TNL Information IE, it may send the content of that IE to the eNB.
The MCE shall report to the MME, in the MBMS SESSION START RESPONSE message the result of the requested MBMS E-RAB.
In MBSFN operation, the MCE shall establish or modify the resources according to the values of the Allocation and Retention Priority IE (priority level and pre-emption indicators) and the resource situation as follows:
-	The MCE shall consider the priority level of the requested session, when deciding on the resource allocation.
-	The priority levels and the pre-emption indicators may (individually or in combination) be used to determine whether the session has to be started unconditionally and immediately. If the requested session is marked as “may trigger pre-emption” and the resource situation requires so, the MCE may trigger the pre-emption procedure which may then cause the forced release of a lower priority session which is marked as “pre-emptable”. Whilst the process and the extent of the pre-emption procedure is operator-dependent, the pre-emption indicators shall be treated as follows:
1.	If the Pre-emption Capability IE is set to “may trigger pre-emption”, then this allocation request is allowed to trigger a pre-emption procedure.
2.	If the Pre-emption Capability IE is set to “shall not trigger pre-emption”, then this allocation request is not allowed to trigger a pre-emption procedure.
3.	If the Pre-emption Vulnerability IE is set to “pre-emptable”, then this session shall be included in the pre-emption process.
4.	If the Pre-emption Vulnerability IE is set to “not pre-emptable”, then this session shall not be included in the pre-emption process.
5.	If the Priority Level IE is set to “no priority”, the given values for the Pre-emption Capability IE and Pre-emption Vulnerability IE shall not be considered. Instead the values “shall not trigger pre-emption” and “not pre-emptable” shall prevail.
-	The E-UTRAN pre-emption process shall keep the following rule: E-UTRAN shall only pre-empt sessions with lower priority, in ascending order of priority.
8.2.3	Unsuccessful Operation

Figure 8.2.3-1: MBMS Session Start procedure. Unsuccessful operation.
If the MCE determines that the E-UTRAN is not able to accommodate the requested configuration for any involved MBSFN area when using MBSFN transmission, or in any involved cell when using SC-PTM, the MME shall be informed by the MBMS SESSION START FAILURE message including a suitable cause value.
If the MCE receives MBMS SESSION START REQUEST message including the MBMS Cell List IE and the list includes no cell controlled by eNB with which the MCE has connection, the MME shall be informed by the MBMS SESSION START FAILURE message including a suitable cause value, e.g. “Un-involved MCE”.
8.2.4	Abnormal Conditions
Not applicable.
8.3	MBMS Session Stop
8.3.1	General
The purpose of the MBMS Session Stop procedure is to inform the MCE about the end of an ongoing MBMS Session for a given MBMS Bearer Service, and that the E-UTRAN releases the allocated MBMS E-RAB resources and that the associated MBMS service associated logical M3 connection is also released. The MBMS Session Stop procedure is triggered by the EPC (MME).
The procedure uses MBMS Service associated signaling.
8.3.2	Successful Operation

Figure 8.3.2-1: MBMS Session Stop procedure. Successful operation.
The MME initiates the procedure by sending an MBMS SESSION STOP REQUEST message to the MCE. Upon receipt of the MBMS SESSION STOP REQUEST message, the MCE shall send the MBMS SESSION STOP RESPONSE message after the MCE releases the affected resources and removes the MBMS bearer context.
If the Time of MBMS Data Stop IE is included in the MBMS SESSION STOP REQUEST message, the MCE shall, if supported, take it into account for the synchronization of the corresponding MCCH Update. The MCE shall ensure the eNB applies the MCCH update from the first modification period after the time indicated by the Time of MBMS Data Stop IE.
8.3.3	Unsuccessful Operation
Not applicable.
8.3.4	Abnormal Conditions
Not applicable.
8.4	Error Indication
8.4.1	General
The Error Indication procedure is initiated by a node to report detected errors in one incoming message, provided they cannot be reported by an appropriate failure message.
If the error situation arises due to reception of a message utilising MBMS-service-associated signalling, then the Error Indication procedure uses MBMS-service-associated signalling. Otherwise the procedure uses non MBMS-service-associated signalling.
8.4.2	Successful Operation

Figure 8.4.2-1. Error Indication procedure, MME originated. Successful operation.

Figure 8.4.2.1-2. Error Indication procedure, MCE originated. Successful operation.
When the conditions defined in clause 10 are fulfilled, the Error Indication procedure is initiated by an ERROR INDICATION message sent from the receiving node.
The ERROR INDICATION message shall contain at least either the Cause IE or the Criticality Diagnostics IE.
In case the Error Indication procedure is triggered by utilising MBMS-service-associated signalling the MCE MBMS M3AP ID IE and the MME MBMS M3AP IE shall be included in the ERROR INDICATION message. If one or both of MCE MBMS M3AP ID IE and the MME MBMS M3AP IE are not correct, the cause shall be set to appropriate value e.g. "Unknown or already allocated MCE MBMS M3AP ID", "Unknown or already allocated MME MBMS M3AP ID" or "Unknown or inconsistent pair of MBMS M3AP ID". 
8.4.3	Abnormal Conditions
8.5	Reset
8.5.1	General
The purpose of the Reset procedure is to initialise or re-initialise the E-UTRAN, or part of E-UTRAN M3AP MBMS-related contexts, in the event of a failure in the EPC or vice versa. This procedure does not affect the application level configuration data exchanged during, e.g. the M3 Setup procedure.
The procedure uses non MBMS-service associated signalling.
8.5.2	Successful Operation
8.5.2.1	Reset Procedure Initiated from the MME


Figure 8.5.2.1-1: Reset procedure initiated from the MME. Successful operation.
In the event of a failure at the MME, which has resulted in the loss of some or all transaction reference information, a RESET message shall be sent to the MCE.
At reception of RESET message the MCE shall release all allocated resources on M3 related to MBMS-service association(s) indicated explicitly or implicitly in the RESET message and remove the MBMS-service contexts including MBMS M3AP IDs for the indicated MBMS service associations.
After the MCE has released all assigned M3 resources and the MBMS M3AP IDs for all indicated MBMS service associations which can be used for new MBMS-service-associated logical M3-connections over the M3 interface, the MCE shall respond with the RESET ACKNOWLEDGE message.
If the RESET message contains the MBMS-Service-associated logical M3-connection list IE, then:
-	The MCE shall use the MME MBMS M3AP ID IE and/or the MCE MBMS M3AP ID IE to explicitly identify the MBMS service association(s) to be reset.
-	The MCE shall in the RESET ACKNOWLEDGE message include, for each MBMS service association to be reset, the MBMS-Service-associated logical M3-connection Item IE in the MBMS-Service-associated logical M3-connection list IE. The MBMS-Service -associated logical M3-connection Item IEs shall be in the same order as received in the RESET message and shall include also unknown MBMS-Service-associated logical M3-connections. Empty MBMS-Service-associated logical M3-connection Item IEs, received in the RESET message, may be omitted in the RESET ACKNOWLEDGE message.
-	If the MME MBMS M3AP ID IE is included in the MBMS-Service-associated logical M3-connection Item IE for an MBMS service association, the MCE shall include the MME MBMS M3AP ID IE in the corresponding MBMS-Service-associated logical M3-connection Item IE in the RESET ACKNOWLEDGE message.
-	If the MCE MBMS M3AP ID IE is included in an MBMS-Service-associated logical M3-connection Item IE for an MBMS service association, the MCE shall include the MCE MBMS M3AP ID IE in the corresponding MBMS-Service-associated logical M3-connection Item IE in the RESET ACKNOWLEDGE message.
Interactions with other procedures:
If the RESET message is received, any other ongoing procedure (except another Reset procedure) on the same M3 interface related to an MBMS service association, indicated explicitly or implicitly in the RESET message, shall be aborted.
8.5.2.2	Reset Procedure Initiated from the E-UTRAN


Figure 8.5.2.2-1: Reset procedure initiated from the E-UTRAN. Successful operation.
In the event of a failure at the MCE, which has resulted in the loss of some or all transaction reference information, a RESET message shall be sent to the MME.
At reception of RESET message the MME shall release all allocated resources on M3 related to the MBMS service association(s) indicated explicitly or implicitly in the RESET message and remove the MBMS M3AP ID for the indicated MBMS service associations. 
After the MME has released all assigned M3 resources and the MBMS M3AP IDs for all indicated MBMS service associations which can be used for new MBMS-service-associated logical M3-connections over the M3 interface, the MME shall respond with the RESET ACKNOWLEDGE message. 
If the RESET message contains the MBMS-Service-associated logical M3-connection list IE, then:
-	The MME shall use the MME MBMS M3AP ID IE and/or the MCE MBMS M3AP ID IE to explicitly identify the MBMS service association(s) to be reset.
-	The MME shall in the RESET ACKNOWLEDGE message include, for each MBMS service association to be reset, the MBMS-Service-associated logical M3-connection Item IE in the MBMS-Service-associated logical M3-connection list IE. The MBMS-Service -associated logical M3-connection Item IEs shall be in the same order as received in the RESET message and shall include also unknown MBMS-Service-associated logical M3-connections. Empty MBMS-Service-associated logical M3-connection Item IEs, received in the RESET message, may be omitted in the RESET ACKNOWLEDGE message.
-	If the MME MBMS M3AP ID IE is included in the MBMS-Service-associated logical M3-connection Item IE for an MBMS service association, the MME shall include the MME MBMS M3AP ID IE in the corresponding MBMS-Service-associated logical M3-connection Item IE in the RESET ACKNOWLEDGE message.
-	If the MCE MBMS M3AP ID IE is included in an MBMS-Service-associated logical M3-connection Item IE for an MBMS service association, the MME shall include the MCE MBMS M3AP ID IE in the corresponding MBMS-Service-associated logical M3-connection Item IE in the RESET ACKNOWLEDGE message.
Interactions with other procedures:
If the RESET message is received, any other ongoing procedure (except another Reset procedure) on the same M3 interface related to an MBMS service association, indicated explicitly or implicitly in the RESET message, shall be aborted.
8.5.3	Abnormal Conditions
8.5.3.1	Abnormal Condition at the EPC
If the RESET message includes the MBMS-Service-associated logical M3-connection list IE, but neither the MME MBMS M3AP ID IE nor the MCE MBMS M3AP ID IE is present for an MBMS-Service-associated logical M3-connection Item IE, then the MME shall ignore the MBMS-Service-associated logical M3-connection Item IE. The MME may return the empty MBMS-Service-associated logical M3-connection Item IE in the MBMS-Service-associated logical M3-connection list IE in the RESET ACKNOWLEDGE message.
8.5.3.2	Abnormal Condition at the E-UTRAN
If the RESET message includes the MBMS-Service-associated logical M3-connection list IE, but neither the MME MBMS M3AP ID IE nor the MCE MBMS M3AP ID IE is present for an MBMS-Service-associated logical M3-connection Item IE, then the MCE shall ignore the MBMS-Service-associated logical M3-connection Item IE. The MCE may return the empty MBMS-Service-associated logical M3-connection Item IE in the MBMS-Service-associated logical M3-connection list IE in the RESET ACKNOWLEDGE message.
8.5.3.3	Crossing of Reset Messages
If Reset procedure is ongoing in MCE and the MCE receives a RESET message from the peer entity on the same M3 interface related to one or several MBMS service associations previously requested to be reset, indicated explicitly or implicitly in the received RESET message, the MCE shall respond with RESET ACKNOWLEDGE message as described in 8.5.2.1.
If Reset procedure is ongoing in MME and the MME receives a RESET message from the peer entity on the same M3 interface related to one or several MBMS service associations previously requested to be reset, indicated explicitly or implicitly in the received RESET message, the MME shall respond with RESET ACKNOWLEDGE message as described in 8.5.2.2.
8.6	MBMS Session Update
8.6.1	General
The purpose of the MBMS Session Update procedure is to inform the MCE about changing characteristics of the MBMS session.
The procedure uses MBMS-Service-associated signalling.
8.6.2	Successful Operation

Figure 8.6.2-1. MBMS Session Update procedure. Successful operation.
The MME initiates the procedure by sending an MBMS SESSION UPDATE REQUEST message to the MCE. 
The MCE shall use the information contained in the MBMS SESSION UPDATE REQUEST message to update its own parameters of this session such as the service area parameters, or the list of cell identities, or the allocation and retention priority (ARP) of the session. In MBSFN operation, if the ARP parameter is updated, the corresponding update of resources shall follow the principles described for the MBMS Session Start procedure. The MCE shall then, if needed, transfer the updated parameters to the involved eNBs according to the service area, or the list of cell identities.
In MBSFN operation, if the Time of MBMS Data Transfer IE is included in the MBMS SESSION UPDATE REQUEST message, the MCE shall, if supported, take it into account for the synchronization of the corresponding MCCH Update instead of the Minimum Time to MBMS Data Transfer IE. The MCE shall ensure the eNB applies the MCCH update from the last modification period before the time indicated by the Time of MBMS Data Transfer IE. The MCE shall ignore the information contained in the received Minimum Time to MBMS Data Transfer IE.
After receiving the response from the involved eNBs the MCE shall report to the MME in the MBMS SESSION UPDATE RESPONSE message the result of the update.
8.6.3	Unsuccessful Operation

Figure 8.6.3-1: MBMS Session Update procedure. Unsuccessful operation.
If the MCE determines that the E-UTRAN is not able to accommodate the requested updating, the MCE shall send to the MME the MBMS SESSION UPDATE FAILURE message.
8.6.4	Abnormal Conditions
Not applicable.
8.7	M3 Setup
8.7.1	General
The purpose of the M3 Setup procedure is to exchange application level data needed for the MCE and MME to correctly interoperate on the M3 interface. The procedure uses non MBMS-service associated signalling.
This procedure erases any existing application level data in the MCE and the MME and replaces it by the one received. This procedure also re-initialises the E-UTRAN M3AP service-related contexts (if any) and erases all related MBMS-service-associated logical M3 connections in the two nodes like a Reset procedure would do.
8.7.2	Successful Operation

Figure 8.7.2-1: M3 Setup procedure- Successful operation.
The MCE initiates the procedure by sending a M3 SETUP REQUEST message including the appropriate data to the MME. The MME responds with a M3 SETUP RESPONSE.
The exchanged data shall be stored in respective node and used for the duration of the TNL association.
If the M3 SETUP REQUEST message contains the MCE Name IE the MME may use this IE as a human readable name of the MCE.
8.7.3	Unsuccessful Operation

Figure 8.7.3-1: M3 Setup procedure. Unsuccessful operation.
If the MME cannot accept the setup, it should respond with a M3 SETUP FAILURE and appropriate cause value.
If the M3 SETUP FAILURE message includes the Time To Wait IE the MCE shall wait at least for the indicated time before reinitiating the M3 setup towards the same MME.
8.7.4	Abnormal Conditions
Void
8.8	MCE Configuration Update
8.8.1	General
The purpose of the MCE Configuration Update procedure is to update application level configuration data needed for the MCE and MME to interoperate correctly on the M3 interface.
The procedure uses non MBMS-service-associated signalling.
8.8.2	Successful Operation

Figure 8.8.2-1: MCE Configuration Update procedure. Successful operation.
The MCE initiates the procedure by sending an MCE CONFIGURATION UPDATE message to the MME including an appropriate set of updated configuration data that it has just taken into operational use. The MME responds with MCE CONFIGURATION UPDATE ACKNOWLEDGE message to acknowledge that it successfully updated the configuration data. If information element(s) is/are not included in the MCE CONFIGURATION UPDATE message, the MME shall interpret that the corresponding configuration data is/are not changed and shall continue to operate the M3 with the existing related configuration data.
If the served MBMS Service Areas are to be updated, the complete set of supported MBMS Service Area Identities shall be included in the MBMS Service Area List IE.
If the MCE CONFIGURATION UPDATE message contains the MCE Name IE, the MME may use this IE as a human readable name of the MCE.
The updated configuration data shall be stored in both the MCE and the MME and used for the duration of the TNL association or until any further update is triggered by the MCE.
The MCE may initiate a further MCE Configuration Update procedure only after a previous MCE Configuration Update procedure has been completed.
8.8.3	Unsuccessful Operation

Figure 8.8.3-1: MCE Configuration Update procedure. Unsuccessful operation.
If the MME cannot accept the update, it shall respond with an MCE CONFIGURATION UPDATE FAILURE message and appropriate cause value.
If the MCE CONFIGURATION UPDATE FAILURE message includes the Time To Wait IE, the MCE shall wait at least for the indicated time before reinitiating the MCE Configuration Update procedure towards the MME. Both nodes shall continue to operate the M3 interface with their respective configuration data.
8.8.4	Abnormal Conditions
If the MCE after initiating the MCE Configuration Update procedure receives neither an MCE CONFIGURATION UPDATE ACKNOWLEDGE nor an MCE CONFIGURATION UPDATE FAILURE message, the MCE may reinitiate a further MCE Configuration Update procedure towards the same MME, provided that the content of the new MCE CONFIGURATION UPDATE message is identical to the content of the previously unacknowledged MCE CONFIGURATION UPDATE message.
9	Elements for M3AP Communication
9.1	Message Functional Definition and Content
9.1.1	General
Subclauses 9.1 and 9.2 describe the structure of the messages and information elements required for the M3AP protocol in tabular format. Subclause 9.3 provides the corresponding ASN.1 definition. 
The following attributes are used for the tabular description of the messages and information elements: Presence, Range Criticality and Assigned Criticality.
9.1.2	Message Contents
9.1.2.1	Presence
All information elements in the message descriptions below are marked mandatory, optional or conditional according to table 4.
Table 9-1: Meaning of abbreviations used in M3AP messages
Abbreviation
Meaning
M
IEs marked as Mandatory (M) shall always be included in the message.
O
IEs marked as Optional (O) may or may not be included in the message.
C
IEs marked as Conditional (C) shall be included in a message only if the condition is satisfied. Otherwise the IE shall not be included.


9.1.2.2	Criticality
Each Information Element or Group of Information Elements may have criticality information applied to it.
Following cases are possible:
Table 9-2: Meaning of content within "Criticality" column
Abbreviation
Meaning

–
No criticality information is applied explicitly.
YES
Criticality information is applied. This is usable only for non-repeatable IEs 
GLOBAL
The IE and all its repetitions together have one common criticality information. This is usable only for repeatable IEs.
EACH
Each repetition of the IE has its own criticality information. It is not allowed to assign different criticality values to the repetitions. This is usable only for repeatable IEs.

9.1.2.3	Range
The Range column indicates the allowed number of copies of repetitive IEs/IE groups.
9.1.2.4	Assigned Criticality
This column provides the actual criticality information as defined in subclause 10.3.2, if applicable.
9.1.3	MBMS SESSION START REQUEST
This message is sent by the MME to establish an MBMS E-RAB and an M3AP signalling connection.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
reject
TMGI
M

9.2.3.3

YES
reject
MBMS Session Identity
O

9.2.3.4

YES
ignore
MBMS E-RAB QoS parameters
M

9.2.1.3

YES
reject
MBMS Session Duration
M

9.2.3.5

YES
reject
MBMS Service Area
M

9.2.3.6

YES
reject
Minimum Time to MBMS Data Transfer
M

9.2.3.8

YES
reject
TNL Information
M



YES
reject
>IP Multicast Address
M

9.2.2.1

-

>IP Source Address
M

9.2.2.1

-

>GTP DL TEID
M

GTP TEID
9.2.2.2

-

Time of MBMS Data Transfer
O

9.2.3.9

YES
ignore
Re-establishment
O

9.2.3.10

YES
ignore
Alternative TNL Information
O



YES
ignore
>Alternative IP Multicast Address
M

9.2.2.1

-

>Alternative IP Source Address
M

9.2.2.1

-

>GTP DL TEID
M

GTP TEID
9.2.2.2
Shall be set to same value as the GTP DL TEID IE of the TNL Information IE.
-

MBMS Cell List
O

9.2.1.11

YES
reject

9.1.4	MBMS SESSION START RESPONSE
This message is sent by the MCE to report the successful outcome of the request from the MBMS SESSION START message.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
ignore
MCE MBMS M3AP ID
M

9.2.3.1

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.5	MBMS SESSION START FAILURE
This message is sent by the MCE to report the unsuccessful outcome of the request from the MBMS SESSION START message.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
ignore
Cause
M

9.2.1.2

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.6	MBMS SESSION STOP REQUEST
This message is sent by the MME to release the corresponding MBMS E-RAB and the MBMS service associated logical M3 connection.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
reject
MCE MBMS M3AP ID
M

9.2.3.1

YES
reject
Time of MBMS Data Stop
O

9.2.3.9

YES
ignore

9.1.7	MBMS SESSION STOP RESPONSE
This message is sent by the MCE to acknowledge the MBMS SESSION STOP message.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
ignore
MCE MBMS M3AP ID
M

9.2.3.1

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.8	ERROR INDICATION
This message is sent by both the MME and the MCE and is used to indicate that some error has been detected in the node
Direction: MCE D MME and MME   MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
ignore
MME MBMS M3AP ID
O

9.2.3.2

YES
ignore
MCE MBMS M3AP ID
O

9.2.3.1

YES
ignore
Cause
O

9.2.1.2

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.9	RESET
This message is sent by both the MME and the MCE and is used to request that the M3 interface, or parts of the M3 interface, to be reset.
Direction: MME D MCE and MCE   MME
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Cause
M

9.2.1.2

YES
ignore
CHOICE Reset Type
M



YES
reject
>M3 interface






>>Reset All
M

ENUMERATED (Reset all, …)

–
–
>Part of M3 interface






>>MBMS-Service-associated logical M3-connection list

1


–
–
>>>MBMS-Service -associated logical M3-connection Item

1 to < maxnoofIndividualM3ConnectionsToReset >


EACH
reject
>>>>MME MBMS M3AP ID
O

9.2.3.2

–
–
>>>>MCE MBMS M3AP ID
O

9.2.3.1

–
–

Range bound
Explanation
maxnoofIndividualM3ConnectionsToReset
Maximum no. of MBMS-Service-associated logical M3-connections allowed to reset in one message. Value is 256.

9.1.10	RESET ACKNOWLEDGE
This message is sent by both the MME and the MCE as a response to a RESET message.
Direction: MCE   MME and MME   MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MBMS-Service-associated logical M3-connection list

0..1


YES
ignore
>MBMS-Service -associated logical M3-connection Item

1 to < maxnoofIndividualM3ConnectionsToReset >


EACH
ignore
>>MME MBMS M3AP ID
O

9.2.3.2

–
–
>>MCE MBMS M3AP ID
O

9.2.3.1

–
–
Criticality Diagnostics
O

9.2.1.7

YES
ignore

Range bound
Explanation
maxnoofIndividualM3ConnectionsToReset
Maximum no. of MBMS-Service-ssociated logical M3-connections allowed to reset in one message. Value is 256.

9.1.11	MBMS SESSION UPDATE REQUEST
This message is sent by the MME to inform the MCE of the changed characteristics of an ongoing MBMS service session.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
reject
MCE MBMS M3AP ID
M

9.2.3.1

YES
reject
TMGI
M

9.2.3.3

YES
reject
MBMS Session Identity
O

9.2.3.4

YES
ignore
MBMS E-RAB QoS parameters
M

9.2.1.3

YES
reject
MBMS Session Duration
M

9.2.3.5

YES
reject
MBMS Service Area
O

9.2.3.6

YES
ignore
Minimum Time to MBMS Data Transfer
M

9.2.3.8

YES
reject
TNL Information
O



YES
ignore
>IP Multicast Address
M

9.2.2.1

-

>IP Source Address
M

IP Address
9.2.2.1

-

>GTP DL TEID
M

GTP TEID
9.2.2.2

-

Time of MBMS Data Transfer
O

9.2.3.9

YES
ignore
MBMS Cell List
O

9.2.1.11

YES
reject

9.1.12	MBMS SESSION UPDATE RESPONSE
This message is sent by the MCE to report the successful outcome of the request from the MBMS SESSION UPDATE REQUEST message.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
ignore
MCE MBMS M3AP ID
M

9.2.3.1

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.13	MBMS SESSION UPDATE FAILURE
This message is sent by the MCE to report the unsuccessful outcome of the request from the MBMS SESSION UPDATE REQUEST message.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
MME MBMS M3AP ID
M

9.2.3.2

YES
ignore
MCE MBMS M3AP ID
M

9.2.3.1

YES
ignore
Cause
M

9.2.1.2

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.14	M3 SETUP REQUEST
This message is sent by the MCE to transfer information for a TNL association.
Direction: MCE D MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Global MCE ID
M

9.2.1.10

YES
reject
MCE Name
O

PrintableString(SIZE(1…150,…))

YES
ignore
MBMS Service Area List

1


YES
reject
>MBMS Service Area List Item

1 to <maxnoofMBMSServiceAreaIdentitiesPerMCE>

Supported MBMS Service Area Identities in the MCE
GLOBAL
reject
>>MBMS Service Area 1
M

OCTET STRING(SIZE(2))
MBMS Service Area Identities as defined in TS 23.003 [13].



Range bound
Explanation
maxnoofMBMSServiceAreaIdentitiesPerMCE
Maximum no. of Service Area Identities per MCE. The value for maxnoofMBMSServiceAreaIdentities is 65536.

9.1.15	M3 SETUP RESPONSE
This message is sent by the MME to tranfer information for a TNL association.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.16	M3 SETUP FAILURE
This message is sent by the MME to indicate M3 Setup failure.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Cause
M

9.2.1.2

YES
ignore
Time To Wait
O

9.2.1.9

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.17	MCE CONFIGURATION UPDATE
This message is sent by the MCE transfer updated information for a TNL association.
Direction: MCE r MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Global MCE ID
O

9.2.1.10

YES
reject
MCE Name
O

PrintableString(SIZE(1…150,…))

YES
ignore
MBMS Service Area List

0..1


YES
reject
>MBMS Service Area List Item

1 to <maxnoofMBMSServiceAreaIdentitiesPerMCE>

Supported MBMS Service Area Identities in the MCE
GLOBAL
reject
>>MBMS Service Area 1
M

OCTET STRING(SIZE(2))
MBMS Service Area Identities as defined in TS 23.003 [13].



Range bound
Explanation
maxnoofMBMSServiceAreaIdentitiesPerMCE
Maximum no. of Service Area Identities per MCE. The value for maxnoofMBMSServiceAreaIdentities is 65536.

9.1.18	MCE CONFIGURATION UPDATE ACKNOWLEDGE
This message is sent by the MME to acknowledge the MCE updated information for a TNL association.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.1.19	MCE CONFIGURATION UPDATE FAILURE
This message is sent by the MME to indicate MCE configuration failure.
Direction: MME D MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
Message Type
M

9.2.1.1

YES
reject
Cause
M

9.2.1.2

YES
ignore
Time To Wait
O

9.2.1.9

YES
ignore
Criticality Diagnostics
O

9.2.1.7

YES
ignore

9.2	Information Element Definitions
9.2.0	General
Subclause 9.2 presents the M3AP IE definitions in tabular format. The corresponding ASN.1 definition is presented in subclause 9.3. In case there is contradiction between the tabular format in subclause 9.2 and the ASN.1 definition, the ASN.1 shall take precedence, except for the definition of conditions for the presence of conditional elements, where the tabular format shall take precedence.
When specifying information elements which are to be represented by bitstrings, if not otherwise specifically stated in the semantics description of the concerned IE or elsewhere, the following principle applies with regards to the ordering of bits:
-	The first bit (leftmost bit) contains the most significant bit (MSB);
-	The last bit (rightmost bit) contains the least significant bit (LSB);
-	When importing bitstrings from other specifications, the first bit of the bitstring contains the first bit of the concerned information;
9.2.1	Radio Network Layer Related IEs
9.2.1.1	Message Type
The Message Type IE uniquely identifies the message being sent. It is mandatory for all messages.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Message Type




>Procedure Code
M

INTEGER (0..255)

>Type of Message
M

CHOICE (Initiating Message, Successful Outcome, Unsuccessful Outcome, …)


9.2.1.2	Cause
The purpose of the Cause IE is to indicate the reason for a particular event for the M3AP protocol.
IE/Group Name
Presence
Range
IE Type and Reference
Semantics Description
CHOICE Cause Group
M



>Radio Network Layer




>>Radio Network Layer Cause 
M

ENUMERATED
(Unknown or already allocated MCE MBMS M3AP ID,
Unknown or already allocated MME MBMS M3AP ID,
Unknown or inconsistent pair of MBMS M3AP IDs, 
Radio resources not available,
Invalid QoS combination,
Interaction with other procedure,
Not supported QCI value,
Unspecified,
…,
Un-involved MCE)

>Transport Layer




>>Transport Layer Cause
M

ENUMERATED
(Transport Resource Unavailable,
Unspecified,
...)

> NAS




>> NAS Cause
M

ENUMERATED (Unspecified, 
…)

>Protocol




>>Protocol Cause
M

ENUMERATED
(Transfer Syntax Error,
Abstract Syntax Error (Reject),
Abstract Syntax Error (Ignore and Notify),
Message not Compatible with Receiver State,
Semantic Error,
Abstract Syntax Error (Falsely Constructed Message),
Unspecified,
...)

>Misc




>>Miscellaneous Cause
M

ENUMERATED
(Control Processing Overload, Not enough User Plane Processing Resources,
Hardware Failure,
O&M Intervention,
Unspecified,
...)


The meaning of the different cause values is described in the following table. In general, "not supported" cause values indicate that the related capability is missing. On the other hand, "not available" cause values indicate that the related capability is present, but insufficient resources were available to perform the requested action.
Radio Network Layer cause
Meaning
Unknown or already allocated MCE MBMS M3AP ID
The action failed because the MCE MBMS M3AP ID is either unknown, or (for a first message received at the MCE) is known and already allocated to an existing MBMS service related context.
Unknown or already allocated MME MBMS M3AP ID
The action failed because the MME MBMS M3AP ID is either unknown, or (for a first message received at the MCE) is known and already allocated to an existing context.
Unknown or inconsistent pair of MBMS M3AP IDs
The action failed because both MBMS M3AP IDs are unknown, or are known but do not define a single MBMS context.
Radio resources not available
No requested radio resources are available.
Invalid QoS combination
The action was failed because of invalid QoS combination. 
Interaction with other procedure
The action is due to an ongoing interaction with another procedure.
Not supported QCI Value
The E-RAB setup failed because the requested QCI is not supported.
Unspecified
Sent for radio network layer cause when none of the specified cause values applies.
Un-involved MCE
The action failed because the MCE is not part of the involved MBSFN area when using MBSFN, or of the involved cell when using SC-PTM.

Transport Layer cause
Meaning
Transport Resource Unavailable
The required transport resources are not available.
Unspecified
Sent for transport network layer cause when none of the specified cause values applies.

NAS cause
Meaning
Unspecified
Sent for NAS cause when none of the specified cause values applies.

Protocol cause
Meaning
Transfer Syntax Error
The received message included a transfer syntax error.
Abstract Syntax Error (Reject)
The received message included an abstract syntax error and the concerning criticality indicated "reject".
Abstract Syntax Error (Ignore And Notify)
The received message included an abstract syntax error and the concerning criticality indicated "ignore and notify".
Message Not Compatible With Receiver State
The received message was not compatible with the receiver state.
Semantic Error
The received message included a semantic error.
Abstract Syntax Error (Falsely Constructed Message)
The received message contained IEs or IE groups in wrong order or with too many occurrences.
Unspecified
Sent for protocol cause when none of the specified cause values applies.

Miscellaneous cause
Meaning
Control Processing Overload
Control processing overload.
Not enough User Plane Processing Resources
No requested user plane resources are available.
Hardware Failure
Action related to hardware failure.
O&M Intervention
The action is due to O&M intervention.
Unspecified Failure
Sent when none of the above cause values applies and the cause is not related to any of the categories Radio Network Layer, Transport Network Layer, NAS or Protocol.

9.2.1.3	MBMS E-RAB QoS parameters
This IE defines the QoS to be applied to an MBMS E-RAB.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Criticality
Assigned Criticality
MBMS E-RAB QoS Parameters






>QCI
M

INTEGER (0..255)
QoS Class Identifier defined in TS 23.246 [6].
Coding is specified in TS 23.203 [7].


>GBR QoS Information
O

9.2.1.5
This IE applies to GBR bearers only and shall be ignored otherwise.


>Allocation and Retention Priority
M

9.2.1.8

YES
ignore

9.2.1.4	Void
9.2.1.5	GBR QoS Information
This IE indicates the maximum and guaranteed bit rates of a GBR bearer for downlink.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MBMS E-RAB Maximum Bit Rate Downlink
M

Bit Rate 9.2.1.6
Desc.: This IE indicates the maximum downlink MBMS E-RAB Bit Rate (i.e. from the EPC to E-UTRAN) for this bearer.
MBMS E-RAB Guaranteed Bit Rate Downlink
M

Bit Rate 9.2.1.6
Desc.: This IE indicates the downlink guaranteed MBMS E-RAB Bit Rate (provided that there is data to deliver) from the EPC to the E-UTRAN for this bearer.

9.2.1.6	Bit Rate
This IE indicates the number of bits delivered by E-UTRAN in DL within a period of time, divided by the duration of the period. It is used, for example, to indicate the maximum or guaranteed bit rate for a GBR bearer, or an aggregated maximum bit rate.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Bit Rate


INTEGER (0..10,000,000,000)
The unit is: bit/s 

9.2.1.7	Criticality Diagnostics
The Criticality Diagnostics IE is sent by the MME or the MCE when parts of a received message have not been comprehended or were missing, or if the message contained logical errors. When applicable, it contains information about which IEs were not comprehended or were missing.
For further details on how to use the Criticality Diagnostics IE, (see section 10). 
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Procedure Code
O

INTEGER (0..255)
Procedure Code is to be used if Criticality Diagnostics is part of Error Indication procedure, and not within the response message of the same procedure that caused the error
Triggering Message 
O

ENUMERATED(initiating message, successful outcome, unsuccessful outcome)
The Triggering Message is used only if the Criticality Diagnostics is part of Error Indication procedure. 
Procedure Criticality 
O

ENUMERATED(reject, ignore, notify)
This Procedure Criticality is used for reporting the Criticality of the Triggering message (Procedure).
Information Element Criticality Diagnostics

0 to <maxnoof errors>


>IE Criticality 
M

ENUMERATED(reject, ignore, notify)
The IE Criticality is used for reporting the criticality of the triggering IE. The value 'ignore' shall not be used.
>IE ID
M

INTEGER (0..65535)
The IE ID of the not understood or missing IE 
>Type of Error
M

ENUMERATED(not understood, missing, …)


Range bound
Explanation
maxnooferrors
Maximum no. of IE errors allowed to be reported with a single message. The value for maxnooferrors is 256.

9.2.1.8	Allocation and Retention Priority
This IE specifies the relative importance of an MBMS E-RAB compared to other MBMS E-RABs for allocation and retention of the MBMS E-RAB.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Allocation/Retention Priority




>Priority Level
M

INTEGER (0..15)
Desc.: This IE should be understood as the “priority of allocation and retention” (see TS 23.246 [6]).
Usage:
Value 15 means “no priority”.
Values between 1 and 14 are ordered in decreasing order of priority, i.e. 1 is the highest and 14 the lowest.
Value 0 shall be treated as a logical error if received.
>Pre-emption Capability
M

ENUMERATED(shall not trigger pre-emption, may trigger pre-emption)
This IE indicates the pre-emption capability of the request on other MBMS E-RABs
>Pre-emption Vulnerability
M

ENUMERATED(not pre-emptable, pre-emptable)
This IE indicates the vulnerability of the MBMS E-RAB to preemption of other MBMS E-RABs.

9.2.1.9	Time to Wait
This IE defines the minimum allowed waiting time.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Time to Wait
M

ENUMERATED(1s, 2s, 5s, 10s, 20s, 60s, …)


9.2.1.10	Global MCE ID
This IE is used to globally identify an MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
PLMN Identity
M

9.2.3.7

MCE ID
M

OCTET STRING (SIZE(2))

MCE ID Extension
O

OCTET STRING (SIZE(1))
Extension of the Global MCE ID.

9.2.1.11	MBMS Cell List
This IE consists of a list of cell identities.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MBMS Cell List Item

1 .. < maxnoofCellsforMBMS>


>Cell ID
M

E-UTRAN CGI
9.2.1.12
Global ID of the cell.

Range bound
Explanation
maxnoofCellsforMBMS
Maximum no. of cells for the MBMS service. The value for maxnoofCellsforMBMS is 4096.

9.2.1.12	E-UTRAN CGI
This information element is used to globally identify a cell (see TS 36.401 [2]).
IE/Group Name
Presence
Range
IE type and reference
Semantics description
PLMN Identity
M

9.2.3.7

Cell Identity
M

BIT STRING (28)
The 20 leftmost bits of the Cell Identity correspond to the eNB ID (Global eNB ID IE defined in section 9.2.1.10).

9.2.2	Transport Network Layer Related IEs
9.2.2.1	IP Address
This information element is an IP address to be used for the user plane transport. 
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Transport Layer Address
M

OCTET STRING (SIZE(4..16))
The Radio Network Layer is not supposed to interpret the address information. It should pass it to the transport layer for interpretation.
For details on the Transport Layer Address, see ref. TS 36.445 [9].

9.2.2.2	GTP-TEID
This information element is the GTP Tunnel Endpoint Identifier to be used for the user plane transport between eNB and the MBMS-GW.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
GTP TEID
M

OCTET STRING (SIZE(4))
For details and range, see TS 29.281 [12]

9.2.3	NAS Related IEs
9.2.3.1	MCE MBMS M3AP ID
The MCE MBMS M3AP ID uniquely identifies the MBMS Service association over the M3 interface within the MCE.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MCE MBMS M3AP ID
M

INTEGER (0 .. 65535)


9.2.3.2	MME MBMS M3AP ID
The MME MBMS M3AP ID uniquely identifies the MBMS Service association over the M3 interface within the MME.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MME MBMS M3AP ID
M

INTEGER (0 .. 65535)


9.2.3.3	TMGI
The TMGI uniquely identifies the MBMS Bearer Service.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
TMGI




>PLMN identity
M

9.2.3.7

>Service ID
M

OCTET STRING (SIZE (3))


9.2.3.4	MBMS Session Identity
The MBMS Session Identity identifies the session of a MBMS Bearer Service in E-UTRAN and is used by the UE to recognise repetitions of a session.
This IE is transparent to RAN.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MBMS Session Identity
M

OCTET STRING (SIZE (1))
Coded same way as the MBMS Session Identity IE as defined in TS 29.061 [8].

9.2.3.5	MBMS Session Duration
This IE defines the duration of the MBMS Session.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MBMS Session Duration
M

OCTET STRING (SIZE (3))
Coded as the value part of MBMS-Session-Duration AVP as defined in TS 29.061 [8].


9.2.3.6	MBMS Service Area
The MBMS Service Area IE consists of a list of one or several MBMS Service Area Identities where each MBMS Service Area Identity is frequency agnostic and can be mapped onto one or more cells.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
MBMS Service Area
M

OCTET STRING
Value part coded per MBMS Service Area AVP as defined in TS 29.061 [8].

9.2.3.7	PLMN Identity
This information element indicates the PLMN Identity.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
PLMN identity
M

OCTET STRING (SIZE (3))
- digits 0 to 9, encoded 0000 to 1001,
- 1111 used as filler digit,
two digits per octet,
- bits 4 to 1 of octet n encoding digit 2n-1
- bits 8 to 5 of octet n encoding digit 2n

-The Selected PLMN identity consists of 3 digits from MCC followed by either 
-a filler digit plus 2 digits from MNC (in case of 2 digit MNC) or 
-3 digits from MNC (in case of a 3 digit MNC).

9.2.3.8	Minimum Time to MBMS Data Transfer
This IE denotes the minimum time occurring between the transmission of the MBMS SESSION START REQUEST message to the MCE and the actual start of the data transfer. The coding of this element is described in TS 48.018 [10].
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Minimum Time to MBMS Data Transfer
M

OCTET STRING (SIZE (1))
Coded as the value part of Time to MBMS Data Transfer IE defined in TS 48.018 [10].

9.2.3.9	Absolute Time of MBMS Data
This IE denotes the absolute time of the actual start or stop of the MBMS data transfer.
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Absolute Time of MBMS Data
M

BIT STRING (SIZE(64))
Time in seconds relative to 00:00:00 on 1 January  1900 (calculated as continuous time without leap seconds and traceable to a common time reference) where binary encoding of the integer part is in the first 32 bits and binary encoding of the fraction part in the last 32 bits. The fraction part is expressed with a granularity of 1 /2**32 second.

9.2.3.10	Re-establishment
This IE allows identification of the serving MME during some restoration scenarios. Restoration functions are specified in TS 23.007 [14].
IE/Group Name
Presence
Range
IE type and reference
Semantics description
Re-establishment
M

ENUMERATED(true, …)



9.3	Message and Information Element Abstract Syntax (with ASN.1)
9.3.1	General
M3AP ASN.1 definition conforms with ITU-T Rec. X.691 [4] and ITU-T Rec. X.680 [5].
Sub clause 9.3 presents the Abstract Syntax of the M3AP protocol with ASN.1. In case there is contradiction between the ASN.1 definition in this sub clause and the tabular format in sub clause 9.1 and 9.2, the ASN.1 shall take precedence, except for the definition of conditions for the presence of conditional elements, in which the tabular format shall take precedence.
The ASN.1 definition specifies the structure and content of M3AP messages. M3AP messages can contain any IEs specified in the object set definitions for that message without the order or number of occurrence being restricted by ASN.1. However, for this version of the standard, a sending entity shall construct a M3AP message according to the PDU definitions module and with the following additional rules (Note that in the following IE means an IE in the object set with an explicit id. If one IE needed to appear more than once in one object set, then the different occurrences have different IE ids):
-	IEs shall be ordered (in an IE container) in the order they appear in object set definitions.
-	Object set definitions specify how many times IEs may appear. An IE shall appear exactly once if the presence field in an object has value "mandatory". An IE may appear at most once if the presence field in an object has value "optional" or "conditional". If in a tabular format there is multiplicity specified for an IE (i.e. an IE list) then in the corresponding ASN.1 definition the list definition is separated into two parts. The first part defines an IE container list in which the list elements reside. The second part defines list elements. The IE container list appears as an IE of its own. For this version of the standard an IE container list may contain only one kind of list elements.
If a M3AP message that is not constructed as defined above is received, this shall be considered as Abstract Syntax Error, and the message shall be handled as defined for Abstract Syntax Error in clause 10.
9.3.2	Usage of Private Message Mechanism for Non-standard Use
The private message mechanism for non-standard use may be used:
-	for special operator (and/or vendor) specific features considered not to be part of the basic functionality, i.e. the functionality required for a complete and high-quality specification in order to guarantee multivendor inter-operability.
-	by vendors for research purposes, e.g. to implement and evaluate new algorithms/features before such features are proposed for standardisation.
The private message mechanism shall not be used for basic functionality. Such functionality shall be standardised.
9.3.3	Elementary Procedure Definitions
-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************

M3AP-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-PDU-Descriptions (0) }
DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	Criticality,
	ProcedureCode
FROM M3AP-CommonDataTypes

	MBMSSessionStartRequest,
	MBMSSessionStartResponse,
	MBMSSessionStartFailure,
	MBMSSessionStopRequest,
	MBMSSessionStopResponse,
	MBMSSessionUpdateRequest,
	MBMSSessionUpdateResponse,
	MBMSSessionUpdateFailure,
	MCEConfigurationUpdate,
	MCEConfigurationUpdateAcknowledge,
	MCEConfigurationUpdateFailure,
	M3SetupRequest,
	M3SetupResponse,
	M3SetupFailure,
	ErrorIndication,
	Reset,
	ResetAcknowledge,
	PrivateMessage

FROM M3AP-PDU-Contents

	id-mBMSsessionStart,
	id-mBMSsessionStop,
	id-mBMSsessionUpdate,
	id-mCEConfigurationUpdate,
	id-m3Setup,
	id-errorIndication,
	id-Reset,
	id-privateMessage
FROM M3AP-Constants;


-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************

M3AP-ELEMENTARY-PROCEDURE ::= CLASS {
	&InitiatingMessage				,
	&SuccessfulOutcome				OPTIONAL,
	&UnsuccessfulOutcome				OPTIONAL,
	&procedureCode			ProcedureCode 	UNIQUE,
	&criticality			Criticality 	DEFAULT ignore
}
WITH SYNTAX {
	INITIATING MESSAGE		&InitiatingMessage
	[SUCCESSFUL OUTCOME		&SuccessfulOutcome]
	[UNSUCCESSFUL OUTCOME		&UnsuccessfulOutcome]
	PROCEDURE CODE			&procedureCode
	[CRITICALITY			&criticality]
}

-- **************************************************************
--
-- Interface PDU Definition
--
-- **************************************************************

M3AP-PDU ::= CHOICE {
	initiatingMessage	InitiatingMessage,
	successfulOutcome	SuccessfulOutcome,
	unsuccessfulOutcome	UnsuccessfulOutcome,
	...
}

InitiatingMessage ::= SEQUENCE {
	procedureCode	M3AP-ELEMENTARY-PROCEDURE.&procedureCode		({M3AP-ELEMENTARY-PROCEDURES}),
	criticality		M3AP-ELEMENTARY-PROCEDURE.&criticality			({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			M3AP-ELEMENTARY-PROCEDURE.&InitiatingMessage	({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

SuccessfulOutcome ::= SEQUENCE {
	procedureCode	M3AP-ELEMENTARY-PROCEDURE.&procedureCode		({M3AP-ELEMENTARY-PROCEDURES}),
	criticality		M3AP-ELEMENTARY-PROCEDURE.&criticality			({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			M3AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome	({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

UnsuccessfulOutcome ::= SEQUENCE {
	procedureCode	M3AP-ELEMENTARY-PROCEDURE.&procedureCode		({M3AP-ELEMENTARY-PROCEDURES}),
	criticality		M3AP-ELEMENTARY-PROCEDURE.&criticality			({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			M3AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome	({M3AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}


-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************

M3AP-ELEMENTARY-PROCEDURES M3AP-ELEMENTARY-PROCEDURE ::= {
	M3AP-ELEMENTARY-PROCEDURES-CLASS-1			|
	M3AP-ELEMENTARY-PROCEDURES-CLASS-2			,
	...
}

M3AP-ELEMENTARY-PROCEDURES-CLASS-1 M3AP-ELEMENTARY-PROCEDURE ::= {
	mBMSsessionStart											|
	mBMSsessionStop												|
	mBMSsessionUpdate											|
	reset														|
	m3Setup														|
	mCEConfigurationUpdate										,
	...
}

M3AP-ELEMENTARY-PROCEDURES-CLASS-2 M3AP-ELEMENTARY-PROCEDURE ::= {
	errorIndication							|
	privateMessage							,
	...

}


-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************

mBMSsessionStart M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MBMSSessionStartRequest
	SUCCESSFUL OUTCOME		MBMSSessionStartResponse
	UNSUCCESSFUL OUTCOME	MBMSSessionStartFailure
	PROCEDURE CODE			id-mBMSsessionStart
	CRITICALITY				reject
}

mBMSsessionStop M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MBMSSessionStopRequest
	SUCCESSFUL OUTCOME		MBMSSessionStopResponse
	PROCEDURE CODE			id-mBMSsessionStop
	CRITICALITY				reject
}

mBMSsessionUpdate M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MBMSSessionUpdateRequest
	SUCCESSFUL OUTCOME		MBMSSessionUpdateResponse
	UNSUCCESSFUL OUTCOME	MBMSSessionUpdateFailure
	PROCEDURE CODE			id-mBMSsessionUpdate
	CRITICALITY				reject
}

errorIndication M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ErrorIndication
	PROCEDURE CODE			id-errorIndication
	CRITICALITY				ignore
}

reset M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE	Reset
	SUCCESSFUL OUTCOME	ResetAcknowledge
	PROCEDURE CODE		id-Reset
	CRITICALITY			reject
}

privateMessage			M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PrivateMessage
	PROCEDURE CODE			id-privateMessage
	CRITICALITY				ignore
}

mCEConfigurationUpdate M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MCEConfigurationUpdate
	SUCCESSFUL OUTCOME		MCEConfigurationUpdateAcknowledge
	UNSUCCESSFUL OUTCOME	MCEConfigurationUpdateFailure
	PROCEDURE CODE			id-mCEConfigurationUpdate
	CRITICALITY				reject
}


m3Setup M3AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		M3SetupRequest
	SUCCESSFUL OUTCOME		M3SetupResponse
	UNSUCCESSFUL OUTCOME	M3SetupFailure
	PROCEDURE CODE			id-m3Setup
	CRITICALITY				reject
}

END

9.3.4	PDU Definitions
-- **************************************************************
--
-- PDU definitions for M3AP.
--
-- **************************************************************

M3AP-PDU-Contents {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-PDU-Contents (1) }
DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	
	Absolute-Time-ofMBMS-Data,
	Cause,
	CriticalityDiagnostics,
	Global-MCE-ID,
	MBMS-E-RAB-QoS-Parameters,
	MBMS-Service-associatedLogicalM3-ConnectionItem,
	MBMS-Service-Area,
	MBMSServiceArea1,
	MBMS-Session-Duration,
	MBMS-Session-ID,
	MCE-MBMS-M3AP-ID,
	MCEname,
	MinimumTimeToMBMSDataTransfer,
	MME-MBMS-M3AP-ID,
	TimeToWait,
	TMGI,
	TNL-Information,
	Reestablishment,
	MBMS-Cell-List

FROM M3AP-IEs

	PrivateIE-Container{},
	ProtocolExtensionContainer{},
	ProtocolIE-Container{},
	ProtocolIE-ContainerList{},
	ProtocolIE-ContainerPair{},
	ProtocolIE-ContainerPairList{},
	ProtocolIE-Single-Container{},
	M3AP-PRIVATE-IES,
	M3AP-PROTOCOL-EXTENSION,
	M3AP-PROTOCOL-IES,
	M3AP-PROTOCOL-IES-PAIR
FROM M3AP-Containers

	id-AllocationAndRetentionPriority,
	id-MCE-MBMS-M3AP-ID,
	id-MME-MBMS-M3AP-ID,
	id-TMGI,
	id-MBMS-Session-ID,
	id-MBMS-E-RAB-QoS-Parameters,
	id-MBMS-Session-Duration,
	id-MBMS-Service-Area,
	id-TNL-Information,
	id-Alternative-TNL-Information,
	id-CriticalityDiagnostics,
	id-Cause,
	id-MBMS-Service-Area-List,
	id-MBMS-Service-Area-List-Item,
	id-TimeToWait,
	id-ResetType,
	id-MBMS-Service-associatedLogicalM3-ConnectionItem,
	id-MBMS-Service-associatedLogicalM3-ConnectionListResAck,
	id-MBMSServiceAreaList,
	id-MinimumTimeToMBMSDataTransfer,
	id-Time-ofMBMS-DataStop,
	id-Time-ofMBMS-DataTransfer,
	id-Global-MCE-ID,
	id-MCEname,
	id-Reestablishment,
	id-MBMS-Cell-List,
	maxnoofMBMSServiceAreaIdentitiesPerMCE,
	maxnooferrors,
	maxNrOfIndividualM3ConnectionsToReset

FROM M3AP-Constants;

-- **************************************************************
--
-- MBMS SESSION START REQUEST
--
-- **************************************************************

MBMSSessionStartRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{MBMSSessionStartRequest-IEs}},
	...
}

MBMSSessionStartRequest-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY reject	TYPE MME-MBMS-M3AP-ID						PRESENCE mandatory}|
	{ ID id-TMGI								CRITICALITY reject	TYPE TMGI		 							PRESENCE mandatory}|
	{ ID id-MBMS-Session-ID						CRITICALITY ignore	TYPE MBMS-Session-ID						PRESENCE optional}|
	{ ID id-MBMS-E-RAB-QoS-Parameters			CRITICALITY reject	TYPE MBMS-E-RAB-QoS-Parameters			PRESENCE mandatory}|
	{ ID id-MBMS-Session-Duration				CRITICALITY reject	TYPE MBMS-Session-Duration					PRESENCE mandatory}|
	{ ID id-MBMS-Service-Area					CRITICALITY reject	TYPE MBMS-Service-Area						PRESENCE mandatory}|
	{ ID id-MinimumTimeToMBMSDataTransfer		CRITICALITY reject	TYPE MinimumTimeToMBMSDataTransfer		PRESENCE mandatory}|
	{ ID id-TNL-Information						CRITICALITY reject	TYPE TNL-Information						PRESENCE mandatory}|
	{ ID id-Time-ofMBMS-DataTransfer			CRITICALITY ignore	TYPE Absolute-Time-ofMBMS-Data			PRESENCE optional}|
	{ ID id-Reestablishment						CRITICALITY ignore	TYPE Reestablishment						PRESENCE optional}|
	{ ID id-Alternative-TNL-Information			CRITICALITY ignore	TYPE TNL-Information						PRESENCE optional}|
	{ ID id-MBMS-Cell-List						CRITICALITY reject	TYPE MBMS-Cell-List							PRESENCE optional},
	...
}

-- **************************************************************
--
-- MBMS SESSION START RESPONSE
--
-- **************************************************************

MBMSSessionStartResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ MBMSSessionStartResponse-IEs}},
	...
}

MBMSSessionStartResponse-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-MCE-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional  },
	...
}


-- **************************************************************
--
-- MBMS SESSION START FAILURE
--
-- **************************************************************

MBMSSessionStartFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ MBMSSessionStartFailure-IEs}},
	...
}

MBMSSessionStartFailure-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause								PRESENCE mandatory } |
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional  },
	...
}


-- **************************************************************
--
-- MBMS SESSION STOP REQUEST
--
-- **************************************************************

MBMSSessionStopRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{MBMSSessionStopRequest-IEs}},
	...
}

MBMSSessionStopRequest-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID				CRITICALITY reject	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory}|
	{ ID id-MCE-MBMS-M3AP-ID				CRITICALITY reject	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory}|
	{ ID id-Time-ofMBMS-DataStop			CRITICALITY ignore	TYPE Absolute-Time-ofMBMS-Data			PRESENCE optional},
	...
}

-- **************************************************************
--
-- MBMS SESSION STOP RESPONSE
--
-- **************************************************************

MBMSSessionStopResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ MBMSSessionStopResponse-IEs}},
	...
}

MBMSSessionStopResponse-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-MCE-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional  } ,
	...
}

-- **************************************************************
--
-- MBMS SESSION UPDATE REQUEST
--
-- **************************************************************

MBMSSessionUpdateRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{MBMSSessionUpdateRequest-IEs}},
	...
}

MBMSSessionUpdateRequest-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY reject	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory}|
	{ ID id-MCE-MBMS-M3AP-ID					CRITICALITY reject	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory}|
	{ ID id-TMGI								CRITICALITY reject	TYPE TMGI		 						PRESENCE mandatory}|
	{ ID id-MBMS-Session-ID						CRITICALITY ignore	TYPE MBMS-Session-ID					PRESENCE optional}|
	{ ID id-MBMS-E-RAB-QoS-Parameters			CRITICALITY reject	TYPE MBMS-E-RAB-QoS-Parameters		PRESENCE mandatory}|
	{ ID id-MBMS-Session-Duration				CRITICALITY reject	TYPE MBMS-Session-Duration				PRESENCE mandatory}|
	{ ID id-MBMS-Service-Area					CRITICALITY ignore	TYPE MBMS-Service-Area					PRESENCE optional}|
	{ ID id-MinimumTimeToMBMSDataTransfer		CRITICALITY reject	TYPE MinimumTimeToMBMSDataTransfer	PRESENCE mandatory}|
	{ ID id-TNL-Information						CRITICALITY ignore	TYPE TNL-Information					PRESENCE optional}|
	{ ID id-Time-ofMBMS-DataTransfer			CRITICALITY ignore	TYPE Absolute-Time-ofMBMS-Data		PRESENCE optional}|
	{ ID id-MBMS-Cell-List						CRITICALITY reject	TYPE MBMS-Cell-List						PRESENCE optional},
	...
}

-- **************************************************************
--
-- MBMS SESSION UPDATE RESPONSE
--
-- **************************************************************

MBMSSessionUpdateResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ MBMSSessionUpdateResponse-IEs}},
	...
}

MBMSSessionUpdateResponse-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-MCE-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional  },
	...
}

-- **************************************************************
--
-- MBMS SESSION UPDATE FAILURE
--
-- **************************************************************

MBMSSessionUpdateFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ MBMSSessionUpdateFailure-IEs}},
	...
}

MBMSSessionUpdateFailure-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-MCE-MBMS-M3AP-ID					CRITICALITY ignore	TYPE MCE-MBMS-M3AP-ID					PRESENCE mandatory } |
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause								PRESENCE mandatory } |
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional  },
	...
}

-- **************************************************************
--
-- ERROR INDICATION
--
-- **************************************************************

ErrorIndication ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{ErrorIndication-IEs}},
	...
}

ErrorIndication-IEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MME-MBMS-M3AP-ID				CRITICALITY ignore	TYPE MME-MBMS-M3AP-ID				PRESENCE optional	} |
	{ ID id-MCE-MBMS-M3AP-ID				CRITICALITY ignore	TYPE MCE-MBMS-M3AP-ID				PRESENCE optional	} |
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE optional	} |
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional	} ,
	...
}


-- **************************************************************
--
-- Reset
--
-- **************************************************************

Reset ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {ResetIEs} },
	...
}

ResetIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory	}|
	{ ID id-ResetType				CRITICALITY reject	TYPE ResetType			PRESENCE mandatory	},
	...
}

ResetType ::= CHOICE {
	m3-Interface		ResetAll,
	partOfM3-Interface		MBMS-Service-associatedLogicalM3-ConnectionListRes,
	...
}



ResetAll ::= ENUMERATED {
	reset-all,
	...
}

MBMS-Service-associatedLogicalM3-ConnectionListRes ::= SEQUENCE (SIZE(1.. maxNrOfIndividualM3ConnectionsToReset)) OF ProtocolIE-Single-Container { { MBMS-Service-associatedLogicalM3-ConnectionItemRes } }

MBMS-Service-associatedLogicalM3-ConnectionItemRes 	M3AP-PROTOCOL-IES ::= {
	{ ID id-MBMS-Service-associatedLogicalM3-ConnectionItem	 CRITICALITY reject 	TYPE MBMS-Service-associatedLogicalM3-ConnectionItem 	PRESENCE mandatory },
	...
}


-- **************************************************************
--
-- Reset Acknowledge
--
-- **************************************************************

ResetAcknowledge ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {ResetAcknowledgeIEs} },
	...
}

ResetAcknowledgeIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-MBMS-Service-associatedLogicalM3-ConnectionListResAck		CRITICALITY ignore	TYPE MBMS-Service-associatedLogicalM3-ConnectionListResAck			PRESENCE optional	}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional	},
	...
}

MBMS-Service-associatedLogicalM3-ConnectionListResAck ::= SEQUENCE (SIZE(1.. maxNrOfIndividualM3ConnectionsToReset)) OF ProtocolIE-Single-Container { { MBMS-Service-associatedLogicalM3-ConnectionItemResAck } }

MBMS-Service-associatedLogicalM3-ConnectionItemResAck	M3AP-PROTOCOL-IES ::= {
	{ ID id-MBMS-Service-associatedLogicalM3-ConnectionItem	CRITICALITY ignore	TYPE MBMS-Service-associatedLogicalM3-ConnectionItem	PRESENCE mandatory },
	...
}

-- **************************************************************
--
-- PRIVATE MESSAGE
--
-- **************************************************************

PrivateMessage ::= SEQUENCE {
	privateIEs		PrivateIE-Container  {{PrivateMessage-IEs}},
	...
}

PrivateMessage-IEs M3AP-PRIVATE-IES ::= {
	...
}


-- **************************************************************
--
-- M3 SETUP ELEMENTARY PROCEDURE
--
-- **************************************************************

-- **************************************************************
--
-- M3 Setup Request
--
-- **************************************************************

M3SetupRequest ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {M3SetupRequestIEs} },
	...
}

M3SetupRequestIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-Global-MCE-ID			CRITICALITY reject	TYPE Global-MCE-ID					PRESENCE mandatory}|
	{ ID id-MCEname					CRITICALITY ignore	TYPE MCEname						PRESENCE optional}|
	{ ID id-MBMSServiceAreaList		CRITICALITY reject	TYPE MBMSServiceAreaListItem		PRESENCE mandatory},
	...
}


MBMSServiceAreaListItem ::= SEQUENCE (SIZE(1..maxnoofMBMSServiceAreaIdentitiesPerMCE)) OF MBMSServiceArea1


-- **************************************************************
--
-- M3 Setup Response
--
-- **************************************************************

M3SetupResponse ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {M3SetupResponseIEs} },
	...
}


M3SetupResponseIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
	...
}

-- **************************************************************
--
-- M3 Setup Failure
--
-- **************************************************************

M3SetupFailure ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {M3SetupFailureIEs} },
	...
}

M3SetupFailureIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-TimeToWait					CRITICALITY ignore	TYPE TimeToWait					PRESENCE optional}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}

-- **************************************************************
--
-- MCE CONFIGURATION UPDATE ELEMENTARY PROCEDURE
--
-- **************************************************************

-- **************************************************************
--
-- MCE Configuration Update 
--
-- **************************************************************

MCEConfigurationUpdate ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {MCEConfigurationUpdateIEs} },
	...
}

MCEConfigurationUpdateIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-Global-MCE-ID			CRITICALITY reject	TYPE Global-MCE-ID					PRESENCE optional}|
	{ ID id-MCEname					CRITICALITY ignore	TYPE MCEname						PRESENCE optional}|
	{ ID id-MBMSServiceAreaList		CRITICALITY reject	TYPE MBMSServiceAreaListItem		PRESENCE optional},
	...
}

-- **************************************************************
--
-- MCE Configuration Update Acknowledge
--
-- **************************************************************

MCEConfigurationUpdateAcknowledge ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {MCEConfigurationUpdateAcknowledgeIEs} },
	...
}


MCEConfigurationUpdateAcknowledgeIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional	},
	...
}

-- **************************************************************
--
-- MCE Configuration Update Failure
--
-- **************************************************************

MCEConfigurationUpdateFailure ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container       { {MCEConfigurationUpdateFailureIEs} },
	...
}

MCEConfigurationUpdateFailureIEs M3AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-TimeToWait					CRITICALITY ignore	TYPE TimeToWait					PRESENCE optional}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}

END

9.3.5	Information Element definitions
-- **************************************************************
--
-- Information Element Definitions
--
-- **************************************************************

M3AP-IEs {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-IEs (2) }

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

IMPORTS
	id-AllocationAndRetentionPriority,
	maxnooferrors,
	maxnoofCellsforMBMS

FROM M3AP-Constants

	Criticality,
	ProcedureCode,
	ProtocolIE-ID,
	TriggeringMessage
FROM M3AP-CommonDataTypes

	ProtocolExtensionContainer{},
	ProtocolIE-Single-Container{},
	M3AP-PROTOCOL-EXTENSION,
	M3AP-PROTOCOL-IES
FROM M3AP-Containers;

-- A

Absolute-Time-ofMBMS-Data			::= BIT STRING (SIZE (64))

AllocationAndRetentionPriority ::= SEQUENCE {
	priorityLevel				PriorityLevel,
	pre-emptionCapability		Pre-emptionCapability,
	pre-emptionVulnerability	Pre-emptionVulnerability,
	iE-Extensions				ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL
}

AllocationAndRetentionPriority-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}
-- B

BitRate	::= INTEGER (0..10000000000) 

-- C

Cause ::= CHOICE {
	radioNetwork		CauseRadioNetwork,
	transport			CauseTransport,
	nAS					CauseNAS,
	protocol			CauseProtocol,
	misc				CauseMisc,
	...
}

CauseMisc ::= ENUMERATED {
	control-processing-overload,
	not-enough-user-plane-processing-resources,
	hardware-failure,
	om-intervention,
	unspecified,
	...
}

CauseNAS ::= ENUMERATED {
	unspecified,
	...
}

CauseProtocol ::= ENUMERATED {
	transfer-syntax-error,
	abstract-syntax-error-reject,
	abstract-syntax-error-ignore-and-notify,
	message-not-compatible-with-receiver-state,
	semantic-error,
	abstract-syntax-error-falsely-constructed-message,
	unspecified,
	...
}

CauseRadioNetwork ::= ENUMERATED {
	unknown-or-already-allocated-MME-MBMS-M3AP-ID,
	unknown-or-already-allocated-MCE-MBMS-M3AP-ID,
	unknown-or-inconsistent-pair-of-MBMS-M3AP-IDs,
	radio-resources-not-available,
	invalid-QoS-combination,
	interaction-with-other-procedure,
	not-supported-QCI-value,
	unspecified,
	...,
	uninvolved-MCE

}

CauseTransport ::= ENUMERATED {
	transport-resource-unavailable,
	unspecified,
	...
}

CriticalityDiagnostics ::= SEQUENCE {
	procedureCode					ProcedureCode					OPTIONAL,
	triggeringMessage				TriggeringMessage				OPTIONAL,
	procedureCriticality			Criticality						OPTIONAL,
	iEsCriticalityDiagnostics		CriticalityDiagnostics-IE-List	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} }	OPTIONAL,
	...
}


CriticalityDiagnostics-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxnooferrors)) OF
	SEQUENCE {
		iECriticality			Criticality,
		iE-ID					ProtocolIE-ID,
		typeOfError				TypeOfError,
		iE-Extensions			ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
		...
}

CriticalityDiagnostics-IE-List-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}


-- D
-- E

ECGI ::= SEQUENCE {
	pLMN-Identity				PLMN-Identity,
	eUTRANcellIdentifier		EUTRANCellIdentifier,
	iE-Extensions				ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
	...
}

ECGI-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

EUTRANCellIdentifier ::= BIT STRING (SIZE (28))

ExtendedMCE-ID ::= OCTET STRING (SIZE(1))

-- F
-- G

Global-MCE-ID ::= SEQUENCE {
	pLMN-Identity			PLMN-Identity,
	mCE-ID					MCE-ID,
	extendedMCE-ID			ExtendedMCE-ID	OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { {GlobalMCE-ID-ExtIEs} } OPTIONAL,
	...
}

GlobalMCE-ID-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

GBR-QosInformation ::= SEQUENCE {
	mBMS-E-RAB-MaximumBitrateDL			BitRate,
	mBMS-E-RAB-GuaranteedBitrateDL		BitRate,
	iE-Extensions					ProtocolExtensionContainer { { GBR-QosInformation-ExtIEs} } OPTIONAL,
	...
}

GBR-QosInformation-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

GTP-TEID					::= OCTET STRING (SIZE (4))

-- H
-- I

IPAddress			::= OCTET STRING (SIZE(4..16, ...))

-- J
-- K
-- L
-- M

MBMS-Cell-List ::= SEQUENCE (SIZE(1.. maxnoofCellsforMBMS)) OF ECGI

MBMS-E-RAB-QoS-Parameters ::= SEQUENCE {
	qCI								QCI,
	gbrQosInformation				GBR-QosInformation													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { MBMS-E-RAB-QoS-Parameters-ExtIEs} }	OPTIONAL,
	...
}

MBMS-E-RAB-QoS-Parameters-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
-- Extension for Release 10 ARP support --
	{ID id-AllocationAndRetentionPriority	CRITICALITY ignore	EXTENSION AllocationAndRetentionPriority	PRESENCE mandatory},
	...
}

MBMS-Service-associatedLogicalM3-ConnectionItem ::= SEQUENCE {
	mME-MBMS-M3AP-ID				MME-MBMS-M3AP-ID OPTIONAL,
	mCE-MBMS-M3AP-ID				MCE-MBMS-M3AP-ID OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { MBMS-Service-associatedLogicalM3-ConnectionItemExtIEs} } OPTIONAL,
	...
}


MBMS-Service-associatedLogicalM3-ConnectionItemExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

MBMSServiceArea1 ::= OCTET STRING (SIZE (2))

MBMS-Service-Area			::= OCTET STRING


MBMS-Session-Duration ::= OCTET STRING (SIZE (3))

MBMS-Session-ID ::= OCTET STRING (SIZE (1))


MCE-MBMS-M3AP-ID			::= INTEGER (0..65535)

MCE-ID ::= OCTET STRING (SIZE(2))

MCEname ::= PrintableString (SIZE (1..150,...))

MinimumTimeToMBMSDataTransfer	::= OCTET STRING (SIZE (1))

MME-MBMS-M3AP-ID		::= INTEGER (0..65535)

-- N
-- O
-- P

Pre-emptionCapability ::= ENUMERATED {
	shall-not-trigger-pre-emption,
	may-trigger-pre-emption
}

Pre-emptionVulnerability ::= ENUMERATED {
	not-pre-emptable,
	pre-emptable
}

PriorityLevel	::= INTEGER { spare (0), highest (1), lowest (14), no-priority (15) } (0..15)

PLMN-Identity ::= OCTET STRING (SIZE(3))

-- Q

QCI ::= INTEGER (0..255)

-- R

Reestablishment ::= ENUMERATED {true, ...}

-- S
-- T

TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}

TMGI ::= SEQUENCE {
	pLMNidentity			PLMN-Identity,
	serviceID				OCTET STRING (SIZE (3)),
	iE-Extensions			ProtocolExtensionContainer { {TMGI-ExtIEs} } OPTIONAL
}

TMGI-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}


TNL-Information ::= SEQUENCE {
	iPMCAddress						IPAddress, 
	iPSourceAddress					IPAddress,
	gTP-DLTEID						GTP-TEID,
	iE-Extensions					ProtocolExtensionContainer { {TNL-Information-ExtIEs} } OPTIONAL,
	...
}

TNL-Information-ExtIEs M3AP-PROTOCOL-EXTENSION ::= {
	...
}

TypeOfError ::= ENUMERATED {
	not-understood,
	missing,
	...
}


-- U
-- V
-- W
-- X
-- Y
-- Z

END

9.3.6	Common definitions
-- **************************************************************
--
-- Common definitions
--
-- **************************************************************

M3AP-CommonDataTypes {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-CommonDataTypes (3)  }

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- Extension constants
--
-- **************************************************************

maxPrivateIEs 									INTEGER ::= 65535
maxProtocolExtensions 							INTEGER ::= 65535
maxProtocolIEs									INTEGER ::= 65535

-- **************************************************************
--
-- Common Data Types
--
-- **************************************************************

Criticality		::= ENUMERATED { reject, ignore, notify }

Presence		::= ENUMERATED { optional, conditional, mandatory }

PrivateIE-ID	::= CHOICE {
	local				INTEGER (0.. maxPrivateIEs),
	global				OBJECT IDENTIFIER
}

ProcedureCode		::= INTEGER (0..255)


ProtocolIE-ID		::= INTEGER (0..maxProtocolIEs)


TriggeringMessage	::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome}

END

9.3.7	Constant definitions
-- **************************************************************
--
-- Constant definitions
--
-- **************************************************************

M3AP-Constants {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-Constants (4) }

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

IMPORTS
	ProcedureCode,
	ProtocolIE-ID
FROM M3AP-CommonDataTypes;

-- **************************************************************
--
-- Elementary Procedures
--
-- **************************************************************

id-mBMSsessionStart												ProcedureCode ::= 0
id-mBMSsessionStop												ProcedureCode ::= 1
id-errorIndication												ProcedureCode ::= 2
id-privateMessage												ProcedureCode ::= 3
id-Reset														ProcedureCode ::= 4
id-mBMSsessionUpdate											ProcedureCode ::= 5
id-mCEConfigurationUpdate										ProcedureCode ::= 6
id-m3Setup														ProcedureCode ::= 7



-- **************************************************************
--
-- Lists
--
-- **************************************************************

maxnoofMBMSServiceAreaIdentitiesPerMCE		INTEGER ::= 65536
maxnooferrors								INTEGER ::= 256
maxNrOfIndividualM3ConnectionsToReset		INTEGER ::= 256
maxnoofCellsforMBMS							INTEGER ::= 4096

-- **************************************************************
--
-- IEs
--
-- **************************************************************

id-MME-MBMS-M3AP-ID															ProtocolIE-ID ::= 0
id-MCE-MBMS-M3AP-ID															ProtocolIE-ID ::= 1
id-TMGI																		ProtocolIE-ID ::= 2
id-MBMS-Session-ID															ProtocolIE-ID ::= 3
id-MBMS-E-RAB-QoS-Parameters												ProtocolIE-ID ::= 4
id-MBMS-Session-Duration													ProtocolIE-ID ::= 5
id-MBMS-Service-Area														ProtocolIE-ID ::= 6
id-TNL-Information															ProtocolIE-ID ::= 7
id-CriticalityDiagnostics													ProtocolIE-ID ::= 8
id-Cause																	ProtocolIE-ID ::= 9
id-MBMS-Service-Area-List													ProtocolIE-ID ::= 10
id-MBMS-Service-Area-List-Item												ProtocolIE-ID ::= 11
id-TimeToWait																ProtocolIE-ID ::= 12
id-ResetType																ProtocolIE-ID ::= 13
id-MBMS-Service-associatedLogicalM3-ConnectionItem							ProtocolIE-ID ::= 14
id-MBMS-Service-associatedLogicalM3-ConnectionListResAck					ProtocolIE-ID ::= 15
id-MinimumTimeToMBMSDataTransfer											ProtocolIE-ID ::= 16
id-AllocationAndRetentionPriority											ProtocolIE-ID ::= 17
id-Global-MCE-ID															ProtocolIE-ID ::= 18
id-MCEname																	ProtocolIE-ID ::= 19
id-MBMSServiceAreaList														ProtocolIE-ID ::= 20
id-Time-ofMBMS-DataTransfer													ProtocolIE-ID ::= 21
id-Time-ofMBMS-DataStop														ProtocolIE-ID ::= 22
id-Reestablishment															ProtocolIE-ID ::= 23
id-Alternative-TNL-Information												ProtocolIE-ID ::= 24
id-MBMS-Cell-List															ProtocolIE-ID ::= 25
END

9.3.8	Container definitions
-- **************************************************************
--
-- Container definitions
--
-- **************************************************************

M3AP-Containers {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) m3ap (5) version1 (1) m3ap-Containers (5)  }

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	maxPrivateIEs,
	maxProtocolExtensions,
	maxProtocolIEs,
	Criticality,
	Presence,
	PrivateIE-ID,
	ProtocolIE-ID	
FROM M3AP-CommonDataTypes;

-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************

M3AP-PROTOCOL-IES ::= CLASS {
	&id				ProtocolIE-ID 			UNIQUE,
	&criticality	Criticality,
	&Value,
	&presence		Presence
}
WITH SYNTAX {
	ID				&id
	CRITICALITY		&criticality
	TYPE			&Value
	PRESENCE		&presence
}

-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************

M3AP-PROTOCOL-IES-PAIR ::= CLASS {
	&id						ProtocolIE-ID 		UNIQUE,
	&firstCriticality		Criticality,
	&FirstValue,
	&secondCriticality		Criticality,
	&SecondValue,
	&presence				Presence
}
WITH SYNTAX {
	ID						&id
	FIRST CRITICALITY 		&firstCriticality
	FIRST TYPE				&FirstValue
	SECOND CRITICALITY 		&secondCriticality
	SECOND TYPE				&SecondValue
	PRESENCE				&presence
}

-- **************************************************************
--
-- Class Definition for Protocol Extensions
--
-- **************************************************************

M3AP-PROTOCOL-EXTENSION ::= CLASS {
	&id					ProtocolIE-ID 		UNIQUE,
	&criticality		Criticality,
	&Extension,
	&presence			Presence
}
WITH SYNTAX {
	ID					&id
	CRITICALITY			&criticality
	EXTENSION			&Extension
	PRESENCE			&presence
}

-- **************************************************************
--
-- Class Definition for Private IEs
--
-- **************************************************************

M3AP-PRIVATE-IES ::= CLASS {
	&id					PrivateIE-ID,
	&criticality		Criticality,
	&Value,
	&presence			Presence
}
WITH SYNTAX {
	ID					&id
	CRITICALITY			&criticality
	TYPE				&Value
	PRESENCE			&presence
}

-- **************************************************************
--
-- Container for Protocol IEs
--
-- **************************************************************

ProtocolIE-Container {M3AP-PROTOCOL-IES : IEsSetParam} ::= 
	SEQUENCE (SIZE (0..maxProtocolIEs)) OF
	ProtocolIE-Field {{IEsSetParam}}

ProtocolIE-Single-Container {M3AP-PROTOCOL-IES : IEsSetParam} ::= 
	ProtocolIE-Field {{IEsSetParam}}

ProtocolIE-Field {M3AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
	id				M3AP-PROTOCOL-IES.&id					({IEsSetParam}),
	criticality		M3AP-PROTOCOL-IES.&criticality			({IEsSetParam}{@id}),
	value			M3AP-PROTOCOL-IES.&Value	        	({IEsSetParam}{@id})
}

-- **************************************************************
--
-- Container for Protocol IE Pairs
--
-- **************************************************************

ProtocolIE-ContainerPair {M3AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= 
	SEQUENCE (SIZE (0..maxProtocolIEs)) OF
	ProtocolIE-FieldPair {{IEsSetParam}}

ProtocolIE-FieldPair {M3AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
	id					M3AP-PROTOCOL-IES-PAIR.&id					({IEsSetParam}),
	firstCriticality	M3AP-PROTOCOL-IES-PAIR.&firstCriticality	({IEsSetParam}{@id}),
	firstValue			M3AP-PROTOCOL-IES-PAIR.&FirstValue	        ({IEsSetParam}{@id}),
	secondCriticality	M3AP-PROTOCOL-IES-PAIR.&secondCriticality	({IEsSetParam}{@id}),
	secondValue			M3AP-PROTOCOL-IES-PAIR.&SecondValue	        ({IEsSetParam}{@id})
}

-- **************************************************************
--
-- Container Lists for Protocol IE Containers
--
-- **************************************************************

ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, M3AP-PROTOCOL-IES : IEsSetParam} ::=
	SEQUENCE (SIZE (lowerBound..upperBound)) OF
	ProtocolIE-Container {{IEsSetParam}}

ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, M3AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
	SEQUENCE (SIZE (lowerBound..upperBound)) OF
	ProtocolIE-ContainerPair {{IEsSetParam}}

-- **************************************************************
--
-- Container for Protocol Extensions
--
-- **************************************************************

ProtocolExtensionContainer {M3AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= 
	SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
	ProtocolExtensionField {{ExtensionSetParam}}

ProtocolExtensionField {M3AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
	id					M3AP-PROTOCOL-EXTENSION.&id				({ExtensionSetParam}),
	criticality			M3AP-PROTOCOL-EXTENSION.&criticality	({ExtensionSetParam}{@id}),
	extensionValue		M3AP-PROTOCOL-EXTENSION.&Extension		({ExtensionSetParam}{@id})
}

-- **************************************************************
--
-- Container for Private IEs
--
-- **************************************************************

PrivateIE-Container {M3AP-PRIVATE-IES : IEsSetParam} ::= 
	SEQUENCE (SIZE (1..maxPrivateIEs)) OF
	PrivateIE-Field {{IEsSetParam}}

PrivateIE-Field {M3AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
	id				M3AP-PRIVATE-IES.&id			({IEsSetParam}),
	criticality		M3AP-PRIVATE-IES.&criticality	({IEsSetParam}{@id}),
	value			M3AP-PRIVATE-IES.&Value			({IEsSetParam}{@id})
}

END

9.4	Message Transfer Syntax
M3AP shall use the ASN.1 Basic Packed Encoding Rules (BASIC-PER) Aligned Variant as transfer syntax as specified in ref. ITU-T Rec. X.691 [4].
9.5	Timers
10	Handling of Unknown, Unforeseen and Erroneous Protocol Data
Section 10 of TS 36.413 [11] is applicable for the purposes of the present document.
Annex A (informative):
Change history
TSG #
TSG Doc.
CR
Rev
Subject/Comment
New
2008-02



First draft
0.0.0
2009-10



Second draft with content
0.0.1
2009-11



For RAN3#66
0.1.0
2009-11



Capture agreements in RAN3#66
1.0.0
2009-12



Presented for approval at RAN#46
2.0.0
46
RP-091254


Approved at RAN#46
9.0.0
47
RP-100226
0001

Corrections to TS36.444
9.1.0
47
RP-100227
0003
1
Miscellaneous corrections to TS 36.444
9.1.0
47
RP-100227
0004
2
Misc corrections
9.1.0
47
RP-100227
0005
2
Introduction of MBMS Session Update in M3AP
9.1.0
47
RP-100227
0007
1
Editorial Correction on TS 36.444
9.1.0
47
RP-100227
0008
1
No support for E-RAB Pre-emption
9.1.0
49
RP-100906
0012
1
MBMS Session Update procedure
9.2.0
49
RP-100906
0013

Alignment of tabulars to agreed notation for TS36.413 and TS36.423
9.2.0
50
RP-101270
0015
1
Correction of ASN1 in M3AP
9.3.0
2010-12



Created Rel-10 version based on v. 9.3.0
10.0.0
SP-49
SP-100629


Clarification on the use of References (TS 21.801 CR#0030)
10.1.0
51
RP-110223
0018
1
Correction on MBMS Reset procedure
10.1.0
51
RP-110240
0019
2
Introduction of ARP
10.1.0
51
RP-110226
0020
1
Clarification on TEID value range
10.1.0
52
RP-110685
0021
2
Correction of references
10.2.0
54
RP-111650
0022

Correction on MBMS Session Stop
10.3.0
2011-12



Created Rel-11 version based on v. 10.3.0
11.0.0
54
RP-111655
0025
4
Correction of MCCH Update synchronization Mechanism
11.0.0
54
RP-111655
0026
5
Addition of M3 Setup
11.0.0
55
RP-120236
0027
2
Correction on Reset
11.1.0
55
RP-120236
0028
2
Corrections on M3 Setup and MCE Configuration Update Procedures
11.1.0
55
RP-120236
0030
3
Correct of reset
11.1.0
56
RP-120751
0032

Correction on usage of Time of MBMS Data Stop IE
11.2.0
56
RP-120751
0033
1
Correction on M3 Configuration Procedure
11.2.0
56
RP-120752
0037

Correction of Absolute Time
11.2.0
56
RP-120751
0038
1
Correction of MCE Configuration Update procedure in M3 interface
11.2.0
56
RP-120752
0040
1
Correction of ASN.1 Concerning the Presence of extendedMCE-ID
11.2.0
57
RP-121140
0042
1
Coding Rules
11.3.0
58
RP-121724
0044
1
Correction of MBMS Session Start Partial Success
11.4.0
59
RP-130212
0048
1
Correction for Session Update procedure
11.5.0
60
RP-130643
0049

Correction on the Sending Node of MBMS Session Update Failure
11.6.0
60
RP-130643
0053
2
Correction of the update of Minimum time to MBMS Data Transfer
11.6.0
63
RP-140297
0057
6
Restoration of eMBMS Bearer Services and logical M3 Connections in MCE
12.0.0
64
RP-140905
0060
1
MBMS Bearer priority Update
12.1.0
64
RP-140905
0061

Corrections on MBMS Restoration
12.1.0
67
RP-150356
0070
1
Rapporteur Review on 36444
12.2.0
2015-06



Created Rel-13 version based on v. 12.2.0
13.0.0
68
RP-150946
0068
3
eMBMS Alternative IP Multicast distribution address
13.0.0
70
RP-152101
0072
7
Introduction of SC-PTM
13.1.0
71
RP-160449
0075

Correction of tabular for Procedure Code in the Message Type IE
13.2.0

3GPP TS 36.444 V13.2.0 (2016-03)
66
Release 13


3GPP

