Reset E1 UE contexts after E1 Setup Response
38.463 sec. 8.2.3 says
This procedure also re-initialises the E1AP UE-related contexts (if any) and erases all related signalling connections in the two nodes like a Reset procedure would do.
Hence, delete all contexts after reception of E1 Setup Response. This minimizes a risk of receiving an E1 bearer setup req for an existing UE, which currently leads to an assert [we trust the CU-CP does not send the same UE ID twice, as we only "mirror" the existing UE ID].
After this MR, this is what happens if these entities fail:
- CU-CP: all context lost implicitly, upon reconnection, both DU and CU-UP reset all contexts (like "start from zero")
- DU fails: CU-CP triggers NGAP UE context release request immediately (radio connection with UE lost), all UE contexts attached to this DU cleared (like "start from zero" for affected DU)
- CU-UP fails: initially, nothing (UE has no user plane); upon reconnection of CU-UP, CU-CP triggers NGAP UE context release request (cause radio connection with UE lost) and sends F1 Reset to DU, all UE contexts associated to this DU cleared (like "start from zero")
for the last case, a possible improvement could be to use the F1 Reset message to only clear affected UE conetxts. I chose not to do this, because this MR is very big now already, and possible "victim" UEs that were not at that CU-UP will reconnect as well
Merge request reports
Activity
changed milestone to %REVIEW_CAN_START
added 5G-NR label
requested review from @guidocasati
assigned to @jfiedler
changed milestone to %REVIEW_IN_PROGRESS
OAI RAN-Container-Parent build (12039): failed (https://jenkins-oai.eurecom.fr/job/RAN-Container-Parent/12039/)
List of failing test stages:
OAI RAN-Container-Parent build (12041): failed (https://jenkins-oai.eurecom.fr/job/RAN-Container-Parent/12041/)
List of failing test stages:
- Resolved by Guido Casati
Looks good. The only thing I noticed is that the specs say that the reset shall be done in the 2 nodes:
re-initialises the E1AP UE-related contexts (if any) and erases all related signalling connections in the two nodes
Is there any action to be taken at the CU-CP when receiving the Setup Request?
The Reset procedure (8.2.1.2.2) says:
At reception of the RESET message the gNB-CU-CP shall release all allocated resources on E1 related to the UE association(s) indicated explicitly or implicitly in the RESET message and remove the E1AP ID for the indicated UE associations.
After the gNB-CU-CP has released all assigned E1 resources and the UE E1AP IDs for all indicated UE associations which can be used for new UE-associated logical E1-connections over the E1 interface, the gNB-CU-CP shall respond with the RESET ACKNOWLEDGE message.
The gNB-CU-CP does not need to wait for the release of bearer resources to be completed before returning the RESET ACKNOWLEDGE message
mentioned in merge request !3248 (merged)
added 10 commits
- 32310cce - Bugfix: free E1 CU-UP Setup Req on CU-UP disconnection
- b9acf4a8 - Refactor E1 UE removal in separate function
- deba3ae0 - Reset CU-UP E1 UE contexts after E1 Setup Response
- 27a41857 - Remove unnecessary includes
- 34943de8 - Add F1 Reset enc/dec/cp/eq/free library and test
- 3f549762 - Use (CU-initiated) F1 Reset in stack
- b3784826 - Add F1 Reset Ack enc/dec/cp/eq/free library and test
- 20f801b0 - Use (CU-initiated) F1 Reset Acknowledgement in stack
- 56f733e1 - Refactor rrc_remove_ue() to not send NGAP ctxt release cplt
- 045717ff - Reset CU-CP E1 UE context after E1 Setup Response
Toggle commit listOAI RAN-Container-Parent build (12099): failed (https://jenkins-oai.eurecom.fr/job/RAN-Container-Parent/12099/)
List of failing test stages:
- Resolved by Guido Casati
- Resolved by Guido Casati
- Resolved by Guido Casati
- Resolved by Guido Casati
added 6 commits
- 9157e22c - Add F1 Reset enc/dec/cp/eq/free library and test
- 4c9ed9d7 - Use (CU-initiated) F1 Reset in stack
- df365d9a - Add F1 Reset Ack enc/dec/cp/eq/free library and test
- ff106c41 - Use (CU-initiated) F1 Reset Acknowledgement in stack
- d2bb779e - Refactor rrc_remove_ue() to not send NGAP ctxt release cplt
- e8661f5a - Reset CU-CP E1 UE context after E1 Setup Response
Toggle commit listI addressed all comments. Diff: diff
changed milestone to %REVIEW_COMPLETED_AND_APPROVED
changed milestone to %OK_TO_BE_MERGED
mentioned in commit 1be038c8
OAI RAN-Container-Parent build (12112): failed (https://jenkins-oai.eurecom.fr/job/RAN-Container-Parent/12112/)
List of failing test stages:
mentioned in commit ff58b5e1
merged with merge request !3248 (merged)