1. 12 Aug, 2023 3 commits
    • Robert Schmidt's avatar
      Repair reestablishment and make it work via F1 · 7a298e73
      Robert Schmidt authored
      This commit repairs the reestablishment after the introduction of the CU
      UE ID in the CU, different from the DU UE ID. Now, the CU uses an
      identifier different from the RNTI, used in the MAC, to refer to UEs.
      
      To repair the reestablishment, a number of changes needed to be
      introduced:
      
      - Handle old_gNB_DU_UE_id in MAC
      
      The MAC handles the old_gNB_DU_UE_id field in the DL RRC Message. The
      commit adds encoding/decoding of the field. The MAC will drop the old
      UE, but retain the CellGroup of the corresponding UE(!). Because a UE
      releases the spCellGroup on reestablishment, the MAC does the same; it
      needs to reapply the old configuration after a reconfiguration. For the
      latter, introduce new variables to keep a "future" CellGroupConfig to be
      applied (reconfigCellGroup) and a flag (expect_reconfiguration) that
      applies the CellGroupConfig if a DL RRC Message transfer on DCCH, which
      is assumed to be the reconfiguration.
      
      - Add RNTI change in RLC
      
      The RLC needs to reuse the old UE context. Hence, we simply change the
      RNTI in the old context, and delete the new one.
      
      - No PDCP UE ID change
      
      The previous implementation of the PDCP used the RNTI; hence, the ID
      needed to be switch (as above for the RLC). Since the PDCP now also uses
      the CU UE ID, no identifier change is needed, and we remove all
      corresponding code.
      
      - No MAC modifications/update from CU
      
      As foreseen by the spec, the CU does not modify or change the
      cellGroupConfig in the RRC during reestablishment. This change will be
      generalized in the future to all of the RRC.  Also, the
      nr_rrc_mac_remove_ue() function has been removed: the MAC handles any UE
      changes autonomeously, without being triggered from the RRC explicitly.
      
      - Remove reestablish_rnti_map
      
      The RRC does not use RNTIs for UE identification. Hence, a
      reestablish_rnti_map to link two UEs to each other is not necessary
      anymore.
      7a298e73
    • Robert Schmidt's avatar
      Implement PDCP reset counters for reestablishment · 04abbdb6
      Robert Schmidt authored
      After a reestablishment, the PDCP sequence number counters have to be
      reset. Implement an API to allow the RRC to reset the sequence numbers
      for a particular UE in the case of reestablishment
      04abbdb6
    • Robert Schmidt's avatar
      Trigger Reestablishment via resetting RLC sequence numbers · b90a59a6
      Robert Schmidt authored
      Plugin can trigger reestablishment (on DU)
      and show counters of reestablishment (on CU)
      b90a59a6
  2. 11 Aug, 2023 23 commits
  3. 08 Aug, 2023 7 commits
  4. 07 Aug, 2023 7 commits
    • Robert Schmidt's avatar
      Merge remote-tracking branch... · 8dff8ff1
      Robert Schmidt authored
      Merge remote-tracking branch 'origin/NR_MAC_gNB_handle_DLSCH_with_DCI10_common_SS' into integration_2023_w31
      8dff8ff1
    • Robert Schmidt's avatar
      Add Quectel/F1+E1 test · 7c9c3db6
      Robert Schmidt authored
      7c9c3db6
    • Robert Schmidt's avatar
      86e596b0
    • Robert Schmidt's avatar
      Quectel F1 test: no radio required for CU · 0c9c071e
      Robert Schmidt authored
      0c9c071e
    • Robert Schmidt's avatar
      Add iperf throughput test to Quectel F1 test · 728649d6
      Robert Schmidt authored
      - throughput test in DL
      - UL throughput: 30s is enough
      - increase bidir test time for more reliable measurement
      - increase retx thresholds: 1% for first round is too low
      728649d6
    • Robert Schmidt's avatar
      CI: cell content's <pre> style to stack horizontally · 5ddb9f68
      Robert Schmidt authored
      The results of individual UEs (e.g., ping) is listed vertically, like
      so:
      
      | ping results | UE1 |
      |              | UE2 |
      |              | UE3 |
      
      Where UE1, UE2, ... represents an entire box with results for UE 1, 2,
      ... For many UEs, this results in considerable need for vertical space. This
      commit changes to something like the following to save space:
      
      | ping results | UE1 UE2 UE3 |
      
      For a single UE, this commit has no major impact (the boxes are not
      stretched to width anymore).
      5ddb9f68
    • Robert Schmidt's avatar
      Specify realistic LTE iperf bitrate thresholds · 5d66ae56
      Robert Schmidt authored
      A side effect of the previous commit's refactoring is that we mark the
      pipeline as failed if a (packet loss/bitrate) threshold is violated.
      Previously, the HTML would contain a "Perf not met" hint, but be marked
      as successful.
      
      This commit introduces more realistic thresholds for various pipeline
      runs. The values are arbitary, following the performances in pipelines
      that were marked as successful, but actually had performance problems.
      They allow, though, a pipeline to pass following the normal performance
      we saw the last weeks.
      5d66ae56