作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120850348


目录

1. nFAPI持续集成的测试文件

1.1 关于持续集成的说明

1.2 配置文件存放路径

1.3 配置文件种类

第2章 VNF与PNF运行在同一个机器上或虚拟机上的配置(单机版)

第3章 VNF与PNF运行在同一个机器上或虚拟机上的配置(多机版)


1. nFAPI持续集成的测试文件

1.1 关于持续集成的说明

(1)本文说明的持续集成的配置文件,是指nFAPI自身集成测试的配置,该测试,可以不需要基站的L2,L3软件就可以实现

(2)nFAPI也可以通过L2进行测试,这种测试模式下,有基站的配置文件,其对nFAP和基站进行配置,这种方式不在本文的范围之内。

(3)测试的重点放在nFAPI协议栈本身,以及nFAPI层之下的PHY和RF的功能,包括VNF和PNF,包括 P5和P7接口。

(4)nFAPI的测试支持一个VNF + 多个 PNF

(5)nFAPI的测试支持一个PNF +  多个PHY

(6)nFAPI的测试支持一个PHY +  多个RFIC

1.2 配置文件存放路径

oai/openairinterface5g/nfapi/open-nFAPI/xml/

1.3 配置文件种类

(1)VNF与PNF运行在同一个机器上或虚拟机上的配置

pnf_phy_1_A_ws.xml  

vnf_A_ws.xml  

(2)VNF与PNF运行在不同一个机器上或虚拟机上的配置

vnf_A.xml                =》 VNF配置

pnf_phy_1_A.xml    =》 第一个PHY的配置A

pnf_phy_1_B.xml    =》 第一个PHY的配置B

pnf_phy_2_A.xml    =》 第二个PHY的配置A

备注:测试环境支持一个VNF + 2个PNF

第2章 VNF与PNF运行在同一个机器上或虚拟机上的配置(单机版)

2.1 VNF配置

<?xml version="1.0" encoding="UTF-8"?>
<vnf>

        <vnf_p7_list>
                <vnf_p7>
                        <wireshark_test_mode>1</wireshark_test_mode>  # 打开wireshark_test开关
                        <port>5200</port>                   # VNF P5接口的端口号
                        <address>127.0.0.1</address>        # VNF P5接口的IP地址,为本地地址  
                        <timing_window>10</timing_window>   #  窗口为10ms
                        <periodic_timing_enabled>0</periodic_timing_enabled> # 关闭周期性定时,只需要一次定时。
                        <periodic_timing_window>0</periodic_timing_window>  #  周期性定时的定时周期。
                        <aperiodic_timing_enabled>0</aperiodic_timing_enabled> #关闭不定期定时,只需要一次定时

                        <data>
                                <udp>
                                        <rx_port>8891</rx_port>      # VNF P7接口的接收数据的端口号
                                        <tx_addr>127.0.0.1</tx_addr>  # VNF P7接口的IP地址,为本地环回地址
                                        <tx_port>8892</tx_port>   #  VNF P7接口的发送数据的端口号
                                </udp>
                        </data>
                </vnf_p7>
        </vnf_p7_list>
</vnf>

VNF最重要的配置是:

  • 指定VNF的P7和P5接口的IP地址和端口号
  • 与PNF的定时同步机制
  • 是否需要收集wireshark格式的NFAPI数据包

2.2 PNF配置

