Francisco Paisana
b7ed8b1858
- added react method to to_state<...> transitions
...
- s1 handover composite state simplified
- the eNB now starts a HO cancellation when it receives an invalid
Handover Command
- the FSM log now prints the current state when it receives an unhandled
event
2020-10-12 18:24:14 +01:00
Francisco Paisana
53f1a62c64
cleaned up state machine of sched_ue for activation/deactivation of carriers
2020-10-12 14:45:13 +01:00
Francisco Paisana
a761762ec8
extended cc_sched_ue fsm to account for more harmonious transition of an scell to deactivated state
2020-10-12 14:45:13 +01:00
Francisco Paisana
74c18ecf6c
implementation of SCell Deactivation
2020-10-12 14:45:13 +01:00
Francisco Paisana
eafc003671
Altered the way the generation of the scheduling decision for a given
...
TTI is made. Instead of generating one CC in each dl_sched()/ul_sched()
call, all CC decisions are generated at once. This avoids race
conditions with calls from the RRC to the MAC to configure UEs.
2020-10-12 14:04:34 +01:00
Francisco Paisana
bc429eae94
add comment explaining why BSR has to be accounting in the computation of the number of bytes to allocate in UL
2020-10-12 13:43:13 +01:00
Francisco Paisana
12c147d75a
The scheduler now accounts for the possible presence of BSRs in the size of UL grants
2020-10-12 13:43:13 +01:00
Jan
df46a3284c
Add missing device names to enb.conf.example
...
The enb.conf.example config was missing the options "soapy" and "zmq" for device_name.
2020-10-07 15:38:57 +02:00
Francisco Paisana
c46402c836
fix phy configuration during handover on srsenb. The function srsenb::rrc::ue::fill_scell_to_addmod_list assumes that the phy_cfg of the PCell is up-to-date, which was not the case. With this PR, the srsenb rrc updates the phy_cfg before the ho cmd is sent, but, in the case of intra-enb ho, the updates are not submitted to the phy before the reception of the crnti mac ce
2020-10-07 09:10:47 +01:00
Andre Puschmann
9105b36cee
srsenb: backport of a Xico's patch to explicitly link against libconfig
...
this caused issues for some systems in parallel builds
2020-10-07 09:29:48 +02:00
Francisco Paisana
5325a15d42
fix libconfig std::string cast linking issue
2020-10-07 09:29:48 +02:00
Francisco Paisana
0f51d70aac
fix measObj addition in srsenb. Now the enb considers both scells and meas_cells in the rr.conf
2020-10-06 21:16:18 +01:00
Francisco Paisana
ae32ab9b13
addressed xavie's comments regarding list of scells to add to rrc reconf message not being in order when we iterate it
2020-10-06 17:08:08 +02:00
Francisco Paisana
d42cdca729
fix scell activation in the phy during intra-enb handover.
2020-10-06 17:08:08 +02:00
Andre Puschmann
9866dcc10b
enb: disable qam256 configuration
...
disable qam256 altogether until underlying PHY/MAC support
is implemented
2020-10-06 16:26:50 +02:00
faluco
d53f69bf0a
- Initialize the log backend, otherwise no log entries are generated.
2020-10-06 09:23:38 +02:00
Francisco Paisana
49186e2b1f
Fix NCC set in HO command message for intra-enb handover
2020-10-05 20:43:05 +01:00
Francisco Paisana
2e10c8e13d
bug fix - eNB was not allocating UL grants for an UE that has performed intra-enb handover. The problem resulted from the fact that the ue configuration in the scheduler not accounting for removed cells.
2020-10-03 09:12:40 +01:00
Francisco Paisana
8a5a571045
bug fix - in case of intra-enb Handover, the eNB was not adding SCells in the HO command
2020-10-02 20:10:28 +01:00
Francisco Paisana
4383796393
add scells in case of intra-enb handover
2020-10-02 20:10:28 +01:00
Francisco Paisana
688dda30a4
favour carriers with best channel conditions for UL grants due to SRs
2020-10-01 19:58:00 +01:00
Pedro Alvarez
2f0125ef4e
Fix issue recovering key state, when the first HO fails (specifically, is_first_ncc was not recovered). Minor improvements in key logging.
2020-10-01 18:48:07 +01:00
Francisco Paisana
137e554eb3
reestablish pdcp bearers is required in case of AM bearers
2020-10-01 16:57:08 +01:00
Francisco Paisana
4c88404801
fix measurement report handling in case of intra enb handover
2020-09-30 18:03:03 +01:00
Francisco Paisana
4b1626bf24
fix eutra packing recovering during reestablishment in the srsenb
2020-09-30 10:20:55 +01:00
faluco
dfeed52514
- Rename out_stream function to console.
2020-09-29 17:38:13 +02:00
faluco
62faef7c71
- Replaced all uses of the log::console method.
2020-09-29 17:38:13 +02:00
Francisco Paisana
942c28881d
converted member method of list of cells in the enb to a free function
2020-09-25 15:03:58 +01:00
Francisco Paisana
3a924a1d80
avoid sending cellsToAddModList if cell offsets are zero
2020-09-25 15:03:58 +01:00
Francisco Paisana
da70c0fdaf
fix cellsToAddModList handling. Now the eNB always adds PCell+SCells as measObjects in the RRC Reconfiguration messages. It may also further include cellsToAddModList if they are provided in the rr.conf file
2020-09-25 15:03:58 +01:00
Francisco Paisana
89eeb5a355
use utility methods to find meas objs based on earfcn
2020-09-24 09:52:09 +01:00
Francisco Paisana
141960fbda
remove unnecessary shared_ptrs and use value semantics instead for the var_meas_cfg of the different enb cells
2020-09-24 09:52:09 +01:00
Francisco Paisana
098172c911
fix cellIndex assignment in srsENB to not necessarily copy cell ID
2020-09-23 18:00:09 +01:00
Andre Puschmann
b2576b34b9
enb.conf.example: comment PUSCH MCS limit in example
2020-09-23 14:54:35 +02:00
faluco
f0d651ae8e
- Fixed a leak in the MME class not releasing the static byte buffer pool.
...
- Now the pool gets destroyed on program exit using a unique_ptr.
- Removed manual cleanup() calls in all the code base to free the pool instance.
2020-09-22 18:00:50 +02:00
Francisco Paisana
dcf5a727f2
do not send RRC release in case the eNB receives a S1AP UEContextRelease command and the UE is doing handover. Handle GTPU end marker
2020-09-22 16:51:45 +01:00
Francisco Paisana
13a5bfb525
- fix reestablishment reject transmission in the srsenb. For SRB0 SDUs, no RLC header is required, so we do not need to check in such case if there is enough space in the TB for the header.
...
- fix srsenb reestablishment check for UE context. The pci has to be accounted for the srsenb to understand that the UE trying to do reestablishment corresponds to one of its own
2020-09-18 22:18:05 +01:00
Xavier Arteaga
3e6c337b44
SRSENB: protect MAC softbuffers access
...
SRSENB: fix retransmissions
2020-09-16 20:07:20 +02:00
Xavier Arteaga
b633c1abcd
SRSENB: report MAC CSI measurements of all configured cells
2020-09-16 20:07:20 +02:00
Xavier Arteaga
d0969a7ad9
SRSENB: review PHY UE DB assertions
2020-09-16 20:07:20 +02:00
Andre Puschmann
49655cd33c
enb,s1ap: only log info in the s1ap connection procedure
...
the event is logged as error by the calling function already
2020-09-16 13:41:32 +02:00
Francisco Paisana
7e6487b6fa
perform PUCCH+PRACH PRB reservation right at the start of a new TTI in the scheduler
2020-09-15 16:10:50 +01:00
Andre Puschmann
d30822784f
enb: refactor MAC PDU logging
...
* remove single line MAC PDU subheader logging in favor
of to_string() helper that prints entire MAC header in single line
* log MAC PDU after parsing and packing
2020-09-14 20:09:46 +02:00
faluco
5e8a4c898d
Bring back the circular array object. ( #1712 )
2020-09-09 17:16:47 +02:00
Ismael Gomez
59b6301cc8
Remove legacy arbritrary 1s timeout for eNB requests
2020-09-08 22:28:35 +02:00
Andre Puschmann
87d4a5dc9c
enb: use circular array to access TTI and HARQ based data structures
...
this makes use of the new circular array to remove the need
to apply the modulo operation when safely accessing the underlying
array.
2020-09-07 15:56:48 +02:00
yagoda
b5a8d82058
-adding more prach tests to make test, removing some variables from stack
...
-PRACH time offset to TA unit conversion
2020-09-07 14:56:12 +01:00
Pedro Alvarez
b59eca1b27
Wait until reestablish complete is finished to swap rnti in s1ap and gtpu.
2020-09-07 13:10:08 +01:00
Pedro Alvarez
6ec26ea627
Make sure that last_submitted_rx_sn is not 0 after handover.
2020-09-04 13:42:07 +01:00
Andre Puschmann
655c7ae8ae
enb: fix warning when removing user
...
when removing a user from the eNB we iterated over all possible LCIDs
and set the buffer state to zero in the scheduler.
this resulted in following log entries:
13:57:23.856334 [RRC ] [I] Received Release Complete rnti=0x46
13:57:23.856352 [MAC ] [W] [ 5149] The provided lcid=6 is not valid
13:57:23.856362 [MAC ] [W] [ 5149] The provided lcid=7 is not valid
13:57:23.856368 [MAC ] [W] [ 5149] The provided lcid=8 is not valid
13:57:23.856371 [MAC ] [W] [ 5149] The provided lcid=9 is not valid
13:57:23.856376 [MAC ] [W] [ 5149] The provided lcid=10 is not valid
we now check if the bearer exits at RLC and only report those to the MAC.
2020-09-03 18:28:49 +02:00