diff options
Diffstat (limited to 'epan/dissectors/asn1/x2ap')
-rw-r--r-- | epan/dissectors/asn1/x2ap/CMakeLists.txt | 52 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/Makefile.am | 23 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/Makefile.common | 45 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/Makefile.nmake | 26 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn | 51 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-Constants.asn | 189 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-Containers.asn | 195 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-IEs.asn | 1374 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn | 1066 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn | 313 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/packet-x2ap-template.c | 212 | ||||
-rw-r--r-- | epan/dissectors/asn1/x2ap/x2ap.cnf | 424 |
12 files changed, 3970 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/x2ap/CMakeLists.txt b/epan/dissectors/asn1/x2ap/CMakeLists.txt new file mode 100644 index 0000000000..d9267a98a4 --- /dev/null +++ b/epan/dissectors/asn1/x2ap/CMakeLists.txt @@ -0,0 +1,52 @@ +# CMakeLists.txt +# +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# + +set( PROTOCOL_NAME x2ap ) + +set( PROTO_OPT ) + +set( EXT_ASN_FILE_LIST +) + +set( ASN_FILE_LIST + X2AP-CommonDataTypes.asn + X2AP-Constants.asn + X2AP-Containers.asn + X2AP-IEs.asn + X2AP-PDU-Contents.asn + X2AP-PDU-Descriptions.asn +) + +set( EXTRA_DIST + ${ASN_FILE_LIST} + packet-${PROTOCOL_NAME}-template.c + ${PROTOCOL_NAME}.cnf +) + +set( SRC_FILES + ${EXTRA_DIST} + ${EXT_ASN_FILE_LIST} +) + +set( A2W_FLAGS ) + +ASN2WRS() + diff --git a/epan/dissectors/asn1/x2ap/Makefile.am b/epan/dissectors/asn1/x2ap/Makefile.am new file mode 100644 index 0000000000..72d28e600b --- /dev/null +++ b/epan/dissectors/asn1/x2ap/Makefile.am @@ -0,0 +1,23 @@ +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +include ../Makefile.preinc +include Makefile.common +include ../Makefile.inc + diff --git a/epan/dissectors/asn1/x2ap/Makefile.common b/epan/dissectors/asn1/x2ap/Makefile.common new file mode 100644 index 0000000000..acb56be71a --- /dev/null +++ b/epan/dissectors/asn1/x2ap/Makefile.common @@ -0,0 +1,45 @@ +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +PROTOCOL_NAME = x2ap + +EXT_ASN_FILE_LIST = + +ASN_FILE_LIST = \ + X2AP-CommonDataTypes.asn \ + X2AP-Constants.asn \ + X2AP-Containers.asn \ + X2AP-IEs.asn \ + X2AP-PDU-Contents.asn \ + X2AP-PDU-Descriptions.asn + +EXTRA_DIST = \ + $(EXTRA_DIST_COMMON) \ + $(ASN_FILE_LIST) \ + packet-$(PROTOCOL_NAME)-template.c \ + $(PROTOCOL_NAME).cnf + +SRC_FILES = \ + $(EXTRA_DIST) \ + $(EXT_ASN_FILE_LIST) + +A2W_FLAGS = + +EXTRA_CNF = + diff --git a/epan/dissectors/asn1/x2ap/Makefile.nmake b/epan/dissectors/asn1/x2ap/Makefile.nmake new file mode 100644 index 0000000000..d296638ddd --- /dev/null +++ b/epan/dissectors/asn1/x2ap/Makefile.nmake @@ -0,0 +1,26 @@ +## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake +# +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +include ../../../../config.nmake +include ../Makefile.preinc.nmake +include Makefile.common +include ../Makefile.inc.nmake + diff --git a/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn new file mode 100644 index 0000000000..a738ddfcec --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn @@ -0,0 +1,51 @@ +-- 3GPP TS 36.423 V12.2.0 (2014-06) + +-- 9.3.6 Common definitions +-- ************************************************************** +-- +-- Common definitions +-- +-- ************************************************************** + +X2AP-CommonDataTypes { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-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 diff --git a/epan/dissectors/asn1/x2ap/X2AP-Constants.asn b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn new file mode 100644 index 0000000000..2fadd89053 --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn @@ -0,0 +1,189 @@ +-- 3GPP TS 36.423 V10.3.0 (2011-09) +-- 9.3.7 Constant Definitions +-- ************************************************************** +-- +-- Constant definitions +-- +-- ************************************************************** + +X2AP-Constants { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Constants (4) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +IMPORTS + ProcedureCode, + ProtocolIE-ID +FROM X2AP-CommonDataTypes; + +-- ************************************************************** +-- +-- Elementary Procedures +-- +-- ************************************************************** + +id-handoverPreparation ProcedureCode ::= 0 +id-handoverCancel ProcedureCode ::= 1 +id-loadIndication ProcedureCode ::= 2 +id-errorIndication ProcedureCode ::= 3 +id-snStatusTransfer ProcedureCode ::= 4 +id-uEContextRelease ProcedureCode ::= 5 +id-x2Setup ProcedureCode ::= 6 +id-reset ProcedureCode ::= 7 +id-eNBConfigurationUpdate ProcedureCode ::= 8 +id-resourceStatusReportingInitiation ProcedureCode ::= 9 +id-resourceStatusReporting ProcedureCode ::= 10 +id-privateMessage ProcedureCode ::= 11 +id-mobilitySettingsChange ProcedureCode ::= 12 +id-rLFIndication ProcedureCode ::= 13 +id-handoverReport ProcedureCode ::= 14 +id-cellActivation ProcedureCode ::= 15 +id-x2Release ProcedureCode ::= 16 +id-x2MessageTransfer ProcedureCode ::= 17 + + + +-- ************************************************************** +-- +-- Lists +-- +-- ************************************************************** + +maxEARFCN INTEGER ::= 65535 +maxEARFCNPlusOne INTEGER ::= 65536 +newmaxEARFCN INTEGER ::= 262143 +maxInterfaces INTEGER ::= 16 +maxCellineNB INTEGER ::= 256 +maxnoofBands INTEGER ::= 16 +maxnoofBearers INTEGER ::= 256 +maxNrOfErrors INTEGER ::= 256 +maxnoofPDCP-SN INTEGER ::= 16 +maxnoofEPLMNs INTEGER ::= 15 +maxnoofEPLMNsPlusOne INTEGER ::= 16 +maxnoofForbLACs INTEGER ::= 4096 +maxnoofForbTACs INTEGER ::= 4096 +maxnoofBPLMNs INTEGER ::= 6 +maxnoofNeighbours INTEGER ::= 512 +maxnoofPRBs INTEGER ::= 110 +maxPools INTEGER ::= 16 +maxnoofCells INTEGER ::= 16 +maxnoofMBSFN INTEGER ::= 8 +maxFailedMeasObjects INTEGER ::= 32 +maxnoofCellIDforMDT INTEGER ::= 32 +maxnoofTAforMDT INTEGER ::= 8 +maxnoofMBMSServiceAreaIdentities INTEGER ::= 256 +maxnoofMDTPLMNs INTEGER ::= 16 + + +-- ************************************************************** +-- +-- IEs +-- +-- ************************************************************** + +id-E-RABs-Admitted-Item ProtocolIE-ID ::= 0 +id-E-RABs-Admitted-List ProtocolIE-ID ::= 1 +id-E-RAB-Item ProtocolIE-ID ::= 2 +id-E-RABs-NotAdmitted-List ProtocolIE-ID ::= 3 +id-E-RABs-ToBeSetup-Item ProtocolIE-ID ::= 4 +id-Cause ProtocolIE-ID ::= 5 +id-CellInformation ProtocolIE-ID ::= 6 +id-CellInformation-Item ProtocolIE-ID ::= 7 +id-New-eNB-UE-X2AP-ID ProtocolIE-ID ::= 9 +id-Old-eNB-UE-X2AP-ID ProtocolIE-ID ::= 10 +id-TargetCell-ID ProtocolIE-ID ::= 11 +id-TargeteNBtoSource-eNBTransparentContainer ProtocolIE-ID ::= 12 +id-TraceActivation ProtocolIE-ID ::= 13 +id-UE-ContextInformation ProtocolIE-ID ::= 14 +id-UE-HistoryInformation ProtocolIE-ID ::= 15 +id-UE-X2AP-ID ProtocolIE-ID ::= 16 +id-CriticalityDiagnostics ProtocolIE-ID ::= 17 +id-E-RABs-SubjectToStatusTransfer-List ProtocolIE-ID ::= 18 +id-E-RABs-SubjectToStatusTransfer-Item ProtocolIE-ID ::= 19 +id-ServedCells ProtocolIE-ID ::= 20 +id-GlobalENB-ID ProtocolIE-ID ::= 21 +id-TimeToWait ProtocolIE-ID ::= 22 +id-GUMMEI-ID ProtocolIE-ID ::= 23 +id-GUGroupIDList ProtocolIE-ID ::= 24 +id-ServedCellsToAdd ProtocolIE-ID ::= 25 +id-ServedCellsToModify ProtocolIE-ID ::= 26 +id-ServedCellsToDelete ProtocolIE-ID ::= 27 +id-Registration-Request ProtocolIE-ID ::= 28 +id-CellToReport ProtocolIE-ID ::= 29 +id-ReportingPeriodicity ProtocolIE-ID ::= 30 +id-CellToReport-Item ProtocolIE-ID ::= 31 +id-CellMeasurementResult ProtocolIE-ID ::= 32 +id-CellMeasurementResult-Item ProtocolIE-ID ::= 33 +id-GUGroupIDToAddList ProtocolIE-ID ::= 34 +id-GUGroupIDToDeleteList ProtocolIE-ID ::= 35 +id-SRVCCOperationPossible ProtocolIE-ID ::= 36 +id-Measurement-ID ProtocolIE-ID ::= 37 +id-ReportCharacteristics ProtocolIE-ID ::= 38 +id-ENB1-Measurement-ID ProtocolIE-ID ::= 39 +id-ENB2-Measurement-ID ProtocolIE-ID ::= 40 +id-Number-of-Antennaports ProtocolIE-ID ::= 41 +id-CompositeAvailableCapacityGroup ProtocolIE-ID ::= 42 +id-ENB1-Cell-ID ProtocolIE-ID ::= 43 +id-ENB2-Cell-ID ProtocolIE-ID ::= 44 +id-ENB2-Proposed-Mobility-Parameters ProtocolIE-ID ::= 45 +id-ENB1-Mobility-Parameters ProtocolIE-ID ::= 46 +id-ENB2-Mobility-Parameters-Modification-Range ProtocolIE-ID ::= 47 +id-FailureCellPCI ProtocolIE-ID ::= 48 +id-Re-establishmentCellECGI ProtocolIE-ID ::= 49 +id-FailureCellCRNTI ProtocolIE-ID ::= 50 +id-ShortMAC-I ProtocolIE-ID ::= 51 +id-SourceCellECGI ProtocolIE-ID ::= 52 +id-FailureCellECGI ProtocolIE-ID ::= 53 +id-HandoverReportType ProtocolIE-ID ::= 54 +id-PRACH-Configuration ProtocolIE-ID ::= 55 +id-MBSFN-Subframe-Info ProtocolIE-ID ::= 56 +id-ServedCellsToActivate ProtocolIE-ID ::= 57 +id-ActivatedCellList ProtocolIE-ID ::= 58 +id-DeactivationIndication ProtocolIE-ID ::= 59 +id-UE-RLF-Report-Container ProtocolIE-ID ::= 60 +id-ABSInformation ProtocolIE-ID ::= 61 +id-InvokeIndication ProtocolIE-ID ::= 62 +id-ABS-Status ProtocolIE-ID ::= 63 +id-PartialSuccessIndicator ProtocolIE-ID ::= 64 +id-MeasurementInitiationResult-List ProtocolIE-ID ::= 65 +id-MeasurementInitiationResult-Item ProtocolIE-ID ::= 66 +id-MeasurementFailureCause-Item ProtocolIE-ID ::= 67 +id-CompleteFailureCauseInformation-List ProtocolIE-ID ::= 68 +id-CompleteFailureCauseInformation-Item ProtocolIE-ID ::= 69 +id-CSG-Id ProtocolIE-ID ::= 70 +id-CSGMembershipStatus ProtocolIE-ID ::= 71 +id-MDTConfiguration ProtocolIE-ID ::= 72 +id-ManagementBasedMDTallowed ProtocolIE-ID ::= 74 +id-RRCConnSetupIndicator ProtocolIE-ID ::= 75 +id-NeighbourTAC ProtocolIE-ID ::= 76 +id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID ::= 77 +id-RRCConnReestabIndicator ProtocolIE-ID ::= 78 +id-MBMS-Service-Area-List ProtocolIE-ID ::= 79 +id-HO-cause ProtocolIE-ID ::= 80 +id-TargetCellInUTRAN ProtocolIE-ID ::= 81 +id-MobilityInformation ProtocolIE-ID ::= 82 +id-SourceCellCRNTI ProtocolIE-ID ::= 83 +id-MultibandInfoList ProtocolIE-ID ::= 84 +id-M3Configuration ProtocolIE-ID ::= 85 +id-M4Configuration ProtocolIE-ID ::= 86 +id-M5Configuration ProtocolIE-ID ::= 87 +id-MDT-Location-Info ProtocolIE-ID ::= 88 +id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 89 +id-SignallingBasedMDTPLMNList ProtocolIE-ID ::= 90 +id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID ::= 91 +id-ULCOUNTValueExtended ProtocolIE-ID ::= 92 +id-DLCOUNTValueExtended ProtocolIE-ID ::= 93 +id-eARFCNExtension ProtocolIE-ID ::= 94 +id-UL-EARFCNExtension ProtocolIE-ID ::= 95 +id-DL-EARFCNExtension ProtocolIE-ID ::= 96 +id-AdditionalSpecialSubframe-Info ProtocolIE-ID ::= 97 +id-Masked-IMEISV ProtocolIE-ID ::= 98 +id-IntendedULDLConfiguration ProtocolIE-ID ::= 99 +id-ExtendedULInterferenceOverloadInfo ProtocolIE-ID ::= 100 +id-RNL-Header ProtocolIE-ID ::= 101 +id-x2APMessage ProtocolIE-ID ::= 102 + +END diff --git a/epan/dissectors/asn1/x2ap/X2AP-Containers.asn b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn new file mode 100644 index 0000000000..caf6a5f95e --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn @@ -0,0 +1,195 @@ +-- 3GPP TS 36.423 V12.2.0 (2014-06) +-- 9.3.8 Container Definitions +-- ************************************************************** +-- +-- Container definitions +-- +-- ************************************************************** +X2AP-Containers { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Containers (5) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + maxPrivateIEs, + maxProtocolExtensions, + maxProtocolIEs, + Criticality, + Presence, + PrivateIE-ID, + ProtocolIE-ID +FROM X2AP-CommonDataTypes; + +-- ************************************************************** +-- +-- Class Definition for Protocol IEs +-- +-- ************************************************************** + +X2AP-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 +-- +-- ************************************************************** + +X2AP-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 +-- +-- ************************************************************** + +X2AP-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 +-- +-- ************************************************************** + +X2AP-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 {X2AP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-Single-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::= + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-Field {X2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { + id X2AP-PROTOCOL-IES.&id ({IEsSetParam}), + criticality X2AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}), + value X2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container for Protocol IE Pairs +-- +-- ************************************************************** + +ProtocolIE-ContainerPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-FieldPair {{IEsSetParam}} + +ProtocolIE-FieldPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE { + id X2AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}), + firstCriticality X2AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}), + firstValue X2AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}), + secondCriticality X2AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}), + secondValue X2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container Lists for Protocol IE Containers +-- +-- ************************************************************** + +ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-Container {{IEsSetParam}} + +ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-ContainerPair {{IEsSetParam}} + +-- ************************************************************** +-- +-- Container for Protocol Extensions +-- +-- ************************************************************** + +ProtocolExtensionContainer {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= + SEQUENCE (SIZE (1..maxProtocolExtensions)) OF + ProtocolExtensionField {{ExtensionSetParam}} + +ProtocolExtensionField {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE { + id X2AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}), + criticality X2AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}), + extensionValue X2AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container for Private IEs +-- +-- ************************************************************** + +PrivateIE-Container {X2AP-PRIVATE-IES : IEsSetParam} ::= + SEQUENCE (SIZE (1..maxPrivateIEs)) OF + PrivateIE-Field {{IEsSetParam}} + +PrivateIE-Field {X2AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE { + id X2AP-PRIVATE-IES.&id ({IEsSetParam}), + criticality X2AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}), + value X2AP-PRIVATE-IES.&Value ({IEsSetParam}{@id}) +} + +END diff --git a/epan/dissectors/asn1/x2ap/X2AP-IEs.asn b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn new file mode 100644 index 0000000000..2431695732 --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn @@ -0,0 +1,1374 @@ +-- 3GPP TS 36.423 V12.2.0 (2014-06) +-- 9.3.5 Information Element Definitions +-- ************************************************************** +-- +-- Information Element Definitions +-- +-- ************************************************************** + +X2AP-IEs { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-IEs (2) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +IMPORTS + + id-E-RAB-Item, + id-Number-of-Antennaports, + id-MBSFN-Subframe-Info, + id-PRACH-Configuration, + id-CSG-Id, + id-MDTConfiguration, + id-SignallingBasedMDTPLMNList, + id-MultibandInfoList, + id-NeighbourTAC, + id-Time-UE-StayedInCell-EnhancedGranularity, + id-MBMS-Service-Area-List, + id-HO-cause, + id-eARFCNExtension, + id-DL-EARFCNExtension, + id-UL-EARFCNExtension, + id-M3Configuration, + id-M4Configuration, + id-M5Configuration, + id-MDT-Location-Info, + id-AdditionalSpecialSubframe-Info, + maxnoofBearers, + maxCellineNB, + maxEARFCN, + maxEARFCNPlusOne, + newmaxEARFCN, + maxInterfaces, + + maxnoofBands, + maxnoofBPLMNs, + maxnoofCells, + maxnoofEPLMNs, + maxnoofEPLMNsPlusOne, + maxnoofForbLACs, + maxnoofForbTACs, + maxnoofNeighbours, + maxnoofPRBs, + maxNrOfErrors, + maxPools, + maxnoofMBSFN, + maxnoofTAforMDT, + maxnoofCellIDforMDT, + maxnoofMBMSServiceAreaIdentities, + maxnoofMDTPLMNs + +FROM X2AP-Constants + + Criticality, + ProcedureCode, + ProtocolIE-ID, + TriggeringMessage +FROM X2AP-CommonDataTypes + + ProtocolExtensionContainer{}, + ProtocolIE-Single-Container{}, + + X2AP-PROTOCOL-EXTENSION, + X2AP-PROTOCOL-IES +FROM X2AP-Containers; + +-- A + +ABSInformation ::= CHOICE { + fdd ABSInformationFDD, + tdd ABSInformationTDD, + abs-inactive NULL, + ... +} + +ABSInformationFDD ::= SEQUENCE { + abs-pattern-info BIT STRING (SIZE(40)), + numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...}, + measurement-subset BIT STRING (SIZE(40)), + iE-Extensions ProtocolExtensionContainer { { ABSInformationFDD-ExtIEs} } OPTIONAL, + ... +} + +ABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ABSInformationTDD ::= SEQUENCE { + abs-pattern-info BIT STRING (SIZE(1..70, ...)), + numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...}, + measurement-subset BIT STRING (SIZE(1..70, ...)), + iE-Extensions ProtocolExtensionContainer { { ABSInformationTDD-ExtIEs} } OPTIONAL, + ... +} + +ABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ABS-Status ::= SEQUENCE { + dL-ABS-status DL-ABS-status, + usableABSInformation UsableABSInformation, + iE-Extensions ProtocolExtensionContainer { {ABS-Status-ExtIEs} } OPTIONAL, + ... +} + +ABS-Status-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +DL-ABS-status::= INTEGER (0..100) + +AdditionalSpecialSubframe-Info ::= SEQUENCE { + additionalspecialSubframePatterns AdditionalSpecialSubframePatterns, + cyclicPrefixDL CyclicPrefixDL, + cyclicPrefixUL CyclicPrefixUL, + iE-Extensions ProtocolExtensionContainer { { AdditionalSpecialSubframe-Info-ExtIEs} } OPTIONAL, + ... +} + +AdditionalSpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +AdditionalSpecialSubframePatterns ::= ENUMERATED { + ssp0, + ssp1, + ssp2, + ssp3, + ssp4, + ssp5, + ssp6, + ssp7, + ssp8, + ssp9, + ... +} + +AS-SecurityInformation ::= SEQUENCE { + key-eNodeB-star Key-eNodeB-Star, + nextHopChainingCount NextHopChainingCount, + iE-Extensions ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + +AllocationAndRetentionPriority ::= SEQUENCE { + priorityLevel PriorityLevel, + pre-emptionCapability Pre-emptionCapability, + pre-emptionVulnerability Pre-emptionVulnerability, + iE-Extensions ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL, + ... +} + +AllocationAndRetentionPriority-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaScopeOfMDT ::= CHOICE { + cellBased CellBasedMDT, + tABased TABasedMDT, + pLMNWide NULL, + ..., + tAIBased TAIBasedMDT +} + +-- B + + +BitRate ::= INTEGER (0..10000000000) +BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity + + +-- C + +CapacityValue ::= INTEGER (0..100) + +CellCapacityClassValue ::= INTEGER (1..100, ...) + +Cause ::= CHOICE { + radioNetwork CauseRadioNetwork, + transport CauseTransport, + protocol CauseProtocol, + misc CauseMisc, + ... +} + +CauseMisc ::= ENUMERATED { + control-processing-overload, + hardware-failure, + om-intervention, + not-enough-user-plane-processing-resources, + unspecified, + ... +} + +CauseProtocol ::= ENUMERATED { + transfer-syntax-error, + abstract-syntax-error-reject, + abstract-syntax-error-ignore-and-notify, + message-not-compatible-with-receiver-state, + semantic-error, + unspecified, + abstract-syntax-error-falsely-constructed-message, + ... +} + +CauseRadioNetwork ::= ENUMERATED { + handover-desirable-for-radio-reasons, + time-critical-handover, + resource-optimisation-handover, + reduce-load-in-serving-cell, + partial-handover, + unknown-new-eNB-UE-X2AP-ID, + unknown-old-eNB-UE-X2AP-ID, + unknown-pair-of-UE-X2AP-ID, + ho-target-not-allowed, + tx2relocoverall-expiry, + trelocprep-expiry, + cell-not-available, + no-radio-resources-available-in-target-cell, + invalid-MME-GroupID, + unknown-MME-Code, + encryption-and-or-integrity-protection-algorithms-not-supported, + reportCharacteristicsEmpty, + noReportPeriodicity, + existingMeasurementID, + unknown-eNB-Measurement-ID, + measurement-temporarily-not-available, + unspecified, + ..., + load-balancing, + handover-optimisation, + value-out-of-allowed-range, + multiple-E-RAB-ID-instances, + switch-off-ongoing, + not-supported-QCI-value, + measurement-not-supported-for-the-object + +} + +CauseTransport ::= ENUMERATED { + transport-resource-unavailable, + unspecified, + ... +} + +CellBasedMDT::= SEQUENCE { + cellIdListforMDT CellIdListforMDT, + iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-ExtIEs} } OPTIONAL, + ... +} + +CellBasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF ECGI + +Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ... } + + +CellType ::= SEQUENCE { + cell-Size Cell-Size, + iE-Extensions ProtocolExtensionContainer { { CellType-ExtIEs}} OPTIONAL, + ... +} + +CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CompositeAvailableCapacityGroup ::= SEQUENCE { + dL-CompositeAvailableCapacity CompositeAvailableCapacity, + uL-CompositeAvailableCapacity CompositeAvailableCapacity, + iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL, + ... +} + +CompositeAvailableCapacityGroup-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CompositeAvailableCapacity ::= SEQUENCE { + cellCapacityClassValue CellCapacityClassValue OPTIONAL, + capacityValue CapacityValue, + iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} } OPTIONAL, + ... +} + +CompositeAvailableCapacity-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +COUNTvalue ::= SEQUENCE { + pDCP-SN PDCP-SN, + hFN HFN, + iE-Extensions ProtocolExtensionContainer { { COUNTvalue-ExtIEs} } OPTIONAL, + ... +} + +COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +COUNTValueExtended ::= SEQUENCE { + pDCP-SNExtended PDCP-SNExtended, + hFNModified HFNModified, + iE-Extensions ProtocolExtensionContainer { { COUNTValueExtended-ExtIEs} } OPTIONAL, + ... +} + +COUNTValueExtended-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CriticalityDiagnostics ::= SEQUENCE { + procedureCode ProcedureCode OPTIONAL, + triggeringMessage TriggeringMessage OPTIONAL, + procedureCriticality Criticality OPTIONAL, + iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} } OPTIONAL, + ... +} + + +CriticalityDiagnostics-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF + SEQUENCE { + iECriticality Criticality, + iE-ID ProtocolIE-ID, + typeOfError TypeOfError, + iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL, + ... +} + +CriticalityDiagnostics-IE-List-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +CRNTI ::= BIT STRING (SIZE (16)) + +CSGMembershipStatus ::= ENUMERATED { + member, + not-member +} + +CSG-Id ::= BIT STRING (SIZE (27)) + +CyclicPrefixDL ::= ENUMERATED { + normal, + extended, + ... +} + +CyclicPrefixUL ::= ENUMERATED { + normal, + extended, + ... +} + + +-- D + +DeactivationIndication::= ENUMERATED { + deactivated, + ... +} + +DL-Forwarding ::= ENUMERATED { + dL-forwardingProposed, + ... +} + +DL-GBR-PRB-usage::= INTEGER (0..100) + +DL-non-GBR-PRB-usage::= INTEGER (0..100) + +DL-Total-PRB-usage::= INTEGER (0..100) + +-- E + +EARFCN ::= INTEGER (0..maxEARFCN) + +EARFCNExtension ::= INTEGER(maxEARFCNPlusOne..newmaxEARFCN, ...) + +FDD-Info ::= SEQUENCE { + uL-EARFCN EARFCN, + dL-EARFCN EARFCN, + uL-Transmission-Bandwidth Transmission-Bandwidth, + dL-Transmission-Bandwidth Transmission-Bandwidth, + iE-Extensions ProtocolExtensionContainer { {FDD-Info-ExtIEs} } OPTIONAL, + ... +} + +FDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-UL-EARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional}| + { ID id-DL-EARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional}, + ... +} + +TDD-Info ::= SEQUENCE { + eARFCN EARFCN, + transmission-Bandwidth Transmission-Bandwidth, + subframeAssignment SubframeAssignment, + specialSubframe-Info SpecialSubframe-Info, + iE-Extensions ProtocolExtensionContainer { {TDD-Info-ExtIEs} } OPTIONAL, + ... +} +TDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalSpecialSubframe-Info CRITICALITY ignore EXTENSION AdditionalSpecialSubframe-Info PRESENCE optional}| + { ID id-eARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional}, + ... +} + +EUTRA-Mode-Info ::= CHOICE { + fDD FDD-Info, + tDD TDD-Info, + ... +} + +ECGI ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + eUTRANcellIdentifier EUTRANCellIdentifier, + iE-Extensions ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL, + ... +} + +ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ENB-ID ::= CHOICE { + macro-eNB-ID BIT STRING (SIZE (20)), + home-eNB-ID BIT STRING (SIZE (28)), + ... +} + +EncryptionAlgorithms ::= BIT STRING (SIZE (16, ...)) + +EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMN-Identity + +E-RAB-ID ::= INTEGER (0..15, ...) + +E-RAB-Level-QoS-Parameters ::= SEQUENCE { + qCI QCI, + allocationAndRetentionPriority AllocationAndRetentionPriority, + gbrQosInformation GBR-QosInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { E-RAB-Level-QoS-Parameters-ExtIEs} } OPTIONAL, + ... +} + +E-RAB-Level-QoS-Parameters-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +E-RAB-List ::= SEQUENCE (SIZE(1.. maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RAB-ItemIEs} } + +E-RAB-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-E-RAB-Item CRITICALITY ignore TYPE E-RAB-Item PRESENCE mandatory }, + ... +} + +E-RAB-Item ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {E-RAB-Item-ExtIEs} } OPTIONAL, + ... +} + +E-RAB-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRANCellIdentifier ::= BIT STRING (SIZE (28)) + +EUTRANTraceID ::= OCTET STRING (SIZE (8)) + + +EventType ::= ENUMERATED{ + change-of-serving-cell, + ... +} + +ExtendedULInterferenceOverloadInfo ::= SEQUENCE { + associatedSubframes BIT STRING (SIZE (5)), + extended-ul-InterferenceOverloadIndication UL-InterferenceOverloadIndication, + iE-Extensions ProtocolExtensionContainer { { ExtendedULInterferenceOverloadInfo-ExtIEs} } OPTIONAL, + ... +} + +ExtendedULInterferenceOverloadInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- F + +ForbiddenInterRATs ::= ENUMERATED { + all, + geran, + utran, + cdma2000, + ..., + geranandutran, + cdma2000andutran + +} + +ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item + +ForbiddenTAs-Item ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + forbiddenTACs ForbiddenTACs, + iE-Extensions ProtocolExtensionContainer { {ForbiddenTAs-Item-ExtIEs} } OPTIONAL, + ... +} + +ForbiddenTAs-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC + +ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item + +ForbiddenLAs-Item ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + forbiddenLACs ForbiddenLACs, + iE-Extensions ProtocolExtensionContainer { {ForbiddenLAs-Item-ExtIEs} } OPTIONAL, + ... +} + +ForbiddenLAs-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC + +Fourframes ::= BIT STRING (SIZE (24)) + +FreqBandIndicator ::= INTEGER (1..256, ...) + +-- G + +GBR-QosInformation ::= SEQUENCE { + e-RAB-MaximumBitrateDL BitRate, + e-RAB-MaximumBitrateUL BitRate, + e-RAB-GuaranteedBitrateDL BitRate, + e-RAB-GuaranteedBitrateUL BitRate, + iE-Extensions ProtocolExtensionContainer { { GBR-QosInformation-ExtIEs} } OPTIONAL, + ... +} + +GBR-QosInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalENB-ID ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + eNB-ID ENB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalENB-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +GTPtunnelEndpoint ::= SEQUENCE { + transportLayerAddress TransportLayerAddress, + gTP-TEID GTP-TEI, + iE-Extensions ProtocolExtensionContainer { {GTPtunnelEndpoint-ExtIEs} } OPTIONAL, + ... +} + +GTPtunnelEndpoint-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +GTP-TEI ::= OCTET STRING (SIZE (4)) + +GUGroupIDList ::= SEQUENCE (SIZE (1..maxPools)) OF GU-Group-ID + + +GU-Group-ID ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + mME-Group-ID MME-Group-ID, + iE-Extensions ProtocolExtensionContainer { {GU-Group-ID-ExtIEs} } OPTIONAL, + ... +} + +GU-Group-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + +GUMMEI ::= SEQUENCE { + + gU-Group-ID GU-Group-ID, + mME-Code MME-Code, + iE-Extensions ProtocolExtensionContainer { {GUMMEI-ExtIEs} } OPTIONAL, + ... +} + +GUMMEI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + + +-- H + +HandoverReportType ::= ENUMERATED { + hoTooEarly, + hoToWrongCell, + ..., + interRATpingpong +} + +HandoverRestrictionList ::= SEQUENCE { + servingPLMN PLMN-Identity, + equivalentPLMNs EPLMNs OPTIONAL, + forbiddenTAs ForbiddenTAs OPTIONAL, + forbiddenLAs ForbiddenLAs OPTIONAL, + forbiddenInterRATs ForbiddenInterRATs OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL, + ... +} + +HandoverRestrictionList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +HFN ::= INTEGER (0..1048575) + +HFNModified ::= INTEGER (0..131071) + +HWLoadIndicator ::= SEQUENCE { + dLHWLoadIndicator LoadIndicator, + uLHWLoadIndicator LoadIndicator, + iE-Extensions ProtocolExtensionContainer { { HWLoadIndicator-ExtIEs} } OPTIONAL, + ... +} + +HWLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- I + +Masked-IMEISV ::= BIT STRING (SIZE (64)) + +InvokeIndication ::= ENUMERATED{ + abs-information, + ... +} + +IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16, ...)) + +InterfacesToTrace ::= BIT STRING (SIZE (8)) +-- J +-- K + + +Key-eNodeB-Star ::= BIT STRING (SIZE(256)) + +-- L + + +LAC ::= OCTET STRING (SIZE (2)) --(EXCEPT ('0000'H|'FFFE'H)) + +LastVisitedCell-Item ::= CHOICE { + e-UTRAN-Cell LastVisitedEUTRANCellInformation, + uTRAN-Cell LastVisitedUTRANCellInformation, + gERAN-Cell LastVisitedGERANCellInformation, + ... +} + +LastVisitedEUTRANCellInformation ::= SEQUENCE { + global-Cell-ID ECGI, + cellType CellType, + time-UE-StayedInCell Time-UE-StayedInCell, + iE-Extensions ProtocolExtensionContainer { { LastVisitedEUTRANCellInformation-ExtIEs} } OPTIONAL, + ... +} + +LastVisitedEUTRANCellInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { +-- Extension for Rel-11 to support enhanced granularity for time UE stayed in cell -- + { ID id-Time-UE-StayedInCell-EnhancedGranularity CRITICALITY ignore EXTENSION Time-UE-StayedInCell-EnhancedGranularity PRESENCE optional}| + { ID id-HO-cause CRITICALITY ignore EXTENSION Cause PRESENCE optional}, + ... +} + +LastVisitedUTRANCellInformation ::= OCTET STRING + +LastVisitedGERANCellInformation ::= CHOICE { + undefined NULL, + ... +} + +Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...} + +LoadIndicator ::= ENUMERATED { + lowLoad, + mediumLoad, + highLoad, + overLoad, + ... +} + + + +LocationReportingInformation ::= SEQUENCE { + eventType EventType, + reportArea ReportArea, + iE-Extensions ProtocolExtensionContainer { {LocationReportingInformation-ExtIEs} } OPTIONAL, + ... +} + +LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={ + ... +} + +-- M + +M3Configuration ::= SEQUENCE { + m3period M3period, + iE-Extensions ProtocolExtensionContainer { { M3Configuration-ExtIEs} } OPTIONAL, + ... +} + +M3Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +M3period ::= ENUMERATED {ms100, ms1000, ms10000, ... } + +M4Configuration ::= SEQUENCE { + m4period M4period, + m4-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL, + ... +} + +M4Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + + +M5Configuration ::= SEQUENCE { + m5period M5period, + m5-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M5Configuration-ExtIEs} } OPTIONAL, + ... +} + +M5Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + +MDT-Activation ::= ENUMERATED { + immediate-MDT-only, + immediate-MDT-and-Trace, + ... +} + +MDT-Configuration ::= SEQUENCE { + mdt-Activation MDT-Activation, + areaScopeOfMDT AreaScopeOfMDT, + measurementsToActivate MeasurementsToActivate, + m1reportingTrigger M1ReportingTrigger, + m1thresholdeventA2 M1ThresholdEventA2 OPTIONAL, +-- Included in case of event-triggered, or event-triggered periodic reporting for measurement M1 + m1periodicReporting M1PeriodicReporting OPTIONAL, +-- Included in case of periodic, or event-triggered periodic reporting for measurement M1 + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + {ID id-M3Configuration CRITICALITY ignore EXTENSION M3Configuration PRESENCE conditional}| + {ID id-M4Configuration CRITICALITY ignore EXTENSION M4Configuration PRESENCE conditional}| + {ID id-M5Configuration CRITICALITY ignore EXTENSION M5Configuration PRESENCE conditional}| + {ID id-MDT-Location-Info CRITICALITY ignore EXTENSION MDT-Location-Info PRESENCE optional}| + {ID id-SignallingBasedMDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional}, + ... +} + +MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity + +MDT-Location-Info ::= BIT STRING (SIZE (8)) + +MeasurementsToActivate::= BIT STRING (SIZE (8)) + +MeasurementThresholdA2 ::= CHOICE { + threshold-RSRP Threshold-RSRP, + threshold-RSRQ Threshold-RSRQ, + ... +} + +MME-Group-ID ::= OCTET STRING (SIZE (2)) + +MME-Code ::= OCTET STRING (SIZE (1)) + +Measurement-ID ::= INTEGER (1..4095, ...) + +MBMS-Service-Area-Identity-List ::= SEQUENCE (SIZE(1.. maxnoofMBMSServiceAreaIdentities)) OF MBMS-Service-Area-Identity + +MBMS-Service-Area-Identity ::= OCTET STRING (SIZE (2)) + +MBSFN-Subframe-Infolist::= SEQUENCE (SIZE(1.. maxnoofMBSFN)) OF MBSFN-Subframe-Info + +MBSFN-Subframe-Info ::= SEQUENCE { + radioframeAllocationPeriod RadioframeAllocationPeriod, + radioframeAllocationOffset RadioframeAllocationOffset, + subframeAllocation SubframeAllocation, + iE-Extensions ProtocolExtensionContainer { { MBSFN-Subframe-Info-ExtIEs } } OPTIONAL, + ... +} + +MBSFN-Subframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ManagementBasedMDTallowed ::= ENUMERATED {allowed, ...} + +MobilityParametersModificationRange ::= SEQUENCE { + handoverTriggerChangeLowerLimit INTEGER (-20..20), + handoverTriggerChangeUpperLimit INTEGER (-20..20), + ... +} + +MobilityParametersInformation ::= SEQUENCE { + handoverTriggerChange INTEGER (-20..20), + ... +} + +MultibandInfoList ::= SEQUENCE (SIZE(1..maxnoofBands)) OF BandInfo + + +BandInfo ::= SEQUENCE { + freqBandIndicator FreqBandIndicator, + iE-Extensions ProtocolExtensionContainer { { BandInfo-ExtIEs } } OPTIONAL, + ... +} + +BandInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- N + +Neighbour-Information ::= SEQUENCE (SIZE (0..maxnoofNeighbours)) OF SEQUENCE { + eCGI ECGI, + pCI PCI, + eARFCN EARFCN, + iE-Extensions ProtocolExtensionContainer { {Neighbour-Information-ExtIEs} } OPTIONAL, + ... +} + +Neighbour-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-NeighbourTAC CRITICALITY ignore EXTENSION TAC PRESENCE optional}| + { ID id-eARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional}, + ... +} + +NextHopChainingCount ::= INTEGER (0..7) + +Number-of-Antennaports ::= ENUMERATED { + an1, + an2, + an4, + ... +} + +-- O + +Oneframe ::= BIT STRING (SIZE (6)) + +-- P + +PDCP-SN ::= INTEGER (0..4095) + +PDCP-SNExtended ::= INTEGER (0..32767) + +PCI ::= INTEGER (0..503, ...) + +M1PeriodicReporting ::= SEQUENCE { + reportInterval ReportIntervalMDT, + reportAmount ReportAmountMDT, + iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL, + ... +} + +M1PeriodicReporting-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +PLMN-Identity ::= OCTET STRING (SIZE(3)) + +PRACH-Configuration ::= SEQUENCE { + rootSequenceIndex INTEGER (0..837), + zeroCorrelationIndex INTEGER (0..15), + highSpeedFlag BOOLEAN, + prach-FreqOffset INTEGER (0..94), + prach-ConfigIndex INTEGER (0..63) OPTIONAL, -- present for TDD -- + iE-Extensions ProtocolExtensionContainer { {PRACH-Configuration-ExtIEs} } OPTIONAL, + ... +} + +PRACH-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +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) + +-- Q + +QCI ::= INTEGER (0..255) + +-- R + +RadioframeAllocationOffset ::= INTEGER (0..7, ...) + +RadioframeAllocationPeriod ::= ENUMERATED{ + n1, + n2, + n4, + n8, + n16, + n32, + ... +} + + +RadioResourceStatus ::= SEQUENCE { + dL-GBR-PRB-usage DL-GBR-PRB-usage, + uL-GBR-PRB-usage UL-GBR-PRB-usage, + dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage, + uL-non-GBR-PRB-usage UL-non-GBR-PRB-usage, + dL-Total-PRB-usage DL-Total-PRB-usage, + uL-Total-PRB-usage UL-Total-PRB-usage, + iE-Extensions ProtocolExtensionContainer { {RadioResourceStatus-ExtIEs} } OPTIONAL, + ... +} + +RadioResourceStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096)) + +ReceiveStatusOfULPDCPSDUsExtended ::= BIT STRING (SIZE(1..16384)) + +Registration-Request ::= ENUMERATED { + start, + stop, + ... +} + +RelativeNarrowbandTxPower ::= SEQUENCE { + + rNTP-PerPRB BIT STRING (SIZE(6..110, ...)), + rNTP-Threshold RNTP-Threshold, + numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...}, + p-B INTEGER (0..3,...), + pDCCH-InterferenceImpact INTEGER (0..4,...), + iE-Extensions ProtocolExtensionContainer { { RelativeNarrowbandTxPower-ExtIEs} } OPTIONAL, + ... +} + +RelativeNarrowbandTxPower-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, rinfinity} + +ReportArea ::= ENUMERATED{ + ecgi, + ... +} + +ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60} + +ReportCharacteristics ::= BIT STRING (SIZE (32)) + +M1ReportingTrigger::= ENUMERATED{ + periodic, + a2eventtriggered, + ..., + a2eventtriggered-periodic +} + +RNTP-Threshold ::= ENUMERATED { + minusInfinity, + minusEleven, + minusTen, + minusNine, + minusEight, + minusSeven, + minusSix, + minusFive, + minusFour, + minusThree, + minusTwo, + minusOne, + zero, + one, + two, + three, + ... +} + +RRC-Context ::= OCTET STRING + +RRCConnReestabIndicator ::= ENUMERATED { + reconfigurationFailure, handoverFailure, otherFailure, ... +} +-- The values correspond to the values of ReestablishmentCause reported from the UE in the RRCConnectionReestablishmentRequest, as defined in TS 36.331 [9] + +RRCConnSetupIndicator::= ENUMERATED { + rrcConnSetup, + ... +} + +-- S + +S1TNLLoadIndicator ::= SEQUENCE { + dLS1TNLLoadIndicator LoadIndicator, + uLS1TNLLoadIndicator LoadIndicator, + iE-Extensions ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL, + ... +} + +S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + + + +ServedCells ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE { + servedCellInfo ServedCell-Information, + neighbour-Info Neighbour-Information OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ServedCell-ExtIEs} } OPTIONAL, + ... +} + +ServedCell-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +ServedCell-Information ::= SEQUENCE { + pCI PCI, + cellId ECGI, + tAC TAC, + broadcastPLMNs BroadcastPLMNs-Item, + eUTRA-Mode-Info EUTRA-Mode-Info, + iE-Extensions ProtocolExtensionContainer { {ServedCell-Information-ExtIEs} } OPTIONAL, + ... +} + +ServedCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-Number-of-Antennaports CRITICALITY ignore EXTENSION Number-of-Antennaports PRESENCE optional }| + { ID id-PRACH-Configuration CRITICALITY ignore EXTENSION PRACH-Configuration PRESENCE optional }| + { ID id-MBSFN-Subframe-Info CRITICALITY ignore EXTENSION MBSFN-Subframe-Infolist PRESENCE optional }| + { ID id-CSG-Id CRITICALITY ignore EXTENSION CSG-Id PRESENCE optional }| + { ID id-MBMS-Service-Area-List CRITICALITY ignore EXTENSION MBMS-Service-Area-Identity-List PRESENCE optional }| + { ID id-MultibandInfoList CRITICALITY ignore EXTENSION MultibandInfoList PRESENCE optional }, + ... +} + +ShortMAC-I ::= BIT STRING (SIZE(16)) + +SRVCCOperationPossible ::= ENUMERATED { + possible, + ... +} + +SubframeAssignment ::= ENUMERATED { + sa0, + sa1, + sa2, + sa3, + sa4, + sa5, + sa6, + ... +} + +SpecialSubframe-Info ::= SEQUENCE { + specialSubframePatterns SpecialSubframePatterns, + cyclicPrefixDL CyclicPrefixDL, + cyclicPrefixUL CyclicPrefixUL, + iE-Extensions ProtocolExtensionContainer { { SpecialSubframe-Info-ExtIEs} } OPTIONAL, + ... +} + +SpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + +SpecialSubframePatterns ::= ENUMERATED { + ssp0, + ssp1, + ssp2, + ssp3, + ssp4, + ssp5, + ssp6, + ssp7, + ssp8, + ... +} + +SubscriberProfileIDforRFP ::= INTEGER (1..256) + +SubframeAllocation ::= CHOICE { + oneframe Oneframe, + fourframes Fourframes, + ... +} + +-- T + +TAC ::= OCTET STRING (SIZE (2)) + +TABasedMDT::= SEQUENCE { + tAListforMDT TAListforMDT, + iE-Extensions ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TABasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC + +TAIBasedMDT ::= SEQUENCE { + tAIListforMDT TAIListforMDT, + iE-Extensions ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TAIBasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI-Item + +TAI-Item ::= SEQUENCE { + tAC TAC, + pLMN-Identity PLMN-Identity, + iE-Extensions ProtocolExtensionContainer { { TAI-Item-ExtIEs} } OPTIONAL, + ... +} + +TAI-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetCellInUTRAN ::= OCTET STRING -- This IE is to be encoded according to the UTRAN Cell ID in the Last Visited UTRAN Cell Information IE in TS 25.413 [24] + +M1ThresholdEventA2 ::= SEQUENCE { + measurementThreshold MeasurementThresholdA2, + iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL, + ... +} + +M1ThresholdEventA2-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +TargeteNBtoSource-eNBTransparentContainer ::= OCTET STRING + +Threshold-RSRP ::= INTEGER(0..97) + +Threshold-RSRQ ::= INTEGER(0..34) + +TimeToWait ::= ENUMERATED { + v1s, + v2s, + v5s, + v10s, + v20s, + v60s, + ... +} + +Time-UE-StayedInCell ::= INTEGER (0..4095) + +Time-UE-StayedInCell-EnhancedGranularity ::= INTEGER (0..40950) + + +TraceActivation ::= SEQUENCE { + eUTRANTraceID EUTRANTraceID, + interfacesToTrace InterfacesToTrace, +traceDepth TraceDepth, +traceCollectionEntityIPAddress TraceCollectionEntityIPAddress, + iE-Extensions ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL, + ... +} + +TraceActivation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-MDTConfiguration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional}, + ... +} + +TraceCollectionEntityIPAddress ::= BIT STRING (SIZE(1..160, ...)) + +TraceDepth ::= ENUMERATED { + minimum, + medium, + maximum, + minimumWithoutVendorSpecificExtension, + mediumWithoutVendorSpecificExtension, + maximumWithoutVendorSpecificExtension, + ... +} + + + + +Transmission-Bandwidth ::= ENUMERATED { + bw6, + bw15, + bw25, + bw50, + bw75, + bw100, + ... +} + +TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...)) + +TypeOfError ::= ENUMERATED { + not-understood, + missing, + ... +} + + +-- U + +UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) OF LastVisitedCell-Item + + +UE-S1AP-ID ::= INTEGER (0.. 4294967295) + +UE-X2AP-ID ::= INTEGER (0..4095) + +UEAggregateMaximumBitRate ::= SEQUENCE { + uEaggregateMaximumBitRateDownlink BitRate, + uEaggregateMaximumBitRateUplink BitRate, + iE-Extensions ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL, + ... +} + +UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +UESecurityCapabilities ::= SEQUENCE { + encryptionAlgorithms EncryptionAlgorithms, + integrityProtectionAlgorithms IntegrityProtectionAlgorithms, + iE-Extensions ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} } OPTIONAL, +... +} + +UESecurityCapabilities-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +UL-GBR-PRB-usage::= INTEGER (0..100) + +UL-non-GBR-PRB-usage::= INTEGER (0..100) + +UL-Total-PRB-usage::= INTEGER (0..100) + +UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item + +UL-InterferenceOverloadIndication-Item ::= ENUMERATED { + high-interference, + medium-interference, + low-interference, + ... +} + +UL-HighInterferenceIndicationInfo ::= SEQUENCE (SIZE(1..maxCellineNB)) OF UL-HighInterferenceIndicationInfo-Item + +UL-HighInterferenceIndicationInfo-Item ::= SEQUENCE { + target-Cell-ID ECGI, + ul-interferenceindication UL-HighInterferenceIndication, + iE-Extensions ProtocolExtensionContainer { { UL-HighInterferenceIndicationInfo-Item-ExtIEs} } OPTIONAL, + ... +} + +UL-HighInterferenceIndicationInfo-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +UL-HighInterferenceIndication ::= BIT STRING (SIZE(1..110, ...)) + +UE-RLF-Report-Container::= OCTET STRING +-- This IE is a transparent container and shall be encoded as the rlfReport field contained in the UEInformationResponse message as defined in TS 36.331 [9] + +UsableABSInformation ::= CHOICE { + fdd UsableABSInformationFDD, + tdd UsableABSInformationTDD, + ... +} + +UsableABSInformationFDD ::= SEQUENCE { + usable-abs-pattern-info BIT STRING (SIZE(40)), + iE-Extensions ProtocolExtensionContainer { { UsableABSInformationFDD-ExtIEs} } OPTIONAL, + ... +} + +UsableABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +UsableABSInformationTDD ::= SEQUENCE { + usaable-abs-pattern-info BIT STRING (SIZE(1..70, ...)), + iE-Extensions ProtocolExtensionContainer { { UsableABSInformationTDD-ExtIEs} } OPTIONAL, + ... +} + +UsableABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- V +-- W +-- X +-- Y +-- Z + +END diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn new file mode 100644 index 0000000000..a73d78794f --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn @@ -0,0 +1,1066 @@ +-- 3GPP TS 36.423 V12.2.0 (2014-06) +-- 9.3.4 PDU Definitions +-- ************************************************************** +-- +-- PDU definitions for X2AP. +-- +-- ************************************************************** + +X2AP-PDU-Contents { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Contents (1) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + ABSInformation, + ABS-Status, + AS-SecurityInformation, + Cause, + CompositeAvailableCapacityGroup, + COUNTvalue, + CriticalityDiagnostics, + CRNTI, + CSGMembershipStatus, + CSG-Id, + DeactivationIndication, + DL-Forwarding, + ECGI, + E-RAB-ID, + E-RAB-Level-QoS-Parameters, + E-RAB-List, + EUTRANTraceID, + GlobalENB-ID, + GTPtunnelEndpoint, + GUGroupIDList, + GUMMEI, + HandoverReportType, + HandoverRestrictionList, + Masked-IMEISV, + InvokeIndication, + LocationReportingInformation, + MDT-Configuration, + ManagementBasedMDTallowed, + MDTPLMNList, + Neighbour-Information, + PCI, + PDCP-SN, + PLMN-Identity, + ReceiveStatusofULPDCPSDUs, + Registration-Request, + RelativeNarrowbandTxPower, + RadioResourceStatus, + RRCConnReestabIndicator, + RRCConnSetupIndicator, + UE-RLF-Report-Container, + RRC-Context, + ServedCell-Information, + ServedCells, + ShortMAC-I, + SRVCCOperationPossible, + SubscriberProfileIDforRFP, + TargetCellInUTRAN, + TargeteNBtoSource-eNBTransparentContainer, + TimeToWait, + TraceActivation, + TraceDepth, + + TransportLayerAddress, + UEAggregateMaximumBitRate, + UE-HistoryInformation, + UE-S1AP-ID, + UESecurityCapabilities, + UE-X2AP-ID, + UL-HighInterferenceIndicationInfo, + UL-InterferenceOverloadIndication, + HWLoadIndicator, + S1TNLLoadIndicator, + Measurement-ID, + ReportCharacteristics, + MobilityParametersInformation, + MobilityParametersModificationRange, + ReceiveStatusOfULPDCPSDUsExtended, + COUNTValueExtended, + SubframeAssignment, + ExtendedULInterferenceOverloadInfo + + + +FROM X2AP-IEs + + PrivateIE-Container{}, + ProtocolExtensionContainer{}, + ProtocolIE-Container{}, + ProtocolIE-ContainerList{}, + ProtocolIE-ContainerPair{}, + ProtocolIE-ContainerPairList{}, + ProtocolIE-Single-Container{}, + X2AP-PRIVATE-IES, + X2AP-PROTOCOL-EXTENSION, + X2AP-PROTOCOL-IES, + X2AP-PROTOCOL-IES-PAIR +FROM X2AP-Containers + + id-ABSInformation, + id-ActivatedCellList, + id-Cause, + id-CellInformation, + id-CellInformation-Item, + id-CellMeasurementResult, + id-CellMeasurementResult-Item, + id-CellToReport, + id-CellToReport-Item, + id-CompositeAvailableCapacityGroup, + id-CriticalityDiagnostics, + id-DeactivationIndication, + id-E-RABs-Admitted-Item, + id-E-RABs-Admitted-List, + id-E-RABs-NotAdmitted-List, + id-E-RABs-SubjectToStatusTransfer-List, + id-E-RABs-SubjectToStatusTransfer-Item, + id-E-RABs-ToBeSetup-Item, + id-GlobalENB-ID, + id-GUGroupIDList, + id-GUGroupIDToAddList, + id-GUGroupIDToDeleteList, + id-GUMMEI-ID, + id-Masked-IMEISV, + id-InvokeIndication, + id-New-eNB-UE-X2AP-ID, + id-Old-eNB-UE-X2AP-ID, + id-Registration-Request, + id-ReportingPeriodicity, + id-ServedCells, + id-ServedCellsToActivate, + id-ServedCellsToAdd, + id-ServedCellsToModify, + id-ServedCellsToDelete, + id-SRVCCOperationPossible, + id-TargetCell-ID, + id-TargeteNBtoSource-eNBTransparentContainer, + id-TimeToWait, + id-TraceActivation, + id-UE-ContextInformation, + id-UE-HistoryInformation, + id-UE-X2AP-ID, + id-Measurement-ID, + id-ReportCharacteristics, + id-ENB1-Measurement-ID, + id-ENB2-Measurement-ID, + id-ENB1-Cell-ID, + id-ENB2-Cell-ID, + id-ENB2-Proposed-Mobility-Parameters, + id-ENB1-Mobility-Parameters, + id-ENB2-Mobility-Parameters-Modification-Range, + id-FailureCellPCI, + id-Re-establishmentCellECGI, + id-FailureCellCRNTI, + id-ShortMAC-I, + id-SourceCellECGI, + id-FailureCellECGI, + id-HandoverReportType, + id-UE-RLF-Report-Container, + id-PartialSuccessIndicator, + id-MeasurementInitiationResult-List, + id-MeasurementInitiationResult-Item, + id-MeasurementFailureCause-Item, + id-CompleteFailureCauseInformation-List, + id-CompleteFailureCauseInformation-Item, + id-CSGMembershipStatus, + id-CSG-Id, + id-MDTConfiguration, + id-ManagementBasedMDTallowed, + id-ABS-Status, + id-RRCConnSetupIndicator, + id-RRCConnReestabIndicator, + id-TargetCellInUTRAN, + id-MobilityInformation, + id-SourceCellCRNTI, + id-ManagementBasedMDTPLMNList, + id-ReceiveStatusOfULPDCPSDUsExtended, + id-ULCOUNTValueExtended, + id-DLCOUNTValueExtended, + id-IntendedULDLConfiguration, + id-ExtendedULInterferenceOverloadInfo, + id-RNL-Header, + id-x2APMessage, + + maxCellineNB, + maxnoofBearers, + maxnoofPDCP-SN, + maxFailedMeasObjects, + maxnoofCellIDforMDT, + maxnoofTAforMDT + +FROM X2AP-Constants; + +-- ************************************************************** +-- +-- HANDOVER REQUEST +-- +-- ************************************************************** + +HandoverRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{HandoverRequest-IEs}}, + ... +} + +HandoverRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-TargetCell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory}| + { ID id-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE mandatory}| + { ID id-UE-ContextInformation CRITICALITY reject TYPE UE-ContextInformation PRESENCE mandatory}| + { ID id-UE-HistoryInformation CRITICALITY ignore TYPE UE-HistoryInformation PRESENCE mandatory}| + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional}| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}| + { ID id-CSGMembershipStatus CRITICALITY reject TYPE CSGMembershipStatus PRESENCE optional}| + { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}| + { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional}, + ... +} + +UE-ContextInformation ::= SEQUENCE { + mME-UE-S1AP-ID UE-S1AP-ID, + uESecurityCapabilities UESecurityCapabilities, + aS-SecurityInformation AS-SecurityInformation, + uEaggregateMaximumBitRate UEAggregateMaximumBitRate, + subscriberProfileIDforRFP SubscriberProfileIDforRFP OPTIONAL, + e-RABs-ToBeSetup-List E-RABs-ToBeSetup-List, + rRC-Context RRC-Context, + handoverRestrictionList HandoverRestrictionList OPTIONAL, + locationReportingInformation LocationReportingInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UE-ContextInformation-ExtIEs} } OPTIONAL, + ... +} + +UE-ContextInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { +{ ID id-ManagementBasedMDTallowed CRITICALITY ignore EXTENSION ManagementBasedMDTallowed PRESENCE optional }| +{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional }, + ... +} + +E-RABs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeSetup-ItemIEs} } + +E-RABs-ToBeSetup-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-E-RABs-ToBeSetup-Item CRITICALITY ignore TYPE E-RABs-ToBeSetup-Item PRESENCE mandatory }, + ... +} + +E-RABs-ToBeSetup-Item ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + e-RAB-Level-QoS-Parameters E-RAB-Level-QoS-Parameters, + dL-Forwarding DL-Forwarding OPTIONAL, + uL-GTPtunnelEndpoint GTPtunnelEndpoint, + iE-Extensions ProtocolExtensionContainer { {E-RABs-ToBeSetup-ItemExtIEs} } OPTIONAL, + ... +} + +E-RABs-ToBeSetup-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +MobilityInformation ::= BIT STRING (SIZE(32)) + + +-- ************************************************************** +-- +-- HANDOVER REQUEST ACKNOWLEDGE +-- +-- ************************************************************** + +HandoverRequestAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{HandoverRequestAcknowledge-IEs}}, + ... +} + +HandoverRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-E-RABs-Admitted-List CRITICALITY ignore TYPE E-RABs-Admitted-List PRESENCE mandatory} | + { ID id-E-RABs-NotAdmitted-List CRITICALITY ignore TYPE E-RAB-List PRESENCE optional} | + { ID id-TargeteNBtoSource-eNBTransparentContainer CRITICALITY ignore TYPE TargeteNBtoSource-eNBTransparentContainer PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +E-RABs-Admitted-List ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ItemIEs} } + +E-RABs-Admitted-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-E-RABs-Admitted-Item CRITICALITY ignore TYPE E-RABs-Admitted-Item PRESENCE mandatory } +} + +E-RABs-Admitted-Item ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + uL-GTP-TunnelEndpoint GTPtunnelEndpoint OPTIONAL, + dL-GTP-TunnelEndpoint GTPtunnelEndpoint OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {E-RABs-Admitted-Item-ExtIEs} } OPTIONAL, + ... +} + +E-RABs-Admitted-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + + +-- ************************************************************** +-- +-- HANDOVER PREPARATION FAILURE +-- +-- ************************************************************** + +HandoverPreparationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{HandoverPreparationFailure-IEs}}, + ... +} + +HandoverPreparationFailure-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} | + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + + ... +} + +-- ************************************************************** +-- +-- Handover Report +-- +-- ************************************************************** + +HandoverReport ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{HandoverReport-IEs}}, + ... +} + +HandoverReport-IEs X2AP-PROTOCOL-IES ::= { + { ID id-HandoverReportType CRITICALITY ignore TYPE HandoverReportType PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-SourceCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}| + { ID id-FailureCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}| + { ID id-Re-establishmentCellECGI CRITICALITY ignore TYPE ECGI PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to “HO to Wrong Cell” -- | + { ID id-TargetCellInUTRAN CRITICALITY ignore TYPE TargetCellInUTRAN PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to "InterRAT ping-pong" --| + { ID id-SourceCellCRNTI CRITICALITY ignore TYPE CRNTI PRESENCE optional}| + { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}| + { ID id-UE-RLF-Report-Container CRITICALITY ignore TYPE UE-RLF-Report-Container PRESENCE optional}, + ... +} + +-- ************************************************************** +-- +-- SN Status Transfer +-- +-- ************************************************************** + +SNStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{SNStatusTransfer-IEs}}, + ... +} + +SNStatusTransfer-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-New-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-E-RABs-SubjectToStatusTransfer-List CRITICALITY ignore TYPE E-RABs-SubjectToStatusTransfer-List PRESENCE mandatory} , + ... +} + +E-RABs-SubjectToStatusTransfer-List ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { { E-RABs-SubjectToStatusTransfer-ItemIEs} } + +E-RABs-SubjectToStatusTransfer-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-E-RABs-SubjectToStatusTransfer-Item CRITICALITY ignore TYPE E-RABs-SubjectToStatusTransfer-Item PRESENCE mandatory } +} + +E-RABs-SubjectToStatusTransfer-Item ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + + receiveStatusofULPDCPSDUs ReceiveStatusofULPDCPSDUs OPTIONAL, + uL-COUNTvalue COUNTvalue, + dL-COUNTvalue COUNTvalue, + iE-Extensions ProtocolExtensionContainer { {E-RABs-SubjectToStatusTransfer-ItemExtIEs} } OPTIONAL, + ... +} + +E-RABs-SubjectToStatusTransfer-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-ReceiveStatusOfULPDCPSDUsExtended CRITICALITY ignore EXTENSION ReceiveStatusOfULPDCPSDUsExtended PRESENCE optional}| + { ID id-ULCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional}| + { ID id-DLCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional}, + ... +} + + + + + +-- ************************************************************** +-- +-- UE Context Release +-- +-- ************************************************************** + +UEContextRelease ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{UEContextRelease-IEs}}, + ... +} + +UEContextRelease-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-New-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} , + ... +} + + +-- ************************************************************** +-- +-- HANDOVER CANCEL +-- +-- ************************************************************** + +HandoverCancel ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{HandoverCancel-IEs}}, + ... +} + +HandoverCancel-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} | + { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} | + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} , + ... +} + +-- ************************************************************** +-- +-- ERROR INDICATION +-- +-- ************************************************************** + +ErrorIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ErrorIndication-IEs}}, + ... +} + +ErrorIndication-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} | + { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} | + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional} | + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional} , + ... +} + +-- ************************************************************** +-- +-- Reset Request +-- +-- ************************************************************** + +ResetRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResetRequest-IEs}}, + ... +} + +ResetRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- Reset Response +-- +-- ************************************************************** + +ResetResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResetResponse-IEs}}, + ... +} + +ResetResponse-IEs X2AP-PROTOCOL-IES ::= { + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- X2 SETUP REQUEST +-- +-- ************************************************************** + +X2SetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{X2SetupRequest-IEs}}, + ... +} + +X2SetupRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory} | + { ID id-ServedCells CRITICALITY reject TYPE ServedCells PRESENCE mandatory} | + { ID id-GUGroupIDList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional}, +... +} + + + +-- ************************************************************** +-- +-- X2 SETUP RESPONSE +-- +-- ************************************************************** + +X2SetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{X2SetupResponse-IEs}}, + ... +} + +X2SetupResponse-IEs X2AP-PROTOCOL-IES ::= { + { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory} | + { ID id-ServedCells CRITICALITY reject TYPE ServedCells PRESENCE mandatory} | + { ID id-GUGroupIDList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + + +-- ************************************************************** +-- +-- X2 SETUP FAILURE +-- +-- ************************************************************** + +X2SetupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{X2SetupFailure-IEs}}, + ... +} + +X2SetupFailure-IEs X2AP-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 }, + + ... +} + + + +-- ************************************************************** +-- +-- LOAD INFORMATION +-- +-- ************************************************************** + +LoadInformation ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{LoadInformation-IEs}}, + ... +} + +LoadInformation-IEs X2AP-PROTOCOL-IES ::= { + { ID id-CellInformation CRITICALITY ignore TYPE CellInformation-List PRESENCE mandatory} , + ... +} + +CellInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellInformation-ItemIEs} } + +CellInformation-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-CellInformation-Item CRITICALITY ignore TYPE CellInformation-Item PRESENCE mandatory } +} + +CellInformation-Item ::= SEQUENCE { + cell-ID ECGI, + ul-InterferenceOverloadIndication UL-InterferenceOverloadIndication OPTIONAL, + ul-HighInterferenceIndicationInfo UL-HighInterferenceIndicationInfo OPTIONAL, + relativeNarrowbandTxPower RelativeNarrowbandTxPower OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CellInformation-Item-ExtIEs} } OPTIONAL, + ... +} + +CellInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { +{ ID id-ABSInformation CRITICALITY ignore EXTENSION ABSInformation PRESENCE optional }| +{ ID id-InvokeIndication CRITICALITY ignore EXTENSION InvokeIndication PRESENCE optional }| +{ ID id-IntendedULDLConfiguration CRITICALITY ignore EXTENSION SubframeAssignment PRESENCE optional }| +{ ID id-ExtendedULInterferenceOverloadInfo CRITICALITY ignore EXTENSION ExtendedULInterferenceOverloadInfo PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- ENB CONFIGURATION UPDATE +-- +-- ************************************************************** + +ENBConfigurationUpdate ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ENBConfigurationUpdate-IEs}}, + ... +} + +ENBConfigurationUpdate-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ServedCellsToAdd CRITICALITY reject TYPE ServedCells PRESENCE optional} | + { ID id-ServedCellsToModify CRITICALITY reject TYPE ServedCellsToModify PRESENCE optional} | + { ID id-ServedCellsToDelete CRITICALITY reject TYPE Old-ECGIs PRESENCE optional} | + { ID id-GUGroupIDToAddList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional} | + { ID id-GUGroupIDToDeleteList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional}, + ... +} + +ServedCellsToModify::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToModify-Item + +ServedCellsToModify-Item::= SEQUENCE { + old-ecgi ECGI, + servedCellInfo ServedCell-Information, + neighbour-Info Neighbour-Information OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { ServedCellsToModify-Item-ExtIEs} } OPTIONAL, + ... +} + +ServedCellsToModify-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { +{ ID id-DeactivationIndication CRITICALITY ignore EXTENSION DeactivationIndication PRESENCE optional }, + ... +} + + +Old-ECGIs::= SEQUENCE (SIZE (1..maxCellineNB)) OF ECGI + +-- ************************************************************** +-- +-- ENB CONFIGURATION UPDATE ACKNOWLEDGE +-- +-- ************************************************************** + +ENBConfigurationUpdateAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ENBConfigurationUpdateAcknowledge-IEs}}, + ... +} + +ENBConfigurationUpdateAcknowledge-IEs X2AP-PROTOCOL-IES ::= { + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, +... +} + +-- ************************************************************** +-- +-- ENB CONFIGURATION UPDATE FAIURE +-- +-- ************************************************************** + +ENBConfigurationUpdateFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ENBConfigurationUpdateFailure-IEs}}, + ... +} + +ENBConfigurationUpdateFailure-IEs X2AP-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 }, + ... +} + + + +-- ************************************************************** +-- +-- Resource Status Request +-- +-- ************************************************************** + +ResourceStatusRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResourceStatusRequest-IEs}}, + ... +} + +ResourceStatusRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-ENB2-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE conditional}|-- The IE shall be present if the Registration Request IE is set to “Stop”-- + { ID id-Registration-Request CRITICALITY reject TYPE Registration-Request PRESENCE mandatory}| + { ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE optional}| + { ID id-CellToReport CRITICALITY ignore TYPE CellToReport-List PRESENCE mandatory}| + { ID id-ReportingPeriodicity CRITICALITY ignore TYPE ReportingPeriodicity PRESENCE optional}| + { ID id-PartialSuccessIndicator CRITICALITY ignore TYPE PartialSuccessIndicator PRESENCE optional}, + ... +} + + +CellToReport-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellToReport-ItemIEs} } + +CellToReport-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-CellToReport-Item CRITICALITY ignore TYPE CellToReport-Item PRESENCE mandatory } +} + +CellToReport-Item ::= SEQUENCE { + cell-ID ECGI, + iE-Extensions ProtocolExtensionContainer { {CellToReport-Item-ExtIEs} } OPTIONAL, + ... +} + +CellToReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + + +ReportingPeriodicity ::= ENUMERATED { + one-thousand-ms, + two-thousand-ms, + five-thousand-ms, + ten-thousand-ms, +... +} + +PartialSuccessIndicator ::= ENUMERATED { + partial-success-allowed, +... +} + +-- ************************************************************** +-- +-- Resource Status Response +-- +-- ************************************************************** + +ResourceStatusResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResourceStatusResponse-IEs}}, + ... +} + +ResourceStatusResponse-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}| + { ID id-MeasurementInitiationResult-List CRITICALITY ignore TYPE MeasurementInitiationResult-List PRESENCE optional}, + ... +} + + +MeasurementInitiationResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { { MeasurementInitiationResult-ItemIEs} } + +MeasurementInitiationResult-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-MeasurementInitiationResult-Item CRITICALITY ignore TYPE MeasurementInitiationResult-Item PRESENCE mandatory} +} + +MeasurementInitiationResult-Item ::= SEQUENCE { + cell-ID ECGI, + measurementFailureCause-List MeasurementFailureCause-List OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MeasurementInitiationResult-Item-ExtIEs} } OPTIONAL, + ... +} + +MeasurementInitiationResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +MeasurementFailureCause-List ::= SEQUENCE (SIZE (1..maxFailedMeasObjects)) OF ProtocolIE-Single-Container { { MeasurementFailureCause-ItemIEs} } + +MeasurementFailureCause-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-MeasurementFailureCause-Item CRITICALITY ignore TYPE MeasurementFailureCause-Item PRESENCE mandatory} +} + +MeasurementFailureCause-Item ::= SEQUENCE { + measurementFailedReportCharacteristics ReportCharacteristics, + cause Cause, + iE-Extensions ProtocolExtensionContainer { { MeasurementFailureCause-Item-ExtIEs} } OPTIONAL, + ... +} + +MeasurementFailureCause-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- Resource Status Failure +-- +-- ************************************************************** + +ResourceStatusFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResourceStatusFailure-IEs}}, + ... +} + +ResourceStatusFailure-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}| + { ID id-CompleteFailureCauseInformation-List CRITICALITY ignore TYPE CompleteFailureCauseInformation-List PRESENCE optional}, + ... +} + +CompleteFailureCauseInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CompleteFailureCauseInformation-ItemIEs} } + +CompleteFailureCauseInformation-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-CompleteFailureCauseInformation-Item CRITICALITY ignore TYPE CompleteFailureCauseInformation-Item PRESENCE mandatory} +} + +CompleteFailureCauseInformation-Item ::= SEQUENCE { + cell-ID ECGI, + measurementFailureCause-List MeasurementFailureCause-List, + iE-Extensions ProtocolExtensionContainer { { CompleteFailureCauseInformation-Item-ExtIEs} } OPTIONAL, + ... +} + +CompleteFailureCauseInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- Resource Status Update +-- +-- ************************************************************** + +ResourceStatusUpdate ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ResourceStatusUpdate-IEs}}, + ... +} + +ResourceStatusUpdate-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| + { ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult-List PRESENCE mandatory}, + ... +} + +CellMeasurementResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellMeasurementResult-ItemIEs} } + +CellMeasurementResult-ItemIEs X2AP-PROTOCOL-IES ::= { + { ID id-CellMeasurementResult-Item CRITICALITY ignore TYPE CellMeasurementResult-Item PRESENCE mandatory } +} + +CellMeasurementResult-Item ::= SEQUENCE { + cell-ID ECGI, + hWLoadIndicator HWLoadIndicator OPTIONAL, + s1TNLLoadIndicator S1TNLLoadIndicator OPTIONAL, + radioResourceStatus RadioResourceStatus OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CellMeasurementResult-Item-ExtIEs} } OPTIONAL, + ... +} + +CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + { ID id-CompositeAvailableCapacityGroup CRITICALITY ignore EXTENSION CompositeAvailableCapacityGroup PRESENCE optional}| + { ID id-ABS-Status CRITICALITY ignore EXTENSION ABS-Status PRESENCE optional}, + ... +} + + +-- ************************************************************** +-- +-- PRIVATE MESSAGE +-- +-- ************************************************************** + +PrivateMessage ::= SEQUENCE { + privateIEs PrivateIE-Container {{PrivateMessage-IEs}}, + ... +} + +PrivateMessage-IEs X2AP-PRIVATE-IES ::= { + ... +} + +-- ************************************************************** +-- +-- MOBILITY CHANGE REQUEST +-- +-- ************************************************************** + +MobilityChangeRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{MobilityChangeRequest-IEs}}, + ... +} + +MobilityChangeRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }| + { ID id-ENB2-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }| + { ID id-ENB1-Mobility-Parameters CRITICALITY ignore TYPE MobilityParametersInformation PRESENCE optional }| + { ID id-ENB2-Proposed-Mobility-Parameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE mandatory }| + { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- MOBILITY CHANGE ACKNOWLEDGE +-- +-- ************************************************************** + +MobilityChangeAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{MobilityChangeAcknowledge-IEs}}, + ... +} + +MobilityChangeAcknowledge-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }| + { ID id-ENB2-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- MOBILITY CHANGE FAILURE +-- +-- ************************************************************** + +MobilityChangeFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{MobilityChangeFailure-IEs}}, + ... +} + +MobilityChangeFailure-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ENB1-Cell-ID CRITICALITY ignore TYPE ECGI PRESENCE mandatory }| + { ID id-ENB2-Cell-ID CRITICALITY ignore TYPE ECGI PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-ENB2-Mobility-Parameters-Modification-Range CRITICALITY ignore TYPE MobilityParametersModificationRange PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Radio Link Failure Indication +-- +-- ************************************************************** + +RLFIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RLFIndication-IEs}}, + ... +} + +RLFIndication-IEs X2AP-PROTOCOL-IES ::= { + { ID id-FailureCellPCI CRITICALITY ignore TYPE PCI PRESENCE mandatory}| + { ID id-Re-establishmentCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}| + { ID id-FailureCellCRNTI CRITICALITY ignore TYPE CRNTI PRESENCE mandatory}| + { ID id-ShortMAC-I CRITICALITY ignore TYPE ShortMAC-I PRESENCE optional}| + { ID id-UE-RLF-Report-Container CRITICALITY ignore TYPE UE-RLF-Report-Container PRESENCE optional}| + { ID id-RRCConnSetupIndicator CRITICALITY reject TYPE RRCConnSetupIndicator PRESENCE optional}| + { ID id-RRCConnReestabIndicator CRITICALITY ignore TYPE RRCConnReestabIndicator PRESENCE optional}, + ... +} + + +-- ************************************************************** +-- +-- Cell Activation Request +-- +-- ************************************************************** + +CellActivationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{CellActivationRequest-IEs}}, + ... +} + +CellActivationRequest-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ServedCellsToActivate CRITICALITY reject TYPE ServedCellsToActivate PRESENCE mandatory }, + ... +} + +ServedCellsToActivate::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToActivate-Item + +ServedCellsToActivate-Item::= SEQUENCE { + ecgi ECGI, + iE-Extensions ProtocolExtensionContainer { { ServedCellsToActivate-Item-ExtIEs} } OPTIONAL, + ... +} + +ServedCellsToActivate-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- Cell Activation Response +-- +-- ************************************************************** + +CellActivationResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{CellActivationResponse-IEs}}, + ... +} + +CellActivationResponse-IEs X2AP-PROTOCOL-IES ::= { + { ID id-ActivatedCellList CRITICALITY ignore TYPE ActivatedCellList PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +ActivatedCellList ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ActivatedCellList-Item + +ActivatedCellList-Item::= SEQUENCE { + ecgi ECGI, + iE-Extensions ProtocolExtensionContainer { { ActivatedCellList-Item-ExtIEs} } OPTIONAL, + ... +} + +ActivatedCellList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +--************************************************************** +-- +-- CELL ACTIVATION FAILURE +-- +-- ************************************************************** + +CellActivationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{CellActivationFailure-IEs}}, + ... +} + +CellActivationFailure-IEs X2AP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- X2 RELEASE +-- +-- ************************************************************** + +X2Release ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{X2Release-IEs}}, + ... +} + +X2Release-IEs X2AP-PROTOCOL-IES ::= { + { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory}, +... +} + +-- ************************************************************** +-- +-- X2 Message Transfer +-- +-- ************************************************************** + +X2MessageTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{X2MessageTransfer-IEs}}, + ... +} + +X2MessageTransfer-IEs X2AP-PROTOCOL-IES ::= { + { ID id-RNL-Header CRITICALITY reject TYPE RNL-Header PRESENCE mandatory}| + { ID id-x2APMessage CRITICALITY reject TYPE X2AP-Message PRESENCE optional}, + ... +} + +RNL-Header ::= SEQUENCE { + target-GlobalENB-ID GlobalENB-ID OPTIONAL, + source-GlobalENB-ID GlobalENB-ID, + iE-Extensions ProtocolExtensionContainer { { RNL-Header-Item-ExtIEs} } OPTIONAL, + ... +} + +RNL-Header-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= { + ... +} + +X2AP-Message ::= OCTET STRING + +END diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn new file mode 100644 index 0000000000..189e45ad5a --- /dev/null +++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn @@ -0,0 +1,313 @@ +-- 3GPP TS 36.423 V12.2.0 (2014-06) +-- 9.3.3 Elementary Procedure Definitions +-- ************************************************************** +-- +-- Elementary Procedure definitions +-- +-- ************************************************************** + + X2AP-PDU-Descriptions { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Descriptions (0) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + Criticality, + ProcedureCode +FROM X2AP-CommonDataTypes + + + CellActivationRequest, + CellActivationResponse, + CellActivationFailure, + ENBConfigurationUpdate, + ENBConfigurationUpdateAcknowledge, + ENBConfigurationUpdateFailure, + ErrorIndication, + HandoverCancel, + HandoverReport, + HandoverPreparationFailure, + HandoverRequest, + HandoverRequestAcknowledge, + LoadInformation, + PrivateMessage, + ResetRequest, + ResetResponse, + ResourceStatusFailure, + ResourceStatusRequest, + ResourceStatusResponse, + ResourceStatusUpdate, + RLFIndication, + SNStatusTransfer, + UEContextRelease, + X2SetupFailure, + X2SetupRequest, + X2SetupResponse, + MobilityChangeRequest, + MobilityChangeAcknowledge, + MobilityChangeFailure, + X2Release, + X2MessageTransfer + + + +FROM X2AP-PDU-Contents + + id-cellActivation, + id-eNBConfigurationUpdate, + id-errorIndication, + id-handoverCancel, + id-handoverReport, + id-handoverPreparation, + + id-loadIndication, + id-privateMessage, + id-reset, + + id-resourceStatusReporting, + id-resourceStatusReportingInitiation, + id-rLFIndication, + id-snStatusTransfer, + id-uEContextRelease, + id-x2Setup, + id-mobilitySettingsChange, + id-x2Release, + id-x2MessageTransfer + + + + +FROM X2AP-Constants; + +-- ************************************************************** +-- +-- Interface Elementary Procedure Class +-- +-- ************************************************************** + +X2AP-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 +-- +-- ************************************************************** + +X2AP-PDU ::= CHOICE { + initiatingMessage InitiatingMessage, + successfulOutcome SuccessfulOutcome, + unsuccessfulOutcome UnsuccessfulOutcome, + ... +} + +InitiatingMessage ::= SEQUENCE { + procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}), + criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value X2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +SuccessfulOutcome ::= SEQUENCE { + procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}), + criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value X2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +UnsuccessfulOutcome ::= SEQUENCE { + procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}), + criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value X2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + + +-- ************************************************************** +-- +-- Interface Elementary Procedure List +-- +-- ************************************************************** + +X2AP-ELEMENTARY-PROCEDURES X2AP-ELEMENTARY-PROCEDURE ::= { + X2AP-ELEMENTARY-PROCEDURES-CLASS-1 | + X2AP-ELEMENTARY-PROCEDURES-CLASS-2 , + ... +} + +X2AP-ELEMENTARY-PROCEDURES-CLASS-1 X2AP-ELEMENTARY-PROCEDURE ::= { + handoverPreparation | + reset | + x2Setup | + resourceStatusReportingInitiation | + eNBConfigurationUpdate | + mobilitySettingsChange | + cellActivation , + ... +} + +X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= { + snStatusTransfer | + uEContextRelease | + handoverCancel | + errorIndication | + resourceStatusReporting | + loadIndication | + privateMessage | + rLFIndication | + handoverReport | + x2Release | + x2MessageTransfer, + ... + +} + + +-- ************************************************************** +-- +-- Interface Elementary Procedures +-- +-- ************************************************************** + +handoverPreparation X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverRequest + SUCCESSFUL OUTCOME HandoverRequestAcknowledge + UNSUCCESSFUL OUTCOME HandoverPreparationFailure + PROCEDURE CODE id-handoverPreparation + CRITICALITY reject +} + +snStatusTransfer X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE SNStatusTransfer + PROCEDURE CODE id-snStatusTransfer + CRITICALITY ignore +} + +uEContextRelease X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextRelease + PROCEDURE CODE id-uEContextRelease + CRITICALITY ignore +} + + +handoverCancel X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverCancel + PROCEDURE CODE id-handoverCancel + CRITICALITY ignore +} + +handoverReport X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverReport + PROCEDURE CODE id-handoverReport + CRITICALITY ignore +} + +errorIndication X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ErrorIndication + PROCEDURE CODE id-errorIndication + CRITICALITY ignore +} + +reset X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ResetRequest + SUCCESSFUL OUTCOME ResetResponse + PROCEDURE CODE id-reset + CRITICALITY reject +} + +x2Setup X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE X2SetupRequest + SUCCESSFUL OUTCOME X2SetupResponse + UNSUCCESSFUL OUTCOME X2SetupFailure + PROCEDURE CODE id-x2Setup + CRITICALITY reject +} + + +loadIndication X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE LoadInformation + PROCEDURE CODE id-loadIndication + CRITICALITY ignore +} + +eNBConfigurationUpdate X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ENBConfigurationUpdate + SUCCESSFUL OUTCOME ENBConfigurationUpdateAcknowledge + UNSUCCESSFUL OUTCOME ENBConfigurationUpdateFailure + PROCEDURE CODE id-eNBConfigurationUpdate + CRITICALITY reject +} + +resourceStatusReportingInitiation X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ResourceStatusRequest + SUCCESSFUL OUTCOME ResourceStatusResponse + UNSUCCESSFUL OUTCOME ResourceStatusFailure + PROCEDURE CODE id-resourceStatusReportingInitiation + CRITICALITY reject +} + +resourceStatusReporting X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ResourceStatusUpdate + PROCEDURE CODE id-resourceStatusReporting + CRITICALITY ignore +} + +rLFIndication X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RLFIndication + PROCEDURE CODE id-rLFIndication + CRITICALITY ignore +} + +privateMessage X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PrivateMessage + PROCEDURE CODE id-privateMessage + CRITICALITY ignore +} + +mobilitySettingsChange X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE MobilityChangeRequest + SUCCESSFUL OUTCOME MobilityChangeAcknowledge + UNSUCCESSFUL OUTCOME MobilityChangeFailure + PROCEDURE CODE id-mobilitySettingsChange + CRITICALITY reject +} + +cellActivation X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE CellActivationRequest + SUCCESSFUL OUTCOME CellActivationResponse + UNSUCCESSFUL OUTCOME CellActivationFailure + PROCEDURE CODE id-cellActivation + CRITICALITY reject +} + +x2Release X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE X2Release + PROCEDURE CODE id-x2Release + CRITICALITY reject +} + +x2MessageTransfer X2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE X2MessageTransfer + PROCEDURE CODE id-x2MessageTransfer + CRITICALITY reject +} + +END diff --git a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c new file mode 100644 index 0000000000..e6c7984515 --- /dev/null +++ b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c @@ -0,0 +1,212 @@ +/* packet-x2ap.c + * Routines for dissecting Evolved Universal Terrestrial Radio Access Network (EUTRAN); + * X2 Application Protocol (X2AP); + * 3GPP TS 36.423 packet dissection + * Copyright 2007-2010, Anders Broman <anders.broman@ericsson.com> + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Ref: + * 3GPP TS 36.423 V9.2.0 (2010-03) + */ + +#include "config.h" + +#include <epan/packet.h> + +#include <epan/asn1.h> +#include <epan/prefs.h> +#include <epan/sctpppids.h> + +#include "packet-per.h" +#include "packet-e212.h" +#include "packet-lte-rrc.h" + +#ifdef _MSC_VER +/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */ +#pragma warning(disable:4146) +#endif + +#define PNAME "EUTRAN X2 Application Protocol (X2AP)" +#define PSNAME "X2AP" +#define PFNAME "x2ap" + +void proto_register_x2ap(void); + +/* Dissector will use SCTP PPID 27 or SCTP port. IANA assigned port = 36422 */ +#define SCTP_PORT_X2AP 36422 + +#include "packet-x2ap-val.h" + +/* Initialize the protocol and registered fields */ +static int proto_x2ap = -1; +static int hf_x2ap_transportLayerAddressIPv4 = -1; +static int hf_x2ap_transportLayerAddressIPv6 = -1; +#include "packet-x2ap-hf.c" + +/* Initialize the subtree pointers */ +static int ett_x2ap = -1; +static int ett_x2ap_TransportLayerAddress = -1; +#include "packet-x2ap-ett.c" + +/* Global variables */ +static guint32 ProcedureCode; +static guint32 ProtocolIE_ID; +static guint gbl_x2apSctpPort=SCTP_PORT_X2AP; + +/* Dissector tables */ +static dissector_table_t x2ap_ies_dissector_table; +static dissector_table_t x2ap_extension_dissector_table; +static dissector_table_t x2ap_proc_imsg_dissector_table; +static dissector_table_t x2ap_proc_sout_dissector_table; +static dissector_table_t x2ap_proc_uout_dissector_table; + +static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +void proto_reg_handoff_x2ap(void); + +#include "packet-x2ap-fn.c" + +static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint(x2ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint(x2ap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint(x2ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint(x2ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint(x2ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0; +} + +static int +dissect_x2ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) +{ + proto_item *x2ap_item = NULL; + proto_tree *x2ap_tree = NULL; + + /* make entry in the Protocol column on summary display */ + col_set_str(pinfo->cinfo, COL_PROTOCOL, "X2AP"); + + /* create the x2ap protocol tree */ + x2ap_item = proto_tree_add_item(tree, proto_x2ap, tvb, 0, -1, ENC_NA); + x2ap_tree = proto_item_add_subtree(x2ap_item, ett_x2ap); + + return dissect_X2AP_PDU_PDU(tvb, pinfo, x2ap_tree, data); +} + +/*--- proto_register_x2ap -------------------------------------------*/ +void proto_register_x2ap(void) { + + /* List of fields */ + + static hf_register_info hf[] = { + { &hf_x2ap_transportLayerAddressIPv4, + { "transportLayerAddress(IPv4)", "x2ap.transportLayerAddressIPv4", + FT_IPv4, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_x2ap_transportLayerAddressIPv6, + { "transportLayerAddress(IPv6)", "x2ap.transportLayerAddressIPv6", + FT_IPv6, BASE_NONE, NULL, 0, + NULL, HFILL }}, + +#include "packet-x2ap-hfarr.c" + }; + + /* List of subtrees */ + static gint *ett[] = { + &ett_x2ap, + &ett_x2ap_TransportLayerAddress, +#include "packet-x2ap-ettarr.c" + }; + + module_t *x2ap_module; + + /* Register protocol */ + proto_x2ap = proto_register_protocol(PNAME, PSNAME, PFNAME); + /* Register fields and subtrees */ + proto_register_field_array(proto_x2ap, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); + + /* Register dissector */ + register_dissector("x2ap", dissect_x2ap, proto_x2ap); + + /* Register dissector tables */ + x2ap_ies_dissector_table = register_dissector_table("x2ap.ies", "X2AP-PROTOCOL-IES", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE); + x2ap_extension_dissector_table = register_dissector_table("x2ap.extension", "X2AP-PROTOCOL-EXTENSION", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE); + x2ap_proc_imsg_dissector_table = register_dissector_table("x2ap.proc.imsg", "X2AP-ELEMENTARY-PROCEDURE InitiatingMessage", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE); + x2ap_proc_sout_dissector_table = register_dissector_table("x2ap.proc.sout", "X2AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE); + x2ap_proc_uout_dissector_table = register_dissector_table("x2ap.proc.uout", "X2AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE); + + /* Register configuration options for ports */ + x2ap_module = prefs_register_protocol(proto_x2ap, proto_reg_handoff_x2ap); + + prefs_register_uint_preference(x2ap_module, "sctp.port", + "X2AP SCTP Port", + "Set the SCTP port for X2AP messages", + 10, + &gbl_x2apSctpPort); + +} + + +/*--- proto_reg_handoff_x2ap ---------------------------------------*/ +void +proto_reg_handoff_x2ap(void) +{ + dissector_handle_t x2ap_handle; + static gboolean Initialized=FALSE; + static guint SctpPort; + + x2ap_handle = find_dissector("x2ap"); + if (!Initialized) { + dissector_add_for_decode_as("sctp.port", x2ap_handle); + dissector_add_uint("sctp.ppi", X2AP_PAYLOAD_PROTOCOL_ID, x2ap_handle); + Initialized=TRUE; +#include "packet-x2ap-dis-tab.c" + } else { + if (SctpPort != 0) { + dissector_delete_uint("sctp.port", SctpPort, x2ap_handle); + } + } + + SctpPort=gbl_x2apSctpPort; + if (SctpPort != 0) { + dissector_add_uint("sctp.port", SctpPort, x2ap_handle); + } + +} + + diff --git a/epan/dissectors/asn1/x2ap/x2ap.cnf b/epan/dissectors/asn1/x2ap/x2ap.cnf new file mode 100644 index 0000000000..6fe4b74535 --- /dev/null +++ b/epan/dissectors/asn1/x2ap/x2ap.cnf @@ -0,0 +1,424 @@ +# x2ap.cnf +# x2ap conformation file +# Copyright 2007 Anders Broman + +#.OPT +PER +ALIGNED +#.END + +#.OMIT_ASSIGNMENT +# Get rid of unused code warnings +#.END + +#.PDU +X2AP-PDU + +#.MAKE_ENUM +ProtocolIE-ID +ProcedureCode + +#.TYPE_RENAME + +ProtocolIE-Field/value ProtocolIE_Field_value +PrivateIE-Field/value PrivateIE_Field_value +InitiatingMessage/value InitiatingMessage_value +SuccessfulOutcome/value SuccessfulOutcome_value +UnsuccessfulOutcome/value UnsuccessfulOutcome_value + + +#.FIELD_RENAME +ProtocolExtensionField/id extension_id +PrivateIE-Field/id private_id +InitiatingMessage/value initiatingMessage_value + +ProtocolIE-Field/value protocolIE_Field_value +SuccessfulOutcome/value successfulOutcome_value +PrivateIE-Field/value privateIE_Field_value + +#.OMIT_ASSIGNMENT +Presence +ProtocolIE-FieldPair +ProtocolIE-ContainerList +ProtocolIE-ContainerPair +ProtocolIE-ContainerPairList +#.END + +#.FN_PARS ProtocolIE-ID VAL_PTR = &ProtocolIE_ID +#.FN_FTR ProtocolIE-ID + if (tree) { + proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(x2ap_ProtocolIE_ID_vals), "unknown (%d)")); + } +#.END + +#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue + +#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue + +#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode +#.FN_FTR ProcedureCode + col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ", + val_to_str(ProcedureCode, x2ap_ProcedureCode_vals, + "unknown message")); +#.END + +#.FN_HDR ProcedureCode + ProcedureCode = 0xFFFF; +#.END + + +#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue + +#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue + +#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue + +#.FN_BODY PLMN-Identity VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb=NULL; + +%(DEFAULT_BODY)s + + if(tvb_reported_length(tvb)==0) + return offset; + + if (!parameter_tvb) + return offset; + dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, tree, 0, E212_NONE, FALSE); +#.END + +#.FN_BODY TargeteNBtoSource-eNBTransparentContainer VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb=NULL; + +%(DEFAULT_BODY)s + if (!parameter_tvb) + return offset; + + dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, tree, NULL); + +#.TYPE_ATTR +ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(x2ap_ProtocolIE_ID_vals) +#.END + +#.FN_BODY TransportLayerAddress VAL_PTR = ¶meter_tvb +# For details on the Transport Layer Address, see +# ref. [8], [19] +# [8] 3GPP TS 36.424: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); X2 data transport". +# [19] 3GPP TS 36.414: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); S1 data transport". + tvbuff_t *parameter_tvb=NULL; + proto_tree *subtree; + gint tvb_len; + +%(DEFAULT_BODY)s + if (!parameter_tvb) + return offset; + /* Get the length */ + tvb_len = tvb_reported_length(parameter_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_TransportLayerAddress); + if (tvb_len==4){ + /* IPv4 */ + proto_tree_add_item(subtree, hf_x2ap_transportLayerAddressIPv4, parameter_tvb, 0, tvb_len, ENC_BIG_ENDIAN); + } + if (tvb_len==16){ + /* IPv6 */ + proto_tree_add_item(subtree, hf_x2ap_transportLayerAddressIPv6, parameter_tvb, 0, tvb_len, ENC_NA); + } + +#.FN_BODY RRC-Context VAL_PTR = ¶meter_tvb +# Includes the RRC Handover Preparation Information message as defined in +# subclause 10.2.2 of [9]. +# [9] 3GPP TS 36.331: "Evolved Universal Terrestrial Radio Access (E-UTRAN); Radio Resource +# Control (RRC) Protocol Specification". + tvbuff_t *parameter_tvb=NULL; + +%(DEFAULT_BODY)s + if (!parameter_tvb) + return offset; + dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, tree, NULL); + +#.ASSIGN_VALUE_TO_TYPE # X2AP does not have constants assigned to types, they are pure INTEGER +# ProcedureCode + +id-handoverPreparation ProcedureCode +id-handoverCancel ProcedureCode +id-loadIndication ProcedureCode +id-errorIndication ProcedureCode +id-snStatusTransfer ProcedureCode +id-uEContextRelease ProcedureCode +id-x2Setup ProcedureCode +id-reset ProcedureCode +id-eNBConfigurationUpdate ProcedureCode +id-resourceStatusReportingInitiation ProcedureCode +id-resourceStatusReporting ProcedureCode +id-privateMessage ProcedureCode +id-mobilitySettingsChange ProcedureCode +id-rLFIndication ProcedureCode +id-handoverReport ProcedureCode +id-cellActivation ProcedureCode +id-x2Release ProcedureCode +id-x2MessageTransfer ProcedureCode + + +# ProtocolIE-ID + +id-E-RABs-Admitted-Item ProtocolIE-ID +id-E-RABs-Admitted-List ProtocolIE-ID +id-E-RAB-Item ProtocolIE-ID +id-E-RABs-NotAdmitted-List ProtocolIE-ID +id-E-RABs-ToBeSetup-Item ProtocolIE-ID +id-Cause ProtocolIE-ID +id-CellInformation ProtocolIE-ID +id-CellInformation-Item ProtocolIE-ID +id-New-eNB-UE-X2AP-ID ProtocolIE-ID +id-Old-eNB-UE-X2AP-ID ProtocolIE-ID +id-TargetCell-ID ProtocolIE-ID +id-TargeteNBtoSource-eNBTransparentContainer ProtocolIE-ID +id-TraceActivation ProtocolIE-ID +id-UE-ContextInformation ProtocolIE-ID +id-UE-HistoryInformation ProtocolIE-ID +id-UE-X2AP-ID ProtocolIE-ID +id-CriticalityDiagnostics ProtocolIE-ID +id-E-RABs-SubjectToStatusTransfer-List ProtocolIE-ID +id-E-RABs-SubjectToStatusTransfer-Item ProtocolIE-ID +id-ServedCells ProtocolIE-ID +id-GlobalENB-ID ProtocolIE-ID +id-TimeToWait ProtocolIE-ID +id-GUMMEI-ID ProtocolIE-ID +id-GUGroupIDList ProtocolIE-ID +id-ServedCellsToAdd ProtocolIE-ID +id-ServedCellsToModify ProtocolIE-ID +id-ServedCellsToDelete ProtocolIE-ID +id-Registration-Request ProtocolIE-ID +id-CellToReport ProtocolIE-ID +id-ReportingPeriodicity ProtocolIE-ID +id-CellToReport-Item ProtocolIE-ID +id-CellMeasurementResult ProtocolIE-ID +id-CellMeasurementResult-Item ProtocolIE-ID +id-GUGroupIDToAddList ProtocolIE-ID +id-GUGroupIDToDeleteList ProtocolIE-ID +id-SRVCCOperationPossible ProtocolIE-ID +id-Measurement-ID ProtocolIE-ID +id-ReportCharacteristics ProtocolIE-ID +id-ENB1-Measurement-ID ProtocolIE-ID +id-ENB2-Measurement-ID ProtocolIE-ID +id-Number-of-Antennaports ProtocolIE-ID +id-CompositeAvailableCapacityGroup ProtocolIE-ID +id-ENB1-Cell-ID ProtocolIE-ID +id-ENB2-Cell-ID ProtocolIE-ID +id-ENB2-Proposed-Mobility-Parameters ProtocolIE-ID +id-ENB1-Mobility-Parameters ProtocolIE-ID +id-ENB2-Mobility-Parameters-Modification-Range ProtocolIE-ID +id-FailureCellPCI ProtocolIE-ID +id-Re-establishmentCellECGI ProtocolIE-ID +id-FailureCellCRNTI ProtocolIE-ID +id-ShortMAC-I ProtocolIE-ID +id-SourceCellECGI ProtocolIE-ID +id-FailureCellECGI ProtocolIE-ID +id-HandoverReportType ProtocolIE-ID +id-PRACH-Configuration ProtocolIE-ID +id-MBSFN-Subframe-Info ProtocolIE-ID +id-ServedCellsToActivate ProtocolIE-ID +id-ActivatedCellList ProtocolIE-ID +id-DeactivationIndication ProtocolIE-ID +id-UE-RLF-Report-Container ProtocolIE-ID +id-ABSInformation ProtocolIE-ID +id-InvokeIndication ProtocolIE-ID +id-ABS-Status ProtocolIE-ID +id-PartialSuccessIndicator ProtocolIE-ID +id-MeasurementInitiationResult-List ProtocolIE-ID +id-MeasurementInitiationResult-Item ProtocolIE-ID +id-MeasurementFailureCause-Item ProtocolIE-ID +id-CompleteFailureCauseInformation-List ProtocolIE-ID +id-CompleteFailureCauseInformation-Item ProtocolIE-ID +id-CSG-Id ProtocolIE-ID +id-CSGMembershipStatus ProtocolIE-ID +id-MDTConfiguration ProtocolIE-ID +id-ManagementBasedMDTallowed ProtocolIE-ID +id-RRCConnSetupIndicator ProtocolIE-ID +id-NeighbourTAC ProtocolIE-ID +id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID +id-RRCConnReestabIndicator ProtocolIE-ID +id-MBMS-Service-Area-List ProtocolIE-ID +id-HO-cause ProtocolIE-ID +id-TargetCellInUTRAN ProtocolIE-ID +id-MobilityInformation ProtocolIE-ID +id-SourceCellCRNTI ProtocolIE-ID +id-MultibandInfoList ProtocolIE-ID +id-M3Configuration ProtocolIE-ID +id-M4Configuration ProtocolIE-ID +id-M5Configuration ProtocolIE-ID +id-MDT-Location-Info ProtocolIE-ID +id-ManagementBasedMDTPLMNList ProtocolIE-ID +id-SignallingBasedMDTPLMNList ProtocolIE-ID +id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID +id-ULCOUNTValueExtended ProtocolIE-ID +id-DLCOUNTValueExtended ProtocolIE-ID +id-eARFCNExtension ProtocolIE-ID +id-UL-EARFCNExtension ProtocolIE-ID +id-DL-EARFCNExtension ProtocolIE-ID +id-AdditionalSpecialSubframe-Info ProtocolIE-ID +id-Masked-IMEISV ProtocolIE-ID +id-IntendedULDLConfiguration ProtocolIE-ID +id-ExtendedULInterferenceOverloadInfo ProtocolIE-ID +id-RNL-Header ProtocolIE-ID +id-x2APMessage ProtocolIE-ID + +#.REGISTER + +#X2AP-PROTOCOL-IES +E-RABs-Admitted-Item N x2ap.ies id-E-RABs-Admitted-Item +E-RABs-Admitted-List N x2ap.ies id-E-RABs-Admitted-List +E-RAB-Item N x2ap.ies id-E-RAB-Item +E-RAB-List N x2ap.ies id-E-RABs-NotAdmitted-List +E-RABs-ToBeSetup-Item N x2ap.ies id-E-RABs-ToBeSetup-Item +Cause N x2ap.ies id-Cause +CellInformation-List N x2ap.ies id-CellInformation +CellInformation-Item N x2ap.ies id-CellInformation-Item +UE-X2AP-ID N x2ap.ies id-New-eNB-UE-X2AP-ID +UE-X2AP-ID N x2ap.ies id-Old-eNB-UE-X2AP-ID +ECGI N x2ap.ies id-TargetCell-ID +TargeteNBtoSource-eNBTransparentContainer N x2ap.ies id-TargeteNBtoSource-eNBTransparentContainer +TraceActivation N x2ap.ies id-TraceActivation +UE-ContextInformation N x2ap.ies id-UE-ContextInformation +UE-HistoryInformation N x2ap.ies id-UE-HistoryInformation +UE-X2AP-ID N x2ap.ies id-UE-X2AP-ID +CriticalityDiagnostics N x2ap.ies id-CriticalityDiagnostics +E-RABs-SubjectToStatusTransfer-List N x2ap.ies id-E-RABs-SubjectToStatusTransfer-List +E-RABs-SubjectToStatusTransfer-Item N x2ap.ies id-E-RABs-SubjectToStatusTransfer-Item +ServedCells N x2ap.ies id-ServedCells +GlobalENB-ID N x2ap.ies id-GlobalENB-ID +TimeToWait N x2ap.ies id-TimeToWait +GUMMEI N x2ap.ies id-GUMMEI-ID +GUGroupIDList N x2ap.ies id-GUGroupIDList +ServedCells N x2ap.ies id-ServedCellsToAdd +ServedCellsToModify N x2ap.ies id-ServedCellsToModify +Old-ECGIs N x2ap.ies id-ServedCellsToDelete +Registration-Request N x2ap.ies id-Registration-Request +CellToReport-List N x2ap.ies id-CellToReport +ReportingPeriodicity N x2ap.ies id-ReportingPeriodicity +CellToReport-Item N x2ap.ies id-CellToReport-Item +CellMeasurementResult-List N x2ap.ies id-CellMeasurementResult +CellMeasurementResult-Item N x2ap.ies id-CellMeasurementResult-Item +GUGroupIDList N x2ap.ies id-GUGroupIDToAddList +GUGroupIDList N x2ap.ies id-GUGroupIDToDeleteList +SRVCCOperationPossible N x2ap.ies id-SRVCCOperationPossible +# N x2ap.ies id-Measurement-ID +ReportCharacteristics N x2ap.ies id-ReportCharacteristics +Measurement-ID N x2ap.ies id-ENB1-Measurement-ID +Measurement-ID N x2ap.ies id-ENB2-Measurement-ID +ECGI N x2ap.ies id-ENB1-Cell-ID +ECGI N x2ap.ies id-ENB2-Cell-ID +MobilityParametersInformation N x2ap.ies id-ENB2-Proposed-Mobility-Parameters +MobilityParametersInformation N x2ap.ies id-ENB1-Mobility-Parameters +MobilityParametersModificationRange N x2ap.ies id-ENB2-Mobility-Parameters-Modification-Range +PCI N x2ap.ies id-FailureCellPCI +ECGI N x2ap.ies id-Re-establishmentCellECGI +CRNTI N x2ap.ies id-FailureCellCRNTI +ShortMAC-I N x2ap.ies id-ShortMAC-I +ECGI N x2ap.ies id-SourceCellECGI +ECGI N x2ap.ies id-FailureCellECGI +HandoverReportType N x2ap.ies id-HandoverReportType +UE-RLF-Report-Container N x2ap.ies id-UE-RLF-Report-Container +ServedCellsToActivate N x2ap.ies id-ServedCellsToActivate +ActivatedCellList N x2ap.ies id-ActivatedCellList +PartialSuccessIndicator N x2ap.ies id-PartialSuccessIndicator +MeasurementInitiationResult-List N x2ap.ies id-MeasurementInitiationResult-List +MeasurementInitiationResult-Item N x2ap.ies id-MeasurementInitiationResult-Item +MeasurementFailureCause-Item N x2ap.ies id-MeasurementFailureCause-Item +CompleteFailureCauseInformation-List N x2ap.ies id-CompleteFailureCauseInformation-List +CompleteFailureCauseInformation-Item N x2ap.ies id-CompleteFailureCauseInformation-Item +CSGMembershipStatus N x2ap.ies id-CSGMembershipStatus +RRCConnSetupIndicator N x2ap.ies id-RRCConnSetupIndicator +RRCConnReestabIndicator N x2ap.ies id-RRCConnReestabIndicator +TargetCellInUTRAN N x2ap.ies id-TargetCellInUTRAN +MobilityInformation N x2ap.ies id-MobilityInformation +CRNTI N x2ap.ies id-SourceCellCRNTI +Masked-IMEISV N x2ap.ies id-Masked-IMEISV +RNL-Header N x2ap.ies id-RNL-Header +X2AP-Message N x2ap.ies id-x2APMessage + +#X2AP-PROTOCOL-EXTENSION +Number-of-Antennaports N x2ap.extension id-Number-of-Antennaports +CompositeAvailableCapacityGroup N x2ap.extension id-CompositeAvailableCapacityGroup +PRACH-Configuration N x2ap.extension id-PRACH-Configuration +MBSFN-Subframe-Infolist N x2ap.extension id-MBSFN-Subframe-Info +DeactivationIndication N x2ap.extension id-DeactivationIndication + +ABSInformation N x2ap.extension id-ABSInformation +InvokeIndication N x2ap.extension id-InvokeIndication +ABS-Status N x2ap.extension id-ABS-Status +CSG-Id N x2ap.extension id-CSG-Id +MDT-Configuration N x2ap.extension id-MDTConfiguration +ManagementBasedMDTallowed N x2ap.extension id-ManagementBasedMDTallowed +TAC N x2ap.extension id-NeighbourTAC +Time-UE-StayedInCell-EnhancedGranularity N x2ap.extension id-Time-UE-StayedInCell-EnhancedGranularity +MBMS-Service-Area-Identity-List N x2ap.extension id-MBMS-Service-Area-List +Cause N x2ap.extension id-HO-cause +MultibandInfoList N x2ap.extension id-MultibandInfoList +M3Configuration N x2ap.extension id-M3Configuration +M4Configuration N x2ap.extension id-M4Configuration +M5Configuration N x2ap.extension id-M5Configuration +MDT-Location-Info N x2ap.extension id-MDT-Location-Info +MDTPLMNList N x2ap.extension id-ManagementBasedMDTPLMNList +MDTPLMNList N x2ap.extension id-SignallingBasedMDTPLMNList +ReceiveStatusOfULPDCPSDUsExtended N x2ap.extension id-ReceiveStatusOfULPDCPSDUsExtended +COUNTValueExtended N x2ap.extension id-ULCOUNTValueExtended +COUNTValueExtended N x2ap.extension id-DLCOUNTValueExtended +EARFCNExtension N x2ap.extension id-eARFCNExtension +EARFCNExtension N x2ap.extension id-UL-EARFCNExtension +EARFCNExtension N x2ap.extension id-DL-EARFCNExtension +AdditionalSpecialSubframe-Info N x2ap.extension id-AdditionalSpecialSubframe-Info +SubframeAssignment N x2ap.extension id-IntendedULDLConfiguration +ExtendedULInterferenceOverloadInfo N x2ap.extension id-ExtendedULInterferenceOverloadInfo + +# X2AP-PDU-Descriptions.asn Interface Elementary Procedures +#X2AP-ELEMENTARY-PROCEDURE +HandoverRequest N x2ap.proc.imsg id-handoverPreparation +HandoverRequestAcknowledge N x2ap.proc.sout id-handoverPreparation +HandoverPreparationFailure N x2ap.proc.uout id-handoverPreparation + +SNStatusTransfer N x2ap.proc.imsg id-snStatusTransfer + +UEContextRelease N x2ap.proc.imsg id-uEContextRelease + +HandoverCancel N x2ap.proc.imsg id-handoverCancel + +ErrorIndication N x2ap.proc.imsg id-errorIndication + +ResetRequest N x2ap.proc.imsg id-reset +ResetResponse N x2ap.proc.sout id-reset + +X2SetupRequest N x2ap.proc.imsg id-x2Setup +X2SetupResponse N x2ap.proc.sout id-x2Setup +X2SetupFailure N x2ap.proc.uout id-x2Setup + +LoadInformation N x2ap.proc.imsg id-loadIndication + +ENBConfigurationUpdate N x2ap.proc.imsg id-eNBConfigurationUpdate +ENBConfigurationUpdateAcknowledge N x2ap.proc.sout id-eNBConfigurationUpdate +ENBConfigurationUpdateFailure N x2ap.proc.uout id-eNBConfigurationUpdate + +ResourceStatusRequest N x2ap.proc.imsg id-resourceStatusReportingInitiation +ResourceStatusResponse N x2ap.proc.sout id-resourceStatusReportingInitiation +ResourceStatusFailure N x2ap.proc.uout id-resourceStatusReportingInitiation + +ResourceStatusUpdate N x2ap.proc.imsg id-resourceStatusReporting + +PrivateMessage N x2ap.proc.imsg id-privateMessage + +HandoverReport N x2ap.proc.imsg id-handoverReport + +RLFIndication N x2ap.proc.imsg id-rLFIndication + +MobilityChangeRequest N x2ap.proc.imsg id-mobilitySettingsChange +MobilityChangeAcknowledge N x2ap.proc.sout id-mobilitySettingsChange +MobilityChangeFailure N x2ap.proc.uout id-mobilitySettingsChange + +CellActivationRequest N x2ap.proc.imsg id-cellActivation +CellActivationResponse N x2ap.proc.sout id-cellActivation +CellActivationFailure N x2ap.proc.uout id-cellActivation + +X2Release N x2ap.proc.imsg id-x2Release + +X2MessageTransfer N x2ap.proc.imsg id-x2MessageTransfer + +#.END |