-
Notifications
You must be signed in to change notification settings - Fork 136
/
e2sm_kpm_metric_defs.h
1768 lines (1475 loc) · 117 KB
/
e2sm_kpm_metric_defs.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/*
*
* Copyright 2021-2024 Software Radio Systems Limited
*
* This file is part of srsRAN.
*
* srsRAN is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of
* the License, or (at your option) any later version.
*
* srsRAN 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 Affero General Public License for more details.
*
* A copy of the GNU Affero General Public License can be found in
* the LICENSE file in the top-level directory of this distribution
* and at http://www.gnu.org/licenses/.
*
*/
#pragma once
#include "srsran/e2/e2sm/e2sm_kpm.h"
/*
* In this file, we structure the metrics described in the 3GPP/ORAN technical specifications.
*/
namespace srsran {
enum e2sm_kpm_collection_method_t {
CC = 1, // Cumulative Counter
GAUGE = 2, // Dynamic Variable
DER = 3, // Discrete Event Registration (n=1)
SI = 4, // Status Inspection
OM = 5 // ?
};
enum e2sm_kpm_measurement_object_t {
E2_Node = 0x0001, // ManagedElement
GNBCUUP = 0x0002, // GNBCUUPFunction
NRCellCU = 0x0004,
NRCellDU = 0x0008,
NRCellRelation = 0x0010,
EutranRelation = 0x0020,
BEAM = 0x0040,
EP_F1U = 0x0080,
EP_XnU = 0x0100,
EP_X2U = 0x0200,
ANY = 0xffff
};
enum e2sm_kpm_metric_dtype_t { INTEGER, REAL };
struct e2sm_kpm_metric_t {
std::string name;
uint32_t meas_obj;
e2sm_kpm_collection_method_t collection_method;
e2sm_kpm_metric_dtype_t data_type;
std::string units;
uint32_t optional_labels;
uint32_t optional_levels;
};
inline bool is_cell_id_required(const e2sm_kpm_metric_t& metric)
{
// Cell ID is required if metric belongs to a measurement object class confined in a single cell.
if (metric.meas_obj == NRCellCU) {
return true;
}
if (metric.meas_obj == NRCellDU) {
return true;
}
// Cell ID is not needed if metric is cell agnostic (e.g., GNBCUUPFunction).
return false;
}
/// Number of E2SM-KPM metrics defined in 3GPP TS 28.552.
const size_t NOF_3GPP_TS_28_552_METRICS = 278;
/// Number of E2SM-KPM metrics defined in O-RAN.WG3.E2SM-KPM-R003-v3.00
const size_t NOF_ORAN_E2SM_KPM_METRICS = 9;
// Measurements defined in 3GPP TS 28.552 V18.23.0 (2023-0306)
inline span<const e2sm_kpm_metric_t> get_e2sm_kpm_28_552_metrics()
{
// clang-format off
static const std::array<e2sm_kpm_metric_t, NOF_3GPP_TS_28_552_METRICS> metrics = {{
// 5.1.1 Performance measurements valid for all gNB deployment scenarios
// 5.1.1.1 Packet Delay
// Note: Definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable ALL_LEVELS (NODE, UE and QOS)
// 5.1.1.1.1 Average delay DL air-interface
// Description: This measurement provides the average (arithmetic mean) time it takes for packet transmission
// over the air-interface in the downlink direction.
{"DRB.AirIfDelayDl", NRCellDU, DER, REAL, "ms", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.2 Distribution of delay DL air-interface
// Description: This measurement is an integer representing the number of RLC SDU packets measured with the delay
// within the range of the bin.
// Note: bin width is vendor specific
{"DRB.AirIfDelayDist", NRCellDU, DER, INTEGER, "-", DIST_BIN_X_LABEL | PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.3 Average delay UL on over-the-air interface
// Description: This measurement provides the average (arithmetic mean) over-the-air packet delay on the uplink.
{"DRB.AirIfDelayUl", NRCellDU, DER, REAL, "ms", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.4 Average RLC packet delay in the UL
// Description: This measurement provides the average RLC packet delay on the uplink.
{"DRB.RlcDelayUl", NRCellDU, DER, REAL, "ms", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.5 Average PDCP re-ordering delay in the UL
// Description: This measurement provides the average (arithmetic mean) PDCP re-ordering delay on the uplink,
// i.e., the delay within the gNB-CU-UP.
{"DRB.PdcpReordDelayUl", GNBCUUP, DER, REAL, "ms", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.6 Distribution of DL delay between NG-RAN and UE
// Description: This measurement provides the distribution of DL packet delay between NG-RAN and UE, which
// is the delay incurred in NG-RAN (including the delay at gNB-CU-UP, on F1-U and on gNB-DU)
// and the delay over Uu interface.
// Note: bin width is vendor specific
// Note: source is NRCellCU (for non-split and 2-split scenario) or GNBCUUPFunction (for 3-split scenario)
{"DRB.DelayDlNgranUeDist", NRCellCU | GNBCUUP, DER, INTEGER, "-", DIST_BIN_X_LABEL | PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.7 Distribution of UL delay between NG-RAN and UE
// 5.1.1.1.7.1 Distribution of UL delay between NG-RAN and UE (excluding D1)
// Description: This measurement provides the distribution of UL packet delay between NG-RAN and UE, which includes
// the delay occurred in NG-RAN (including the delay at gNB-CU-UP, on F1-U and on gNB-DU) and the delay
// over Uu interface (excluding the D1 UL PDCP delay occurred in the UE).
// Note: bin width is vendor specific
// Note: source is NRCellCU (for non-split and 2-split scenario) or GNBCUUPFunction (for 3-split scenario)
{"DRB.DelayUlNgranUeDist", NRCellCU | GNBCUUP, DER, INTEGER, "-", DIST_BIN_X_LABEL | PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.7.2 Distribution of UL delay between NG-RAN and UE (including D1)
// Description: This measurement provides the distribution of UL packet delay between NG-RAN and UE, which includes
// the delay occurred in NG-RAN (including the delay at gNB-CU-UP, on F1-U and on gNB-DU), the delay
// over Uu interface and the D1 UL PDCP delay occurred in the UE.
// Note: bin width is vendor specific
// Note: source is NRCellCU (for non-split and 2-split scenario) or GNBCUUPFunction (for 3-split scenario)
{"DRB.DelayUlNgranUeIncD1Dist", NRCellCU | GNBCUUP, DER, INTEGER, "-", DIST_BIN_X_LABEL | PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.8 DL packet delay between NG-RAN and PSA UPF
// 5.1.1.1.8.1 Average DL GTP packet delay between PSA UPF and NG-RAN
// Description: This measurement provides the average DL GTP packet delay between PSA UPF and NG-RAN.
// Note: source is EP_N3 (contained by GNBCUUPFunction)
{"GTP.DelayDlPsaUpfNgranMean", GNBCUUP, DER, REAL, "us", FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.1.8.2 Distribution of DL GTP packet delay between PSA UPF and NG-RAN
// Description: This measurement provides the distribution of DL GTP packet delay between PSA UPF and NG-RAN.
// Note: bin width is vendor specific,
// Note: source is EP_N3 (contained by GNBCUUPFunction)
{"GTP.DelayDlPsaUpfNgranDist", GNBCUUP, DER, INTEGER, "-", DIST_BIN_X_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.2 Radio resource utilization
// Note: Measurement definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 to allow E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.2.1 DL Total PRB Usage
// Description: This measurement provides the total usage (in percentage) of physical resource blocks (PRBs)
// on the downlink for any purpose.
{"RRU.PrbTotDl", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.2 UL Total PRB Usage
// Description: This measurement provides the total usage (in percentage) of physical resource blocks (PRBs)
// on the uplink for any purpose.
{"RRU.PrbTotUl", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.3 Distribution of DL Total PRB Usage
// Description: This measurement provides the distribution of samples with total usage (in percentage) of physical
// resource blocks (PRBs) on the downlink in different ranges.
{"RRU.PrbTotDlDist", NRCellDU, CC, INTEGER, "%", DIST_BIN_X_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.4 Distribution of UL total PRB usage
// Description: This measurement provides the distribution of samples with total usage (in percentage) of physical
// resource blocks (PRBs) on the uplink in different usage ranges.
{"RRU.PrbTotUlDist", NRCellDU, CC, INTEGER, "%", DIST_BIN_X_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.5 Mean DL PRB used for data traffic
// Description: This measurement provides the number of physical resource blocks (PRBs) in average used in downlink
// for data traffic.
{"RRU.PrbUsedDl", NRCellDU, SI, INTEGER, "-", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.6 DL total available PRB
// Description: This measurement provides the total number of physical resource blocks (PRBs) in average available DL.
{"RRU.PrbAvailDl", NRCellDU, SI, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.7 Mean UL PRB used for data traffic
// Description: This measurement provides the number of physical resource blocks (PRBs) in average used in uplink
// for data traffic.
{"RRU.PrbUsedUl", NRCellDU, SI, INTEGER, "-", PLMN_ID_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.8 UL total available PRB
// Description: This measurement provides the total number of physical resource blocks (PRBs) available uplink.
{"RRU.PrbAvailUl", NRCellDU, SI, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.9 Peak DL PRB used for data traffic
// Description: This measurement provides the maximum number of PRBs used in downlink for data traffic.
{"RRU.MaxPrbUsedDl", NRCellDU, SI, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.10 Peak UL PRB used for data traffic
// Description: This measurement provides the number of PRBs used in uplink for data traffic.
{"RRU.MaxPrbUsedUl", NRCellDU, SI, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.11 PDSCH PRB Usage per cell for MIMO
// Description: This measurement provides the total usage (in percentage) of physical resource blocks (PRBs) per cell
// for MIMO with time domain averaged maximum scheduled layer number as spatial factor in the downlink.
{"RRU.PrbTotDlMimo", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.12 PUSCH PRB Usage per cell for MIMO
// Description: This measurement provides the total usage (in percentage) of physical resource blocks (PRBs) per cell
// for MIMO with time domain averaged maximum scheduled layer number as spatial factor in the uplink.
{"RRU.PrbTotUlMimo", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.13 SDM PDSCH PRB Usage
// Description: This measurement provides the total usage (in percentage) of PDSCH physical resource blocks (PRBs),
// based on statistical MIMO layers.
{"RRU.PrbTotSdmDl", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.2.14 SDM PUSCH PRB Usage
// Description: This measurement provides the total usage (in percentage) of PUSCH physical resource blocks (PRBs),
// based on statistical MIMO layers.
{"RRU.PrbTotSdmUl", NRCellDU, SI, INTEGER, "%", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.3 UE throughput
// Note: Definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable ALL_LEVELS (NODE, UE and QOS)
// 5.1.1.3.1 Average DL UE throughput in gNB
// Description: This measurement provides the average UE throughput in downlink.
// Note: seems that DRB.UEThpDl.BWP, where BWP identifies the Active BWP is not supported in KPM
{"DRB.UEThpDl", NRCellDU, DER, REAL, "kbps", FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL | NO_LABEL, ALL_LEVELS},
// 5.1.1.3.2 Distribution of DL UE throughput in gNB
// Description: This measurement provides the distribution of the UE throughput in downlink.
{"DRB.UEThpDlDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL, ALL_LEVELS},
// 5.1.1.3.3 Average UL UE throughput in gNB
// Description: This measurement provides the average UE throughput in uplink.
// Note: seems that DRB.UEThpDl.BWP, where BWP identifies the Active BWP is not supported in KPM
{"DRB.UEThpUl", NRCellDU, DER, REAL, "kbps", FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL | NO_LABEL, ALL_LEVELS},
// 5.1.1.3.4 Distribution of UL UE throughput in gNB
// Description: This measurement provides the distribution of the UE throughput in uplink.
{"DRB.UEThpUlDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL | FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL, ALL_LEVELS},
// 5.1.1.3.5 Percentage of unrestricted DL UE data volume in gNB
// Description: This measurement provides the percentage of DL data volume for UEs in the cell that is classified
// as unrestricted, i.e., when the volume is so low that all data can be transferred in one slot and
// no UE throughput sample could be calculated.
{"DRB.UEUnresVolDl", NRCellDU, SI, INTEGER, "%", FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL, ALL_LEVELS},
// 5.1.1.3.6 Percentage of unrestricted UL UE data volume in gNB
// Description: This measurement provides the percentage of UL data volume for UEs in the cell that is classified
// as unrestricted, i.e., when the volume is so low that all data can be transferred in one slot and
// no UE throughput sample could be calculated.
{"DRB.UEUnresVolUl", NRCellDU, SI, INTEGER, "%", FIVE_QI_LABEL | SLICE_ID_LABEL | PLMN_ID_LABEL, ALL_LEVELS},
// 5.1.1.3.7 Average DL UE buffered Throughput per DRB
// Description: This measurement provides the average downlink buffered UE throughput per DRB on NRCellCU.
{"DRB.PDCP.UEThpDl", NRCellDU | GNBCUUP, DER, REAL, "kbps", FIVE_QI_LABEL, ALL_LEVELS},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.4 RRC connection number
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.4.1 Mean number of RRC Connections
// Description: This measurement provides the mean number of users in RRC connected mode for each NR cell during
// each granularity period.
{"RRC.ConnMean", NRCellCU, SI, INTEGER, "-", PLMN_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.4.2 Max number of RRC Connections
// Description: This measurement provides the maximum number of users in RRC connected mode for each NR cell during
// each granularity period.
{"RRC.ConnMax", NRCellCU, SI, INTEGER, "%", PLMN_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.4.3 Mean number of stored inactive RRC Connections
// Description: This measurement provides the mean number of users in RRC inactive mode for each NR cell during
// each granularity period.
{"RRC.InactiveConnMean", NRCellCU, SI, REAL, "-", PLMN_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.4.4 Max number of stored inactive RRC Connections
// Description: This measurement provides the max number of users in RRC inactive mode during each granularity period.
{"RRC.InactiveConnMax", NRCellCU, SI, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.5 PDU Session Management
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.5.1 Number of PDU Sessions requested to setup
// Description: This measurement provides the number of PDU Sessions by the gNB.
// Note: mandatory SLICE_ID_LABEL
{"SM.PDUSessionSetupReq", NRCellCU, CC, INTEGER, "-", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
//5.1.1.5.2 Number of PDU Sessions successfully setup
// Description: This measurement provides the number of PDU Sessions successfully setup by the gNB from AMF.
// Note: mandatory SLICE_ID_LABEL
{"SM.PDUSessionSetupSucc", NRCellCU, CC, INTEGER, "-", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.5.3 Number of PDU Sessions failed to setup
// Description: This measurement provides the number of PDU Sessions failed to setup by the gNB.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"SM.PDUSessionSetupFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.5.4 Mean number of PDU sessions being allocated
// Description: This measurement provides the mean number of PDU sessions that have been allocated in the NRCellCU.
// Note: mandatory SLICE_ID_LABEL
{"SM.MeanPDUSessionSetupReq", NRCellCU, SI, INTEGER, "-", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.5.5 Peak number of PDU sessions being allocated
// Description: This measurement provides the peak number of PDU sessions that have been allocated in the NRCellCU.
// Note: mandatory SLICE_ID_LABEL
{"SM.MaxPDUSessionSetupReq", NRCellCU, SI, INTEGER, "-", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.6 Mobility Management
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.6.1 Inter-gNB handovers
// 5.1.1.6.1.1 Number of requested legacy handover preparations
// Description: This measurement provides the number of legacy handover preparations requested by the source gNB.
{"MM.HoPrepInterReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.2 Number of successful legacy handover preparations
// Description: This measurement provides the number of successful legacy handover preparations received by
// the source NR cell CU.
{"MM.HoPrepInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.3 Number of failed legacy handover preparations
// Description: This measurement provides the number of failed legacy handover preparations received by
// the source NR cell CU.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoPrepInterFail", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.4 Number of requested legacy handover resource allocations
// Description: This measurement provides the number of legacy handover resource allocation requests received
// by the target NR cell CU.
{"MM.HoResAlloInterReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.5 Number of successful legacy handover resource allocations
// Description: This measurement provides the number of successful legacy handover resource allocations at
// the target NR cell CU for the handover.
{"MM.HoResAlloInterSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.6 Number of failed legacy handover resource allocations
// Description: This measurement provides the number of failed legacy handover resource allocations at
// the target NR cell CU for the handover.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoResAlloInterFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.7 Number of requested legacy handover executions
// Description: This inter gNB handover measurement provides the number of outgoing legacy handover executions
// requested by the source gNB.
{"MM.HoExeInterReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.8 Number of successful legacy handover executions
// Description: This inter gNB handover measurement provides the number of successful legacy handover executions
// received by the source gNB.
{"MM.HoExeInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.9 Number of failed legacy handover executions
// Description: This inter gNB handover measurement provides the number of failed legacy handover executions for
// the source gNB.
// Note: mandatory Cause-label not supported in e2sm_kpm
// possible causes: MM.HoExeInterFail.UeCtxtRelCmd.cause; MM.HoExeInterFail.RrcReestabReq;
// MM.HoExeInterFail.HoExeSupTimer; MM.HoExeInterFail.RetrUeCtxtReq;
{"MM.HoExeInterFail", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.10 Mean Time of requested legacy handover executions
// Description: This measurement provides the mean time of inter gNB legacy handover executions during each
// granularity period.
{"MM.HoExeInterReq.TimeMean", NRCellCU, DER, INTEGER, "ms", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.11 Max Time of requested legacy handover executions
// Description: This measurement provides the max time of inter gNB legacy handover executions during each
// granularity period.
{"MM.HoExeInterReq.TimeMax", NRCellCU, DER, INTEGER, "ms", SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.12 Number of successful handover executions per beam pair
// Description: This inter gNB handover measurement provides the number of successful handover executions received
// by the source gNB per beam pair, i.e. beam in the source and beam in the target cell.
// Note: do we need SSB_IDX_LABEL?
{"MM.HoExeInterSSBSucc", BEAM, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.1.13 Number of failed handover executions per beam pair
// Description: This inter gNB handover measurement provides the number of failed handover executions for
// source gNB per beam pair.
// Note: do we need SSB_IDX_LABEL?
// Note: mandatory Cause-label not supported in e2sm_kpm
// possible causes: MM.HoExeInterSSBFail.UeCtxtRelCmd.cause; MM.HoExeInterSSBFail.RrcReestabReq;
// MM.HoExeInterSSBFail.HoExeSupTimer; MM.HoExeInterSSBFail.RetrUeCtxtReq;
{"MM.HoExeInterSSBFail", BEAM, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.2 Intra-gNB handovers
// 5.1.1.6.2.1 Number of requested legacy handover executions
// Description: This measurement provides the number of outgoing intra gNB legacy handover executions requested
// by the source NRCellCU.
{"MM.HoExeIntraReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.2.2 Number of successful legacy handover executions
// Description: This measurement provides the number of successful intra gNB legacy handover executions received
// by the source NRCellCU.
{"MM.HoExeIntraSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3 Handovers between 5GS and EPS
// 5.1.1.6.3.1 Number of requested preparations for handovers from 5GS to EPS
// Description: This measurement provides the number of preparations requested by the source gNB for the outgoing
// handovers from 5GS to EPS.
{"MM.HoOut5gsToEpsPrepReq", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.2 Number of successful preparations for handovers from 5GS to EPS
// Description: This measurement provides the number of successful preparations received by the source gNB for
// the outgoing handovers from 5GS to EPS.
{"MM.HoOut5gsToEpsPrepSucc", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.3 Number of failed preparations for handovers from 5GS to EPS
// Description: This measurement provides the number of failed preparations received by the source gNB for
// the outgoing handovers from 5GS to EPS.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoOut5gsToEpsPrepFail", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.4 Number of requested resource allocations for handovers from EPS to 5GS
// Description: This measurement provides the number of resource allocation requests received by the target gNB for
// handovers from EPS to 5GS.
{"MM.HoIncEpsTo5gsResAlloReq", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.5 Number of successful resource allocations for handovers from EPS to 5GS
// Description: This measurement provides the number of successful resource allocations at the target gNB for
// handovers from EPS to 5GS.
{"MM.HoIncEpsTo5gsResAlloSucc", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.6 Number of failed resource allocations for handovers from EPS to 5GS
// Description: This measurement provides the number of failed resource allocations at the target gNB for handovers
// from EPS to 5GS.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoIncEpsTo5gsResAlloFail", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.7 Number of requested executions for handovers from 5GS to EPS
// Description: This measurement provides the number of executions requested by the source gNB for handovers
// from 5GS to EPS.
{"MM.HoOutExe5gsToEpsReq", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.8 Number of successful executions for handovers from 5GS to EPS
// Description: This measurement provides the number of successful executions at the source gNB for handovers
// from 5GS to EPS.
{"MM.HoOutExe5gsToEpsSucc", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.9 Number of failed executions for handovers from 5GS to EPS
// Description: This measurement provides the number of failed executions at the source gNB for handovers
// from 5GS to EPS.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoOutExe5gsToEpsFail", NRCellCU | EutranRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.10 Number of requested preparations for EPS fallback handovers
// Description: This measurement provides the number of EPS fallback preparations requested by the source gNB
// for the outgoing handovers from 5GS to EPS.
{"MM.HoOut5gsToEpsFallbackPrepReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.11 Number of successful preparations for EPS fallback handovers
// Description: This measurement provides the number of successful EPS fallback preparations received
// by the source gNB for the outgoing handovers from 5GS to EPS.
{"MM.HoOut5gsToEpsFallbackPrepSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.12 Number of failed preparations for EPS fallback handovers
// Description: This measurement provides the number of failed preparations received by the source gNB for
// the outgoing handovers from 5GS to EPS.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoOut5gsToEpsFallbackPrepFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.13 Number of successful executions for EPS fallback handovers
// Description: This measurement provides the number of successful EPS fallback executions at the source gNB
// for handovers from 5GS to EPS.
{"MM.HoOutExe5gsToEpsFallbackSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.14 Number of failed executions for EPS fallback handovers
// Description: This measurement provides the number of failed EPS fallback executions at the source gNB for
// handovers from 5GS to EPS.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.HoOutExe5gsToEpsFallbackFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.15 Mean Time of EPS fallback handover
// Description: This measurement provides the mean time of EPS fallback whole handover during each granularity period.
{"MM.Ho5gsToEpsFallbackTimeMean", NRCellCU, DER, INTEGER, "ms", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.3.16 Mean Time of EPS fallback handover executions
// Description: This measurement provides the mean time of EPS fallback handover executions during each
// granularity period.
{"MM.HoExeHo5gsToEpsFallbackTimeMean", NRCellCU, DER, INTEGER, "ms", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.4 RRC redirection measurement
// 5.1.1.6.4.1 Number of EPS fallback redirection
// Description: This measurement provides the number of RRC release for EPS fallback redirection.
{"MM.Redirection.5gsToEpsFallback", NRCellDU, SI, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.5 Intra/Inter-frequency Handover related measurements
// 5.1.1.6.5.1 Number of requested intra-frequency handover executions
// Description: This measurement provides the number of outgoing intra-frequency handover executions requested
// by the source NRCellCU.
{"MM.HoExeIntraFreqReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.5.2 Number of successful intra-frequency handover executions
// Description: This measurement provides the number of successful intra-frequency handover executions received
// by the source NRCellCU.
{"MM.HoExeIntraFreqSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.5.3 Number of requested inter-frequency handover executions
// Description: This measurement provides the number of outgoing inter-frequency handover executions requested
// by the source NRCellCU.
{"MM.HoExeInterFreqReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.5.4 Number of successful inter-frequency handover executions
// Description: This measurement provides the number of successful inter-frequency handover executions received
// by the source NRCellCU.
{"MM.HoExeInterFreqSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6 Inter-gNB conditional handovers
// 5.1.1.6.6.1 Number of requested conditional handover preparations
// Description: This measurement provides the number of conditional handover preparations requested by the source gNB.
{"MM.ChoPrepInterReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.2 Number of successful conditional handover preparations
// Description: This measurement provides the number of successful conditional handover preparations received
// by the source NR cell CU.
{"MM.ChoPrepInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.3 Number of failed conditional handover preparations
// Description: This measurement provides the number of failed conditional handover preparations received
// by the source NR cell CU.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.ChoPrepInterFail", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.4 Number of requested conditional handover resource allocations
// Description: This measurement provides the number of conditional handover resource allocation requests received
// by the target NR cell CU.
{"MM.ChoResAlloInterReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.5 Number of successful conditional handover resource allocations
// Description: This measurement provides the number of successful conditional handover resource allocations
// at the target NR cell CU for the handover.
{"MM.ChoResAlloInterSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.6 Number of failed conditional handover resource allocations
// Description: This measurement provides the number of failed conditional handover resource allocations
// at the target NR cell CU for the handover.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.ChoResAlloInterFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.7 Number of configured conditional handover candidates
// Description: This inter gNB handover measurement provides the number of outgoing conditional handover candidates
// requested by the source gNB.
{"MM.ConfigInterReqCho", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.8 Number of UEs configured with conditional handover.
// Description: This inter-gNB handover measurement provides the number of UEs that has been configured with
// conditional handover by the source gNB.
{"MM.ConfigInterReqChoUes", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.9 Number of successful conditional handover executions
// Description: This inter-gNB handover measurement provides the number of successful conditional handover executions
// received by the source gNB.
{"MM.ChoExeInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.6.6.10 Void
// Note: empty in TS
// 5.1.1.6.6.11 Mean Time of requested conditional handover executions
// Description: This measurement provides the mean time of inter-gNB conditional handover executions during
// each granularity period.
{"MM.ChoExeInterReq.TimeMean", NRCellCU, DER, INTEGER, "ms", SLICE_ID_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.6.12 Max Time of requested conditional handover executions
// Description: This measurement provides the max time of inter-gNB conditional handover executions during
// each granularity period.
{"MM.ChoExeInterReq.TimeMax", NRCellCU, DER, INTEGER, "ms", SLICE_ID_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.6.13 Number of UEs for which conditional handover preparations are requested
// Description: This measurement provides the number of UEs for which conditional handover preparations
// were requested by the source gNB.
{"MM.ChoPrepInterReqUes", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.6.14 Number of UEs for which conditional handover preparations were successful
// Description: This measurement provides the number of UEs for which successful conditional handover preparations
// were received by the source NR cell CU.
{"MM.ChoPrepInterSuccUes", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.6.15 Number of UEs for which conditional handover preparations failed
// Description: This measurement provides the number of UEs for which conditional handover preparations failed,
// as received by the source NR cell CU.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.ChoPrepInterFailUes", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.7 Intra-gNB conditional handovers
// 5.1.1.6.7.1 Number of configured conditional handover candidates
// Description: This measurement provides the number of outgoing intra-gNB conditional handover candidates
// requested by the source NRCellCU.
{"MM.ConfigIntraReqCho", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.7.2 Number of UEs configured with conditional handover
// Description: This intra-gNB handover measurement provides the number of UEs that has been configured
// with conditional handover by the source cell.
{"MM.ConfigIntraReqChoUes", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.7.3 Number of successful handover executions
// Description: This measurement provides the number of successful intra-gNB handover executions received
// by the source NRCellCU.
{"MM.ChoExeIntraSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8 Inter-gNB DAPS handovers
// 5.1.1.6.8.1 Number of requested DAPS handover preparations
// Description: This measurement provides the number of DAPS handover preparations requested by the source gNB.
{"MM.DapsHoPrepInterReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.2 Number of successful DAPS handover preparations
// Description: This measurement provides the number of successful DAPS handover preparations received
// by the source NR cell CU.
{"MM.DapsHoPrepInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.3 Number of failed DAPS handover preparations
// Description: This measurement provides the number of failed DAPS handover preparations received
// by the source NR cell CU.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.DapsHoPrepInterFail", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.4 Number of requested DAPS handover resource allocations
// Description: This measurement provides the number of DAPS handover resource allocation requests received
// by the target NR cell CU.
{"MM.DapsHoResAlloInterReq", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.5 Number of successful DAPS handover resource allocations
// Description: This measurement provides the number of successful DAPS handover resource allocations
// at the target NR cell CU for the handover.
{"MM.DapsHoResAlloInterSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.6 Number of failed DAPS handover resource allocations
// Description: This measurement provides the number of failed DAPS handover resource allocations
// at the target NR cell CU for the handover.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"MM.DapsHoResAlloInterFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.7 Number of requested DAPS handover executions
// Description: This inter gNB handover measurement provides the number of outgoing DAPS handover executions
// requested by the source gNB.
{"MM.DapsHoExeInterReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.8 Number of successful DAPS handover executions
// Description: This inter gNB handover measurement provides the number of successful DAPS handover executions
// received by the source gNB.
{"MM.DapsHoExeInterSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.8.9 Number of failed DAPS handover executions
// Description: This inter gNB handover measurement provides the number of failed DAPS handover executions.
// Note: mandatory Cause-label not supported in e2sm_kpm
// Note: possible causes: MM.DapsHoExeInterFail.UeCtxtRelCmd.cause; MM.DapsHoExeInterFail.RrcReestabReq;
// MM.DapsHoExeInterFail.HoExeSupTimer; MM.DapsHoExeInterFail.RetrUeCtxtReq;
// MM.DapsHoExeInterFail.FailInfo.
{"MM.DapsHoExeInterFail", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.9 Intra-gNB DAPS handovers
// 5.1.1.6.9.1 Number of requested handovers
// Description: This measurement provides the nof outgoing intra-gNB DAPS handovers requested by the source NRCellCU.
{"MM.DapsHoExeIntraReq", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.6.9.2 Number of successful DAPS handovers
// Description: This measurement provides the nof successful intra-gNB DAPS handovers received by the source NRCellCU.
{"MM.DapsHoExeIntraSucc", NRCellCU | NRCellRelation, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.7 TB related Measurements
// 5.1.1.7.1 Total number of DL initial TBs
// Description: This measurement provides the total number of initial TBs transmitted on the downlink in a cell.
// HARQ re-transmissions are excluded from this measurement.
// Note: This measurement is optionally split into subcounters per modulation schema, e.g., TB.TotNbrDlInitial.64Qam
// Note: seems there is no related label in kpm
{"TB.TotNbrDlInitial", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.2 Intial error number of DL TBs
// Description: This measurement provides the number of initial faulty TBs transmitted on the downlink in a cell.
// Note: This measurement is optionally split into subcounters per modulation schema, e.g., TB.IntialErrNbrDl.64Qam
// Note: seems there is no related label in kpm
{"TB.IntialErrNbrDl", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.3 Total number of DL TBs
// Description: This measurement provides the total number of TBs transmitted on the downlink in a cell.
// This measurement includes all transmitted TBs (including the successful and failed TBs during initial
// transmission and HARQ re-transmission).
// Note: The measurement is split into subcounters per layer at MU-MIMO case.
{"TB.TotNbrDl", NRCellDU, CC, INTEGER, "-", LAYER_MU_MIMO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.4 Total error number of DL TBs
// Description: This measurement provides the number of total faulty TBs transmitted on the downlink in a cell.
// This measurement include all transmitted faulty TBs of initial transmission and re-transmission.
// Note: The measurement is split into subcounters per layer at MU-MIMO case.
{"TB.ErrTotNbrDl", NRCellDU, CC, INTEGER, "-", LAYER_MU_MIMO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.5 Residual error number of DL TBs
// Description: This measurement provides the number of final faulty TBs transmitted on the downlink in a cell
// at last HARQ re-transmissions.
{"TB.ResidualErrNbrDl", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.6 Total number of UL initial TBs
// Description: This measurement provides the total number of initial TBs on the uplink in a cell.
// Note: This measurement is optionally split into subcounters per modulation schema, e.g., TB.TotNbrUlInit.64Qam
// Note: seems there is no related label in kpm
{"TB.TotNbrUlInit", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.7 Error number of UL initial TBs
// Description: This measurement provides the number of initial faulty TBs on the uplink in a cell.
// Note: This measurement is optionally split into subcounters per modulation schema, e.g., TB.TotNbrUlInit.64Qam
// Note: seems there is no related label in kpm
{"TB.ErrNbrUlInitial", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.8 Total number of UL TBs
// Description: This measurement provides the total number of TBs on the uplink in a cell.This measurement includes
// all transmitted TBs (including the successful and failed TBs during initial transmission and
// HARQ re-transmission).
// Note: The measurement is split into subcounters per layer at MU-MIMO case.
{"TB.TotNbrUl", NRCellDU, CC, INTEGER, "-", LAYER_MU_MIMO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.9 Total error number of UL TBs
// Description: This measurement provides the number of total faulty TBs on the uplink in a cell.
// This measurement include all transmitted faulty TBs of initial and re-transmission .
// Note: The measurement is split into subcounters per layer at MU-MIMO case.
{"TB.ErrTotNbrUl", NRCellDU, CC, INTEGER, "-", LAYER_MU_MIMO_LABEL, E2_NODE_LEVEL},
// 5.1.1.7.10 Residual error number of UL TBs
// Description: This measurement provides the number of final faulty TBs on the uplink in a cell.
{"TB.ResidualErrNbrUl", NRCellDU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.8 Void - empty in TS
// 5.1.1.9 Void - empty in TS
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.10 DRB related measurements
// Note: Measurement definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE and UE levels.
// 5.1.1.10.1 Number of DRBs attempted to setup
// Description: This measurement provides the number of DRBs attempted to setup to support all requested QoS
// flows in the PDU sessions to be setup by the INITIAL CONTEXT SETUP REQUESTs,
// PDU SESSION RESOURCE SETUP REQUESTs and PDU SESSION RESOURCE MODIFY REQUEST message received
// by the gNB from AMF.
{"DRB.EstabAtt", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.2 Number of DRBs successfully setup
// Description: This measurement provides the number of DRBs successfully setup to support all requested QoS flows
// in the PDU sessions to be setup by the INITIAL CONTEXT SETUP REQUESTs, PDU SESSION RESOURCE SETUP
// REQUESTs and PDU SESSION RESOURCE MODIFY REQUEST message received by the gNB from AMF.
{"DRB.EstabSucc", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.3 Number of released active DRBs
// Description: This measurement provides the nof abnormally released DRBs that were active at the time of release.
{"DRB.RelActNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.4 In-session activity time for DRB
// Description: This measurement provides the aggregated active session time for DRBs in a cell.
// Note: number of "in session" seconds aggregated for DRBs with a certain mapped 5QI level or for a certain S-NSSAI
// Note: Unit changed from s to ms in O-RAN.WG3.E2SM-KPM-R003-v3.00
// Note: Definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable ALL_LEVELS (NODE, UE and QOS)
{"DRB.SessionTime", NRCellCU, CC, INTEGER, "ms", FIVE_QI_LABEL | SLICE_ID_LABEL, ALL_LEVELS},
// 5.1.1.10.5 Number of Initial DRBs attempted to setup
// Description: This measurement provides the number of initial DRBs attempted to setup to support all requested
// QoS flows in the PDU sessions to be setup by the INITIAL CONTEXT SETUP REQUEST messages received
// by the gNB from AMF.
{"DRB.InitialEstabAtt", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.6 Number of Initial DRBs successfully setup
// Description: This measurement provides the number of initial DRBs successfully setup to support all requested
// QoS flows in the PDU sessions to be setup by the INITIAL CONTEXT SETUP REQUEST messages received
// by the gNB from AMF.
{"DRB.InitialEstabSucc", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.7 Number of DRBs attempted to be resumed
// Description: This measurement provides the number of DRBs attempted to be resumed.
{"DRB.ResumeAtt", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.8 Number of DRBs successfuly resumed
// Description: This measurement provides the total successful number of DRBs successfuly resumed.
{"DRB.ResumeSucc", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.9 Mean number of DRBs being allocated
// Description: This measurement provides the mean number of DRBs that have been allocated.
// Note: why not REAL if mean?
{"DRB.MeanEstabSucc", NRCellCU, SI, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.10 Peak number of DRBs being allocated
// Description: This measurement provides the peak number of DRBs that have been allocated.
{"DRB.MaxEstabSucc", NRCellCU, SI, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.11 Mean number of DRBs undergoing from User Plane Path Failures
// Description: This measurement provides the number of DRB’s prone to GTP-U Error Indication, the 5G CU-UP shall
// return a GTP-U Error Indication if it does not have a corresponding GTP-U context.
// Note: why not REAL if mean?
{"DRB.GTPUPathFailure", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.12 Number of DRBs attempted to setup in case of Dual Connectivity
// Description: This measurement provides the number of DRBs attempted to setup to support all requested QoS flows
// in the PDU sessions to be setup by the S-NODE ADDITION REQUESTs and S-NODE MODIFICATION REQUESTs
// message received by the S-NG-RAN node from M-NG-RAN node .
{"DRB.EstabAttDC", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.10.13 Number of DRBs successfully setup in case of Dual Connectivity
// Description: This measurement provides the number of DRBs successfully setup to support all requested QoS flows
// in the PDU sessions to be setup by the S-NODE ADDITION REQUESTs and S-NODE MODIFICATION REQUESTs
// message received by the S-NG-RAN node from M-NG-RAN node .
{"DRB.EstabSuccDC", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.11 CQI related measurements
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.11.1 Wideband CQI distribution
// Description: This measurement provides the distribution of Wideband CQI (Channel Quality Indicator)
// reported by UEs in the cell.
// Note: CARR.WBCQIDist.BinX.BinY.BinZ, where X represents the index of the CQI value (0 to 15).
// Y represents the index of rank value (1 to 8), Z represents the index of table value (1 to 4).
{"CARR.WBCQIDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL | DIST_BIN_Y_LABEL | DIST_BIN_X_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.12 MCS related Measurements
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.12.1 MCS Distribution in PDSCH
// Description: This measurement provides the distribution of the MCS scheduled for PDSCH RB by NG-RAN.
// Note: CARR.PDSCHMCSDist.BinX.BinY.BinZ, where X represents the index of rank value (1 to 8),
// Y represents the index of table value (1 to 3), and Z represents the index of the MCS value (0 to 31).
{"CARR.PDSCHMCSDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL | DIST_BIN_Y_LABEL | DIST_BIN_X_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.12.2 MCS Distribution in PUSCH
// Description: This measurement provides the distribution of the MCS scheduled for PUSCH RB by NG-RAN.
// Note: CARR.PUSCHMCSDist.BinX.BinY.BinZ, where X represents the index of rank value (1 to 8),
// Y represents the index of table value (1 to 2), and Z represents the index of the MCS value (0 to 31).
{"CARR.PUSCHMCSDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL | DIST_BIN_Y_LABEL | DIST_BIN_X_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.12.3 PDSCH MCS Distribution for MU-MIMO
// Description: This measurement provides the distribution of the MCS scheduled for PDSCH RB by NG-RAN
// in MU-MIMO scenario.
// Note: CARR.MUPDSCHMCSDist.BinX, where X represents the index of the MCS value (0 to 31).
{"CARR.MUPDSCHMCSDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.12.4 PUSCH MCS Distribution for MU-MIMO
// Description: This measurement provides the distribution of the MCS scheduled for PUSCH RB by NG-RAN
// in MU-MIMO scenario.
// Note: CARR. MUPUSCHMCSDist.BinX, where X represents the index of the MCS value (0 to 31).
{"CARR.MUPUSCHMCSDist", NRCellDU, CC, INTEGER, "-", DIST_BIN_X_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.13 QoS flow related measurements
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.13.1 QoS flow release
// 5.1.1.13.1.1 Number of released active QoS flows
// Description: This measurement provides the number of released QoS flows that were active at the time of release.
// Note: The nof measurements is equal to the nof QoS flows plus a possible sum value identified by the .sum suffix.
{"QF.RelActNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SUM_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.1.2 Number of QoS flows attempted to release
// Description: This measurement provides the number of QoS flows attempted to release.
{"QF.ReleaseAttNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.2 QoS flow activity
// 5.1.1.13.2.1 In-session activity time for QoS flow
// Description: This measurement provides the aggregated active session time for QoS flow in a cell.
// Note: The nof measurements is equal to the nof QoS levels plus a possible sum value identified by the .sum suffix.
// Note: Unit changed from s to ms in O-RAN.WG3.E2SM-KPM-R003-v3.00
// Note: Definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable ALL_LEVELS (NODE, UE and QOS)
{"QF.SessionTimeQoS", NRCellCU, CC, INTEGER, "ms", FIVE_QI_LABEL | SUM_LABEL, ALL_LEVELS},
// 5.1.1.13.2.2 In-session activity time for UE
// Description: This measurement provides the aggregated active session time for UEs in a cell.
// Note: Unit changed from s to ms in O-RAN.WG3.E2SM-KPM-R003-v3.00
// Note: Definition changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable ALL_LEVELS (NODE, UE and QOS)
{"QF.SessionTimeUE", NRCellCU, CC, INTEGER, "ms", NO_LABEL, ALL_LEVELS},
// 5.1.1.13.3 QoS flow setup
// 5.1.1.13.3.1 Number of QoS flow attempted to setup
// Description: This measurement provides the number of QoS flows attempted to setup.
// Note: The nof measurements is equal to the nof QoS levels plus the number of S-NSSAIs, plus a possible sum value
// identified by the .sum suffix.
{"QF.EstabAttNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | SUM_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.3.2 Number of QoS flow successfully established
// Description: This measurement provides the number of QoS flows successfully established.
// Note: The nof measurements is equal to the nof QoS levels plus a possible sum value identified by the .sum suffix.
{"QF.EstabSuccNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | SUM_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.3.3 Number of QoS flow failed to setup
// Description: This measurement provides the number of QoS flows failed to setup.
// Note: The nof measurements is equal to the nof causes plus a possible sum value identified by the .sum suffix.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"QF.EstabFailNbr", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.3.4 Number of Initial QoS flow attempted to setup
// Description: This measurement provides the number of Initial QoS flows attempted to setup.
// Note: The nof measurements is equal to the nof QoS levels plus the number of S-NSSAIs, plus a possible sum value
// identified by the .sum suffix.
{"QF.InitialEstabAttNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | SUM_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.3.5 Number of Initial QoS flow successfully established
// Description: This measurement provides the number of Initial QoS flows successfully established.
// Note: The number of measurements is equal to the number of QoS levels plus a possible sum
// value identified by the .sum suffix.
{"QF.InitialEstabSuccNbr", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL | SUM_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.3.6 Number of Initial QoS flow failed to setup
// Description: a) This measurement provides the number of Initial QoS flows failed to setup.
// Note: The nof measurements is equal to the nof causes plus a possible sum value identified by the .sum suffix.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"QF.InitialEstabFailNbr", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.4 QoS flow modification
// 5.1.1.13.4.1 Number of QoS flows attempted to modify
// Description: This measurement provides the number of QoS flows attempted to modify.
{"QF.ModNbrAtt", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.4.2 Number of QoS flows successfully modified
// Description: This measurement provides the number of QoS flows successfully modified.
{"QF.ModNbrSucc", NRCellCU, CC, INTEGER, "-", FIVE_QI_LABEL | SLICE_ID_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.13.4.3 Number of QoS flows failed to modify
// Description: This measurement provides the number of QoS flows failed to modify.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"QF.ModNbrFail", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.14 Void - empty in TS
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.15 RRC connection establishment related measurements
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.15.1 Attempted RRC connection establishments
// Description: This measurement provides the nof RRC connection establishment attempts for each establishment cause.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"RRC.ConnEstabAtt", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.15.2 Successful RRC connection establishments
// Description: This measurement provides the nof successful RRC establishments for each establishment cause.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"RRC.ConnEstabSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.15.3 Failed RRC connection establishments
// Description: This measurement provides the nof failed RRC establishments, this measurmenet is split into
// subcounters per failure cause.
// Note: mandatory Cause-label not supported in e2sm_kpm
// Note: cause labels: RRC.ConnEstabFailCause.NetworkReject, RRC.ConnEstabFailCause.NoReply,
// RRC.ConnEstabFailCause.Other
{"RRC.ConnEstabFailCause", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.16 UE-associated logical NG-connection related measurements
// 5.1.1.16.1 Attempted UE-associated logical NG-connection establishment from gNB to AMF
// Description: This measurement provides the number of attempted UE-associated logical NG-connection establishments
// from gNB to AMF, for each RRCSetupRequest establishment cause.
// Note: The number of measurements is equal to the number of establishment causes.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"UECNTX.ConnEstabAtt", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// 5.1.1.16.2 Successful UE-associated logical NG-connection establishment from gNB to AMF
// Description: This measurement provides the number of successful UE-associated logical NG-connection establishments
// from gNB to AMF, for each RRCSetupRequest establishment cause.
// Note: The number of measurements is equal to the number of establishment causes.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"UECNTX.ConnEstabSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.17 RRC Connection Re-establishment
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.17.1 Number of RRC connection re-establishment attempts
// Description: This measurement provides the number of RRC connection re-establishment attempts.
{"RRC.ReEstabAtt", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.17.2 Successful RRC connection re-establishment with UE context
// Description: This measurement provides the successful number of RRC connection re-establishment when UE context
// can be retrieved.
{"RRC.ReEstabSuccWithUeContext", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.17.3 Successful RRC connection re-establishment without UE context
// Description: This measurement provides the successful number of RRC connection re-establishment when UE context
// can not be retrieved.
{"RRC.ReEstabSuccWithoutUeContext", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.17.4 Number of RRC connection re-establishment attempts followed by RRC Setup
// Description: This measurement provides the number of RRC connection re-establishment attempts where no UE context
// could be retrieved and therefore fallback to RRC Setup procedure was attempted.
{"RRC.ReEstabFallbackToSetupAtt", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// --------------------------------------------------------------------------------------------------------------- //
// 5.1.1.18 RRC Connection Resuming
// Note: Definitions were changed in O-RAN.WG3.E2SM-KPM-R003-v3.00 (Sec. 7.9) to enable E2_NODE_LEVEL and UE_LEVEL
// 5.1.1.18.1 Number of RRC connection resuming attempts
// Description: This measurement provides the number of RRC connection resuming attempts.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"RRC.ResumeAtt", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.18.2 Successful RRC connection resuming
// Description: This measurement provides the total successful number of RRC connection resuming.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"RRC.ResumeSucc", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.18.3 Successful RRC connection resuming with fallback
// Description: This measurement provides the successful number of RRC connection resuming by fallback
// to RRC connection establishment.
// Note: mandatory Cause-label not supported in e2sm_kpm
{"RRC.ResumeSuccByFallback", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.18.4 RRC connection resuming followed by network release
// Description: This measurement provides the number of RRC connection resuming followed by network release.
{"RRC.ResumeFollowedbyNetworkRelease", NRCellCU, CC, INTEGER, "-", NO_LABEL, E2_NODE_LEVEL | UE_LEVEL},
// 5.1.1.18.5 RRC connection resuming followed by network suspension