Skip to content
Snippets Groups Projects
open-nfapi.oai.patch 895 KiB
Newer Older
19001 19002 19003 19004 19005 19006 19007 19008 19009 19010 19011 19012 19013 19014 19015 19016 19017 19018 19019 19020 19021 19022 19023 19024 19025 19026 19027 19028 19029 19030 19031 19032 19033 19034 19035 19036 19037 19038 19039 19040 19041 19042 19043 19044 19045 19046 19047 19048 19049 19050 19051 19052 19053 19054 19055 19056 19057 19058 19059 19060 19061 19062 19063 19064 19065 19066 19067 19068 19069 19070 19071 19072 19073 19074 19075 19076 19077 19078 19079 19080 19081 19082 19083 19084 19085 19086 19087 19088 19089 19090 19091 19092 19093 19094 19095 19096 19097 19098 19099 19100 19101 19102 19103 19104 19105 19106 19107 19108 19109 19110 19111 19112 19113 19114 19115 19116 19117 19118 19119 19120 19121 19122 19123 19124 19125 19126 19127 19128 19129 19130 19131 19132 19133 19134 19135 19136 19137 19138 19139 19140 19141 19142 19143 19144 19145 19146 19147 19148 19149 19150 19151 19152 19153 19154 19155 19156 19157 19158 19159 19160 19161 19162 19163 19164 19165 19166 19167 19168 19169 19170 19171 19172 19173 19174 19175 19176 19177 19178 19179 19180 19181 19182 19183 19184 19185 19186 19187 19188 19189 19190 19191 19192 19193 19194 19195 19196 19197 19198 19199 19200 19201 19202 19203 19204 19205 19206 19207 19208 19209 19210 19211 19212 19213 19214 19215 19216 19217 19218 19219 19220 19221 19222 19223 19224 19225 19226 19227 19228 19229 19230 19231 19232 19233 19234 19235 19236 19237 19238 19239 19240 19241 19242 19243 19244 19245 19246 19247 19248 19249 19250 19251 19252 19253 19254 19255 19256 19257 19258 19259 19260 19261 19262 19263 19264 19265 19266 19267 19268 19269 19270 19271 19272 19273 19274 19275 19276 19277 19278 19279 19280 19281 19282 19283 19284 19285 19286 19287 19288 19289 19290 19291 19292 19293 19294 19295 19296 19297 19298 19299 19300 19301 19302 19303 19304 19305 19306 19307 19308 19309 19310 19311 19312 19313 19314 19315 19316 19317 19318 19319 19320 19321 19322 19323 19324 19325 19326 19327 19328 19329 19330 19331 19332 19333 19334 19335 19336 19337 19338 19339 19340 19341 19342 19343 19344 19345 19346 19347 19348 19349 19350 19351 19352 19353 19354 19355 19356 19357 19358 19359 19360 19361 19362 19363 19364 19365 19366 19367 19368 19369 19370 19371 19372 19373 19374 19375 19376 19377 19378 19379 19380 19381 19382 19383 19384 19385 19386 19387 19388 19389 19390 19391 19392 19393 19394 19395 19396 19397 19398 19399 19400 19401 19402 19403 19404 19405 19406 19407 19408 19409 19410 19411 19412 19413 19414 19415 19416 19417 19418 19419 19420 19421 19422 19423 19424 19425 19426 19427 19428 19429 19430 19431 19432 19433 19434 19435 19436 19437 19438 19439 19440 19441 19442 19443 19444 19445 19446 19447 19448 19449 19450 19451 19452 19453 19454 19455 19456 19457 19458 19459 19460 19461 19462 19463 19464 19465 19466 19467 19468 19469 19470 19471 19472 19473 19474 19475 19476 19477 19478 19479 19480 19481 19482 19483 19484 19485 19486 19487 19488 19489 19490 19491 19492 19493 19494 19495 19496 19497 19498 19499 19500 19501 19502 19503 19504 19505 19506 19507 19508 19509 19510 19511 19512 19513 19514 19515 19516 19517 19518 19519 19520 19521 19522 19523 19524 19525 19526 19527 19528 19529 19530 19531 19532 19533 19534 19535 19536 19537 19538 19539 19540 19541 19542 19543 19544 19545 19546 19547 19548 19549 19550 19551 19552 19553 19554 19555 19556 19557 19558 19559 19560 19561 19562 19563 19564 19565 19566 19567 19568 19569 19570 19571 19572 19573 19574 19575 19576 19577 19578 19579 19580 19581 19582 19583 19584 19585 19586 19587 19588 19589 19590 19591 19592 19593 19594 19595 19596 19597 19598 19599 19600 19601 19602 19603 19604 19605 19606 19607 19608 19609 19610 19611 19612 19613 19614 19615 19616 19617 19618 19619 19620 19621 19622 19623 19624 19625 19626 19627 19628 19629 19630 19631 19632 19633 19634 19635 19636 19637 19638 19639 19640 19641 19642 19643 19644 19645 19646 19647 19648 19649 19650 19651 19652 19653 19654 19655 19656 19657 19658 19659 19660 19661 19662 19663 19664 19665 19666 19667 19668 19669 19670 19671 19672 19673 19674 19675 19676 19677 19678 19679 19680 19681 19682 19683 19684 19685 19686 19687 19688 19689 19690 19691 19692 19693 19694 19695 19696 19697 19698 19699 19700 19701 19702 19703 19704 19705 19706 19707 19708 19709 19710 19711 19712 19713 19714 19715 19716 19717 19718 19719 19720 19721 19722 19723 19724 19725 19726 19727 19728 19729 19730 19731 19732 19733 19734 19735 19736 19737 19738 19739 19740 19741 19742 19743 19744 19745 19746 19747 19748 19749 19750 19751 19752 19753 19754 19755 19756 19757 19758 19759 19760 19761 19762 19763 19764 19765 19766 19767 19768 19769 19770 19771 19772 19773 19774 19775 19776 19777 19778 19779 19780 19781 19782 19783 19784 19785 19786 19787 19788 19789 19790 19791 19792 19793 19794 19795 19796 19797 19798 19799 19800 19801 19802 19803 19804 19805 19806 19807 19808 19809 19810 19811 19812 19813 19814 19815 19816 19817 19818 19819 19820 19821 19822 19823 19824 19825 19826 19827 19828 19829 19830 19831 19832 19833 19834 19835 19836 19837 19838 19839 19840 19841 19842 19843 19844 19845 19846 19847 19848 19849 19850 19851 19852 19853 19854 19855 19856 19857 19858 19859 19860 19861 19862 19863 19864 19865 19866 19867 19868 19869 19870 19871 19872 19873 19874 19875 19876 19877 19878 19879 19880 19881 19882 19883 19884 19885 19886 19887 19888 19889 19890 19891 19892 19893 19894 19895 19896 19897 19898 19899 19900 19901 19902 19903 19904 19905 19906 19907 19908 19909 19910 19911 19912 19913 19914 19915 19916 19917 19918 19919 19920 19921 19922 19923 19924 19925 19926 19927 19928 19929 19930 19931 19932 19933 19934 19935 19936 19937 19938 19939 19940 19941 19942 19943 19944 19945 19946 19947 19948 19949 19950 19951 19952 19953 19954 19955 19956 19957 19958 19959 19960 19961 19962 19963 19964 19965 19966 19967 19968 19969 19970 19971 19972 19973 19974 19975 19976 19977 19978 19979 19980 19981 19982 19983 19984 19985 19986 19987 19988 19989 19990 19991 19992 19993 19994 19995 19996 19997 19998 19999 20000
+			"HARQ resource 6", HFILL }
+		},
+		{ &hf_nfapi_n_pucch_2_3,
+			{ "n_PUCCH_2_3", "nfapi.n.pucch.2.3",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"HARQ resource 7", HFILL }
+		},
+		{ &hf_nfapi_dl_cqi_pmi_size_rank_1,
+			{ "DL CQI PMI size rank 1", "nfapi.dl.cqi.pmi.size.rank.1",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of the DL CQI/PMI in bits in case of rank 1 report.", HFILL }
+		},
+		{ &hf_nfapi_dl_cqi_pmi_size_rank_greater_1,
+			{ "DL CQI PMI size rank greater 1", "nfapi.dl.cqi.pmi.size.rank.1",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of the DL CQI/PMI in bits in case of rank>1 report.", HFILL }
+		},
+		{ &hf_nfapi_ri_size,
+			{ "RI size", "nfapi.ri.size",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of RI in bits", HFILL }
+		},
+		{ &hf_nfapi_delta_offset_cqi,
+			{ "Delta offset cqi", "nfapi.delta.offset.cqi",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Delta offset for CQI. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_delta_offset_ri,
+			{ "Delta offset ri", "nfapi.delta.offset.ri",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Delta offset for RI. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_harq_size,
+			{ "HARQ size", "nfapi.harq_size",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of the ACK/NACK in bits", HFILL }
+		},
+		{ &hf_nfapi_delta_offset_harq,
+			{ "Delta offset HARQ", "nfapi.delta.offset.harq",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Delta offset for HARQ. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_tdd_ack_nack_mode,
+			{ "ACK NACK mode", "nfapi.tdd.ack.nack.mode",
+			FT_UINT8, BASE_DEC, VALS(nfapi_tdd_ack_nack_mode_vals), 0x0,
+			"The format of the ACK/NACK response expected. For TDD only.", HFILL }
+		},
+		{ &hf_nfapi_fdd_ack_nack_mode,
+			{ "ACK NACK mode", "nfapi.fdd.ack.nack.mode",
+			FT_UINT8, BASE_DEC, VALS(nfapi_fdd_ack_nack_mode_vals), 0x0,
+			"The format of the ACK/NACK response expected. For TDD only.", HFILL }
+		},
+		{ &hf_nfapi_n_srs_initial,
+			{ "N srs initial", "nfapi.n.srs.initial",
+			FT_UINT8, BASE_DEC, VALS(n_srs_initial_vals), 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_initial_number_of_resource_blocks,
+			{ "Initial number of resource blocks", "nfapi.initial.number.of.resource.blocks",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of resource blocks used in the initial transmission of this transport block.", HFILL }
+		},
+		{ &hf_nfapi_dl_cqi_pmi_size,
+			{ "DL cqi pmi size", "nfapi.dl.cqi.pmi.size",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of the DL CQI/PMI in bits in case of this RI value. The size of the DL CQI / PMI / RI in bits in case of this CRI value", HFILL }
+		},
+		{ &hf_nfapi_report_type,
+			{ "Report type", "nfapi.report.type",
+			FT_BOOLEAN, 8, TFS(&nfapi_csi_report_type_strname), 0x0,
+			"Type of CSI report", HFILL }
+		},
+		{ &hf_nfapi_dl_cqi_ri_pmi_size,
+			{ "DL CQI/PMI/RI size", "nfapi.dl.cqi.ri.pmi.size",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The size of the DL CQI/PMI/RI/CRI in bits", HFILL }
+		},
+		{ &hf_nfapi_control_type,
+			{ "Control type", "nfapi.control.type",
+			FT_BOOLEAN, 8, TFS(&nfapi_control_type_string_name), 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_number_of_cc,
+			{ "Number of cc", "nfapi.number.of.cc",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of CC in the aperiodic report", HFILL }
+		},
+		{ &hf_nfapi_number_of_pucch_resource,
+			{ "Number of PUCCH Resource", "nfapi.number.of.pucch.resource",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"A value of 2 indicates that the UE is configured to transmit on two antenna ports", HFILL }
+		},
+		{ &hf_nfapi_pucch_index_p1,
+			{ "PUCCH Index P1", "nfapi.pucch.index.p1",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The PUCCH index value   for antenna port P1", HFILL }
+		},
+		{ &hf_nfapi_n_pucch_1_0,
+			{ "N PUCCH 1 0", "nfapi.n.pucch.1.0",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"HARQ resource 0", HFILL }
+		},
+		{ &hf_nfapi_n_pucch_1_1,
+			{ "N PUCCH 1 1", "nfapi.n.pucch.1.1",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"HARQ resource 1", HFILL }
+		},
+		{ &hf_nfapi_n_pucch_1_2,
+			{ "N PUCCH 1 2", "nfapi.n.pucch.1.2",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"HARQ resource 2", HFILL }
+		},
+		{ &hf_nfapi_n_pucch_1_3,
+			{ "N PUCCH 1 3", "nfapi.n.pucch.1.3",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"HARQ resource 3", HFILL }
+		},
+		{ &hf_nfapi_srs_bandwidth,
+			{ "SRS Bandwidth", "nfapi.srs.bandwidth",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"SRS Bandwidth. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_frequency_domain_position,
+			{ "Frequency Domain position", "nfapi.frequency.domain.position",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Frequency-domain position, NRRC This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_srs_hopping_bandwidth,
+			{ "SRS hopping bandwidth", "nfapi.srs.hopping.bandwidth",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Configures the frequency hopping on the SRS. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_transmission_comb,
+			{ "Transmission comb", "nfapi.transmission.comb",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Configures the frequency location of the SRS. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_i_srs,
+			{ "I SRS", "nfapi.i.srs",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Defines the periodicity and subframe location of the SRS. SRS Configuration Index. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_sounding_reference_cyclic_shift,
+			{ "Sounding reference cyclic shift", "nfapi.sounding.reference.cyclic.shift",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Configures the SRS sequence generation. This value is fixed for a UE and allocated in RRC connection setup.", HFILL }
+		},
+		{ &hf_nfapi_pdu_length,
+			{ "PDU length", "nfapi.pdu.length",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The total length (in bytes) of the PDU description and PDU data, without the padding bytes", HFILL }
+		},
+		{ &hf_nfapi_crc_flag,
+			{ "CRC flag", "nfapi.crc.flag",
+			FT_BOOLEAN, 8, TFS(&crc_flag_strname), 0x0,
+			"A flag indicating if a CRC error was detected", HFILL }
+		},
+		{ &hf_nfapi_number_of_hi_pdus,
+			{ "Number of HI Pdu's", "nfapi.number_of_hi_pdus",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Number of HI PDUs included in this message", HFILL }
+		},
+		{ &hf_nfapi_number_of_dci_pdus,
+			{ "Number of DCI Pdu's", "nfapi.number_of_dci_pdus",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Number of DCI PDUs included in this message", HFILL }
+		},
+		{ &hf_nfapi_hi_dci0_pdu_type,
+			{ "PDU Type", "nfapi.pdu_type",
+			FT_UINT8, BASE_DEC, VALS(hi_dci0_pdu_type_vals), 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_hi_value,
+			{ "HI Value", "nfapi.hi_value",
+			FT_BOOLEAN, 8, TFS(&hi_value_strname), 0x0,
+			"The PHICH value which is sent on the resource", HFILL }
+		},
+		{ &hf_nfapi_i_phich,
+			{ "i phich", "nfapi.i_phich",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Is used in the calculation of the PHICH location. For TDD only", HFILL }
+		},
+		{ &hf_nfapi_flag_tb2,
+			{ "Flag TB2", "nfapi.flag_tb2",
+			FT_BOOLEAN, BASE_NONE, TFS(&flag_tb2_strname), 0x0,
+			"Indicates is HI is present for a second transport block", HFILL }
+		},
+		{ &hf_nfapi_hi_value_2,
+			{ "HI Value 2", "nfapi.hi_value_2",
+			FT_BOOLEAN, BASE_NONE, TFS(&hi_value_strname), 0x0,
+			"The PHICH value for a second transport block.", HFILL }
+		},
+		{ &hf_nfapi_ue_tx_antenna_selection,
+			{ "UE Tx Antenna selection", "nfapi.ue_tx_antenna_selection",
+			FT_UINT8, BASE_DEC, VALS(ue_tx_antenna_selection_vals), 0x0,
+			"Indicates how the CRC is calculated on the PDCCH.", HFILL }
+		},
+		{ &hf_nfapi_cqi_csi_request,
+			{ "cqi csi request", "nfapi.cqi_csi_request",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Aperiodic CQI request flag", HFILL }
+		},
+		{ &hf_nfapi_ul_index,
+			{ "UL index", "nfapi.ul_index",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Valid for TDD mode only", HFILL }
+		},
+		{ &hf_nfapi_dl_assignment_index,
+			{ "DL Assignment index", "nfapi.dl_assignment_index",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Valid for TDD mode only.", HFILL }
+		},
+		{ &hf_nfapi_tpc_bitmap,
+			{ "TPC bitmap", "nfapi.tpc_bitmap",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"TPC commands for PUCCH and PUSCH", HFILL }
+		},
+		{ &hf_nfapi_number_of_antenna_ports,
+			{ "Number of antenna ports", "nfapi.number.of.antenna.ports",
+			FT_UINT8, BASE_DEC, VALS(number_of_antenna_port_vals), 0x0,
+			"Defines number of antenna ports for this ULSCH allocation", HFILL }
+		},
+		{ &hf_nfapi_size_of_cqi_csi_feild,
+			{ "Size of cqi csi feild", "nfapi.size.of.cqi.csi.feild",
+			FT_UINT8, BASE_DEC, VALS(size_of_cqi_csi_feild_vals), 0x0,
+			"Indicates the size of the CQI/CSI request field", HFILL }
+		},
+		{ &hf_nfapi_new_data_indication_two,
+			{ "New data indication 2", "nfapi.new.data.indication.two",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The new data indicator for the second transport block", HFILL }
+		},
+		{ &hf_nfapi_resource_allocation_flag,
+			{ "Resource allocation flag", "nfapi.resource.allocation.flag",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Indicates if the Resource Allocation Type parameter is valid.", HFILL }
+		},
+		{ &hf_nfapi_dl_node_sync_t1,
+			{ "DL Node Sync t1", "nfapi.dl.node.sync.t1",
+			FT_UINT32, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"Offset from VNF SFN/SF 0/0 time reference of the DL Node Sync message transmission at the transport layer, in microseconds.", HFILL }
+		},
+		{ &hf_nfapi_dl_node_sync_delta_sfn_sf,
+			{ "DL Node Sync Delta SFN SF", "nfapi.dl.node.sync.delta_sfn_sf",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The delta shift in subframes that the PNF PHY instance must update to on the next subframe boundary", HFILL }
+		},
+		{ &hf_nfapi_dl_cyclic_prefix_type,
+			{ "DL Cyclic Prefix type", "nfapi.dl.cyclic.prefix.type",
+			FT_BOOLEAN, 8, TFS(&cyclic_prefix_type_strname), 0x0,
+			"Cyclic prefix type, used for DL", HFILL }
+		},
+		{ &hf_nfapi_ul_cyclic_prefix_type,
+			{ "UL Cyclic Prefix type", "nfapi.ul.cyclic.prefix.type",
+			FT_BOOLEAN, 8, TFS(&cyclic_prefix_type_strname), 0x0,
+			"Cyclic prefix type, used for UL", HFILL }
+		},
+		{ &hf_nfapi_downlink_channel_bandwidth,
+			{ "Downlink Channel Bandwidth", "nfapi.dl.channel.bandwidth",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Downlink channel bandwidth in resource blocks.", HFILL }
+		},
+		{ &hf_nfapi_uplink_channel_bandwidth,
+			{ "Uplink Channel Bandwidth", "nfapi.ul.channel_bandwidth",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Uplink channel bandwidth in resource blocks.", HFILL }
+		},
+		{ &hf_nfapi_tx_antenna_ports,
+			{ "Tx Antenna Ports", "nfapi.tx.antenna.ports",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of cell specific or NB transmit antenna ports.", HFILL }
+		},
+		{ &hf_nfapi_rx_antenna_ports,
+			{ "Tx Antenna Ports", "nfapi.rx.antenna.ports",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of cell specific or NB receive antenna ports.", HFILL }
+		},
+		{ &hf_nfapi_ul_node_sync_t1,
+			{ "UL Node Sync t1", "nfapi.ul.node.sync.t1",
+			FT_UINT32, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"The supplied t1 field in the DL Node Sync", HFILL }
+		},
+		{ &hf_nfapi_ul_node_sync_t2,
+			{ "UL Node Sync t2", "nfapi.ul.node.sync.t2",
+			FT_UINT32, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"Offset from PNF SFN/SF 0/0 time reference of the DL Node Sync message reception at the transport layer, in microseconds.", HFILL }
+		},
+		{ &hf_nfapi_ul_node_sync_t3,
+			{ "UL Node Sync t3", "nfapi.ul.node.sync.t3",
+			FT_UINT32, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"Offset from PNF SFN/SF 0/0 time reference of the UL Node Sync message transmission at the transport layer, in microseconds.", HFILL }
+		},
+		{ &hf_nfapi_pb,
+			{ "P-B", "nfapi.pb.allocation",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Refers to downlink power allocation. Value is an index into the referenced table.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_last_sfn_sf,
+			{ "Last SFN/SF", "nfapi.timing.info.last.sfn.sf",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The completed SFN/SF at the PNF PHY instance that triggered the Timing Info message", HFILL }
+		},
+		{ &hf_nfapi_timing_info_time_since_last_timing_info,
+			{ "Time since last Timing Info", "nfapi.timing.info.time.since.last.timing.info",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The number of ms since the last Timing Info was sent from this PNF PHY instance.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_dl_config_jitter,
+			{ "DL Config Jitter", "nfapi.timing.info.dl.config.jitter",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The inter message jitter of the DL Config message reception in microseconds", HFILL }
+		},
+		{ &hf_nfapi_timing_info_tx_request_jitter,
+			{ "Tx Request Jitter", "nfapi.timing.info.tx.req.jitter",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The inter message jitter of the Tx Request message reception in microseconds", HFILL }
+		},
+		{ &hf_nfapi_timing_info_ul_config_jitter,
+			{ "UL Config Jitter", "nfapi.timing.info.ul.config.jitter",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The inter message jitter of the UL Config message reception in microseconds", HFILL }
+		},
+		{ &hf_nfapi_timing_info_hi_dci0_jitter,
+			{ "HI_DCI0 Jitter", "nfapi.timing.info.hi.dci0.jitter",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The inter message jitter of the HI_DCI0 message reception in microseconds", HFILL }
+		},
+		{ &hf_nfapi_timing_info_dl_config_latest_delay,
+			{ "DL Config Latest Delay", "nfapi.timing.info.dl.config.latest.delay",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The latest delay offset in microseconds from the latest acceptable time for the DL Config as defined in the DL Config Timing in the PNF_PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_tx_request_latest_delay,
+			{ "Tx Request Latest Delay", "nfapi.timing.info.tx.request.latest.delay",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The latest delay offset in microseconds from the latest acceptable time for the Tx Request as defined in the Tx Config Timing in the PNF_PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_ul_config_latest_delay,
+			{ "UL Config Latest Delay", "nfapi.timing.info.ul.config.latest.delay",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The latest delay offset in microseconds from the latest acceptable time for the UL Config as defined in the UL Config Timing in the PNF_PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_hi_dci0_latest_delay,
+			{ "HI_DCI0 Latest Delay", "nfapi.timing.info.hi.dci0.latest.delay",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The latest delay offset in microseconds from the latest acceptable time for the HI_DCI0 as defined in the HI_DCI0 Timing in the PNF_PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_dl_config_earliest_arrival,
+			{ "DL Config Earliest Arrival", "nfapi.timing.info.dl.config.earliest.arrival",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The earlierst arrival offset in microseconds from the latest time acceptable for the DL Config as defined in the Timing Window in the PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_tx_request_earliest_arrival,
+			{ "Tx Request Earliest Arrival", "nfapi.timing.info.tx.request.earliest.arrival",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The earlierst arrival offset in microseconds from the latest time acceptable for the Tx Request as defined in the Timing Window in the PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_ul_config_earliest_arrival,
+			{ "UL Config Earliest Arrival", "nfapi.timing.info.ul.config.earliest.arrival",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The earlierst arrival offset in microseconds from the latest time acceptable for the UL Config as defined in the Timing Window in the PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_hi_dci0_earliest_arrival,
+			{ "HI_DCI0 Earliest Arrival", "nfapi.timing.info.hi.dci0.earliest.arrival",
+			FT_INT32, BASE_DEC, NULL, 0x0,
+			"The earlierst arrival offset in microseconds from the latest time acceptable for the HI_DCI0 as defined in the Timing Window in the PARAM.Response since the last transmission of the Timing Info Message.", HFILL }
+		},
+		{ &hf_nfapi_pcfich_power_offset,
+			{ "PCFICH Power Offset", "nfapi.pcfich.power.offset",
+			FT_UINT16, BASE_CUSTOM, CF_FUNC(power_offset_conversion_fn), 0x0,
+			"The power per antenna of the PCFICH with respect to the reference signal.", HFILL }
+		},
+		{ &hf_nfapi_timing_window,
+			{ "NFAPI Timing window", "nfapi.timing.window",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The window in milliseconds that the PHY must receive and queue the P7 messages.", HFILL }
+		},
+		{ &hf_nfapi_timing_info_mode,
+			{ "Timing Info mode", "nfapi.timing.info.mode",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The configured mode of operation for the timing info message to be sent to the VNF from the PHY", HFILL }
+		},
+		{ &hf_nfapi_timing_info_period,
+			{ "Timing info period", "nfapi.timing.info.period",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"If Periodic timing mode is enabled, this defines the periodicity in subframes. This field is ignored if periodic timing mode is disabled.", HFILL }
+		},
+		{ &hf_nfapi_tdd_harq_mode,
+			{ "Mode", "nfapi.tdd.harq.mode",
+			FT_UINT8, BASE_DEC, VALS(tdd_harq_mode_vals), 0x0,
+			"The format of the ACK/NACK response expected", HFILL }
+		},
+		{ &hf_nfapi_fdd_harq_mode,
+			{ "Mode", "nfapi.fdd.harq.mode",
+			FT_UINT8, BASE_DEC, VALS(fdd_harq_mode_vals), 0x0,
+			"The format of the ACK/NACK response expected", HFILL }
+		},
+		{ &hf_nfapi_number_of_ack_nack,
+			{ "Number of ACK/NACK", "nfapi.uint16.tag",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of ACK/NACK results reported for this UE", HFILL }
+		},
+		{ &hf_nfapi_harq_data_value_0,
+			{ "Value 0", "nfapi.harq.value.0",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"Indicates HARQ results", HFILL }
+		},
+		{ &hf_nfapi_harq_data_value_0_special,
+			{ "Value 0", "nfapi.harq.value.0.special",
+			FT_UINT8, BASE_DEC, VALS(harq_special_value_vals), 0x0,
+			"Indicates HARQ results", HFILL }
+		},
+		{ &hf_nfapi_harq_data_value_1,
+			{ "Value 1", "nfapi.harq.value.1",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"Indicates HARQ results", HFILL }
+		},
+		{ &hf_nfapi_harq_data_value_2,
+			{ "Value 2", "nfapi.harq.value.2",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"Indicates HARQ results", HFILL }
+		},
+		{ &hf_nfapi_harq_data_value_3,
+			{ "Value 3", "nfapi.harq.value.3",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"Indicates HARQ results", HFILL }
+		},
+		{ &hf_nfapi_harq_tb_1,
+			{ "HARQ TB1", "nfapi.harq.tb.",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"HARQ feedback of 1st TB.", HFILL }
+		},
+		{ &hf_nfapi_harq_tb_2,
+			{ "HARQ TB2", "nfapi.harq.tb.2",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"HARQ feedback of 2nd TB.", HFILL }
+		},
+		{ &hf_nfapi_harq_tb_n,
+			{ "HARQ TB_N", "nfapi.harq.tb.n",
+			FT_UINT8, BASE_DEC, VALS(harq_value_vals), 0x0,
+			"HARQ feedback of Nth TB.", HFILL }
+		},
+		{ &hf_nfapi_ul_cqi,
+			{ "UL_CQI", "nfapi.ul.cqi",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(ul_cqi_conversion_fn), 0x0,
+			"SNR", HFILL }
+		},
+		{ &hf_nfapi_channel,
+			{ "Channel", "nfapi.channel",
+			FT_UINT8, BASE_DEC, VALS(channel_vals), 0x0,
+			"The channel to which this measurement refers", HFILL }
+		},
+		{ &hf_nfapi_data_offset,
+			{ "Data Offset", "nfapi.data.offset",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Gives the PDU#i data address offset from the beginning of the 'Number of PDUs' field. An offset of 0 indicates a CRC or decoding error", HFILL }
+		},
+		{ &hf_nfapi_ri,
+			{ "RI", "nfapi.ri",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The rank indication reported by the UE on PUSCH for aperiodic CSI.", HFILL }
+		},
+		{ &hf_nfapi_timing_advance,
+			{ "Timing Advance", "nfapi.timing.advance",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The timing advance measured for this PDU and UE.", HFILL }
+		},
+		{ &hf_nfapi_timing_advance_r9,
+			{ "Timing Advance R9", "nfapi.timing.advance.r9",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Timing advance used for positioning", HFILL }
+		},
+		{ &hf_nfapi_number_of_cc_reported,
+			{ "Number of CC reported", "nfapi.number.of.cc.reported",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_preamble,
+			{ "Preamble", "nfapi.preamble",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The detected preamble", HFILL }
+		},
+		{ &hf_nfapi_rach_resource_type,
+			{ "RACH resource type", "nfapi.rach.resource.type",
+			FT_UINT8, BASE_DEC, VALS(rach_resource_type_vals), 0x0,
+			"Indicates if this indication is related to Cat-M UE and in which CE level", HFILL }
+		},
+		{ &hf_nfapi_doppler_estimation,
+			{ "Doppler estimation", "nfapi.doppler.estimation",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"FFS", HFILL }
+		},
+		{ &hf_nfapi_rb_start,
+			{ "RB Start", "nfapi.rb.start",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The starting point of the RBs to be reported", HFILL }
+		},
+		{ &hf_nfapi_snr,
+			{ "SNR", "nfapi.snr",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(ul_cqi_conversion_fn), 0x0,
+			"Field size dependent on configured bandwidth SNR for RBs, each RBs report one SNR.", HFILL }
+		},
+		{ &hf_nfapi_up_pts_symbol,
+			{ "UpPTS Symbol", "nfapi.uppts.symbol",
+			FT_UINT8, BASE_DEC, VALS(up_pts_symbol_vals), 0x0,
+			"Indicates symbol where SRS was received. Only valid if the SRS was received in subframe 1 or 6.", HFILL }
+		},
+		{ &hf_nfapi_number_prb_per_subband,
+			{ "numPRBperSubband", "nfapi.num.prb.per.subband",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Number of PRBs that are treated as one subband", HFILL }
+		},
+		{ &hf_nfapi_number_antennas,
+			{ "numAntennas", "nfapi.num.antennas",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Number of physical antennas", HFILL }
+		},
+		{ &hf_nfapi_subband_index,
+			{ "subbandIndex", "nfapi.subband.index",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"Index of subband for which the following channel coefficient is applied", HFILL }
+		},
+		{ &hf_nfapi_channel_coefficient,
+			{ "Channel", "nfapi.channel.coefficient",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Averaged channel coefficient in a subband for physical antenna #i, real 8 bits followed by imaginary 8 bits", HFILL }
+		},
+		{ &hf_nfapi_ul_rtoa,
+			{ "UL_RTOA", "nfapi.ul.rtoa",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"UL relative time of arrival used for network based positioning", HFILL }
+		},
+		{ &hf_nfapi_frequency_band_indicator,
+			{ "Frequency Band Indicator", "nfapi.frequency.band.indicator",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The E-UTRA band for which the carrierList applies.", HFILL }
+		},
+		{ &hf_nfapi_measurement_period,
+			{ "Measurement Period", "nfapi.measurement.period",
+			FT_UINT16, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"The length of time to measure RSSI over, in units of 1ms.", HFILL }
+		},
+		{ &hf_nfapi_bandwidth,
+			{ "Bandwidth", "nfapi.bandwidth",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The bandwidth (in resource blocks) over which the RSSI is measured.", HFILL }
+		},
+		{ &hf_nfapi_timeout,
+			{ "Timeout", "nfapi.timeout",
+			FT_UINT32, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"The timeout value after which the PNF should abort the procedure in units of 1ms. The value of 0 indicates that the PNF should attempt to complete the procedure without any VNF-imposed timeout.", HFILL }
+		},
+		{ &hf_nfapi_number_of_earfcns,
+			{ "Number of EARFCNs", "nfapi.number.of.earfcns",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of EARFCNs which should be measured. In the case that no EARFCN (value 0) is specified, all valid EARFCNs for the specified bandwidth in the band shall be measured, in order of ascending EARCFN.", HFILL }
+		},
+		{ &hf_nfapi_uarfcn,
+			{ "UARFCN", "nfapi.uarfcn",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"UARFCN to be measured.", HFILL }
+		},
+		{ &hf_nfapi_number_of_uarfcns,
+			{ "Number of UARFCNs", "nfapi.number.of.uarfcn",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of UARFCNs which should be measured. In the case that no UARFCN (value 0) is specified, all UARFCNs in the band shall be measured, in order of ascending UARCFN.", HFILL }
+		},
+		{ &hf_nfapi_arfcn,
+			{ "ARFCN", "nfapi.arfcn",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The ARFCN to be measured", HFILL }
+		},
+		{ &hf_nfapi_arfcn_direction,
+			{ "Direction", "nfapi.arfcn.direction",
+			FT_UINT8, BASE_DEC, VALS(arfcn_direction_vals), 0x0,
+			"The link direction to be measured", HFILL }
+		},
+		{ &hf_nfapi_number_of_arfcns,
+			{ "Number of ARFCNs", "nfapi.number.of.arfcn",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of ARFCNs which should be measured. In the case that no ARFCN (value 0) is specified, all ARFCNs in the band shall be measured, in order of ascending ARCFN.", HFILL }
+		},
+		{ &hf_nfapi_rssi,
+			{ "RSSI", "nfapi.rssi",
+			FT_INT16, BASE_CUSTOM, CF_FUNC(rssi_conversion_fn), 0x0,
+			"The list of RSSI values of the carriers measured, in the order of the list of the original request.", HFILL }
+		},
+		{ &hf_nfapi_number_of_rssi,
+			{ "Number of RSSI", "nfapi.number.of.rssi",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of RSSI results returned in the following array.", HFILL }
+		},
+		{ &hf_nfapi_pci,
+			{ "PCI", "nfapi.pci",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The PCI for cell which should be searched", HFILL }
+		},
+		{ &hf_nfapi_measurement_bandwidth,
+			{ "Measurement Bandwidth", "nfapi.measurement.bandwidth",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of resource blocks which should be used for measuring RSRP", HFILL }
+		},
+		{ &hf_nfapi_exhaustive_search,
+			{ "Exhaustive Search", "nfapi.exhaustive.search",
+			FT_UINT8, BASE_DEC, VALS(exhustive_search_vals), 0x0,
+			"NMM should try to find all cells on the carrier", HFILL }
+		},
+		{ &hf_nfapi_number_of_pci,
+			{ "Number of PCI", "nfapi.number.of.pci",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of cells in the PCI list. If 0 all cells on the carrier should be found. Otherwise, depending on exhaustiveSearch flag, only the given pciList is searched or the pciList is used for indicating a priority list. Range: 0 to MAX_PCI_LIST.", HFILL }
+		},
+		{ &hf_nfapi_psc,
+			{ "PSC", "nfapi.psc",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The PSC for cells which should be searched.", HFILL }
+		},
+		{ &hf_nfapi_number_of_psc,
+			{ "Number of PSC", "nfapi.number.of.psc",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of cells in the PSC list. If 0 all cells on the carrier should be found. Otherwise, depending on Exhaustive Search flag, only the given PSC list is searched or the PSC list is used for indicating a priority list. Range: 0 to MAX_PSC_LIST.", HFILL }
+		},
+		{ &hf_nfapi_rsrp,
+			{ "RSRP", "nfapi.rsrp",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(neg_pow_conversion_fn), 0x0,
+			"The measured RSRP value in units of -1dB", HFILL }
+		},
+		{ &hf_nfapi_rsrq,
+			{ "RSRQ", "nfapi.rsrq",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(neg_pow_conversion_fn), 0x0,
+			"The measured RSRQ value in units of -1dB", HFILL }
+		},
+		{ &hf_nfapi_number_of_lte_cells_found,
+			{ "Number of LTE Cells Found", "nfapi.number.of.lte.cells.found",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of LTE cells indicated in this message.", HFILL }
+		},
+		{ &hf_nfapi_rscp,
+			{ "RSCP", "nfapi.rscp",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(neg_pow_conversion_fn), 0x0,
+			"The measured RSCP value in units of -1dB", HFILL }
+		},
+		{ &hf_nfapi_enco,
+			{ "EcNo", "nfapi.ecno",
+			FT_UINT8, BASE_CUSTOM, CF_FUNC(neg_pow_conversion_fn), 0x0,
+			"The measured RSCP value in units of -1dB", HFILL }
+		},
+		{ &hf_nfapi_number_of_utran_cells_found,
+			{ "Number of UTRAN Cells Found", "nfapi.number.of.utran.cells.found",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of LTE cells indicated in this message", HFILL }
+		},
+		{ &hf_nfapi_bsic,
+			{ "BSIC", "nfapi.bsic",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The BSIC of the cell which the NMM synchronized to", HFILL }
+		},
+		{ &hf_nfapi_rxlev,
+			{ "RxLev", "nfapi.rxlev",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The measured RxLev value", HFILL }
+		},
+		{ &hf_nfapi_rxqual,
+			{ "RxQual", "nfapi.rxqual",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The measured RxQual value", HFILL }
+		},
+		{ &hf_nfapi_sfn_offset,
+			{ "SFN Offset", "nfapi.sfn.offset",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"The offset in us of the start of the current GSM Radio HyperFrame (i.e. FN=0) from the start of the preceding LTE Radio Frame of the PNF for SFN=0", HFILL }
+		},
+		{ &hf_nfapi_number_of_geran_cells_found,
+			{ "Number of GSM Cells Found", "nfapi.number.of.geran.cells.found",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The number of GSM cells indicated in this message", HFILL }
+		},
+		{ &hf_nfapi_number_of_tx_antenna,
+			{ "Number of Tx Antenna", "nfapi.number.of.tx.antenna",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of Tx Antenna detected for the cell", HFILL }
+		},
+		{ &hf_nfapi_mib_length,
+			{ "MIB Length", "nfapi.mib.length",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Length in bytes of the following MIB array", HFILL }
+		},
+		{ &hf_nfapi_mib,
+			{ "MIB", "nfapi.mib",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			"The MIB read from the specified cell.", HFILL }
+		},
+		{ &hf_nfapi_phich_configuration,
+			{ "PHICH Configuration", "nfapi.phich.configuration",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The PHICH-Config of the cell", HFILL }
+		},
+		{ &hf_nfapi_retry_count,
+			{ "retryCount", "nfapi.retry.count",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of SIB1 repetition periods for which decoding of SIB1 should be retried.", HFILL }
+		},
+		{ &hf_nfapi_sib1,
+			{ "SIB1", "nfapi.sib1",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_si_periodicity,
+			{ "SI Periodicity", "nfapi.si.periodicity",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The SI Periodicity of the requested SIBs, with the first element being for SIB2, the next for SIB3, etc, encoded as follows", HFILL }
+		},
+		{ &hf_nfapi_si_index,
+			{ "SI Index", "nfapi.si.index",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The index of this SIB in the SIB1 SchedulingInfoList:", HFILL }
+		},
+		{ &hf_nfapi_number_of_si_periodicity,
+			{ "Number of SI Periodicity", "nfapi.number.of.si.periodicity",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The number of System Information periodicity values in the following array", HFILL }
+		},
+		{ &hf_nfapi_si_window_length,
+			{ "SI Window Length", "nfapi.si.window.length",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The SI window in units of 1ms", HFILL }
+		},
+		{ &hf_nfapi_sib_type,
+			{ "SIB Type", "nfapi.sib.type",
+			FT_UINT8, BASE_DEC, NULL, 0x0,
+			"The SIB type", HFILL }
+		},
+		{ &hf_nfapi_sib_len,
+			{ "SIB Length", "nfapi.sib.length",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The length in bytes of the following SIB array", HFILL }
+		},
+		{ &hf_nfapi_sib,
+			{ "SIB", "nfapi.sib",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			"The SIB element read from the specified cell.", HFILL }
+		},
+		{ &hf_nfapi_si_len,
+			{ "SI Length", "nfapi.si.length",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The length in bytes of the following SI array", HFILL }
+		},
+		{ &hf_nfapi_si,
+			{ "SI", "nfapi.si",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			"The SI element read from the specified cell.", HFILL }
+		},
+		{ &hf_nfapi_pnf_search_state,
+			{ "State", "nfapi.state",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			"A structure of opaque data optionally sent by the PNF to the VNF", HFILL }
+		},
+		{ &hf_nfapi_pnf_broadcast_state,
+			{ "State", "nfapi.state",
+			FT_BYTES, BASE_NONE, NULL, 0x0,
+			"A structure of opaque data optionally sent by the PNF to the VNF", HFILL }
+		},
+		{ &hf_nfapi_dl_rs_tx_power,
+			{ "DL RS Tx power", "nfapi.dl.rs.tx.power",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"The DL RS Tx power measurement", HFILL }
+		},
+		{ &hf_nfapi_received_interference_power,
+			{ "Received interference power", "nfapi.received.interference.power",
+			FT_UINT16, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"The Received interference power measurement", HFILL }
+		},
+		{ &hf_nfapi_thermal_noise_power,
+			{ "Thermal noise power", "nfapi.thermal.noise.power",
+			FT_UINT16, BASE_DEC | BASE_UNIT_STRING, &units_milliseconds, 0x0,
+			"The Thermal noise power measurement", HFILL }
+		},
+		{ &hf_nfapi_dl_rs_tx_power_measurement,
+			{ "DL RS TX Power measurement", "nfapi.dl.rs.tx.power.measurement",
+			FT_INT16, BASE_CUSTOM, CF_FUNC(dl_rs_tx_pow_measment_conversion_fn), 0x0,
+			"The DL RS Tx power measurement defined", HFILL }
+		},
+		{ &hf_nfapi_received_interference_power_measurement,
+			{ "Received interference power measurement", "nfapi.received.interference.power.measurement",
+			FT_INT16, BASE_CUSTOM, CF_FUNC(dl_rs_tx_pow_measment_conversion_fn), 0x0,
+			NULL, HFILL }
+		},
+		{ &hf_nfapi_thermal_noise_power_measurement,
+			{ "Thermal noise power measurement", "nfapi.thermal.noise.power.measurement",
+			FT_INT16, BASE_CUSTOM, CF_FUNC(dl_rs_tx_pow_measment_conversion_fn), 0x0,
+			"The Thermal noise power measurement", HFILL }
+		},
+		{ &hf_nfapi_initial_partial_sf,
+			{ "Initial Partial SF", "nfapi.initial.partial.sf",
+			FT_BOOLEAN, 32, TFS(&initial_partial_sf_strname), 0x0,
+			"Indicates whether the initial SF in the LBT process is full or partial", HFILL }
+		},
+		{ &hf_nfapi_lbt_mode,
+			{ "LBT Mode", "nfapi.lbt.mode",
+			FT_BOOLEAN, 32, TFS(&lbt_mode_strname), 0x0,
+			"Part of multi-carrier support. Indicates whether full LBT process is carried or partial LBT process is carried (multi carrier mode B according to [9] section 15.1.5.2)", HFILL }
+		},
+		{ &hf_nfapi_lte_txop_sf,
+			{ "LTE TXOP SF", "nfapi.txop.sf",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"Indicates the LTE TXOP (TMCOT,P in [9] section 15.1.1) duration in subframes.", HFILL }
+		},
+		{ &hf_nfapi_mp_cca,
+			{ "mp cca", "nfapi.mp.cca",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"Indicates the value of the defer factor", HFILL }
+		},
+		{ &hf_nfapi_n_cca,
+			{ "n cca", "nfapi.n.cca",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"Indicates the value of LBT backoff counter", HFILL }
+		},
+		{ &hf_nfapi_offset,
+			{ "offset", "nfapi.offset",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"Indicates the LBT start time in microseconds from the beginning of the subframe scheduled by this message.", HFILL }
+		},
+		{ &hf_nfapi_result,
+			{ "result", "nfapi.result",
+			FT_BOOLEAN, 32, TFS(&tfs_fail_success), 0x0,
+			"Indicates the LBT procedure result of SFN/SF:", HFILL }
+		},
+		{ &hf_nfapi_sfn_sf_end,
+			{ "SFN/SF End", "nfapi.sfn.sf.end",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Indicates the SFN/SF by which the DRS window (Discovery signal occasion as described in [9] section 6.11A) must end. In worst case, this would be the last TXOP subframe.", HFILL }
+		},
+		{ &hf_nfapi_txop_sfn_sf_end,
+			{ "TXOP SFN/SF End", "nfapi.txop.sfn.sf.end",
+			FT_UINT16, BASE_DEC, NULL, 0x0,
+			"Indicates the SFN/SF by which the TXOP must end. In worst case, this would be the last TXOP subframe.", HFILL }
+		},
+		{ &hf_nfapi_txop_symbols,
+			{ "LTE TXOP symbols", "nfapi.lte.txop.symbols",
+			FT_UINT32, BASE_DEC, NULL, 0x0,
+			"Actual LTE TXOP in symbols", HFILL }
+		},
+	};
+
+	/* Setup protocol subtree array */
+	static gint *ett[] =
+	{
+		&ett_nfapi_message_tree,
+		&ett_nfapi_p4_p5_message_header,
+		&ett_nfapi_p7_message_header,
+		&ett_nfapi_tlv_tree,
+		&ett_nfapi_tl,
+		&ett_nfapi_pnf_phy_rf_config,
+		&ett_nfapi_pnf_phy,
+		&ett_nfapi_pnf_phy_rel10,
+		&ett_nfapi_pnf_phy_rel11,
+		&ett_nfapi_pnf_phy_rel12,
+		&ett_nfapi_pnf_phy_rel13,
+		&ett_nfapi_rf_bands,
+		&ett_nfapi_bf_vectors,
+		&ett_nfapi_csi_rs_bf_vector,
+		&ett_nfapi_csi_rs_resource_configs,
+		&ett_nfapi_tx_antenna_ports,
+		&ett_nfapi_harq_ack_nack_data,
+		&ett_nfapi_harq_data,
+		&ett_nfapi_cqi_pmi_size,
+		&ett_nfapi_cc,
+		&ett_nfapi_rbs,
+		&ett_nfapi_antennas,
+		&ett_nfapi_epdcch_prbs,
+		&ett_nfapi_dl_config_request_pdu_list,
+		&ett_nfapi_ul_config_request_pdu_list,
+		&ett_nfapi_hi_dci0_request_pdu_list,
+		&ett_nfapi_tx_request_pdu_list,
+		&ett_nfapi_rx_indication_pdu_list,
+		&ett_nfapi_harq_indication_pdu_list,
+		&ett_nfapi_crc_indication_pdu_list,
+		&ett_nfapi_sr_indication_pdu_list,
+		&ett_nfapi_cqi_indication_pdu_list,
+		&ett_nfapi_preamble_indication_pdu_list,
+		&ett_nfapi_srs_indication_pdu_list,
+		&ett_nfapi_lbt_dl_config_pdu_list,
+		&ett_nfapi_lbt_dl_indication_pdu_list,
+		&ett_nfapi_subbands,
+		&ett_nfapi_precoding,
+		&ett_nfapi_bf_vector_antennas,
+		&ett_nfapi_received_interference_power_mesurement_results,
+		&ett_nfapi_downlink_bandwidth_support,
+		&ett_nfapi_uplink_bandwidth_support,
+		&ett_nfapi_release_support,
+		&ett_nfapi_downlink_modulation_support,
+		&ett_nfapi_uplink_modulation_support,
+
+		&ett_nfapi_earfcn_list,
+		&ett_nfapi_uarfcn_list,
+		&ett_nfapi_arfcn_list,
+		&ett_nfapi_rssi_list,
+		&ett_nfapi_pci_list,
+		&ett_nfapi_psc_list,
+		&ett_nfapi_lte_cells_found_list,
+		&ett_nfapi_utran_cells_found_list,
+		&ett_nfapi_geran_cells_found_list,
+		&ett_nfapi_si_periodicity_list,
+
+		/* for fragmentation support*/
+		&ett_msg_fragment,
+		&ett_msg_fragments
+	};
+
+	static ei_register_info ei[] =
+	{
+		{ &ei_invalid_range, { "nfapi.invalid.range", PI_PROTOCOL, PI_WARN, NULL, EXPFILL } },
+		{ &ei_invalid_tlv_length, { "nfapi.invalid.tlv.length", PI_PROTOCOL, PI_ERROR, NULL, EXPFILL } },
+	};
+
+	expert_module_t* expert_nfapi;
+	/* Register protocol */
+	proto_nfapi = proto_register_protocol("Nfapi", "NFAPI", "nfapi");
+
+	expert_nfapi = expert_register_protocol(proto_nfapi);
+	expert_register_field_array(expert_nfapi, ei, array_length(ei));
+
+
+	proto_register_field_array(proto_nfapi, hf, array_length(hf));
+	proto_register_subtree_array(ett, array_length(ett));
+
+	reassembly_table_register(&ul_p7_reassemble_table, &addresses_ports_reassembly_table_functions);
+	reassembly_table_register(&dl_p7_reassemble_table, &addresses_ports_reassembly_table_functions);
+
+	register_dissector("nfapi", dissect_nfapi, proto_nfapi);
+
+}
+
+// ----------------------------------------------------------------------------|
+
+void proto_reg_handoff_nfapi(void)
+{
+	static dissector_handle_t nfapi_handle;
+
+	nfapi_handle = create_dissector_handle(dissect_nfapi, proto_nfapi);
+
+	dissector_add_for_decode_as("sctp.port", nfapi_handle);
+
+	dissector_add_uint("udp.port", 41700, nfapi_handle);
+
+}
+
+
+/*
+* Editor modelines  -  http://www.wireshark.org/tools/modelines.html
+*
+* Local variables:
+* c-basic-offset: 8
+* tab-width: 8
+* indent-tabs-mode: t
+* End:
+*
+* vi: set shiftwidth=8 tabstop=8 noexpandtab:
+* :indentSize=8:tabSize=8:noTabs=false:
+*/
diff --git a/xml/pnf_phy_1_A.xml b/xml/pnf_phy_1_A.xml
index da6cc26..45f8f46 100644
--- a/xml/pnf_phy_1_A.xml
+++ b/xml/pnf_phy_1_A.xml
@@ -26,7 +26,7 @@
 		<phy>
 			<index>88</index>
 			<port>2500</port>
-			<address>127.0.0.1</address>
+			<address>192.168.1.74</address>
 
 			<duplex_mode>1</duplex_mode>
 
@@ -54,9 +54,9 @@
 
 			<data>
 				<udp>
-					<rx_port>7722</rx_port>
-					<tx_addr>127.0.0.1</tx_addr>
-					<tx_port>7733</tx_port>
+					<rx_port>5201</rx_port>
+					<tx_addr>192.168.1.28</tx_addr>
+					<tx_port>5200</tx_port>
 				</udp>
 			</data>
 		</phy>
diff --git a/xml/vnf_A.xml b/xml/vnf_A.xml
index e609c93..3791239 100644
--- a/xml/vnf_A.xml
+++ b/xml/vnf_A.xml
@@ -2,8 +2,8 @@
 <vnf>
 	<vnf_p7_list>
 		<vnf_p7>
-			<port>5200</port>
-			<address>127.0.0.1</address>
+			<port>5201</port>
+			<address>192.168.1.28</address>
 			<timing_window>10</timing_window>
 			<periodic_timing_enabled>0</periodic_timing_enabled>