Andre Puschmann
8322887135
enb,rrc: increase RRC PDU queue size to 128
3 years ago
Francisco
a8790abd7e
fix centos7 tuple compilation issue
3 years ago
Francisco
200006c4b7
bugfix,scheduler: avoid offset to increase decrease unboundedly when mcs is equal to 0 or max_mcs
3 years ago
Francisco
0dafe4dd58
fix coderate derivation in PDCCH based on aggregation level
3 years ago
Francisco
a587d20252
allow specification of subset of valid measurement gap offsets in rr.conf
3 years ago
Francisco
0996e50dce
bugfix, s1ap: allow source enb to release old UE ctxt in case a connectionRequest arrives with repeated m-TMSI
3 years ago
Francisco
52247a46e5
rrc,refactor - change log level for paging try lock
4 years ago
Francisco
692bd193d5
rrc,improvements - use single subframe-indexed struct to access pending PCCH. The scheduler now doesnt lock checking for pending paging
4 years ago
Francisco
957ca453e9
bugfix,rrc: change mechanism to delete old paging messages to avoid deleting messages not yet sent
4 years ago
Andre Puschmann
66770a57e3
enb_phy_test: fix concurrent access between PHY worker and Stack
...
PHY and Stack are using a normal std::queue to communicate with each
other. Concurrent access among the threads needs to be protected.
4 years ago
Francisco
fe0dc77c03
bugfix, s1ap: fix uninitialized variable access in s1ap_test
4 years ago
Francisco
297a2394b8
bugfix, s1ap: fix failing s1ap_test
4 years ago
Francisco
7076dbfef8
feature, scheduler: Add configuration parameter to set minimum TTI interval between TPCs
4 years ago
Francisco
4627ae9802
bugfix, scheduler: effectively disable adaptive mcs when target bler is unspecified
4 years ago
Francisco
c75777c618
bugfix, sched: avoid compilation issue due to uninitialized variable access
4 years ago
Francisco
329cf02cd0
bugfix, sched: ensure max_coderate is respected in scheduler
4 years ago
Francisco
a8cccd7a10
bugfix, sched: fix aggregation level derivation to avoid L > 3
4 years ago
Francisco
dedd9c09a7
feature, scheduler: Add abitility to set minimum aggregation level in PDCCH, and disable adaptive aggregation level based on target BLER
4 years ago
Francisco
fb4a363abd
fix formatting errors in scheduler
4 years ago
Francisco
1f1665bab7
improve adaptive offset adjustment log lines
4 years ago
Francisco
c5029fc266
feature - implement adaptive link adaptation in DL and UL
4 years ago
Francisco
8811b7c9a7
fix handling of CRNTI CE in the RRC. The scheduler should not allocate more grants for the new rnti after this point.
4 years ago
Francisco
59513c0eed
fix bearer reactivation in case the RRC session is recovered after max KO
4 years ago
Andre Puschmann
fbb151af2d
enb,rrc: fix bearer re-activation after max KO
...
this patch makes sure that if RBs have been deactivated after
max KO on either the DL or the UL, they are reactivated if either
of them is working again.
UL/DL are always activated together, even if just one of them
recovers. The KO counter (or timer), however, is not stopped implicitly.
4 years ago
Francisco
59db527481
fix reestablishment reject logging level
4 years ago
Francisco
a17e3b71e7
set minimum snr under which the UL SNR estimate is not updated
4 years ago
Francisco
8df6ed07c6
sched small fixes - use 0.930 instead of 0.932 for max coderate. Allow computing mcs/tbs based on max coderate directly. Other small fixes
4 years ago
Francisco
41bc7e4810
avoid letting repeated s1ap::user_release calls to deem the user as in zombie state. Use timer instead to auto-remove user from s1ap if no response from mme arrives
4 years ago
Francisco
e07ef0aa18
avoid releasing ues doing s1 handover before TS1relocoverall expiry
4 years ago
Francisco
b093576634
avoid sending UEContextReleaseRequest from Source eNB during S1 Handover.
4 years ago
Francisco
f2a56c9139
simplification of multiqueue design.
...
- the consumer does multi-staged waiting:
1. spins first across all queues in a RR fashion
2. each queue access is done with a try_lock.
3. if the try_lock fails, it increases the number of spins needed
2. if no queue had data, the consumer sleeps for 100 usec.
- no differentiation between queues, in terms of notification features
4 years ago
Francisco
2d6a878826
change interface to create multiqueue queues
4 years ago
Francisco
f705735093
optimization - only allow some multiqueue queues to notify the multiqueue consumer of the arrival of tasks
4 years ago
Ismael Gomez
8414b2c2c9
Define iszero in csv_stdout
4 years ago
Ismael Gomez
5a2a435710
Improve srsENB output metrics
4 years ago
yagoda
9501283c1c
fixing support for extended Cyclic Prefix
...
small cosmetic fixes of CP code
4 years ago
yagoda
f90f6f0c7e
adding MAC 0 padding support
4 years ago
Francisco
52ef23f40e
fix sched benchmark test
4 years ago
Francisco
a83c0ebe3b
increase starting CFI when subframe contains control allocations (e.g. SIB or RAR) when cell bandwidth <= 5 MHz
4 years ago
Francisco
0a1ae0e4ad
redesign and fix enb rrc message logs
4 years ago
Francisco
8d30c88330
bugfix - avoid calling rlf release timer handler concurrently
4 years ago
Francisco
f0f99c1e4f
update sched benchmark, created unit test to cover rbg search algorithms, improved algorithms to search for empty rbgs
4 years ago
Francisco
22f1f2d56c
move ngap files into their own folders
4 years ago
Francisco
1488606156
refactor - create s1ap dedicated folder
4 years ago
Francisco
0e0835a805
move scheduler rbg/prb/cce mask and interval types and associated helper functions to a separate file
4 years ago
Francisco
7c0649bc24
delete erab if gtpu tunnel creation failed
4 years ago
Francisco
c6d543efdf
fix conversions of drb id to erab id in srsenb
4 years ago
Andre Puschmann
167200f5cd
rrc_bearer_cfg: replace fixed E-RAB to DRB mapping
...
also make sure we don't assign LCIDs beyond the possible
number.
possible fix for https://github.com/srsran/srsRAN/issues/658
Co-authored-by: herlesupreeth <herlesupreeth@gmail.com>
Co-authored-by: Francisco <francisco.paisana@softwareradiosystems.com>
4 years ago
Francisco
fa34aaa16e
ensure the DL mask count is reduced enough to fit required bytes
4 years ago
Francisco
4d3ff0d139
implementation of basic search for optimal rbgmask for subband CQI
4 years ago
Francisco
f8b6eae2bf
use of min DL cqi across all PRBS to compute required DL PRBs
4 years ago
Francisco
8564996eaf
fix sched_dl_cqi method to compute cqi-optimal rbgmask
4 years ago
Francisco
485c6ee129
subband CQI feature - add K parameter in sched_interface::ue_cfg_t and update it from RRC
4 years ago
Francisco
84ad6dd8ee
Integrated new sched_dl_cqi class in sched_ue_cell
...
- extend sched_dl_cqi interface to allow getting tti when cqi was last updated
- extend sched_dl_cqi to quickly get average cqi across the whole bandwidth
4 years ago
Francisco
16d05ff042
Remove time exponential averaging of DL cqi
...
- renaming: sched_cqi -> sched_dl_cqi
- testing: add unit test for sched_dl_cqi wideband cqi mode.
- feature: remove time exponential averaging of dl cqi
4 years ago
Francisco
28c24a89ef
sched subband cqi - create method to get cqi-optimal RBG mask
4 years ago
Francisco
eeb8ad6571
sched,feature - creation of sched_cqi class to manage the update of CQI in a subband CQI setting
4 years ago
Francisco
f25dbea4de
fix PCCH assembly in srsenb rrc
4 years ago
Xavier Arteaga
af2f37d8ca
SRSENB: CFI protection for all CC and fix test
4 years ago
Francisco
96ab16f1c7
s1ap fix - release old rnti (instead of new one) when a new rnti with the same tmsi is found. Furthermore, we now make sure to warn log if the enb is unable to release the old rnti
4 years ago
Francisco
6ed617f429
s1ap, bugfix - check if MME-UE-S1AP-ID has been yet assigned before sending UL NAS Transport. If it hasn't log error and abort.
4 years ago
Francisco
32228389a9
fix latest static analysis warnings in rrc paging
4 years ago
Francisco
bfdb0332db
remove undefined methods from rrc_ue
4 years ago
Francisco
46cfdaf9e5
Handle case when old rnti gets removed during RRC reestablishment
...
This is achieved via:
- keep restarting the inactivity timer whenever a ReestablishmentRequest is received
- in case the RRC ReestablishmentComplete is very late and the old rnti was removed anyway,
abort RRC reestablishment procedure and release new rnti
4 years ago
Andre Puschmann
b2825d1280
mac_controller: after maxRetx disable ALL UE bearers
...
the reasoning here is that the only way to recover
from the maxRetx event is the UE attempting a reestablishment.
No further traffic, neither control nor data is scheduled
until then.
4 years ago
Andre Puschmann
b61be7878a
enb,rrc: split RLF counter and timer handling for DL/UL/RLC
...
this patch splits the counter and timer handling for PHY DL, PHY UL,
and RLC errors and makes sure that, for example, a successful DL
does not cancel the UL RLF timer, and vice versa.
They all use the same timeout value which is user-configurable.
4 years ago
David Rupprecht
f9c0009d23
Remove setup erabs function
4 years ago
Francisco
0d800eb8f6
stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test
4 years ago
Francisco
ef9d1b8c13
stack optimization - reduction of contention in multiqueue class
...
With the new design, each queue created in the multiqueue object has its own mutex.
Pushing tasks to separate queues will, therefore, not cause contention.
There will be, however, still contention between the popping thread and the pushing threads.
4 years ago
Francisco
b54bb35343
use rnti_map_t in scheduler
4 years ago
Francisco
6b84754ede
fix rrc and gtpu bearer rnti update during reestablishment. The rnti of UE's rrc_bearer_handler was not being updated
4 years ago
Francisco
1677abce8d
create typedef for circular map of rntis. check return of gtpu ue creation
4 years ago
Francisco
9464f36714
make eNB UE release timer after RLF detection configurable
4 years ago
Ismael Gomez
0b91598e36
Move mlockall() to main() in srsUE and srsENB
4 years ago
Francisco
46bd8845ba
fix gtpu bearer removal during handover
4 years ago
Francisco
7c2e841eb4
gtpu bugfix - call gtpu rem bearer when erab is removed
4 years ago
Francisco
c5396155ad
set default gtpu tunnel close timeout to infinity
4 years ago
Francisco
15484e9472
rrc - make t304 configurable via rr.conf
4 years ago
Francisco
c6b9c12ba2
gtpu, feature - added the ability to configure gtpu indirect tunnel timeout value. This parameter is useful in the case that the end marker is not received
4 years ago
Francisco
b619a2b649
application of new cache allocator to deques in scheduler
4 years ago
David Rupprecht
c117b563c9
Initial commit for ngap in enb
4 years ago
David Rupprecht
3284143b39
Capture false encoded messages before sending
4 years ago
Francisco
7bee75e126
update description of srsenb --expert.nof_prealloc_ues config parameter, and added a comment in header file explaining the use of such parameter.
4 years ago
Francisco
5818488b27
change enb max_nof_ues config parameter to nof_prealloc_ues
4 years ago
Francisco
9739a9de5f
add missing srsenb expert parameter to enb.conf.example
4 years ago
Francisco
04ded030ea
srsenb,bugfix - avoid logging error message when UE sends CRNTI MAC CE for old rnti whose context has already been erased.
4 years ago
Francisco
d175bb281b
avoid error logging during handover if EIA0 has been chosen
4 years ago
Francisco
051530177e
feature - support eia0 during S1 Handover
4 years ago
Francisco
a43dd68d57
update comment, explaining the reasoning behind setting a lower bound for allocated UL grants
4 years ago
Francisco
f7016633d2
sched, fix - avoid tpc commands when target pusch and pucch snr are not specified
4 years ago
Francisco
c69631462b
sched, fix - limit UL cqi update to PUSCH SNR reports
4 years ago
Francisco
d3c51fdad4
limit minimum UL grant size to accommodate both BSR and RLC headers
4 years ago
Francisco
cde61a5796
rrc paging - reduce the space taken by paging manager class
...
Paging messages can only be transmitted in a subset of subframes - {0, 4, 5, 9}
I avoid now creating objects for the subframes that are not part of this subset
4 years ago
Francisco
b014cbfe0f
rrc paging - removal of redundant mutexes in paging manager class. Now mutexes are indexed by subframe index instead of paging buffer index
4 years ago
Francisco
8487c10956
removal of unused variables
4 years ago
Francisco
01eace2631
rrc paging mechanism improvements
...
- moved paging record handling to separate class
- parallel access to pending pcch messages by phy workers based on TTI and without common lock
- asn1 pcch message packing now takes place in stack thread, to avoid real-time issues
4 years ago
Andre Puschmann
598594c51a
all: bunch of pass by const& changes suggested by LGTM
4 years ago
Francisco
70d6e4d9b3
mac, fix - Verify that mac::ue also exists in the scheduler before attempting to retrieve its metrics
4 years ago
Francisco
6e7d992552
remove UE on S1AP Release Request if MME S1AP UE ID hasn't been assigned yet
4 years ago
Xavier Arteaga
6045998909
enb_phy_test uses default rr configuration
4 years ago