Skip to content

Add ran type (gNB-CU/DU and eNB) and some small fix

Chieh-Chun Chen requested to merge fix into dev

Content

This MR includes the following modifications:

  1. Add cu_du_id in sqlite db
  2. Fix the memory leak for cu_du_id

Improvements

  1. Add hello world xapp.

  2. Add config for xapp db name and path.

  3. Add cu_du_id in global_e2_node_id_t to support e2 node in the dis-aggregated CU/DU, also includes following modifications:

  • supported ran_type: ngran_gNB, ngran_gNB_CU, ngran_gNB_DU and ngran_eNB -add enc/dec asn for cu_du_id and ran_type
  • add agent emulators for different ran_type: emu_agent_gnb, emu_agent_gnb_cu, emu_agent_gnb_du and emu_agnet_enb
  • add fixed value of mcc, mnc, nb_id, ran_type and cu_du_id in test_agent.c
  • print out nearRT-RIC's info(ip & port) from agnet/ric/iapp/xapp
  • fix get_near_ric_ip() to avoid memory leak
  1. Improve cmakelist to optionally install the nearRT-RIC/agent/xapp executables and compile unit test folder, also includes following modifications:
  • correct the sm shared lib (.so), flexric.conf file, and nearRT-RIC/agent/xapp executables to the proper path
  • add make uninstall

Bugfix

  1. Fix the resending E42 setup request procedure to avoid re-generate a new event for each setup request.

  2. other fix:

  • Improve README to install the required dependencies.
  • Fix the buffer size for writing the slice state in log.txt.
  • Fix the function for filling dummy slice state data.
  • Fix path of the xapp in python to absolute path.
  • Fix max number of parameter for runtime executable.
  • Fix the buffer size for enc/dec E2/E42 setup reqeust to enable 32 agents/xapps are running at same time.

Test plan note: this MR didn't test with OAI.

  • passed unit test (test_ag_ric_xapp)
  • paseed three nodes test (NOTE:need to run the emu_agent and nearRT-RIC first before run up the xapp)
  • nearRT-RIC <-> (emu_agent_gnb, emu_agent_enb) or (emu_agent_gnb_cu, emu_agent_gnb_du) <-> xapp_mac_rlc_pdcp_moni(C/python)
  • nearRT-RIC <-> (emu_agent_gnb, emu_agent_enb) or (emu_agent_gnb_cu, emu_agent_gnb_du) <-> xapp_slice_moni_ctrl(C/python)
  • nearRT-RIC <-> (emu_agent_gnb, emu_agent_enb) or (emu_agent_gnb_cu, emu_agent_gnb_du) <-> xapp_hw(C)
  • nearRT-RIC <-> (emu_agent_gnb, emu_agent_enb) or (emu_agent_gnb_cu, emu_agent_gnb_du) <-> xapp_kpm_moni(C)
  • nearRT-RIC <-> (emu_agent_gnb, emu_agent_enb) or (emu_agent_gnb_cu, emu_agent_gnb_du) <-> xapp_gtp_moni(C/python)
  • passed ctest
Test project /home/modelx/CCC/flexric/build
    Start 1: test-All-in-one
1/8 Test #1: test-All-in-one ..................   Passed   19.84 sec
    Start 2: Unit_test_MAC
2/8 Test #2: Unit_test_MAC ....................   Passed    0.00 sec
    Start 3: Unit_test_RLC
3/8 Test #3: Unit_test_RLC ....................   Passed    0.00 sec
    Start 4: Unit_test_PDCP
4/8 Test #4: Unit_test_PDCP ...................   Passed    0.90 sec
    Start 5: Unit_test_SLICE
5/8 Test #5: Unit_test_SLICE ..................   Passed    0.38 sec
    Start 6: Unit_test_TC
6/8 Test #6: Unit_test_TC .....................   Passed    7.47 sec
    Start 7: Unit_test_GTP
7/8 Test #7: Unit_test_GTP ....................   Passed    0.00 sec
    Start 8: Unit_test_KPM
8/8 Test #8: Unit_test_KPM ....................   Passed    0.00 sec

100% tests passed, 0 tests failed out of 8

Total Test time (real) =  28.61 sec
Edited by Chieh-Chun Chen

Merge request reports