Francisco
949c34112e
nr,gnb,sched: implement pusch allocator and fix prb grant allocation when UEs are using common SS
2021-12-09 14:26:19 +00:00
Francisco
70c5eff6d0
nr,gnb,sched: wrote unit test for sched PDSCH allocations
2021-12-09 14:26:19 +00:00
Francisco
8ba08032b5
nr,gnb,sched: implemented standalone PDSCH allocator class
2021-12-09 14:26:19 +00:00
Francisco
20b327c320
nr,gnb,sched: extend PDCCH allocator test to cover most allocation fail paths
2021-12-09 14:26:19 +00:00
Francisco
88461646ac
nr,gnb,sched: fix failing sched unit test
2021-12-07 12:30:39 +00:00
Francisco
bf275282ae
nr,gnb,sched: simplify PDCCH allocation abortion api, and implemented method to print PDCCH allocations
2021-12-07 12:30:39 +00:00
Francisco
384004d8d1
nr,gnb,sched: implemented sched helper functions, wrote a unit test for PDCCH allocations
2021-12-07 12:30:39 +00:00
Francisco
de13c68df7
nr,gnb,sched: make logging of PDCCH allocation failures consistent
2021-12-07 12:30:39 +00:00
Francisco
9a4a5345c4
nr,gnb,sched: improve sched sanity checks, and improve bwp_pdcch_allocator api
2021-12-07 12:30:39 +00:00
Francisco
5f36b9b116
nr,gnb,sched: rename pdcch scheduler to pdcch allocator
2021-12-07 12:30:39 +00:00
Francisco
0929177fa2
nr,gnb,sched: wrap coreset list in pdcch_scheduler
2021-12-07 12:30:39 +00:00
Bedran Karakoc
8f6ead0d55
nr,gnb,rrc: Added option to test RRC-NGAP integration with real core
2021-12-06 14:21:44 +01:00
Francisco
6c872a014e
nr,gnb,sched: fix loop for searching for searchspace candidate in scheduler
2021-12-03 16:01:06 +00:00
Francisco
ecaaf8d595
nr,gnb,sched: implement helper methods to check available PRBs in BWP, taking into account common SearchSpace BW limitations
2021-12-02 17:38:54 +00:00
Francisco
8a5ecfea40
nr,gnb,ngap: rename functions for extra clarity
2021-12-01 18:54:33 +00:00
Francisco
11b4a572a0
nr,gnb,rrc&ngap: implementation of NGAP UE Context Release Request and RRC Release for the case RRC_CONNECTED->RRC_IDLE
2021-12-01 18:54:33 +00:00
Andre Puschmann
091877fd2a
gnb,rrc: inverse order of configuring lower layers when establishing bearer
...
start with lower layers first, so MAC, RLC then PDCP.
Since PDCP requires that the LCID is already registered at RLC to make config
checks. It checks for RLC mode (UM) in this case causing log entries like:
2021-12-01T13:47:40.453641 [RLC-NR ] [W] LCID 4 doesn't exist.
2021-12-01 17:44:10 +01:00
Andre Puschmann
a27562cb58
gnb_stack_nr: init loglevel of common log channel
...
to avoid netsocket stuff to spam logs with:
2021-12-01T14:16:58.946080 [COMN ] [D] [ 0] Setting RTO_INFO options on SCTP socket. Association 0, Initial RTO 3000, Minimum RTO 1000, Maximum RTO 6000
2021-12-01T14:16:58.946084 [COMN ] [D] [ 0] Setting SCTP_INITMSG options on SCTP socket. Max attempts 3, Max init attempts timeout 5000
2021-12-01T14:16:58.946109 [COMN ] [D] [ 0] Successfully bound to address 10.8.1.22:0
2021-12-01T14:16:58.998936 [COMN ] [D] [ 0] RxSockets: socket fd=7 has been registered.
2021-12-01T14:16:58.999049 [COMN ] [D] [ 0] Successfully bound to address 10.8.1.22:2152
2021-12-01T14:16:58.999056 [COMN ] [D] [ 0] RxSockets: socket fd=8 has been registered.
2021-12-01 17:44:10 +01:00
Francisco
d1ddd3da4d
gnb,rrc: make plmn and cell id configurable in SIB1
2021-12-01 12:22:14 +01:00
Francisco
74fda904ac
nr,gnb,stack: use common gtpu_pdcp_adapter class for both NSA and SA cases
2021-11-29 10:08:07 +00:00
Francisco
123d79724d
nr,gnb,rrc: restart activity timer when new PDUs arrive in case of SA
2021-11-26 20:35:18 +00:00
Francisco
b27c184d2f
nr,gnb,stack: add bearer manager to gNB stack to correctly map between eps bearer ids and lcids
2021-11-26 20:33:47 +00:00
Francisco
6513520211
nr,gnb,rrc: ensure drb config is added in RRC reconf. Do not allow LCIDs<4 for DRBs
2021-11-26 20:33:47 +00:00
Carlo Galiotto
f9ff6758aa
rrc-nr: temporary fix to handle inactivity timeout
...
Fixes issue #3689
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 19:42:58 +00:00
Francisco
68ec3eaba0
nr,gnb,rrc: remove obsolete TODO comment and set default rrc inactivity timeout
2021-11-26 17:20:18 +00:00
Francisco
61e923a6a6
nr,gnb,rrc: configurable RRC NR inactivity timeout
2021-11-26 17:20:18 +00:00
Pedro Alvarez
9f7ae7a2b2
gnb,ngap: Added simple allocation of lcids to ngap_ue_bearer_manager.
2021-11-26 16:26:08 +00:00
Francisco
14074f0430
nr,gnb: pass gtpu pointer to ngap init
2021-11-26 14:55:25 +00:00
Francisco
b07385a50c
nr,gnb,rrc: disable PHR in RRC setup
2021-11-26 14:34:53 +00:00
Francisco
40463c340d
nr,gnb,rrc: fix schedulingRequest resource allocation in RRC setup message
2021-11-26 12:34:41 +00:00
Carlo Galiotto
787177bf3c
rrc-nr: fix RRCReconf test failing
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
34af2657f9
rrc-nr: add info log in establish_eps_bearer()
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
6aad5d7786
rrc-nr,test: apply reviewer comments
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
6fc2d82b2e
rrc-nr,test: add log spy and clean NAS_msg
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
c9d92dd5ef
rrc-nr,test: add test for RRCReconfiguration after...
...
EPS bearer establishment
2021-11-26 11:43:41 +01:00
Carlo Galiotto
9c7ef6f11e
rrc-nr: send RRCReconfiguration after establish_rrc_bearer()
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
66733fb347
rrc-nr: prevent master_cell_group to be sent if...
...
...there are no changes in the radio_bearer_configuration
In addition:
i) Force RRCReconfiguration to be sent after receiving
SecurityModeComplete
ii) Prevent RRCReconfiguration to be sent after establish_rrc_bearer()
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
18a85adc49
rrc-nr: trigger RRCReconfifguration from ...
...
establish_EPS_bearer
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
39d6eecf01
rrc-nr,test: add test for RRCReconfiguration
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
7d230a260e
rrc-nr,test: add tests for DL/ULInformationTransfer
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Carlo Galiotto
1417331edb
rrc-nr,test: add test for initial_ue msg sent to ngap
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-26 11:43:41 +01:00
Pedro Alvarez
3e61448a41
gnb,ngap: added logging for Rx NGAP messages.
2021-11-26 00:05:12 +00:00
Francisco
5759d396d4
nr,gnb,sched: avoid that ConRes CE gets allocated twice
2021-11-25 23:02:05 +00:00
Francisco
744ede0876
nr,gnb,rrc: disable CSI in SA mode
2021-11-25 21:09:24 +01:00
Pedro Alvarez
1bea5a7ebe
gnb,rrc_nr: make sure that we only push the NAS PDU on the SMC if it exists.
2021-11-25 19:03:30 +00:00
Pedro Alvarez
f9a2850d74
gnb,ngap: Added interface so the NGAP can pass a NAS message to the RRC
...
upon starting the RRC Security Mode command. This allows the gNB to
pass this message only after the SM procedure is complete.
Also made sure that the RRC notifies the NGAP upon the end of the
reconfiguration procedure, to make sure that the NGAP sends the UE
context setup response.
2021-11-25 19:03:30 +00:00
Pedro Alvarez
9b622b3bff
lib,rrc_nr: made separate function to create default PDCP SRB configs
2021-11-25 17:45:05 +00:00
Pedro Alvarez
3f59c6c642
gnb,rrc_nr: make sure chosen integrity algorithm is present
2021-11-25 16:11:09 +00:00
Pedro Alvarez
84f94b26b2
gnb,rlc_nr: re-used security algo preference list from LTE. Added the ability to enable integrity/encription at the PDCP upon the security mode command.
2021-11-25 16:11:09 +00:00
Francisco
fe2a19c46d
nr,gnb,sched: consider CORESET RB limits in the computation of DCI riv
2021-11-25 15:14:18 +00:00
Francisco
ef1a99f29f
nr,gnb,phy: ensure coreset0_bw of the DCI is set when CORESET#0 and format1_0 are used
2021-11-25 15:14:18 +00:00
Francisco
6df8b6bb9e
nr,gnb,sched: account for CORESET RB offset in the DCI RB indexing in case of common search spaces
2021-11-25 15:14:18 +00:00
Francisco
f91c41dcc9
nr,gnb,rrc: remove csi for SA mode
2021-11-24 12:30:00 +00:00
Francisco
dc77260956
nr,gnb,mac: use mac cell config to generate ue phy cfg common
2021-11-24 12:30:00 +00:00
Francisco
9ecb3f516d
nr,gnb,rrc: add helper function to derive rrc cfg parameters for all cells
2021-11-24 12:30:00 +00:00
Andre Puschmann
8ddc344cdb
gnb,mac: rework DL MAC PDU packing and add ConRes handling
...
* store Msg3 when UL-CCCH is received
* add ConRes CE in DL-SCH when indicated by scheduler
* remove fixed LCID for packing SDUs
2021-11-24 12:10:17 +01:00
Francisco
45d59cf686
nr,gnb,sched: account type of RNTI in the choice of SearchSpace for PDSCH and PUSCH allocations
2021-11-24 11:07:41 +00:00
Francisco
1a985093f9
nr,gnb,sched: avoid that ConRes CE gets allocated multiple times for the same Msg4
2021-11-23 23:57:35 +00:00
Francisco
afd7bb8631
auto scheduler ConRes CE when the DL CCCH buffer is filled
2021-11-23 23:57:35 +00:00
Pedro Alvarez
2fad9ded01
Make sure that the pcap is started before NGAP init, so that the NGSetupRequest is caught
2021-11-23 17:12:53 +00:00
Pedro Alvarez
5e22e42762
Added option to save NGAP pcaps.
2021-11-23 17:12:53 +00:00
Francisco
a4e3d6144f
nr,gnb,rrc: update rrc_nr_test unit test to not require any cmd line argument
2021-11-23 10:56:38 +00:00
Francisco
ffc1ea5c86
nr,gnb,phy: decoupled gnb and enb phy config structs by moving them to separate files
2021-11-23 10:56:38 +00:00
Francisco
423681664c
nr,gnb,rrc: remove conf parsing from rrc_nr_test
2021-11-23 10:56:38 +00:00
Francisco
cc89b1607f
nr,gnb,rrc: fix RRC setup to avoid configuring the SRB1 twice
2021-11-22 17:06:26 +00:00
Francisco
6ad6f4511e
nr,gnb,sched: implement ConRes CE scheduling operations in NR sched and extend sched nr interface
2021-11-22 12:56:02 +00:00
Francisco
17f7a86647
nr,gnb,sched,test: extend scheduler testing to generate UL HARQ acks
2021-11-22 12:56:02 +00:00
Francisco
ed1514cf68
nr,gnb,sched: implement ConRes CE scheduling command in NR sched
2021-11-22 12:56:02 +00:00
Francisco
64d65b1afa
nr,gnb,cfg: in case of TDD, use PRACH config index 8 to give more time margin to schedule RAR
2021-11-20 15:54:52 +00:00
Francisco
a5e2203ea6
nr,gnb,sched: do not fill dci.coreset0_bw if coreset used is not coreset0
2021-11-20 15:54:52 +00:00
Francisco
62d1a99223
nr,gnb,sched: fix sched RAR dci generation, in particular, the filling of CORESET#0 BW and RB offset
2021-11-20 15:54:52 +00:00
Francisco
f797954650
nr,gnb,rrc: fix PRACH hard-coded parameters
2021-11-20 15:54:52 +00:00
Pedro Alvarez
c0d2e8c11d
gNB NR security context:
...
- changed variables to use nia/nea instead of eia/eea.
- make rrc_nr_cfg a ref
- Changed NR ciphering/integrity algo enums to their own enum
2021-11-19 18:24:03 +00:00
Pedro Alvarez
e294311034
Added NR security context manager to RRC NR
2021-11-19 18:24:03 +00:00
Francisco
6e0eb3f10a
nr,gnb,rrc: use SS type common1 for SearchSpace#1
2021-11-19 10:57:22 +00:00
Francisco
d2ea9bfa5b
nr,gnb,sched: design basic search algorithm to pick UE search space with valid dci format
2021-11-19 10:57:22 +00:00
Francisco
27d223de2a
nr,gnb,rrc: extend RRC setup test to verify if UE-specific SearchSpaces and CORESETs are added at RRC setup complete and not before
2021-11-19 10:57:22 +00:00
Francisco
0a8a576263
nr,gnb,rrc: derive ssb_per_rach_occasion_and_cb_preambs_per_ssb from num_ra_preambles
2021-11-18 22:48:14 +00:00
Francisco
0c983d0b54
nr,gnb,rrc: set consistent rs_power for SIB1 and phy cfg
2021-11-18 22:48:14 +00:00
Francisco
79a018683f
nr,gnb,rrc: consistent generation of rachConfig for phy, SIB1, and NSA reconf
2021-11-18 22:48:14 +00:00
Francisco
a173c4f222
nr,gnb,rrc: set nas message presence flag only in case there is a pending NAS pdu
2021-11-18 21:06:32 +00:00
Andre Puschmann
894348fd75
gnb,mac: implement handling of CCCH subPdus
2021-11-18 21:02:32 +01:00
Pedro Alvarez
eefb50fe9d
Added some basic NGAP unit test for initial UE message.
2021-11-18 14:52:00 +00:00
Francisco
adec23cbc5
nr,gnb,mac: avoid use of ue-specific coresets for Msg3
2021-11-18 09:39:41 +00:00
Francisco
c875f88ee0
nr,gnb,rrc: generate asn1 coreset based on rrc cfg nr
2021-11-18 09:39:41 +00:00
Francisco
7ccb86c480
nr,gnb,mac: fix default ue cfg used when mac receives a RACH
2021-11-18 09:39:41 +00:00
Francisco
3f6d35bc6c
nr,gnb,rrc: add coreset#2 and searchspace#2 to default rrc cfg nr
2021-11-18 09:39:41 +00:00
Francisco
fbe3b066b5
nr,gnb,sched: abort PUSCH allocation if no PDCCH candidate is found while choosing search space
2021-11-18 09:39:41 +00:00
Francisco
9bebc06f97
nr,gnb,rrc: add functions to verify rrc cfg validity
2021-11-18 09:39:41 +00:00
Francisco
e78c375075
nr,gnb,rrc: consistent generation of search spaces 0 and 1 in phy and asn1
2021-11-18 09:39:41 +00:00
Carlo Galiotto
aa979708a0
rrc-nr,test: add fnc to trigger send_security_cmd
...
The SecurityModeCommand procedure was previously initiated by the
RRCSetupComplete msg. However, it should be trigger by the NGAP
through the InitialContextSetupRequest msg.
This commit implements this change and fills in the function of
the NGAP interface that starts the SecurityModeCommand procedure
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-17 19:08:47 +00:00
Carlo Galiotto
1679df928b
rrc-nr,test: remove unnecessary set_
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-17 19:08:47 +00:00
Carlo Galiotto
81cadac12e
rrc-nr,test: add security_cmd helper test
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-17 19:08:47 +00:00
Francisco
f9a2b8e068
nr,gnb,rrc: print correct context where PDU allocation fails, and handle case the CCCH/DCCH failed to be sent to the UE
2021-11-17 18:07:41 +00:00
Francisco
6221134b77
nr,gnb,rrc: return error in case of failure to add bearer to pdcp/rlc
2021-11-17 18:07:41 +00:00
Francisco
0f1b5bdcab
nr,gnb,rrc: pack nas pdu in rrc reconfiguration message
2021-11-17 18:07:41 +00:00
Francisco
35507850d3
nr,gnb,rrc: check for nullptr return of byte buffer pool.
2021-11-17 18:07:41 +00:00
Francisco
b35584ae70
nr,gnb,rrc: add code to add/mod/release bearers during rrc setup and reconfiguration
2021-11-17 18:07:41 +00:00
Pedro Alvarez
288df4572f
Use #ifdef to select to use RLC AM NR or UM.
2021-11-17 10:50:35 +00:00
Pedro Alvarez
246e08f7a6
Hardcoded creation of RLC AM NR in RRC.
2021-11-17 10:50:35 +00:00