Robert Schmidt
2cdcb6466b
Move PDCP stats recording out from non-applying packet_forwarded FALSE case
2019-01-22 16:11:37 +01:00
Robert Schmidt
03b52216a0
FlexRAN: Access PDCP stats through RNTI
2019-01-19 18:22:43 +01:00
Robert Schmidt
767eaf5ba2
Initialize PDCP stats when UE is added
2019-01-19 18:22:40 +01:00
Robert Schmidt
6f9f2d8992
Correct PDCP stats defining constant to MAX_eNB from CC
2019-01-19 16:59:33 +01:00
Robert Schmidt
ad9778be76
FlexRAN fix: correct array index var in loop
2019-01-19 16:13:38 +01:00
Robert Schmidt
ca2f91072a
F1AP: on UEContextRelCmd, DU distinguishes whether UE is out of sync
2019-01-18 16:44:00 +01:00
Robert Schmidt
7df8257526
F1AP: when UL_sync failure, send UEContextRelReq
...
When a phone loses connection, it should not simply be removed but first
CU should be informed which will send a ContextRelCmd. Correspondingly,
when the RRC releases the UE, it does not send a UE Context Release Req
2019-01-18 16:44:01 +01:00
Robert Schmidt
0699e539fe
Put RRC S1AP UEContextReleaseReq message inside corresponding if
2019-01-17 18:21:47 +01:00
Robert Schmidt
a26fad9e47
F1AP: Correct UEContextReleaseReq path, send corresp. S1AP message
2019-01-16 14:45:06 +01:00
Robert Schmidt
05e08d5094
Remove DU's UE RRC, MAC, RLC contexts correctly on UE RELEASE COMMAND
2019-01-10 16:51:04 +01:00
Robert Schmidt
be17b9b655
Correctly handle UE RELEASE COMPLETE in CU
...
* remove PDCP/RRC contexts
* inform the FlexRAN controller
2019-01-10 16:50:17 +01:00
Robert Schmidt
e389b79818
F1 handlers: Improve error message if RNTI obtained through CU/DU ID differ
2018-12-07 16:32:42 +01:00
Robert Schmidt
58850e3c86
Send F1 UE CONTEXT RELEASE REQ when RRC detects radio failure
2018-12-07 16:31:36 +01:00
Robert Schmidt
6f19bc4b8f
Add F1AP_UE_CONTEXT_RELEASE_COMPLETE, tx in DU, correctly rx in CU
2018-12-07 15:49:04 +01:00
Robert Schmidt
ae3ef27059
Move F1 UE ctxt release req to function mac_eNB_rrc_ul_failure()
2018-12-07 15:37:32 +01:00
Robert Schmidt
412caafd31
F1AP_UE_CONTEXT_RELEASE_COMMAND: Implement in DU, don't send COMPLETE
2018-12-07 14:17:33 +01:00
Robert Schmidt
956fafb51c
F1AP_UE_CONTEXT_RELEASE_REQUEST/COMPLETE: Implement in CU
2018-12-07 14:16:42 +01:00
Robert Schmidt
707048c551
F1AP_UE_CONTEXT_RELEASE_REQUEST: Handle in CU, don't send CMD
2018-12-07 14:16:18 +01:00
Robert Schmidt
f3f2bc584f
F1AP_UE_CONTEXT_RELEASE_REQ: implement in DU
...
* MAC differentiates between DU/eNB
* sends ITTI message to DU task for F1AP_UE_CONTEXT_RELEASE_REQ
* message is dispatched to correctly in DU_TASK
* sender correctly fills IDs and cause and sends
2018-12-07 14:16:12 +01:00
Robert Schmidt
d9bf26b9e8
Sort FlexRAN statistics by user before sending
2018-12-05 11:46:54 +01:00
Robert Schmidt
62b89f828a
FlexRAN: Circumvent different RRC/MAC layer user ID sorting
...
* RRC and MAC might sort users differently
* therefore, we have to "reverse lookup" the MAC ID from the RNTI when filling
user info
* For this purpose, add RAN API function flexran_get_mac_ue_id_rnti()
2018-12-05 11:46:26 +01:00
Robert Schmidt
8d862dace4
F1 test: fixes after merge
2018-11-07 16:13:04 +01:00
Robert Schmidt
f3a5720dd9
FlexRAN: Apply slicing configuration if MAC CM present
2018-11-07 16:13:03 +01:00
Robert Schmidt
f0c5f57159
Do not free mem_block in PDCP, it is freed in F1 or RLC
2018-11-07 16:13:03 +01:00
Robert Schmidt
a477043a24
Add some useful LOG statements
2018-11-07 16:13:03 +01:00
Robert Schmidt
6c33f79095
Fix bugs after merge
...
* F1AP has to read MCC/MNC from list
* Do not stop if MACRLC list is not present in conf, it might be a CU
2018-11-07 16:13:03 +01:00
Robert Schmidt
07d9c6a3be
Cast malloc() to type
2018-11-07 16:13:03 +01:00
Robert Schmidt
397d2f4815
Merge commit 'develop' into feature-127-protocol-split
...
* remove a lot of white spaces
* many conflicts in enb_config.c
2018-11-07 16:07:59 +01:00
Robert Schmidt
c1e680dd89
FlexRAN: free memory of statistics reports
2018-11-07 10:58:09 +01:00
Robert Schmidt
836f6c6374
Include statistics flag only when values are written
2018-11-07 10:54:35 +01:00
Robert Schmidt
f02b539234
Correct init_cont_stats_update(), test for result
2018-11-07 10:54:35 +01:00
Robert Schmidt
2cf4060680
Implement stats_reply-specific destroy function
2018-11-07 10:54:35 +01:00
Robert Schmidt
86d8e21445
Test for CMs before taking CM-specific stats
2018-11-07 10:54:34 +01:00
Robert Schmidt
23650bdea3
Make flexran_agent_handle_stats() respect presence of MAC, RRC CMs
2018-11-07 10:54:34 +01:00
Robert Schmidt
3b3c9daefb
Reformat flexran_agent_handle_stats() for better readability
2018-11-07 10:54:34 +01:00
Robert Schmidt
328448e875
Remove flexran_agent_send_update_stats() which is unnecessary
2018-11-07 10:54:34 +01:00
Robert Schmidt
70f74777f3
Correctly implement proto_agent_stop(), call it
2018-11-07 10:54:34 +01:00
Robert Schmidt
920a4abb6d
Make link_manager threads joinable
...
This makes it possible to stop the link_manager by joining its threads.
2018-11-07 10:53:59 +01:00
Robert Schmidt
e71adffcfd
Correct logging messages in FlexRAN & PROTO_AGENT
2018-11-07 10:53:52 +01:00
Robert Schmidt
f01c78e532
Set thread names for FlexRAN and PROTO rx_thread
2018-11-07 10:53:52 +01:00
Robert Schmidt
54da66eeac
Bugfix: Rename proto_agent global channel variable
...
The PROTO_AGENT variable holding the channel for various was named as the same
one for FlexRAN. In C, global variables with the same name are merged into one,
which had the effect that the same queues where used for PROTO_AGENT and
FlexRAN, locking the FlexRAN RX thread. Renaming the PROTO_AGENT variable (it
was introduced second) resolves this issue.
2018-11-07 10:53:52 +01:00
Robert Schmidt
eaff77695b
Correct malloc in proto_agent_async_channel_info
2018-11-07 10:53:52 +01:00
Robert Schmidt
0efde02161
Sanitize link_manager interface, correct in FlexRAN/PROTO_AGENT
...
This commit cleans up the link_manager interface:
* don't provide peer_addr/port in create_link_manager() (for TCP/SCTP it is not
needed, so in the UDP case in needs to be set explicitly)
* Make FlexRAN connect again (correct hardcoded address)
* Fix FlexRAN: retain the manager pointer
* Fix FlexRAN: store receive_queue pointer
* the link_manager's sender thread passes the correct peer_addr/port for the
UDP case
2018-11-07 10:48:36 +01:00
Robert Schmidt
34adfd2af8
ASYNC_IF link_{send,receive}_packet(): infer socket type automatically
2018-11-07 10:48:36 +01:00
Robert Schmidt
ec9e70a023
FlexRAN: provide better error messages in async channel
2018-11-07 10:48:36 +01:00
Robert Schmidt
d7948d04b4
Always fill RRC part of ue_config with all parameters
2018-11-07 10:48:36 +01:00
Robert Schmidt
2fa8c29fd4
Put ue_config MAC and RRC parts in resp. CMs
2018-11-07 10:48:36 +01:00
Robert Schmidt
1fc631e2a4
RAN API RRC part: Change interface to RNTI, change flexran_get_aperiodic_cqi_rep_mode()
...
* the RAN API RRC part now takes rnti and does not look it up in the MAC every
time again
* the function flexran_get_aperiodic_cqi_rep_mode() has been changed to return
a proper protobuf variable, not OAI typedef
2018-11-07 10:48:36 +01:00
Robert Schmidt
fdd47e5701
RAN API: add functions for getting UE RNTIs directly from RRC
2018-11-07 10:48:36 +01:00
Robert Schmidt
e0742be747
RAN API flexran_get_num_ues() belongs to MAC, change name
2018-11-07 10:48:36 +01:00