Commit Graph

8544 Commits

Author SHA1 Message Date
Andre Puschmann 7a85191323 nas: call GW for all removed EPS bearers
this makes sure that GW can also remove all associated TFTs
2021-06-24 16:52:58 +02:00
Andre Puschmann ab0fba5449 gw: try to remove TFTs for all non-default EPS bearer
GW needs to reset its default EPS bearer when it is removed
and also try to remove all TFTs for a non-default bearere when
it is removed.
2021-06-24 16:52:58 +02:00
Andre Puschmann 5313fb99d6 tft: add helper to delete all TFTs for EPS bearer
when a EPS bearer is removed, all associated TFTs need
to be removed as well.
2021-06-24 16:52:58 +02:00
Andre Puschmann eef9eb80c4 ttcn3_ue: fix removal of dedicated EPS bearer 2021-06-24 16:52:58 +02:00
Andre Puschmann 60f8a8db1c nas,tft: add support for TFT modification 2021-06-24 16:52:58 +02:00
Andre Puschmann 483a216bd5 ue,stack: refactor handling of radio bearears in UE stack
this is a rather large commit that is hard to split because
it touches quite a few components.

It's a preparation patch for adding NR split bearers in the next
step.

We realized that managing RLC and PDCP bearers for both NR and LTE
in the same entity doesn't work. This is because we use the LCID
as a key for all accesses. With NR dual connectivity however we
can have the same LCID active at the same time for both LTE and NR
carriers.

The patch solves that by creating a dedicated NR instance for RLC/PDCP
in the stack. But then the question arises for UL traffic on, e.g. LCID 4
what PDCP instance the GW should use for pushing SDUs. It doesnt' know
that. And in fact it doesn't need to. It just needs to know EPS
bearer IDs. So the next change was to remove the knowledge of what
LCIDs are from the GW. Make is agnostic and only work on EPS bearer IDs.

The handling and mapping between EPS bearer IDs and LCIDs for LTE
or NR (mainly PDCP for pushing data) is done in the Stack because
it has access to both.

The NAS also has a EPS bearer map but only knows about default and
dedicated bearers. It doesn't know on which logical channels they
are transmitted.
2021-06-24 16:52:58 +02:00
Andre Puschmann a4b2a065ff pdcp: reword warning when dropping PDU 2021-06-24 16:52:58 +02:00
Andre Puschmann 3f9c069ff7 ue_stack_lte: add RLC and PDCP entities for NR 2021-06-24 16:52:58 +02:00
Andre Puschmann 7113e55d53 rlc: refactor RLC entity to use smart pointers for holding bearers
this patch mainly modernizes the bearer creation to use smart pointers.
that allows to simplify the error handling.

ue_stack is changed to match new interface. This commit compiles
but doesn't work.
2021-06-24 16:52:58 +02:00
David Rupprecht 6d5391756c Refactor build of RLC NR config 2021-06-24 16:52:58 +02:00
David Rupprecht d1d8500ce5 Add testcase for reconfiguration 2021-06-24 16:52:58 +02:00
Andre Puschmann e2c496d825 srsue,mac: fix race between PHY and MAC when stopping UE
the issue let to unwanted log warning at the end of the UE
execution when the PHY was still pushing DL PDUs while MAC
was already stopped.

This fixes #3003
2021-06-24 16:46:25 +02:00
Francisco e70b8c2472 sched,bugfix: fix SI scheduler logging 2021-06-24 14:24:00 +01:00
Andre Puschmann 4b069d9b86 enb,mac: fix concurrent access to cell structs
this patch moves the rwlock that protects the UE database outside
to also protect the cell struct.

