Orange-OpenSource / towards5gs-helm

Helm charts for deploying 5G network services on Kubernetes
Other
166 stars 130 forks source link

Branching UPF can't return packet to gNB in ulcl architecture #67

Closed phunghaduong99 closed 1 year ago

phunghaduong99 commented 1 year ago

Hi, I am currently trying to deploy 5GC with multi UPFs architecture. So I enabled the ULCL mode at configuration. I make at least edit for installing ULCL as instruction but seems like Branching UPF can't route the GTP-U packet back to gNB through N3 interface.

image Packet replied at Branching UPF but cannot come back again to gNB at my eth0 interface.

First I deployed each 5G NFs at the same node on K8S, and below is my command for deploying SMF:

helm install -n o5 smf free5gc/charts/free5gc-smf/ -f free5gc/charts/free5gc-smf/ulcl-enabled-values.yaml

At UPF configuration I just only set userPlaneArchitecture: ulcl This is my pcap file free5gc-pcap.zip

Is there any more config to enable ULCL mode?
Best,

wito2403 commented 1 year ago

I encountered the same problem as @phunghaduong99. I have observed that second item in ifList (defined in upfb-configmap) is ignored on upfb startup.

upfb-configmap.yaml:

  gtpu:
    forwarder: gtp5g
    # The IP list of the N3/N9 interfaces on this UPF
    # If there are multiple connection, set addr to 0.0.0.0 or list all the addresses
    ifList:
      - addr: 10.100.50.233
        type: N3
      - addr: 10.100.50.225
        type: N9

With above configuration UDP port was opened only on N3 interface: image

This log shows that the ifList has been loaded during startup (anyway the forwarder started only on N3): image

In another test I have changed the order of interfaces in ifList. In this case port 2152 has been opened only on N9.

Temporary solution: In the search for a solution I've checked older versions of this project. For me, the last commit in this repo with working ULCL was cb03316 from Jun 23, 2022:

image

raoufkh commented 1 year ago

Hello @wito2403

Thanks for this testing and explanation. So, do you think the problem is comming from free5GC? Can you check if the UPF-b configuration (configmap) is well created with both N3 and N9 information?

Another possible solution is trying to use the same network interface and IP address for N3 and N9 interfaces. I will try it when I have time.

Many thanks, Raouf

wito2403 commented 1 year ago

Hello @raoufkh

Config map looks ok, it contains both N3 and N9 addresses in gtpu section.

I'm not sure if in the older version of Free5GC the address list for the gtpu forwarder, was used at all. In the screenshot I posted earlier you can see that port 2152 was opened on 0.0.0.0:2152. In the newer version, we can see that the port is only opened on a specific address (the first item in the config).

Witold

github-actions[bot] commented 1 year ago

This issue is stale because it has been open for 30 days with no activity.

github-actions[bot] commented 1 year ago

This issue was closed because it has been inactive for 14 days since being marked as stale.