Commit Graph
27651 Commits
Author SHA1 Message Date
Robert Schmidt d108648312 Handle parameter reading and test case execution together
For reasons I don't understand, the XML option reading and actual test
case execution are at different places in the code. This is problematic,
because what this led to is that options are not passed as function
arguments, but indirectly through class members. This led to a lot of
"indirect code"; it's a total mess

To improve this, move them together, so that parameters can be passed
directly as function arguments later on.

Because we reference the globals, mark them inside
ExecuteActionWithParam(). That is a Python antipattern, but necessary at
this moment. I believe that we can remove the following globals over
time:

- SSH (with new cls_cmd, which we don't need to pass)
- EPC (replaced through a class similar to ue_module, i.e., refer to
  core networks on specific hosts through an ID, instead of a global)
- HTML (should use templating, where individual functions give back a
  dictionary of what they want to print, and a final pass assembles the
  entire HTML file)
- RAN/SCA/PHYSIM/CLUSTER/ldpc (can be replaced with stateless scripts
  build/run eNB/gNB on a specific node)
2024-09-28 12:45:07 +02:00
Jaroslava Fiedlerova e9f9718f63 CI: add more unit tests for UDP iperf3 analysis function 2024-09-28 12:45:07 +02:00
Jaroslava Fiedlerova 5fd5ed43c7 CI: Adjust regex patterns for Iperf3 UDP log parsing
Update the regex for both sender and receiver data to allow optional
bitrate unit prefixes - accepts also no prefix. Modify the patterns for
lost and total packets to accept negative values (`-?\d+`).
2024-09-28 12:45:07 +02:00
Jaroslava Fiedlerova 9d92c0e477 CI: add unit test for UDP iperf3 analysis function 2024-09-28 12:45:07 +02:00
Jaroslava Fiedlerova 1ba5677056 CI: get UDP iperf3 results even if packet count is negative 2024-09-28 12:45:07 +02:00
Robert Schmidt 0da2f27fa7 CI Ping/Iperf: add tests, print without lock, reduce code lines
Add some basic unit tests to verify that Iperf/Ping work. Harmonize the
logging by only print in the "main" iperf/ping function, to avoid that
if we test with multiple UEs, the output intermixes. Also, do one common
mkdir before starting multiple pings/iperfs. Finally, harmonize the
paths so that Iperf and Ping log their files in the same place.
2024-09-28 12:45:07 +02:00
Robert Schmidt 02d5f953a8 Add simple unit test cases for Deployment, including instructions 2024-09-27 19:59:54 +02:00
Robert Schmidt 25f7f61d73 Simplify GetContainerHealth(): we never use unhealthy count 2024-09-27 19:59:54 +02:00
Robert Schmidt 4bf7c45be1 SSHConnection class: don't exit, raise Exception to have main loop handle 2024-09-27 19:59:54 +02:00
Robert Schmidt 1620994f0a DeployObject: EPC not needed 2024-09-27 19:59:54 +02:00
Robert Schmidt 7c1920aea9 Fixup: no HTML in create_workspace, so can't print to HTML 2024-09-27 19:59:54 +02:00
Robert Schmidt 6f868b038f Remove more unused CI files 2024-09-27 19:59:54 +02:00
Robert Schmidt cded721189 Remove unused CI XML and Python code 2024-09-27 19:50:41 +02:00
Jaroslava Fiedlerova 6d09b2179e Merge remote-tracking branch 'origin/NR_UE_UL_time_alignment' into integration_2024_w39 2024-09-27 17:40:15 +02:00
Guido Casati 5daad21ca6 Reworked F1AP documentation and added info about the library
* moved F1AP related docs to a separate folder in docs
2024-09-27 17:39:00 +02:00
Guido Casati 3aa9f4c0be Use F1 gNB-DU Configuration Update Acknowledge lib in stack 2024-09-27 17:39:00 +02:00
Guido Casati b8ee622f1c Add test for F1 DU Configuration Update Acknowledge lib 2024-09-27 17:38:55 +02:00
Guido Casati b91e1b0a12 Add enc/dec lib for F1AP gNB-DU Configuration Update Acknowledge (Interface Management) 2024-09-27 17:38:52 +02:00
Guido Casati 3ce1f0e2c5 Use F1 gNB-CU Configuration Update Acknowledge lib in stack 2024-09-27 17:38:51 +02:00
Guido Casati c936aabd9a Add test for CU Configuration Update Acknowledge lib 2024-09-27 17:38:43 +02:00
Guido Casati 3724e84fed Add enc library for F1 gNB-CU Configuration Update Acknowledge (Interface Management) 2024-09-27 17:38:38 +02:00
Guido Casati d2863d9693 Refactored f1ap_gnb_cu_configuration_update_acknowledge_t
* add transaction_id
* refactored remaining members
2024-09-27 17:38:38 +02:00
Guido Casati 80a05271d6 Use F1AP gNB-CU Configuration Update lib in stack 2024-09-27 17:38:38 +02:00
Guido Casati 3626366228 Add test for F1 gNB-CU Configuration Update enc/dec lib 2024-09-27 17:38:38 +02:00
Guido Casati 8e3d6583a5 Add enc/dec library for F1AP gNB-CU Configuration Update (Interface Management) 2024-09-27 17:38:38 +02:00
Guido Casati c416c57f92 Simplified F1AP gNB-CU Configuration Update message struct
* removed optional IEs, whose encoding/decoding is not done
2024-09-27 17:38:38 +02:00
Guido Casati 3b11764d1d Minor comments 2024-09-27 17:38:38 +02:00
Guido Casati 07da84ede2 Use F1 gNB-DU Configuration Update lib in stack 2024-09-27 17:38:38 +02:00
Guido Casati 2cc50832d1 Add test for F1AP gNB-DU Configuration Update enc/dec library 2024-09-27 17:38:38 +02:00
Guido Casati 9958e53cb1 Add encoding/decoding library for F1AP gNB-DU Configuration Update (Interface Management) 2024-09-27 17:38:38 +02:00
Guido Casati df62abca0c Removed gNB_CU_name from f1ap_gnb_du_configuration_update_t
* not defined in 9.2.1.8 of 3GPP TS 38.473
2024-09-27 17:38:38 +02:00
Guido Casati 289fdfe381 Use F1AP Setup Failure enc/dec lib in stack 2024-09-27 17:38:38 +02:00
Guido Casati 6146c470e2 Add test for F1AP Setup Failure enc/dec lib 2024-09-27 17:38:38 +02:00
Guido Casati 7e495db5ec Add encoding/decoding lib for F1 Setup Failure (interface management) 2024-09-27 17:38:38 +02:00
Guido Casati 28e2d67ee5 Fixes to F1 Setup Failure
* added missing Transaction ID to te F1 Setup Failure message struct
* fill F1 Setup Failure transaction ID in RRC before calling the F1 Setup Failure function
2024-09-27 17:38:38 +02:00
Guido Casati 3a5ace00d2 Use F1AP lib for F1 Setup Response in stack 2024-09-27 17:38:38 +02:00
Guido Casati df2c92e652 Add test for F1AP Setup Response enc/dec lib 2024-09-27 17:38:35 +02:00
Guido Casati 30628b820c Add encoding/decoding lib for F1AP Setup Response (Interface Management) 2024-09-27 17:38:30 +02:00
Jaroslava Fiedlerova ed4af19590 Merge remote-tracking branch 'origin/remove-DRX-UE-capabilities' into integration_2024_w39 2024-09-27 17:33:20 +02:00
Jaroslava Fiedlerova 16d8281418 Merge remote-tracking branch 'origin/NR_GNB_PDSCH_FIX' into integration_2024_w39 2024-09-27 17:13:18 +02:00
Jaroslava Fiedlerova 36ade4a153 Merge remote-tracking branch 'origin/fix_fapi_SRS_gNB' into integration_2024_w39 2024-09-27 17:12:52 +02:00
Jaroslava Fiedlerova 2ba7d59dfe Merge remote-tracking branch 'origin/remove-includes' into integration_2024_w39 2024-09-27 17:12:39 +02:00
Thomas Schlichter 60c2b3fe00 nrscope: fix label on gNB scope - it is NR not LTE ;-) 2024-09-27 17:07:20 +02:00
Thomas Schlichter 9f8a2573ee gNB: update DL and UL bler_stats.mcs for logging also in case of harq_round_max == 1 2024-09-27 17:07:15 +02:00
Thomas Schlichter 60ca088e51 gNB: respect config value dl_max_mcs also in case of harq_round_max == 1 2024-09-27 17:07:11 +02:00
Thomas Schlichter d9940b1bc4 NR UE: fix logical error in nr_ue_process_dci_dl_10()
Fixing this avoids the theoretical possibility of dereferencing a NULL pointer.
2024-09-27 17:07:03 +02:00
Thomas Schlichter b0eedd3bbd gNB: fix a comment - current TA interval is 100 frames, not 10 2024-09-27 17:06:52 +02:00
Thomas Schlichter 791cc4f648 NR UE: set time sync PI controller integral weight to 0.0 by default
Experiments did show that the time sync is less stable in terrestrial mode if the integral part of the PI controller is used.
So set it to 0.0 by default. For NTN LEO use case we can still use it by providing the command line parameter --time-sync-I 0.2 .
fixes #846
2024-09-27 17:06:42 +02:00
Thomas Schlichter 64380eaca2 gNB: consider NTN_Koffset when scheduling PRACH 2024-09-27 17:03:36 +02:00
Thomas Schlichter 0ecf35de84 gNB: print error message if PRACH resources are already occupied in schedule_nr_prach() 2024-09-27 17:03:21 +02:00