It also adds a missing write guard when setting the cell
2021-06-23 12:38:19 +02:00
Andre Puschmann ff72c78745 enb,mac: fix indention 2021-06-23 12:38:19 +02:00
Andre Puschmann 3e9678d496 srsepc: send detach accept when receiving detach request for non-switchoff 2021-06-23 11:17:58 +02:00
David Rupprecht ec19919246 Fix NGAP valgrind test 2021-06-22 20:53:43 +02:00
Xavier Arteaga eb7980f2b3 Initial UE synchronization for NR 2021-06-22 16:36:24 +02:00
Pedro Alvarez 4d13906760 Increase logging level of MAC mismatches to warning in PDCP 2021-06-22 15:35:38 +01:00
Andre Puschmann e1fb58d76e rlc_um: reduce log level for message handling lost PDUs
when a lost PDU is detected a warning will be logged. In theory
this could be info as well but a warning may help to detect issues
in tests. The same event causes multiple other warnings to be logged,
which is very spammy. The patch reduces the log level for
those messages to info.
2021-06-22 13:06:57 +02:00
Xavier Arteaga cc3ac83c14 Skip nr_phy_test compilation without RF 2021-06-22 12:19:13 +02:00
Pedro Alvarez aae266e848 Added configuration option for S1AP SCTP bind port 2021-06-22 11:11:54 +01:00
David Rupprecht 85d7a851fb Added 5G NAS PCAP support 2021-06-22 09:02:07 +02:00
Francisco 78acf81cf0 bugfix,sched: avoid instability in TPCs around PHR~0 2021-06-21 17:35:24 +01:00
Xavier Arteaga b1e4720721 SRSUE/SRSENB: added tx_enable flag in worker_end 2021-06-21 18:07:53 +02:00
Xavier Arteaga 027201d457 SRSUE/SRSENB: Refactor NR workers to generalise lower PHY 2021-06-21 18:07:53 +02:00
Andre Puschmann 83bf5dcd49 rlc_am_lte: reduce time holding Tx mutex when processing status PDUs
the patch is a re-implementation of the customer-specific optimization
we did in order to reduce the time the RLC holds the Tx mutex when
processing an incoming status PDU.

The patch makes sure to never operate on a raw mutex but instead
uses the deadlock-avoiding RAII lock.
2021-06-21 13:28:07 +02:00
Ismael Gomez 9c60ef092c Fix test for non-contention HO 2021-06-21 11:46:21 +02:00
Ismael Gomez 66eb6f20f1 Fix non-contention HO missing the T-CRNTI 2021-06-21 11:46:21 +02:00
yagoda ce30b7e1ce fixing eMBMS after new ue_db architecture and scheduler changes 2021-06-21 11:20:03 +02:00
Pedro Alvarez 181b903117 Small log fix for RNTI in integrity failure notifications 2021-06-18 23:17:39 +02:00
Ismael Gomez 5aa5a8e997 Revert UE changes 2021-06-18 23:17:14 +02:00
Ismael Gomez e35a0d72fa Revert UE changes 2021-06-18 23:17:14 +02:00
Ismael Gomez aa5944da78 Fix T-CRNTI push pdu 2021-06-18 23:17:14 +02:00
Ismael Gomez 02ec4dd3d0 Remove unused variable 2021-06-18 23:17:14 +02:00
Ismael Gomez c206d3c0fa fix ttcn3 tests 2021-06-18 23:17:14 +02:00
Ismael Gomez dd9889e07c Add carrier index to uplink PCAP captures 2021-06-18 23:17:14 +02:00
Bedran Karakoc c280ac5ad6 Introducing extended NGAP functionality
Remove unused logger for now in ngap::ue to pass tests
2021-06-17 13:05:29 +02:00
Francisco 5a82a63bb5 bugfix,srsenb: fix intraenb handover softbuffer allocation during handover 2021-06-16 10:21:13 +01:00
Francisco d5234b5f65 sched,bugfix: avoid using UL SNR average in tpc control loop 2021-06-15 19:12:24 +01:00
Xavier Arteaga cf09044453 Optimised random bit (unpacked) and byte (packed) generator 2021-06-15 12:44:21 +02:00
Xavier Arteaga d2a19c3043 SCH minimum number of iterations to 2 to reduce systematic false alarm probability 2021-06-15 12:44:21 +02:00
Xavier Arteaga ef4c978d72 Optimized byte random generator 2021-06-15 12:44:21 +02:00
Andre Puschmann 475c033440 rlc_am_test: extend status PDU test
add full test with malformed status PDU
2021-06-15 11:01:02 +02:00
Andre Puschmann d7204df896 rlc_am_lte: check rx window first when receiving status PDU
move rx window check up so no actions are taken when receiving
malformed status PDU
2021-06-15 11:01:02 +02:00
Xavier Arteaga 2cd8ba3a1a PDCCH test skips 100PRB for ARM 2021-06-14 20:32:51 +02:00
Francisco 9139f88b31 fix,srsue: defer enqueuing of the rrc reconf complete message to avoid that it goes in the UL grant whose PDCCH was scheduled in the TTI as the PDSCH that carried the HO command 2021-06-14 19:27:55 +01:00
Francisco c111b23255 config,enb: change the max sib coderate to 0.3 2021-06-14 18:55:51 +01:00
Francisco 2a009eb340 sched,feature: Enable configuring maximum coderate for SIB allocations 2021-06-14 18:55:51 +01:00
Francisco 6ababf401b feature,sched: allow setting initial DL CQI in enb.conf 2021-06-14 15:55:23 +01:00