../oai/openairinterface5g/nfapi/open-nFAPI/xml>cat pnf_phy_1_A_ws.xml
<?xml version="1.0" encoding="UTF-8"?>
<pnf>
        <wireshark_test_mode>1</wireshark_test_mode>  #打开wireshark的测试开关

        <sync_mode>0</sync_mode>                       # pss=0, pbch=1, si=2
        <location_mode>0</location_mode>
        <location_coordinates></location_coordinates>  # GPS地址

        <dl_config_timing>500</dl_config_timing>       # 上行定时0.5s
        <ul_config_timing>500</ul_config_timing>       # 下行定时0.5s
        <tx_timing>500</tx_timing>                     # 发送定时0.5s
        <hi_dci0_timing>500</hi_dci0_timing>           # DCI0定时0.5s

        <max_phys>1</max_phys>                         #  支持的phy数目
        <max_total_bandwidth>30</max_total_bandwidth>   #  支持的带宽:30个PRB
        <max_total_num_dl_layers>1</max_total_num_dl_layers>  #支持的下行MIMO层:1层
        <max_total_num_ul_layers>1</max_total_num_ul_layers>  #支持的上行MIMO层:1层

        <shared_bands>0</shared_bands>                        # 共享带宽
        <shared_pas>0</shared_pas>                            # ???

        <maximum_total_power>0</maximum_total_power>          # 最大功率,不做闲置

        <oui>ALPHA</oui>                                      # oui=ALPHA


        <phys>
                <phy>
                        <index>88</index>                    # phy index
                        <port>2500</port>                    # PHY P5端口号
                        <address>127.0.0.1</address>         # PHY 地址

                        <duplex_mode>1</duplex_mode>         # 双工模式:全双工

                        <downlink_channel_bandwidth_support>22</downlink_channel_bandwidth_support> #下行带宽
                        <uplink_channel_bandwidth_support>22</uplink_channel_bandwidth_support>  #上行带宽

                        <number_of_dl_layers>1</number_of_dl_layers>     #下行层数
                        <number_of_ul_layers>1</number_of_ul_layers>     #上行层数

                        <3gpp_release_supported>31</3gpp_release_supported> #3GGPP release

                        <nmm_modes_supported>0</nmm_modes_supported> #是否支持???

                        <dl_ues_per_subframe>8</dl_ues_per_subframe> #每个子帧调度的下行UE数量。
                        <ul_ues_per_subframe>8</ul_ues_per_subframe> #每个子帧调度的上行UE数量。

                        <!-- todo adn the other release parameters -->

                        <rfs>
                                <index>0</index>     # RF id
                        </rfs>
                        <excluded_rfs>
                                <index>1</index>     # RF id
                        </excluded_rfs>

                        <data>
                                <udp>
                                        <rx_port>7722</rx_port>        # P7接口的接收端口号
                                        <tx_addr>127.0.0.1</tx_addr>   # P7接口的IP地址
                                        <tx_port>7733</tx_port>        # P7接口的发送端口号
                                </udp>
                        </data>
                </phy>
        </phys>
        <rfs>
                <rf>
                        <index>0</index>      # RFIC卡编号0,一个RF模块可以携带多个RFIC
                        <band>2</band>                                  # RF band编号
                        <max_transmit_power>-30</max_transmit_power>    # 最大的发射功率
                        <min_transmit_power>-230</min_transmit_power>   # 最小的发射功率
                        <num_antennas_supported>2</num_antennas_supported> #支持的天线数2T2R
                        <min_downlink_frequency>1890</min_downlink_frequency> # 下行频率
                        <max_downlink_frequency>1890</max_downlink_frequency> # 下行频率
                        <max_uplink_frequency>1890</max_uplink_frequency>     # 上行频率
                        <min_uplink_frequency>1890</min_uplink_frequency>     # 上行频率
                </rf>
                <rf>
                        <index>1</index>                      # RFIC卡的编号1
                        <band>3</band>                         
                        <max_transmit_power>-30</max_transmit_power> 
                        <min_transmit_power>-230</min_transmit_power>
                        <num_antennas_supported>2</num_antennas_supported>
                        <min_downlink_frequency>1890</min_downlink_frequency> #TDD模型
                        <max_downlink_frequency>1890</max_downlink_frequency>
                        <max_uplink_frequency>1890</max_uplink_frequency> #TDD模型
                        <min_uplink_frequency>1890</min_uplink_frequency>
                </rf>
        </rfs>
</pnf>

如果是虚拟环境, PNF最重要的配置是:

  • 指定VNF的P7和P5接口的IP地址和端口号
  • 与PNF的定时同步机制
  • 是否需要收集wireshark格式的NFAPI数据包
  • 其他参数都可以使用默认。

备注:

  • 同一个PNF可以管理多个PHY实体。
  • 同一个PHY实体,可以连接多个RFIC
  • 不同的RFIC可以是不同的Band,也可以支持同一个Band, 如把两个2T2R的RFIC拼接成一个4T4T的RFIC.

第3章 VNF与PNF运行在同一个机器上或虚拟机上的配置(多机版)

3.1 VNF配置

