N2 Handover support with AMF change

Hey there,

I’m currently trying to automate the AMF SCAS test TC_NAS_ALG_AMF_CHANGE_AMF variant 1, which contains an N2 Handover with AMF change. Looking through the free5gc code (and trying such a handover), I find that free5gc does currently not support that scenario.

I would expect, given TS23.502 4.8.1.3.2, that the target AMF does proceed with step 4 and step 9, given step 3. However the free5gc implementation simply returns a 201 and does nothing.

Is my assumption correct that free5gc does not support that yet? Are there any plans to support it in the future?

Thanks for your work and help in advance!

Hello @manuel-montsecure,
Sorry for the late reply. I was looking around the code, and I think the procedure is designed in amf/internal/ngap/handler.go handleHandoverRequiredMain(), which might be the thing you are looking for.

Besides, it would be helpful if you could provide the pcap and/or the log messages during the test process. We can find out the problem more precisely.

If you have any questions, feel free to let me know.

Hi @InertGas01, thanks for the reply and taking a look.

From my looking around the code I found the following related code segments:

internal/ngap/handler.go#L1570: That is the handler for the Handover Required (step 1. in diagram), when the free5gc AMF is the source AMF. It should initiate the handover to the target AMF, but it states that it does not support it yet. (which is not important for our use case)

internal/sbi/processor/ue_context.go#L33: That is the handler for the Namf_Communication_CreateUEContext Request (step 3. in diagram), when the free5gc AMF is the target AMF. It should further continue with the procedure (step 4. to 7. in the diagram). As far as I understand, that is the target of the TC_NAS_ALG_AMF_CHANGE_AMF test case and the important part for us. The code here contains several commented out parts, which seem potentially related?

1 Like

Here is also a PCAP, containing a gNodeB connecting to the target AMF and a simulated source AMF which establishes a PDU session for a UE and then tries to hand that UE over to the free5gc target AMF using the Namf_Communication_CreateUEContext Request. However please note, that the PCAP does not contain the actual desired behavior, but the current free5gc one. I also unfortunately do not have a PCAP containing the desired behavior …
tc_nas_alg_amf_change_amf_1.pcap (13.9 KB)
amf.txt (3.0 KB)

(sry that the second message is a bit delayed, I had to split the reply into two because of too many links and I had to wait 30 mins before replying again …)

I hope that helps to understand better what I’m looking for? Thanks for the help again!

1 Like

Your understanding is correct. We will schedule the solution ASAP.

Thank you for bringing up the issue!

That would be very kind, thank you for your quick help.

Once implemented, I will test it against our test case implementation and see whether it is working.

1 Like