305 Commits (407da794e1c58d139cfa69daf6bfcc091a71e353)

Author SHA1 Message Date
Andre Puschmann 475c033440 rlc_am_test: extend status PDU test
add full test with malformed status PDU
3 years ago
Andre Puschmann fa7a8fb687 rlc_am_test: add testcase for processing out-of-order status PDUs 3 years ago
Andre Puschmann d51ee722f6 rlc_am_test: add unit test for ACK_SN is outside rx window
the test uses a malformed status PDU from a PCAP and makes
sure the RLC receiver detects such a PDU and raises a warning
3 years ago
Andre Puschmann 46265c5829 rlc_am_data_test: add data PDU unpack test
TV captured in PCAP
3 years ago
Pedro Alvarez 299d2ee35d Added interface to make the PDCP notify the RRC of integrity check
failures.
3 years ago
Andre Puschmann a013a2fe05 rlc_stress_test: fix bug when read_pdu was returning -1 3 years ago
Andre Puschmann 9612bb0e14 rlc_am_test: fix status PDU test and add extra test for failure signaling 3 years ago
Andre Puschmann aaffdeb326 rrc,rlc: add method to signal protocol failure to RRC
general-purpose method for lower layers to signal protocol
failures to higher layers, i.e. RRC.

In the current case, implement a direct release of the UE (enb) or
a reestablishment (UE).
3 years ago
Andre Puschmann 107f6334dd compile: fix compilation on 32bit systems that require -latomic 3 years ago
Andre Puschmann c434aac526 rlc_stress_test: include tsan options header 3 years ago
Andre Puschmann 531acc0a98 rlc_am_test: add check for RLC buffer state return during retx 3 years ago
Andre Puschmann 81c1851bbd rlc_am_test: fix TSAN isses and removing info log when dropping PDU 4 years ago
David Rupprecht 6b41ae7e8b Updated PDCP config struct for rat type 4 years ago
Francisco 21718af3b6 avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type 4 years ago
David Rupprecht 82c9636156 Refactor pdcp ctor seperate the configure function 4 years ago
Andre Puschmann 6eedd70275 rlc_stress_test: add RLC UM NR 12bit stresstest 4 years ago
Andre Puschmann f992350d2d rlc_um_nr_pdu_test: add testcases for 12bit SN length packing/unpacking 4 years ago
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 4 years ago
Pedro Alvarez d91119baf6
RLC discard (#2515)
* Added ability to discard to dyn_block_queue

* Change way of keeping track of SDUs

* Check nullptr in poping callback. Starting to check for nullptr in RLC read_pdu.

* Adding RLC discard tests

* Clearing PDCP info when RLC discard happens

* Read SDUs until they are no longer nullptr

* Changed discard_if to use template argument
4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Andre Puschmann 3e07767f28 rlc_stress_test: set maxRetx for AM to 32 by default
since the tests are random we sometimes hit the maxRetx threshold
with 8 retx allowed that made the unit test fail.

increase threshold to lower the likelihood for this to happen.
4 years ago
Pedro Alvarez f02694dd3e PDCP status report: Fix issue in keeping track of Rx'ed COUNTs after eNB reestablishment. Fixed issue in logic that limits the size of the rx_counts info vector. 4 years ago
Pedro Alvarez d2ef541957 Changed the structure to store rx_counts info to std::vector, to reduce
memory allocations.
Update the rx_count_info queue if the queue size is too large.
4 years ago
Pedro Alvarez 3f79cd6281 Changed generation of status report to use rx_counts instead of
undeliverd_sdus_queue. Added a queue to store information about
rx_counts received.
Added unit test for when the SNs wrap-around in status report genaration
4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago
Andre Puschmann 20cbc48f90 rlc_am_lte: refactor PDCP/RLC interface to use fix sized data structure
this patch replaces the std::vector type used in the interface between
PDCP and RLC to signal delivery status between both layers. The new
data type is a configurable but fixed-size vector.
The RLC AM doesn't need to dynamically allocate the vector for every SN but
uses the tx_window for storage.
4 years ago
Francisco 1ffc4cef86 rlc am,optimization - change helper log methods to avoid mallocs 4 years ago
Francisco d1236fd62f stack,optimization - replaced previous block_queue design for new bounded queue in several places in the enb 4 years ago
Andre Puschmann 83f24fbf77 rlc_am_test: fix max_retx test
the test should only check the correct signaling of the maxretx
to the upper layer.
4 years ago
Andre Puschmann 9f627911df rlc_am_{control}_test: extend status PDU test 4 years ago
Andre Puschmann fa23be4d6d rlc_stress_test: fix SDU generation
the PDCP SN was used to fill the SDU with data. But since
the max value isn't devisable by 256 it didn't always increment
correctly. Use a normal byte now that wraps correctly.
4 years ago
Andre Puschmann 5e345df439 rlc_stress_test: make pedantic operation the default
among cleaning up the the stress test, it does:
* remove optional pedantic flag and make it the default to catch resegmentation issues
* use random SDU and MAC grant size the default
* use factory functions to create RLC configs (make maxretx configurable)
* remove reestablishment and print error when maxRetx is triggered
* fix NR PCAP usage and removes PCAP ifdef
4 years ago
Andre Puschmann 1a59f2d5ba rlc_am_test: extend header reconstruction test
this patch adds various new test cases generated from
rlc_stress_test to test header reconstruction.
4 years ago
Pedro Alvarez 7b23a83306 Fixup tests to consider wrap-around in status report 4 years ago
Pedro Alvarez c4e9516561 Fix issue when LMS wraps-around and FMS doesn't in PDCP status report. Fix incorrect update of FMS on clear_sdu. Adding unit test to LMS wrap-around. 4 years ago
David Rupprecht 5a95cbdfae Disable rat assignment in pcap class 4 years ago
Pedro Alvarez 4011714664 Fix errors in RLC stress tests due to PDCP SN wrap-around 4 years ago
Francisco b329e25bbb move ue phy interfaces to separate interfaces header file 4 years ago
Francisco b8bd869d0f move ue rlc interfaces to separate interfaces header file 4 years ago
Francisco a988351f46 move ue pdcp interfaces to separate interfaces header file 4 years ago
Francisco ea04104e8e move ue gw interfaces to separate interfaces header file 4 years ago
Andre Puschmann c0a1b0efa3 rlc_am_test: add TC to check RLC AM drops PDU if max retx have been reached 4 years ago
David Rupprecht fc9d5befda Remove header test case 4 years ago
Andre Puschmann 5e93a6f5bd rlc_um_nr_pdu_test: add 12bit SN unpack test 4 years ago
David Rupprecht 0f1586dd2d Deleted all HAVE_5GNR in CC and h files
CMakeList and travis yaml
4 years ago
Pedro Alvarez d8f3878ce1
RLC failure to deliver notifications and discard timer limits to 1500ms (#2368)
* Added interfaces for the RLC to notify the PDCP of failure to transmit
SDU

* Limit discard timer to 1500ms, to avoid issues of lingering SDUs in the undeliverd_sdus_queue.

* Fix bug in early exit of notify_delivery and notify_failure

* fix compilation issue in rlc-pdcp notification

Co-authored-by: Francisco <francisco.paisana@softwareradiosystems.com>
4 years ago
Pedro Alvarez 24d5b9071c Fix issue with status report test config 4 years ago
Pedro Alvarez 89a23cec7e Added statusReportRequired to the PDCP entity config. 4 years ago
Pedro Alvarez 2ed8dceddf Use TX_COUNT in RLC AM stress test. Avoids issue with re-using SNs within the test 4 years ago
Pedro Alvarez f89b644902 Added function to get control pdu type to the PDCP base class. Shorten logger name in PDCP Status report test. 4 years ago