Issues with ueRoutingInfo

,

Here is my setup (free5gc v3.0.6, ueransim v3.2.4, everything is running in docker containers on Linux):

# smfcfg.yaml
info:                                                                                                                                                                                                                                                                                                                         
  version: 1.0.2                                                                                                                                                                                                                                                                                                              
  description: SMF initial local configuration                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                              
configuration:                                                                                                                                                                                                                                                                                                                
  smfName: SMF1                                                                                                                                                                                                                                                                                                               
  sbi:                                                                                                                                                                                                                                                                                                                        
    scheme: http                                                                                                                                                                                                                                                                                                              
    registerIPv4: smf1.sbi-net # IP used to register to NRF
    bindingIPv4: 10.0.211.3  # IP used to bind the service
    port: 8000
  serviceNameList:  
    - nsmf-pdusession  
    - nsmf-event-exposure
    - nsmf-oam      
  snssaiInfos:         
    - sNssai:
        sst: 1      
        sd: 010203     
      dnnInfos:
        - dnn: sliceA
          dns:         
            ipv4: 10.0.224.3                     
            ipv6: 2001:4860:4860::8888
  pfcp:
    addr: 10.0.210.2
  userplane_information:
    up_nodes:
      ran-area1-1:
        type: AN
        an_ip: 10.0.214.2


      upf-mec-area1:
        type: UPF
        node_id: 10.0.213.3
        sNssaiUpfInfos:
          - sNssai:
              sst: 1
              sd: 010203
            dnnUpfInfoList:
              - dnn: sliceA
        interfaces:
          - interfaceType: N3
            endpoints:
              - 10.0.201.3
            networkInstance: sliceA
          - interfaceType: N9
            endpoints:
              - 10.0.215.2
            networkInstance: sliceA


      upf-sliceA:
        type: UPF
        node_id: 10.0.210.3
        sNssaiUpfInfos:
          - sNssai:
              sst: 1
              sd: 010203
            dnnUpfInfoList:
              - dnn: sliceA
                pools:
                  - cidr: 10.0.222.0/24
        interfaces:
          - interfaceType: N9
            endpoints:
              - 10.0.216.2
            networkInstance: sliceA
    links:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA

  nrfUri: http://nrf.sbi-net:8000 
  locality: loc1
  ulcl: true
# upf-mec-area1.yaml
info:
  version: 1.0.0
  description: UPF configuration
configuration:
  debugLevel: info
  ReportCaller: false
  pfcp:
    - addr: 10.0.213.3
  gtpu:
    - addr: 10.0.201.3
    - addr: 10.0.215.2
  dnn_list:
    - dnn: sliceA
      cidr: 10.0.222.0/24
# upf-sliceA.yaml
info:
  version: 1.0.0
  description: UPF configuration
configuration:
  debugLevel: info
  ReportCaller: false
  pfcp:
    - addr: 10.0.210.3
  gtpu:
    - addr: 10.0.216.2
  dnn_list:
    - dnn: sliceA
      cidr: 10.0.222.0/24
  • mec-upf-area1 container has routes to the subnet 10.0.223.0/24
  • upf-sliceA has routes to subnet 10.0.224.0/24.
  • IP pool used for UEs from sliceA is 10.0.222.0/24.
    I try to:
  1. Access the subnet 10.0.224.0/24 using mec-upf-area1 and upf-sliceA
  2. Access other UEs from sliceA using only mec-upf-area1
  3. Access the subnet 10.0.223.0/24 using only mec-upf-area1
  • (1) works well in any circumstances
  • (2) works well with the following ue-routing file:
info:
  version: 1.0.1
  description: Routing information for UE

ueRoutingInfo: # the list of UE routing information

  DN:
    members:
      - imsi-001010000000000
      - imsi-001010000000001

    topology:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA
    specificPath:
      - dest: 10.0.222.0/24
        path: [upf-mec-area1, upf-mec-area1]
  • (3) works partially with the following ue-routing file (depending on the first UE to send traffic to the subnet, upf-sliceA may be used but only for one UE, after restarting containers it may work correctly, but I have no idea why):
info:
  version: 1.0.1
  description: Routing information for UE

ueRoutingInfo: # the list of UE routing information

  MEH:
    members:
      - imsi-001010000000000
      - imsi-001010000000001

    topology:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA
    specificPath:
      - dest: 10.0.223.0/24
        path: [upf-mec-area1, upf-mec-area1]
  • I am not able to get (2) and (3) work both at the same time.
    What I tried:
info:
  version: 1.0.1
  description: Routing information for UE

ueRoutingInfo: # the list of UE routing information

  MEH:
    members:
      - imsi-001010000000000
      - imsi-001010000000001

    topology:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA
    specificPath:
      - dest: 10.0.223.0/24
        path: [upf-mec-area1, upf-mec-area1]
  DN:
    members:
      - imsi-001010000000000
      - imsi-001010000000001

    topology:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA
    specificPath:
      - dest: 10.0.222.0/24
        path: [upf-mec-area1, upf-mec-area1]

But only the first item of ueRoutingInfo seems used (using DN before MEH, I have (2) but not (3); using MEH before DN, I have (3) but not (2)).

Another try:

info:
  version: 1.0.1
  description: Routing information for UE

ueRoutingInfo: # the list of UE routing information

  MEH:
    members:
      - imsi-001010000000000
      - imsi-001010000000001

    topology:
      - A: ran-area1-1
        B: upf-mec-area1
      - A: upf-mec-area1
        B: upf-sliceA
    specificPath:
      - dest: 10.0.223.0/24
        path: [upf-mec-area1, upf-mec-area1]
      - dest: 10.0.222.0/24
        path: [upf-mec-area1, upf-mec-area1]

Once again it depends on what dest I put first.

Have I mistaken how uplinks classifier works?
Is anyone able to reproduce these 2 issues (routing using upf-mec-area while it should not, and unable to use 2 paths in ulcl) or is this something specific to my topology?.

Hi @louisroyer,
About ULCL configuration, you may check this video Environment setup of multiple SMF, DNN, and UPF - YouTube. Hope this can help you!