Francisco
f72cd4151c
rlc am,bugfix - fixed formatting of RLC AM header and status pdu
2021-03-09 16:23:08 +00:00
Francisco
0f9d73012f
use srslte::move_callback instead of std::function in timers to avoid allocations
2021-03-09 16:23:08 +00:00
Francisco
5a1bf28fe1
optimization - minimization of number of std::string allocations for logging
2021-03-09 16:23:08 +00:00
Francisco
1ffc4cef86
rlc am,optimization - change helper log methods to avoid mallocs
2021-03-09 16:23:08 +00:00
Xavier Arteaga
a03c78a777
Fix NR-PUSCH defect
2021-03-09 17:05:08 +01:00
Xavier Arteaga
05f4d6af71
Fix and validated UCI multiplex in NR-PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
2b9bd1173e
More NR-PUSCH UCI bit multiplexing
2021-03-09 17:05:08 +01:00
Xavier Arteaga
289fff9c22
Removed carrier set in UCI NR module
2021-03-09 17:05:08 +01:00
Xavier Arteaga
97435b085e
Added CSI part1 and 1/2 bit HARQ-ACK multiplexing on PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
dc2542901a
Verified HARQ-ACK in PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
9dffad87f2
Initial UCI bits multiplexing in PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
f4e9d00ea8
Initial HARQ-ACK multiplex in PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
7b588eafec
Minor aesthet change
2021-03-09 17:05:08 +01:00
Andre Puschmann
ace8764568
rlc_am_lte: add missing unlock when building status PDU fails
2021-03-08 15:19:07 +01:00
Francisco
f0ed1e06a8
documentation,bugfix - added documentation to new blocking queues, changed class names, and removed blocking pushes from the critical path
2021-03-08 14:49:14 +01:00
Francisco
d1236fd62f
stack,optimization - replaced previous block_queue design for new bounded queue in several places in the enb
2021-03-08 14:49:14 +01:00
Francisco
fb278a8b21
Fallback to default R8 TBS tables for format 1A DCI
...
Co-authored-by: xavierarteaga <xavier.arteaga@softwareradiosystems.com>
2021-03-06 21:27:52 +01:00
Andre Puschmann
ceacf8508d
rlc_am_lte: fix handling of maxretx
...
this patch fixes the actions/handling after RLC detected
maxRetx reached for a given SN.
According to the TS, RLC should only inform upper layers and
not try to recover from the event itself.
As a consequence, we won't manipulate the Tx or Rx window.
As a result of this, we might retransmit a SN more than
the specified amount of times.
It's the task of RRC to reestablish the bearer to recover
from that.
2021-03-06 20:55:08 +01:00
Francisco
fb04fdbe69
sched,bugfix - fix mcs/tbs computation for 256-QAM.
2021-03-06 20:49:05 +01:00
Andre Puschmann
6a4bf65fd8
rlc_am_lte: extend check for valid status PDU
...
check for all NACKed SNs are smaller than ACK_SN
2021-03-05 19:46:00 +01:00
Andre Puschmann
62b2327178
rlc_am_lte: fix header reconstruction
...
* optimize processing of status PDU (SN is removed from window immediately)
* fix maxRetx signaling for segments
* make tx_window_t a template class, rename and use for rx_window as well
2021-03-05 15:47:30 +01:00
Francisco
39aea96c69
fix sched tests UL HARQs. Set common pucch cfg in the sched tests
2021-03-05 14:59:44 +01:00
Andre Puschmann
99df71a914
rf_zmq: make error message when port bind failed more verbose
2021-03-05 10:36:11 +01:00
Francisco
9748c0be84
simplified tbs/mcs computation in scheduler
2021-03-04 23:40:35 +01:00
Pedro Alvarez
9c67a029b5
Trying to make calculation of offset in status report more readable
2021-03-04 11:22:53 +01:00
Pedro Alvarez
7b23a83306
Fixup tests to consider wrap-around in status report
2021-03-04 11:22:53 +01:00
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.
2021-03-04 11:22:53 +01:00
Pedro Alvarez
0d020a7f07
Disable sending and handling status report on SRBs
2021-03-04 11:22:53 +01:00
Xavier Arteaga
81cc8de2b7
Protect NAS unbounded message read
2021-03-03 23:06:47 +01:00
David Rupprecht
aef6805d03
Added pcap net feature to eNodeB
2021-03-03 09:50:15 +01:00
David Rupprecht
9e72d89fa1
MAC PCAP move run thread in base class
2021-03-03 09:50:15 +01:00
David Rupprecht
894e4d3501
Added mac pcap network class that dumps the packets to a udp network sink
2021-03-03 09:50:15 +01:00
David Rupprecht
a58f0642cb
created pcap base class for main handling
2021-03-03 09:50:15 +01:00
David Rupprecht
da658ed2d4
Changable UE ID for enodeb
2021-03-03 09:50:15 +01:00
David Rupprecht
5a95cbdfae
Disable rat assignment in pcap class
2021-03-03 09:50:15 +01:00
David Rupprecht
24bea9a860
Refactored functions for pcap udp packing and write lte mac pcap with udp frame
2021-03-03 09:50:15 +01:00
David Rupprecht
bb3e87302d
Added new pcap enable option and mac nr
2021-03-03 09:50:15 +01:00
AlaiaL
390a4c0f76
[metrics] Changing variable types.
...
Adjusting the license.
2021-03-02 22:17:13 +01:00
AlaiaL
723c56051e
[metrics] Changed the extension from cpp to cc.
...
- Fix date of CMakeLists.txt.
- Initialization of the used variables in the cpu usage calculation.
2021-03-02 22:17:13 +01:00
AlaiaL
41cf15f5ad
[metrics] Adjusted function names and documentation
2021-03-02 22:17:13 +01:00
AlaiaL
d518a625cc
[metrics] Added the system metrics to the csv
2021-03-02 22:17:13 +01:00
AlaiaL
0ba7cd7df9
[metrics] Added system metrics to the enb's stdout
2021-03-02 22:17:13 +01:00
AlaiaL
3a86c210f9
[metrics] Added the system metrics to the ue stdout
2021-03-02 22:17:13 +01:00
Xavier Arteaga
0346564241
Fix NR-PUCCH encoding
2021-03-02 15:40:40 +01:00
Xavier Arteaga
784f4be72e
SRSUE: NR CSI report fixes
2021-03-02 15:40:40 +01:00
Xavier Arteaga
4679e9f871
Initial NR CSI reports
2021-03-02 15:40:40 +01:00
Francisco
202c4d7566
remove uses of method .clear() of stack timers
2021-03-02 11:25:38 +01:00
Francisco
be7e78da53
limit allocation of PDCP SDU+Timer buffer to DRB+RLC AM cases
2021-03-02 11:25:38 +01:00
Pedro Alvarez
8dfa87c377
Disable undelivered SDU queue for SRBs.
2021-03-02 11:25:38 +01:00
Francisco
a3cb21d378
move undelivered_pdcp_sdus class methods to .cc file. Fixed the forwarding of pending PDCP SNs during S1 handover
2021-03-02 11:25:38 +01:00
Francisco
17fa79f24c
couple the pdcp discard timers and sdu buffer management into same subclass. Add asserts to ensure there is no ambiguity in the PDCP SN assignment and buffering. Extend the discard timer and pdcp sdu buffering to SN lengths above 12
2021-03-02 11:25:38 +01:00
Pedro Alvarez
4723dd0aa9
Converted undelivered sdus queue in the PDCP to use a vector.
...
This was done to improve the performance of the notify_delivery().
2021-03-02 11:25:38 +01:00
Xavier Arteaga
6c9ff3ac92
Fix packed sequence genration for non multiples of 8
2021-03-01 15:30:33 +01:00
Xavier Arteaga
1e55d68b55
Removed set RNTI from API
2021-03-01 15:30:33 +01:00
Xavier Arteaga
93752fb2c4
Fix LDPC compilation for GCC 10
2021-03-01 13:26:05 +01:00
Xavier Arteaga
576a923a4c
Added i8 zero vector
2021-03-01 13:26:05 +01:00
Francisco
4b09507c19
remove srslte.h includes from upper layers
2021-02-26 16:44:57 +01:00
Francisco
b329e25bbb
move ue phy interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
b8bd869d0f
move ue rlc interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
a988351f46
move ue pdcp interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
ea04104e8e
move ue gw interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
David Rupprecht
8f49b92760
Using PDCP entity lte instead of nr for nr bearer
2021-02-26 15:13:41 +01:00
Pedro Alvarez
c0b5edf6db
Make sure discard timers are initialized, even when timeout is infinite. ( #2400 )
2021-02-26 10:36:04 +00:00
Francisco
6e64933335
handle the scenario when the network thread fails to allocate a byte buffer
2021-02-25 15:56:40 +01:00
Francisco
f610a7b83d
Change background worker pool to become a global variable
...
Allocate rrc::ue objects in batches in the background worker pool
2021-02-25 15:56:40 +01:00
Xavier Arteaga
126fc09b7d
SRSUE: Added initial SR procedure for NR
2021-02-25 09:04:04 +01:00
Andre Puschmann
822abc763e
rlc_am_lte: when max retx is reached, remove SN from tx window
...
this fixes an issue when the RLC bearer isn't reset from RRC.
In this case, the RLC would retransmit the same PDU over and over
again despite the max retx counter being reached.
2021-02-24 21:57:56 +01:00
Francisco
0b6b62324f
convert rlc am retx_queue to circular buffer
2021-02-24 21:19:15 +01:00
Andre Puschmann
9c4146442a
mac,phy: refactor NR MAC/PHY UL data passing interface
...
inspired by accepted (but not yet merged) PR to include the
(unique_)byte_buffer_t for MAC/PHY interfacing, this patch adds
a few more useful bits to that. Buffer management for UL data is now
done in MAC and only a pointer to the data is passed in the UL action.
* Move Tx softbuffer to MAC (until UL HARQ class is ready)
* Remove temparal data member in cc_worker
* Remove memcpy after packing MAC PDU
2021-02-24 20:28:43 +01:00
David Rupprecht
fc9d5befda
Remove header test case
2021-02-24 20:23:54 +01:00
Andre Puschmann
06e7f169c6
rlc_um_nr: fix unpacking of 12bit UM PDU
2021-02-24 20:23:54 +01:00
Francisco
138685399e
remove allocations from rlc_am_tx::handle_control_pdu
2021-02-24 12:06:34 +01:00
David Rupprecht
cc0c091a39
pcap checksum to null for decoding if checksum check is enabled
2021-02-23 17:02:23 +01:00
Xavier Arteaga
6ba9f8fd41
SRSUE: Remove UL hard-coded phase and more PUSCH logging info
2021-02-23 17:02:23 +01:00
David Rupprecht
1fcd006a7c
fixed segfaulting
2021-02-23 17:02:23 +01:00
Xavier Arteaga
b768002a93
SRSUE Added RAR unpacking and other fixes
2021-02-23 17:02:23 +01:00
David Rupprecht
82a8dcc77a
Change interface to unique_byte_buffer
...
logging message for msg3 preparing
2021-02-23 17:02:23 +01:00
Francisco
9a6512f4e8
fix RLC AM undelivered PDCN SNs reset bug
2021-02-22 22:56:19 +01:00
Francisco
1ede82bb30
use circular array for buffered PDCP SNs in RLC AM to limit memory allocations
2021-02-22 22:56:19 +01:00
Francisco
2a65bf9636
fix undelivered PDCP SNs buffers in RLC AM to handle SN=-1 case
2021-02-22 22:56:19 +01:00
Francisco
bad2302e31
avoid the use of two arrays for managing buffered pdcp sns in RLC AM
2021-02-22 22:56:19 +01:00
Francisco
299634b319
use of vector to store undelivered PDCP SNs in RLC AM
2021-02-22 22:56:19 +01:00
David Rupprecht
0f1586dd2d
Deleted all HAVE_5GNR in CC and h files
...
CMakeList and travis yaml
2021-02-22 21:16:04 +01:00
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>
2021-02-22 10:36:14 +00:00
Francisco
2f75abcc7a
fix failing rlc am test
2021-02-21 21:24:24 +01:00
Francisco
abe4f4c7eb
use tx_window to store the map of rlc sn to pdcp sns
2021-02-21 21:24:24 +01:00
Francisco
f86eb84876
conversion of RLC AM tx window from std::map to array
2021-02-21 21:24:24 +01:00
Francisco
1660fc81a0
fix comment regarding PDCP SN value for status report
2021-02-21 12:50:32 +01:00
Francisco
047dd2a56d
use function helper for discard timer lookup and stopping in the PDCP
2021-02-21 12:50:32 +01:00
Francisco
c6fa011eec
fix pdcp discard timer list creation
2021-02-21 12:50:32 +01:00
Francisco
82bb0a7d81
implementation of pdcp discard timers using a vector for efficiency
2021-02-21 12:50:32 +01:00
Andre Puschmann
40d7934267
rlc: call PDCP notify without holding Tx lock
...
move notify_info_vec as stack variable and unlock mutex
before calling PDCP notify
2021-02-21 11:03:44 +01:00
Francisco
93b1450e03
fix enb crash during close down of enb and epc
2021-02-20 16:00:31 +01:00
Francisco Paisana
cd8ee37f74
Use a reverse lookup to avoid iteration over a std::map ( #2363 )
...
* reuse vector capacity for pdcp sn notification
* use an extra lookup data structure to find PDCP SNs that an RLC SN contains
* fix rlc sn->pdcp sn lookup datastructure in rlc
* fix rlc failing test
2021-02-20 15:08:00 +01:00
Pedro Alvarez
d947a0bccf
Used the used SN to insert into the discard timer instead of the TX_COUNT
2021-02-19 20:15:39 +00:00
Pedro Alvarez
3f2fe4e5f6
Disable PDCP discard timer when using RLC UM.
2021-02-19 20:15:39 +00:00
Xavier Arteaga
b8b27709b9
Radio: implement resampling buffer protection
2021-02-19 17:23:59 +01:00
Pedro Alvarez
24d5b9071c
Fix issue with status report test config
2021-02-19 13:30:48 +00:00
Pedro Alvarez
6ecd6e273c
Make sure that the status report is sent in RLF and PDCP reestablishment triggered by Handover
2021-02-19 13:30:48 +00:00
Pedro Alvarez
6a6bffcf5c
Changed log of discarding SN due limit to info level
2021-02-19 12:07:15 +00:00