<?xml version="1.0" encoding="UTF-8"?>
<vnf>
        <vnf_p7_list>
                <vnf_p7>
                        <port>5201</port>
                        <address>192.168.1.28</address>   # 指定P5接口的IP地址,用于与不在同一个机器上的PNF通信。
                        <timing_window>10</timing_window>
                        <periodic_timing_enabled>0</periodic_timing_enabled>
                        <periodic_timing_window>0</periodic_timing_window>
                        <aperiodic_timing_enabled>0</aperiodic_timing_enabled>

                        <data>
                                <udp>
                                        <rx_port>8891</rx_port>
                                        <tx_addr>192.168.1.28</tx_addr>  #指定P7接口的IP地址,用于与不在同一个机器上的PNF通信。
                                        <tx_port>8892</tx_port>
                                </udp>
                        </data>
                </vnf_p7>
        </vnf_p7_list>
</vnf>

备注:

相对于单机版,多机版时,需要指定VNF的P5和P7接口的IP地址。

3.2 PNF配置

<?xml version="1.0" encoding="UTF-8"?>
<pnf>
        <sync_mode>0</sync_mode>
        <location_mode>0</location_mode>
        <location_coordinates></location_coordinates>

        <dl_config_timing>500</dl_config_timing>
        <ul_config_timing>500</ul_config_timing>
        <tx_timing>500</tx_timing>
        <hi_dci0_timing>500</hi_dci0_timing>

        <max_phys>1</max_phys>
        <max_total_bandwidth>30</max_total_bandwidth>
        <max_total_num_dl_layers>1</max_total_num_dl_layers>
        <max_total_num_ul_layers>1</max_total_num_ul_layers>

        <shared_bands>0</shared_bands>
        <shared_pas>0</shared_pas>

        <maximum_total_power>0</maximum_total_power>

        <oui>ALPHA</oui>


        <phys>
                <phy>
                        <index>88</index>
                        <port>2500</port>
                        <address>192.168.1.74</address>

                        <duplex_mode>1</duplex_mode>

                        <downlink_channel_bandwidth_support>22</downlink_channel_bandwidth_support>
                        <uplink_channel_bandwidth_support>22</uplink_channel_bandwidth_support>

                        <number_of_dl_layers>1</number_of_dl_layers>
                        <number_of_ul_layers>1</number_of_ul_layers>

                        <3gpp_release_supported>31</3gpp_release_supported>

                        <nmm_modes_supported>0</nmm_modes_supported>

                        <dl_ues_per_subframe>8</dl_ues_per_subframe>
                        <ul_ues_per_subframe>8</ul_ues_per_subframe>

                        <!-- todo adn the other release parameters -->

                        <rfs>
                                <index>0</index>
                        </rfs>
                        <excluded_rfs>
                                <index>1</index>
                        </excluded_rfs>

                        <data>
                                <udp>
                                        <rx_port>5201</rx_port>
                                        <tx_addr>192.168.1.28</tx_addr>
                                        <tx_port>5200</tx_port>
                                </udp>
                        </data>
                </phy>
        </phys>
        <rfs>
                <rf>
                        <index>0</index>
                        <band>2</band>
                        <max_transmit_power>-30</max_transmit_power>
                        <min_transmit_power>-230</min_transmit_power>
                        <num_antennas_supported>2</num_antennas_supported>
                        <min_downlink_frequency>1890</min_downlink_frequency>
                        <max_downlink_frequency>1890</max_downlink_frequency>
                        <max_uplink_frequency>1890</max_uplink_frequency>
                        <min_uplink_frequency>1890</min_uplink_frequency>
                </rf>
                <rf>
                        <index>1</index>
                        <band>3</band>
                        <max_transmit_power>-30</max_transmit_power>
                        <min_transmit_power>-230</min_transmit_power>
                        <num_antennas_supported>2</num_antennas_supported>
                        <min_downlink_frequency>1890</min_downlink_frequency>
                        <max_downlink_frequency>1890</max_downlink_frequency>
                        <max_uplink_frequency>1890</max_uplink_frequency>
                        <min_uplink_frequency>1890</min_uplink_frequency>
                </rf>
        </rfs>
</pnf>

相对于单机版,最重要的变化:

  • PNF P5和P7接口的IP地址与端口号。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120850348

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