|
||
MDT stands for "Minimization of Drive Test". Even if you have not experienced of performing any 'Drive Test', you may intuitively understand what it mean. As you might have guessed, 'Drive Test' is a kind of testing in which you drive a testing vehicle around a certain route measuring various network performance (e.g, Cell Power, Interference) or UE performance (e.g, Call Drop, Throughput, Handover performance, Cell Reselection Performance etc). Usually during this period, you would collect a lot of protocol logs from UE and analyze by yourself or send them to developers when they have serious problems. As the word MDT itself implies, MDT is a kind of special mechanism that may help minimize this kind of Drive Test. Why do you want to minimize it ? Answer is simple.. 'to save time and money'. In the past, evaluating and optimizing cellular network performance heavily relied on drive tests. These tests involved driving a vehicle equipped with specialized equipment around a specific area to measure various network performance indicators, such as signal strength, interference, and call quality. During these drive tests, scanners played a crucial role by passively monitoring all accessible base stations and detecting interference. The results of these drive tests were typically presented as statistical distributions or RSS levels accumulated during the drive test. While essential for ensuring optimal network performance, drive tests could be costly and time-consuming due to the specialized equipment and personnel required. MDT offers a more efficient and cost-effective approach by leveraging the widespread use of user equipment, such as smartphones, within the network. By collecting data from these devices, operators can gain valuable insights into network performance without the need for dedicated drive test campaigns. One of the key differences between MDT and traditional drive tests lies in the cost of equipment. MDT utilizes readily available and relatively inexpensive mobile phones, while drive tests require sophisticated and expensive measurement equipment The idea is .. in stead of dispatching test truck and engineers, let any UE around the interested area perform the all those measurement and store the result in the device and then report it later. Now you may have following three questions and the answer to these questions would give you all the details of MDT mechanism.
Benefit of MDTThe growing demand for higher quality of service in mobile networks necessitates more extensive and frequent drive tests, which can be resource-intensive. MDT offers several advantages over traditional drive tests, making it a more efficient and effective solution:
Challenges of MDTDespite the numerous advantages of MDT, it's important to acknowledge some limitations:
Implementation of MDTThe 3GPP, the organization that develops standards for mobile telecommunications, introduced MDT in Release 9 and has continued to develop and refine it in subsequent releases. This standardization ensures interoperability between different network vendors and user equipment. Some of the 3GPP specifications related to MDT include:
MDT can be implemented in two ways as stated in 37.320-3.1
The choice of implementation depends on the specific needs of the operator and the capabilities of the user equipment. Impact of MDT on Network OptimizationMDT has a significant impact on network optimization by providing operators with a wealth of data that can be used to:
How Network tell UE to perform measurement logging ?As any other instruction, Network send special RRC message called 'loggedMeasurementConfiguration' to UE to trigger the measurement and logging on UE. For each of the information elements, you may refer to 36.331, but just looking at the name of the IEs, you may guess pretty accurate meaning. Configuration ParametersThe configuration for Minimization of Drive Test (MDT) includes parameters for logging and reporting measurements, tailored for E-UTRA (LTE) and NR (5G). This configuration framework provides flexibility for network operators to collect and optimize measurements in diverse scenarios across LTE and 5G networks. Followings are summary of these parameters based on 37.320-5.1.1.1.1
Reporting ParametersThe MDT reporting parameters define how logged measurements are reported, including serving cell and neighboring cell data, timestamps, location, and additional details for various radio technologies. Below is a concise summary based on 37.320-5.1.1.3.3
What kind of measurement UE has to perform ?The items to be measured and logged are a little difference depending on which call status UE are in (IDLE or Connected or MBSFN reception etc). Roughly some of following informations is supposted to be measured and logged. NOTE : This summary is based on RRC parameters stated in 36.331 and 38.331 Measurements and Reports - LTE
Measurements and Reports - NR
Measurements and reporting triggers for Immediate MDTImmediate MDT involves specific UE and eNB measurements with triggers based on reporting criteria for Radio Resource Management (RRM) and QoS verification.
How Network can retrieve the log from UE ?Last question is "How network can retrieve the measurement result logged in UE ?" or "How UE can transfer (report) the measurement result to Network ?" Roughly this is done in three steps. Step 1 : When I have any Logged measurement, it is supposed to report to network "Hey, I have a measurement result logged in me" via rrcConnectionSetupComplete message or UEInformationResponse message. Step 2 : If network wants to retrieve the logged message indicated by the UE, Network can request it by sending 'ueInformationRequest' as shown below. Step 3 : UE send the logged information via ueInformationResponse. (The UE can report max 520 measurement results using this single message. If it cannot report all the log in a single message, it can set LogMeasAvailable to be 'true' and NW can send the request message again if it wants. RRC-LTEUEInformationRequest-r9 ::= SEQUENCE { rrc-TransactionIdentifier RRC-TransactionIdentifier, criticalExtensions CHOICE { c1 CHOICE { ueInformationRequest-r9 UEInformationRequest-r9-IEs, spare3 NULL, spare2 NULL, spare1 NULL }, criticalExtensionsFuture SEQUENCE {} } }
UEInformationRequest-r9-IEs ::= SEQUENCE { rach-ReportReq-r9 BOOLEAN, rlf-ReportReq-r9 BOOLEAN, nonCriticalExtension UEInformationRequest-v930-IEs OPTIONAL }
UEInformationRequest-v930-IEs ::= SEQUENCE { lateNonCriticalExtension OCTET STRING OPTIONAL, nonCriticalExtension UEInformationRequest-v1020-IEs OPTIONAL }
UEInformationRequest-v1020-IEs ::= SEQUENCE { logMeasReportReq-r10 ENUMERATED {true} OPTIONAL, -- Need ON nonCriticalExtension UEInformationRequest-v1130-IEs OPTIONAL }
UEInformationRequest-v1130-IEs ::= SEQUENCE { connEstFailReportReq-r11 ENUMERATED {true} OPTIONAL, -- Need ON nonCriticalExtension UEInformationRequest-v1250-IEs OPTIONAL }
UEInformationRequest-v1250-IEs ::= SEQUENCE { mobilityHistoryReportReq-r12 ENUMERATED {true} OPTIONAL, -- Need ON nonCriticalExtension UEInformationRequest-v1530-IEs OPTIONAL }
UEInformationRequest-v1530-IEs ::= SEQUENCE { idleModeMeasurementReq-r15 ENUMERATED {true} OPTIONAL, -- Need ON flightPathInfoReq-r15 FlightPathInfoReportConfig-r15 OPTIONAL, -- Need ON nonCriticalExtension UEInformationRequest-v1710-IEs OPTIONAL }
UEInformationRequest-v1710-IEs ::= SEQUENCE { coarseLocationReq-r17 ENUMERATED {true} OPTIONAL, -- Need ON nonCriticalExtension SEQUENCE {} OPTIONAL }
LoggedMeasurementConfiguration-r10 ::= SEQUENCE { criticalExtensions CHOICE { c1 CHOICE { loggedMeasurementConfiguration-r10 LoggedMeasurementConfiguration-r10-IEs, spare3 NULL, spare2 NULL, spare1 NULL }, criticalExtensionsFuture SEQUENCE {} } }
UEInformationResponse-r9 ::= SEQUENCE { rrc-TransactionIdentifier RRC-TransactionIdentifier, criticalExtensions CHOICE { c1 CHOICE { ueInformationResponse-r9 UEInformationResponse-r9-IEs, spare3 NULL, spare2 NULL, spare1 NULL }, criticalExtensionsFuture SEQUENCE {} }
}
UEInformationResponse-r9-IEs ::= SEQUENCE { rach-Report-r9 RACH-Report-r16 OPTIONAL, rlf-Report-r9 RLF-Report-r9 OPTIONAL, nonCriticalExtension UEInformationResponse-v930-IEs OPTIONAL }
-- Late non critical extensions UEInformationResponse-v9e0-IEs ::= SEQUENCE { rlf-Report-v9e0 RLF-Report-v9e0 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL }
-- Regular non critical extensions UEInformationResponse-v930-IEs ::= SEQUENCE { lateNonCriticalExtension OCTET STRING (CONTAINING UEInformationResponse-v9e0-IEs) OPTIONAL, nonCriticalExtension UEInformationResponse-v1020-IEs OPTIONAL }
UEInformationResponse-v1020-IEs ::= SEQUENCE { logMeasReport-r10 LogMeasReport-r10 OPTIONAL, nonCriticalExtension UEInformationResponse-v1130-IEs OPTIONAL }
UEInformationResponse-v1130-IEs ::= SEQUENCE { connEstFailReport-r11 ConnEstFailReport-r11 OPTIONAL, nonCriticalExtension UEInformationResponse-v1250-IEs OPTIONAL }
UEInformationResponse-v1250-IEs ::= SEQUENCE { mobilityHistoryReport-r12 MobilityHistoryReport-r12 OPTIONAL, nonCriticalExtension UEInformationResponse-v1530-IEs OPTIONAL }
UEInformationResponse-v1530-IEs ::= SEQUENCE { measResultListIdle-r15 MeasResultListIdle-r15 OPTIONAL, flightPathInfoReport-r15 FlightPathInfoReport-r15 OPTIONAL, nonCriticalExtension UEInformationResponse-v1610-IEs OPTIONAL }
UEInformationResponse-v1610-IEs ::= SEQUENCE { rach-Report-v1610 RACH-Report-v1610 OPTIONAL, measResultListExtIdle-r16 MeasResultListExtIdle-r16 OPTIONAL, measResultListIdleNR-r16 MeasResultListIdleNR-r16 OPTIONAL, nonCriticalExtension UEInformationResponse-v1710-IEs OPTIONAL }
UEInformationResponse-v1710-IEs ::= SEQUENCE { r17 OCTET STRING OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL }
RACH-Report-r16 ::= SEQUENCE { numberOfPreamblesSent-r16 NumberOfPreamblesSent-r11, contentionDetected-r16 BOOLEAN }
RACH-Report-v1610 ::= SEQUENCE { initialCEL-r16 INTEGER (0..3), edt-Fallback-r16 BOOLEAN }
RLF-Report-r9 ::= SEQUENCE { measResultLastServCell-r9 SEQUENCE { rsrpResult-r9 RSRP-Range, rsrqResult-r9 RSRQ-Range OPTIONAL }, measResultNeighCells-r9 SEQUENCE { measResultListEUTRA-r9 MeasResultList2EUTRA-r9 OPTIONAL, measResultListUTRA-r9 MeasResultList2UTRA-r9 OPTIONAL, measResultListGERAN-r9 MeasResultListGERAN OPTIONAL, measResultsCDMA2000-r9 MeasResultList2CDMA2000-r9 OPTIONAL } OPTIONAL, ..., [[ locationInfo-r10 LocationInfo-r10 OPTIONAL, failedPCellId-r10 CHOICE { cellGlobalId-r10 CellGlobalIdEUTRA, pci-arfcn-r10 SEQUENCE { physCellId-r10 PhysCellId, carrierFreq-r10 ARFCN-ValueEUTRA } } OPTIONAL, reestablishmentCellId-r10 CellGlobalIdEUTRA OPTIONAL, timeConnFailure-r10 INTEGER (0..1023) OPTIONAL, connectionFailureType-r10 ENUMERATED {rlf, hof} OPTIONAL, previousPCellId-r10 CellGlobalIdEUTRA OPTIONAL ]], [[ failedPCellId-v1090 SEQUENCE { carrierFreq-v1090 ARFCN-ValueEUTRA-v9e0 } OPTIONAL ]], [[ basicFields-r11 SEQUENCE { c-RNTI-r11 C-RNTI, rlf-Cause-r11 ENUMERATED { t310-Expiry, randomAccessProblem, rlc-MaxNumRetx, t312-Expiry-r12}, timeSinceFailure-r11 TimeSinceFailure-r11 } OPTIONAL, previousUTRA-CellId-r11 SEQUENCE { carrierFreq-r11 ARFCN-ValueUTRA, physCellId-r11 CHOICE { fdd-r11 PhysCellIdUTRA-FDD, tdd-r11 PhysCellIdUTRA-TDD }, cellGlobalId-r11 CellGlobalIdUTRA OPTIONAL } OPTIONAL, selectedUTRA-CellId-r11 SEQUENCE { carrierFreq-r11 ARFCN-ValueUTRA, physCellId-r11 CHOICE { fdd-r11 PhysCellIdUTRA-FDD, tdd-r11 PhysCellIdUTRA-TDD } } OPTIONAL ]], [[ failedPCellId-v1250 SEQUENCE { tac-FailedPCell-r12 TrackingAreaCode } OPTIONAL, measResultLastServCell-v1250 RSRQ-Range-v1250 OPTIONAL, lastServCellRSRQ-Type-r12 RSRQ-Type-r12 OPTIONAL, measResultListEUTRA-v1250 MeasResultList2EUTRA-v1250 OPTIONAL ]], [[ drb-EstablishedWithQCI-1-r13 ENUMERATED {qci1} OPTIONAL ]], [[ measResultLastServCell-v1360 RSRP-Range-v1360 OPTIONAL ]], [[ logMeasResultListBT-r15 LogMeasResultListBT-r15 OPTIONAL, logMeasResultListWLAN-r15 LogMeasResultListWLAN-r15 OPTIONAL ]], [[ measResultListNR-r16 MeasResultCellListNR-r15 OPTIONAL, previousNR-PCellId-r16 CellGlobalIdNR-r16 OPTIONAL, failedNR-PCellId-r16 CHOICE { cellGlobalId CellGlobalIdNR-r16, pci-arfcn SEQUENCE { physCellId-r16 PhysCellIdNR-r15, carrierFreq-r16 ARFCN-ValueNR-r15 } } OPTIONAL, reconnectCellId-r16 CHOICE { nrReconnectCellId CellGlobalIdNR-r16, eutraReconnectCellId SEQUENCE { cellGlobalId-r16 CellGlobalIdEUTRA, trackingAreaCode-EPC-r16 TrackingAreaCode OPTIONAL, trackingAreaCode-5GC-r16 TrackingAreaCode-5GC-r15 OPTIONAL } } OPTIONAL, timeUntilReconnection-r16 TimeUntilReconnection-r16 OPTIONAL ]], [[ measResultListNR-v1640 SEQUENCE { carrierFreqNR-r16 ARFCN-ValueNR-r15 } OPTIONAL, measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL ]] }
RLF-Report-v9e0 ::= SEQUENCE { measResultListEUTRA-v9e0 MeasResultList2EUTRA-v9e0 }
MeasResultList2EUTRA-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-r9 MeasResultList2EUTRA-v9e0 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-v9e0 MeasResultList2EUTRA-v1250 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-v1250
MeasResult2EUTRA-r9 ::= SEQUENCE { carrierFreq-r9 ARFCN-ValueEUTRA, measResultList-r9 MeasResultListEUTRA }
MeasResult2EUTRA-v9e0 ::= SEQUENCE { carrierFreq-v9e0 ARFCN-ValueEUTRA-v9e0 OPTIONAL }
MeasResult2EUTRA-v1250 ::= SEQUENCE { rsrq-Type-r12 RSRQ-Type-r12 OPTIONAL }
MeasResultList2UTRA-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2UTRA-r9
MeasResult2UTRA-r9 ::= SEQUENCE { carrierFreq-r9 ARFCN-ValueUTRA, measResultList-r9 MeasResultListUTRA }
MeasResultList2CDMA2000-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2CDMA2000-r9
MeasResult2CDMA2000-r9 ::= SEQUENCE { carrierFreq-r9 CarrierFreqCDMA2000, measResultList-r9 MeasResultsCDMA2000 }
LogMeasReport-r10 ::= SEQUENCE { absoluteTimeStamp-r10 AbsoluteTimeInfo-r10, traceReference-r10 TraceReference-r10, traceRecordingSessionRef-r10 OCTET STRING (SIZE (2)), tce-Id-r10 OCTET STRING (SIZE (1)), logMeasInfoList-r10 LogMeasInfoList-r10, logMeasAvailable-r10 ENUMERATED {true} OPTIONAL, ..., [[ logMeasAvailableBT-r15 ENUMERATED {true} OPTIONAL, logMeasAvailableWLAN-r15 ENUMERATED {true} OPTIONAL ]] }
LogMeasInfoList-r10 ::= SEQUENCE (SIZE (1..maxLogMeasReport-r10)) OF LogMeasInfo-r10
LogMeasInfo-r10 ::= SEQUENCE { locationInfo-r10 LocationInfo-r10 OPTIONAL, relativeTimeStamp-r10 INTEGER (0..7200), servCellIdentity-r10 CellGlobalIdEUTRA, measResultServCell-r10 SEQUENCE { rsrpResult-r10 RSRP-Range, rsrqResult-r10 RSRQ-Range }, measResultNeighCells-r10 SEQUENCE { measResultListEUTRA-r10 MeasResultList2EUTRA-r9 OPTIONAL, measResultListUTRA-r10 MeasResultList2UTRA-r9 OPTIONAL, measResultListGERAN-r10 MeasResultList2GERAN-r10 OPTIONAL, measResultListCDMA2000-r10 MeasResultList2CDMA2000-r9 OPTIONAL } OPTIONAL, ..., [[ measResultListEUTRA-v1090 MeasResultList2EUTRA-v9e0 OPTIONAL ]], [[ measResultListMBSFN-r12 MeasResultListMBSFN-r12 OPTIONAL, measResultServCell-v1250 RSRQ-Range-v1250 OPTIONAL, servCellRSRQ-Type-r12 RSRQ-Type-r12 OPTIONAL, measResultListEUTRA-v1250 MeasResultList2EUTRA-v1250 OPTIONAL ]], [[ inDeviceCoexDetected-r13 ENUMERATED {true} OPTIONAL ]], [[ measResultServCell-v1360 RSRP-Range-v1360 OPTIONAL ]], [[ logMeasResultListBT-r15 LogMeasResultListBT-r15 OPTIONAL, logMeasResultListWLAN-r15 LogMeasResultListWLAN-r15 OPTIONAL ]], [[ anyCellSelectionDetected-r15 ENUMERATED {true} OPTIONAL ]], [[ measResultListNR-r16 MeasResultCellListNR-r15 OPTIONAL ]], [[ measResultListNR-v1640 SEQUENCE { carrierFreqNR-r16 ARFCN-ValueNR-r15 } OPTIONAL, measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL ]], [[ uncomBarPreMeasResult-r17 OCTET STRING OPTIONAL ]] }
MeasResultListMBSFN-r12 ::= SEQUENCE (SIZE (1..maxMBSFN-Area)) OF MeasResultMBSFN-r12
MeasResultMBSFN-r12 ::= SEQUENCE { mbsfn-Area-r12 SEQUENCE { mbsfn-AreaId-r12 MBSFN-AreaId-r12, carrierFreq-r12 ARFCN-ValueEUTRA-r9 }, rsrpResultMBSFN-r12 RSRP-Range, rsrqResultMBSFN-r12 MBSFN-RSRQ-Range-r12, signallingBLER-Result-r12 BLER-Result-r12 OPTIONAL, dataBLER-MCH-ResultList-r12 DataBLER-MCH-ResultList-r12 OPTIONAL, ... }
DataBLER-MCH-ResultList-r12 ::= SEQUENCE (SIZE (1.. maxPMCH-PerMBSFN)) OF DataBLER-MCH-Resultr12
DataBLER-MCH-Result-r12 ::= SEQUENCE { mch-Index-r12 INTEGER (1..maxPMCH-PerMBSFN), dataBLER-Result-r12 BLER-Result-r12 }
BLER-Result-r12 ::= SEQUENCE { bler-r12 BLER-Range-r12, blocksReceived-r12 SEQUENCE { n-r12 BIT STRING (SIZE (3)), m-r12 BIT STRING (SIZE (8)) } }
BLER-Range-r12 ::= INTEGER(0..31) MeasResultList2GERAN-r10 ::= SEQUENCE (SIZE (1..maxCellListGERAN)) OF MeasResultListGERAN MeasResultFreqListNR-r16::= SEQUENCE (SIZE (1..maxFreq-1-r16)) OF MeasResultFreqFailNR-r15
ConnEstFailReport-r11 ::= SEQUENCE { failedCellId-r11 CellGlobalIdEUTRA, locationInfo-r11 LocationInfo-r10 OPTIONAL, measResultFailedCell-r11 SEQUENCE { rsrpResult-r11 RSRP-Range, rsrqResult-r11 RSRQ-Range OPTIONAL }, measResultNeighCells-r11 SEQUENCE { measResultListEUTRA-r11 MeasResultList2EUTRA-r9 OPTIONAL, measResultListUTRA-r11 MeasResultList2UTRA-r9 OPTIONAL, measResultListGERAN-r11 MeasResultListGERAN OPTIONAL, measResultsCDMA2000-r11 MeasResultList2CDMA2000-r9 OPTIONAL } OPTIONAL, numberOfPreamblesSent-r11 NumberOfPreamblesSent-r11, contentionDetected-r11 BOOLEAN, maxTxPowerReached-r11 BOOLEAN, timeSinceFailure-r11 TimeSinceFailure-r11, measResultListEUTRA-v1130 MeasResultList2EUTRA-v9e0 OPTIONAL, ..., [[ measResultFailedCell-v1250 RSRQ-Range-v1250 OPTIONAL, failedCellRSRQ-Type-r12 RSRQ-Type-r12 OPTIONAL, measResultListEUTRA-v1250 MeasResultList2EUTRA-v1250 OPTIONAL ]], [[ measResultFailedCell-v1360 RSRP-Range-v1360 OPTIONAL ]], [[ logMeasResultListBT-r15 LogMeasResultListBT-r15 OPTIONAL, logMeasResultListWLAN-r15 LogMeasResultListWLAN-r15 OPTIONAL ]], [[ measResultListNR-r16 MeasResultCellListNR-r15 OPTIONAL ]], [[ measResultListNR-v1640 SEQUENCE { carrierFreqNR-r16 ARFCN-ValueNR-r15 } OPTIONAL, measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL ]] }
NumberOfPreamblesSent-r11::= INTEGER (1..200) TimeSinceFailure-r11 ::= INTEGER (0..172800) TimeUntilReconnection-r16 ::= INTEGER (0..172800) MobilityHistoryReport-r12 ::= VisitedCellInfoList-r12
FlightPathInfoReport-r15 ::= SEQUENCE { flightPath-r15 SEQUENCE (SIZE (1..maxWayPoint-r15)) OF WayPointLocation-r15 OPTIONAL, dummy SEQUENCE {} OPTIONAL }
WayPointLocation-r15 ::= SEQUENCE { wayPointLocation-r15 LocationInfo-r10, timeStamp-r15 AbsoluteTimeInfo-r10 OPTIONAL }
LoggedMeasurementConfiguration-r10-IEs ::= SEQUENCE { traceReference-r10 TraceReference-r10, traceRecordingSessionRef-r10 OCTET STRING (SIZE (2)), tce-Id-r10 OCTET STRING (SIZE (1)), absoluteTimeInfo-r10 AbsoluteTimeInfo-r10, areaConfiguration-r10 AreaConfiguration-r10 OPTIONAL, -- Need OR loggingDuration-r10 LoggingDuration-r10, loggingInterval-r10 LoggingInterval-r10, nonCriticalExtension LoggedMeasurementConfiguration-v1080-IEs OPTIONAL }
LoggedMeasurementConfiguration-v1080-IEs ::= SEQUENCE { lateNonCriticalExtension-r10 OCTET STRING OPTIONAL, nonCriticalExtension LoggedMeasurementConfiguration-v1130-IEs OPTIONAL }
LoggedMeasurementConfiguration-v1130-IEs ::= SEQUENCE { plmn-IdentityList-r11 PLMN-IdentityList3-r11 OPTIONAL, -- Need OR areaConfiguration-v1130 AreaConfiguration-v1130 OPTIONAL, -- Need OR nonCriticalExtension LoggedMeasurementConfiguration-v1250-IEs OPTIONAL }
LoggedMeasurementConfiguration-v1250-IEs ::= SEQUENCE { targetMBSFN-AreaList-r12 TargetMBSFN-AreaList-r12 OPTIONAL, -- Need OP nonCriticalExtension LoggedMeasurementConfiguration-v1530-IEs OPTIONAL }
LoggedMeasurementConfiguration-v1530-IEs ::= SEQUENCE { bt-NameList-r15 BT-NameList-r15 OPTIONAL, --Need OR wlan-NameList-r15 WLAN-NameList-r15 OPTIONAL, --Need OR nonCriticalExtension LoggedMeasurementConfiguration-v1700-IEs OPTIONAL }
LoggedMeasurementConfiguration-v1700-IEs ::= SEQUENCE { loggedEventTriggerConfig-r17 LoggedEventTriggerConfig-r17 OPTIONAL, --Need OR measUncomBarPre-r17 ENUMERATED {true} OPTIONAL, --Need OR nonCriticalExtension SEQUENCE {} OPTIONAL }
TargetMBSFN-AreaList-r12 ::= SEQUENCE (SIZE (0..maxMBSFN-Area)) OF TargetMBSFN-Area-r12 TargetMBSFN-Area-r12 ::= SEQUENCE { mbsfn-AreaId-r12 MBSFN-AreaId-r12 OPTIONAL, -- Need OR carrierFreq-r12 ARFCN-ValueEUTRA-r9, ... }
LoggedEventTriggerConfig-r17 ::= SEQUENCE { eventType-r17 EventType-r17 }
EventType-r17 ::= CHOICE { outOfCoverage NULL, eventL1 SEQUENCE { l1-Threshold-r17 ThresholdEUTRA, hysteresis-r17 Hysteresis, timeToTrigger-r17 TimeToTrigger }, ... } RRC-NRUEInformationRequest-r16 ::= SEQUENCE { rrc-TransactionIdentifier RRC-TransactionIdentifier, criticalExtensions CHOICE { ueInformationRequest-r16 UEInformationRequest-r16-IEs, criticalExtensionsFuture SEQUENCE {} } }
UEInformationRequest-r16-IEs ::= SEQUENCE { idleModeMeasurementReq-r16 ENUMERATED{true} OPTIONAL, -- Need N logMeasReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N connEstFailReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N ra-ReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N rlf-ReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N mobilityHistoryReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N lateNonCriticalExtension OCTET STRING OPTIONAL, nonCriticalExtension UEInformationRequest-v1700-IEs OPTIONAL }
UEInformationRequest-v1700-IEs ::= SEQUENCE { successHO-ReportReq-r17 ENUMERATED {true} OPTIONAL, -- Need N coarseLocationRequest-r17 ENUMERATED {true} OPTIONAL, -- Need N nonCriticalExtension SEQUENCE {} OPTIONAL }
UEInformationResponse-r16 ::= SEQUENCE { rrc-TransactionIdentifier RRC-TransactionIdentifier, criticalExtensions CHOICE { ueInformationResponse-r16 UEInformationResponse-r16-IEs, criticalExtensionsFuture SEQUENCE {} } }
UEInformationResponse-r16-IEs ::= SEQUENCE { measResultIdleEUTRA-r16 MeasResultIdleEUTRA-r16 OPTIONAL, measResultIdleNR-r16 MeasResultIdleNR-r16 OPTIONAL, logMeasReport-r16 LogMeasReport-r16 OPTIONAL, connEstFailReport-r16 ConnEstFailReport-r16 OPTIONAL, ra-ReportList-r16 RA-ReportList-r16 OPTIONAL, rlf-Report-r16 RLF-Report-r16 OPTIONAL, mobilityHistoryReport-r16 MobilityHistoryReport-r16 OPTIONAL, lateNonCriticalExtension OCTET STRING OPTIONAL, nonCriticalExtension UEInformationResponse-v1700-IEs OPTIONAL }
UEInformationResponse-v1700-IEs ::= SEQUENCE { successHO-Report-r17 SuccessHO-Report-r17 OPTIONAL, connEstFailReportList-r17 ConnEstFailReportList-r17 OPTIONAL, coarseLocationInfo-r17 OCTET STRING OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL }
LogMeasReport-r16 ::= SEQUENCE { absoluteTimeStamp-r16 AbsoluteTimeInfo-r16, traceReference-r16 TraceReference-r16, traceRecordingSessionRef-r16 OCTET STRING (SIZE (2)), tce-Id-r16 OCTET STRING (SIZE (1)), logMeasInfoList-r16 LogMeasInfoList-r16, logMeasAvailable-r16 ENUMERATED {true} OPTIONAL, logMeasAvailableBT-r16 ENUMERATED {true} OPTIONAL, logMeasAvailableWLAN-r16 ENUMERATED {true} OPTIONAL, ... }
LogMeasInfoList-r16 ::= SEQUENCE (SIZE (1..maxLogMeasReport-r16)) OF LogMeasInfo-r16 LogMeasInfo-r16 ::= SEQUENCE { locationInfo-r16 LocationInfo-r16 OPTIONAL, relativeTimeStamp-r16 INTEGER (0..7200), servCellIdentity-r16 CGI-Info-Logging-r16 OPTIONAL, measResultServingCell-r16 MeasResultServingCell-r16 OPTIONAL, measResultNeighCells-r16 SEQUENCE { measResultNeighCellListNR MeasResultListLogging2NR-r16 OPTIONAL, measResultNeighCellListEUTRA MeasResultList2EUTRA-r16 OPTIONAL }, anyCellSelectionDetected-r16 ENUMERATED {true} OPTIONAL, ..., [[ inDeviceCoexDetected-r17 ENUMERATED {true} OPTIONAL ]] }
ConnEstFailReport-r16 ::= SEQUENCE { measResultFailedCell-r16 MeasResultFailedCell-r16, locationInfo-r16 LocationInfo-r16 OPTIONAL, measResultNeighCells-r16 SEQUENCE { measResultNeighCellListNR MeasResultList2NR-r16 OPTIONAL, measResultNeighCellListEUTRA MeasResultList2EUTRA-r16 OPTIONAL }, numberOfConnFail-r16 INTEGER (1..8), perRAInfoList-r16 PerRAInfoList-r16, timeSinceFailure-r16 TimeSinceFailure-r16, ... }
ConnEstFailReportList-r17 ::= SEQUENCE (SIZE (1..maxCEFReport-r17)) OF ConnEstFailReport-r16
MeasResultServingCell-r16 ::= SEQUENCE { resultsSSB-Cell MeasQuantityResults, resultsSSB SEQUENCE{ best-ssb-Index SSB-Index, best-ssb-Results MeasQuantityResults, numberOfGoodSSB INTEGER (1..maxNrofSSBs-r16) } OPTIONAL }
MeasResultFailedCell-r16 ::= SEQUENCE { cgi-Info CGI-Info-Logging-r16, measResult-r16 SEQUENCE { cellResults-r16 SEQUENCE{ resultsSSB-Cell-r16 MeasQuantityResults }, rsIndexResults-r16 SEQUENCE{ resultsSSB-Indexes-r16 ResultsPerSSB-IndexList } } }
RA-ReportList-r16 ::= SEQUENCE (SIZE (1..maxRAReport-r16)) OF RA-Report-r16
RA-Report-r16 ::= SEQUENCE { cellId-r16 CHOICE { cellGlobalId-r16 CGI-Info-Logging-r16, pci-arfcn-r16 PCI-ARFCN-NR-r16 }, ra-InformationCommon-r16 RA-InformationCommon-r16 OPTIONAL, raPurpose-r16 ENUMERATED {accessRelated, beamFailureRecovery, reconfigurationWithSync, ulUnSynchronized, schedulingRequestFailure, noPUCCHResourceAvailable, requestForOtherSI, msg3RequestForOtherSI-r17, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1}, ..., [[ spCellID-r17 CGI-Info-Logging-r16 OPTIONAL ]] }
RA-InformationCommon-r16 ::= SEQUENCE { absoluteFrequencyPointA-r16 ARFCN-ValueNR, locationAndBandwidth-r16 INTEGER (0..37949), subcarrierSpacing-r16 SubcarrierSpacing, msg1-FrequencyStart-r16 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL, msg1-FrequencyStartCFRA-r16 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL, msg1-SubcarrierSpacing-r16 SubcarrierSpacing OPTIONAL, msg1-SubcarrierSpacingCFRA-r16 SubcarrierSpacing OPTIONAL, msg1-FDM-r16 ENUMERATED {one, two, four, eight} OPTIONAL, msg1-FDMCFRA-r16 ENUMERATED {one, two, four, eight} OPTIONAL, perRAInfoList-r16 PerRAInfoList-r16, ..., [[ perRAInfoList-v1660 PerRAInfoList-v1660 OPTIONAL ]], [[ msg1-SCS-From-prach-ConfigurationIndex-r16 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL ]], [[ msg1-SCS-From-prach-ConfigurationIndexCFRA-r16 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL ]], [[ msgA-RO-FrequencyStart-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL, msgA-RO-FrequencyStartCFRA-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL, msgA-SubcarrierSpacing-r17 SubcarrierSpacing OPTIONAL, msgA-RO-FDM-r17 ENUMERATED {one, two, four, eight} OPTIONAL, msgA-RO-FDMCFRA-r17 ENUMERATED {one, two, four, eight} OPTIONAL, msgA-SCS-From-prach-ConfigurationIndex-r17 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL, msgA-TransMax-r17 ENUMERATED {n1, n2, n4, n6, n8, n10, n20, n50, n100, n200} OPTIONAL, msgA-MCS-r17 INTEGER (0..15) OPTIONAL, nrofPRBs-PerMsgA-PO-r17 INTEGER (1..32) OPTIONAL, msgA-PUSCH-TimeDomainAllocation-r17 INTEGER (1..maxNrofUL-Allocations) OPTIONAL, frequencyStartMsgA-PUSCH-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL, nrofMsgA-PO-FDM-r17 ENUMERATED {one, two, four, eight} OPTIONAL, dlPathlossRSRP-r17 RSRP-Range OPTIONAL, intendedSIBs-r17 SEQUENCE (SIZE (1..maxSIB)) OF SIB-Type-r17 OPTIONAL, ssbsForSI-Acquisition-r17 SEQUENCE (SIZE (1..maxNrofSSBs-r16)) OF SSB-Index OPTIONAL, msgA-PUSCH-PayloadSize-r17 BIT STRING (SIZE (5)) OPTIONAL, onDemandSISuccess-r17 ENUMERATED {true} OPTIONAL ]] }
PerRAInfoList-r16 ::= SEQUENCE (SIZE (1..200)) OF PerRAInfo-r16 PerRAInfoList-v1660 ::= SEQUENCE (SIZE (1..200)) OF PerRACSI-RSInfo-v1660
PerRAInfo-r16 ::= CHOICE { perRASSBInfoList-r16 PerRASSBInfo-r16, perRACSI-RSInfoList-r16 PerRACSI-RSInfo-r16 }
PerRASSBInfo-r16 ::= SEQUENCE { ssb-Index-r16 SSB-Index, numberOfPreamblesSentOnSSB-r16 INTEGER (1..200), perRAAttemptInfoList-r16 PerRAAttemptInfoList-r16 }
PerRACSI-RSInfo-r16 ::= SEQUENCE { csi-RS-Index-r16 CSI-RS-Index, numberOfPreamblesSentOnCSI-RS-r16 INTEGER (1..200) }
PerRACSI-RSInfo-v1660 ::= SEQUENCE { csi-RS-Index-v1660 INTEGER (1..96) OPTIONAL }
PerRAAttemptInfoList-r16 ::= SEQUENCE (SIZE (1..200)) OF PerRAAttemptInfo-r16
PerRAAttemptInfo-r16 ::= SEQUENCE { contentionDetected-r16 BOOLEAN OPTIONAL, dlRSRPAboveThreshold-r16 BOOLEAN OPTIONAL, ..., [[ fallbackToFourStepRA-r17 ENUMERATED {true} OPTIONAL ]] }
SIB-Type-r17 ::= ENUMERATED {sibType2, sibType3, sibType4, sibType5, sibType9, sibType10-v1610, sibType11-v1610, sibType12-v1610, sibType13-v1610, sibType14-v1610, spare6, spare5, spare4, spare3, spare2, spare1}
RLF-Report-r16 ::= CHOICE { nr-RLF-Report-r16 SEQUENCE { measResultLastServCell-r16 MeasResultRLFNR-r16, measResultNeighCells-r16 SEQUENCE { measResultListNR-r16 MeasResultList2NR-r16 OPTIONAL, measResultListEUTRA-r16 MeasResultList2EUTRA-r16 OPTIONAL } OPTIONAL, c-RNTI-r16 RNTI-Value, previousPCellId-r16 CHOICE { nrPreviousCell-r16 CGI-Info-Logging-r16, eutraPreviousCell-r16 CGI-InfoEUTRALogging } OPTIONAL, failedPCellId-r16 CHOICE { nrFailedPCellId-r16 CHOICE { cellGlobalId-r16 CGI-Info-Logging-r16, pci-arfcn-r16 PCI-ARFCN-NR-r16 }, eutraFailedPCellId-r16 CHOICE { cellGlobalId-r16 CGI-InfoEUTRALogging, pci-arfcn-r16 PCI-ARFCN-EUTRA-r16 } }, reconnectCellId-r16 CHOICE { nrReconnectCellId-r16 CGI-Info-Logging-r16, eutraReconnectCellId-r16 CGI-InfoEUTRALogging } OPTIONAL, timeUntilReconnection-r16 TimeUntilReconnection-r16 OPTIONAL, reestablishmentCellId-r16 CGI-Info-Logging-r16 OPTIONAL, timeConnFailure-r16 INTEGER (0..1023) OPTIONAL, timeSinceFailure-r16 TimeSinceFailure-r16, connectionFailureType-r16 ENUMERATED {rlf, hof}, rlf-Cause-r16 ENUMERATED {t310-Expiry, randomAccessProblem, rlc-MaxNumRetx, beamFailureRecoveryFailure, lbtFailure-r16, bh-rlfRecoveryFailure, t312-expiry-r17, spare1}, locationInfo-r16 LocationInfo-r16 OPTIONAL, noSuitableCellFound-r16 ENUMERATED {true} OPTIONAL, ra-InformationCommon-r16 RA-InformationCommon-r16 OPTIONAL, ..., [[ csi-rsRLMConfigBitmap-v1650 BIT STRING (SIZE (96)) OPTIONAL ]], [[ lastHO-Type-r17 ENUMERATED {cho, daps, spare2, spare1} OPTIONAL, timeConnSourceDAPS-Failure-r17 TimeConnSourceDAPS-Failure-r17 OPTIONAL, timeSinceCHO-Reconfig-r17 TimeSinceCHO-Reconfig-r17 OPTIONAL, choCellId-r17 CHOICE { cellGlobalId-r17 CGI-Info-Logging-r16, pci-arfcn-r17 PCI-ARFCN-NR-r16 } OPTIONAL, choCandidateCellList-r17 ChoCandidateCellList-r17 OPTIONAL ]] }, eutra-RLF-Report-r16 SEQUENCE { failedPCellId-EUTRA CGI-InfoEUTRALogging, measResult-RLF-Report-EUTRA-r16 OCTET STRING, ..., [[ measResult-RLF-Report-EUTRA-v1690 OCTET STRING OPTIONAL ]] } }
SuccessHO-Report-r17 ::= SEQUENCE { sourceCellInfo-r17 SEQUENCE { sourcePCellId-r17 CGI-Info-Logging-r16, sourceCellMeas-r17 MeasResultSuccessHONR-r17 OPTIONAL, rlf-InSourceDAPS-r17 ENUMERATED {true} OPTIONAL }, targetCellInfo-r17 SEQUENCE { targetPCellId-r17 CGI-Info-Logging-r16, targetCellMeas-r17 MeasResultSuccessHONR-r17 OPTIONAL }, measResultNeighCells-r17 SEQUENCE { measResultListNR-r17 MeasResultList2NR-r16 OPTIONAL, measResultListEUTRA-r17 MeasResultList2EUTRA-r16 OPTIONAL } OPTIONAL, locationInfo-r17 LocationInfo-r16 OPTIONAL, timeSinceCHO-Reconfig-r17 TimeSinceCHO-Reconfig-r17 OPTIONAL, shr-Cause-r17 SHR-Cause-r17 OPTIONAL, ra-InformationCommon-r17 RA-InformationCommon-r16 OPTIONAL, upInterruptionTimeAtHO-r17 UPInterruptionTimeAtHO-r17 OPTIONAL, c-RNTI-r17 RNTI-Value OPTIONAL, ... }
MeasResultList2NR-r16 ::= SEQUENCE(SIZE (1..maxFreq)) OF MeasResult2NR-r16 MeasResultList2EUTRA-r16 ::= SEQUENCE(SIZE (1..maxFreq)) OF MeasResult2EUTRA-r16
MeasResult2NR-r16 ::= SEQUENCE { ssbFrequency-r16 ARFCN-ValueNR OPTIONAL, refFreqCSI-RS-r16 ARFCN-ValueNR OPTIONAL, measResultList-r16 MeasResultListNR }
MeasResultListLogging2NR-r16 ::= SEQUENCE(SIZE (1..maxFreq)) OF MeasResultLogging2NR-r16
MeasResultLogging2NR-r16 ::= SEQUENCE { carrierFreq-r16 ARFCN-ValueNR, measResultListLoggingNR-r16 MeasResultListLoggingNR-r16 }
MeasResultListLoggingNR-r16 ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultLoggingNR-r16
MeasResultLoggingNR-r16 ::= SEQUENCE { physCellId-r16 PhysCellId, resultsSSB-Cell-r16 MeasQuantityResults, numberOfGoodSSB-r16 INTEGER (1..maxNrofSSBs-r16) OPTIONAL }
MeasResult2EUTRA-r16 ::= SEQUENCE { carrierFreq-r16 ARFCN-ValueEUTRA, measResultList-r16 MeasResultListEUTRA }
MeasResultRLFNR-r16 ::= SEQUENCE { measResult-r16 SEQUENCE { cellResults-r16 SEQUENCE{ resultsSSB-Cell-r16 MeasQuantityResults OPTIONAL, resultsCSI-RS-Cell-r16 MeasQuantityResults OPTIONAL }, rsIndexResults-r16 SEQUENCE{ resultsSSB-Indexes-r16 ResultsPerSSB-IndexList OPTIONAL, ssbRLMConfigBitmap-r16 BIT STRING (SIZE (64)) OPTIONAL, resultsCSI-RS-Indexes-r16 ResultsPerCSI-RS-IndexList OPTIONAL, csi-rsRLMConfigBitmap-r16 BIT STRING (SIZE (96)) OPTIONAL } OPTIONAL } }
MeasResultSuccessHONR-r17::= SEQUENCE { measResult-r17 SEQUENCE { cellResults-r17 SEQUENCE{ resultsSSB-Cell-r17 MeasQuantityResults OPTIONAL, resultsCSI-RS-Cell-r17 MeasQuantityResults OPTIONAL }, rsIndexResults-r17 SEQUENCE{ resultsSSB-Indexes-r17 ResultsPerSSB-IndexList OPTIONAL, resultsCSI-RS-Indexes-r17 ResultsPerCSI-RS-IndexList OPTIONAL } } }
ChoCandidateCellList-r17 ::= SEQUENCE(SIZE (1..maxNrofCondCells-r16)) OF ChoCandidateCell-r17
ChoCandidateCell-r17 ::= CHOICE { cellGlobalId-r17 CGI-Info-Logging-r16, pci-arfcn-r17 PCI-ARFCN-NR-r16 }
SHR-Cause-r17 ::= SEQUENCE { t304-cause-r17 ENUMERATED {true} OPTIONAL, t310-cause-r17 ENUMERATED {true} OPTIONAL, t312-cause-r17 ENUMERATED {true} OPTIONAL, sourceDAPS-Failure-r17 ENUMERATED {true} OPTIONAL, ... }
TimeSinceFailure-r16 ::= INTEGER (0..172800) MobilityHistoryReport-r16 ::= VisitedCellInfoList-r16 TimeUntilReconnection-r16 ::= INTEGER (0..172800) TimeSinceCHO-Reconfig-r17 ::= INTEGER (0..1023) TimeConnSourceDAPS-Failure-r17 ::= INTEGER (0..1023) UPInterruptionTimeAtHO-r17 ::= INTEGER (0..1023) Reference
|
||