free5gc: [Bugs?] PFCP Session Establishment failed with free5GC v3.3.0 and oai-cn5g-upf-vpp v1.5.1

Describe the bug

PFCP Session Establishment failed with free5GC v3.3.0 and oai-cn5g-upf-vpp v1.5.1. I don’t know if this is a bug or not.

To Reproduce

PFCP Session Establishment was successful with free5GC v3.2.1 (not v3.3.0) and oai-cn5g-upf-vpp v1.5.1. I wrote this successful configuration as folows.

https://github.com/s5uishida/free5gc_ueransim_vpp_upf_dpdk_sample_config

However, when I used this configuration as is, and changed free5GC from v3.2.1 to v3.3.0 and tried to connect the UE, I received the following error message (pcap) in the PFCP Session Establishment Response.

    Error Report : [Grouped IE]
        Enterprise specific IE Type: 32774
        IE Length: 42
        Enterprise ID: Travelping GmbH (18681)
-->     Error Message : PDR ID 1, unknown Network Instance
            Enterprise specific IE Type: 32775
            IE Length: 36
            Enterprise ID: Travelping GmbH (18681)
            Error Message: PDR ID 1, unknown Network Instance

For DNN and Network Instance, I am using internet. IMSI is 001010000000000.

Expected behavior

PFCP Session Establishment succeeds with free5GC v3.3.0 and oai-cn5g-upf-vpp v1.5.1.

Screenshots

Environment (please complete the following information):

  • free5GC Version: [v3.3.0]
  • OS: [Ubuntu 22.04 Server]
  • Kernel version: [5.15.0-67-lowlatency]
  • go version: [go1.17.8 linux/amd64]
  • c compiler version (Option): [gcc version 11.3.0]

Trace File

Configuration File

The changed configuration files are as follows.

  • amfcfg.yaml
--- amfcfg.yaml.orig    2023-06-17 13:32:30.936184528 +0900
+++ amfcfg.yaml 2023-06-17 13:43:54.901214657 +0900
@@ -5,7 +5,7 @@
 configuration:
   amfName: AMF # the name of this AMF
   ngapIpList:  # the IP list of N2 interfaces on this AMF
-    - 127.0.0.18
+    - 192.168.0.141
   ngapPort: 38412 # the SCTP port listened by NGAP
   sbi: # Service-based interface information
     scheme: http # the protocol for sbi (http or https)
@@ -24,18 +24,18 @@
   servedGuamiList: # Guami (Globally Unique AMF ID) list supported by this AMF
     # <GUAMI> = <MCC><MNC><AMF ID>
     - plmnId: # Public Land Mobile Network ID, <PLMN ID> = <MCC><MNC>
-        mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-        mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+        mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+        mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
       amfId: cafe00 # AMF identifier (3 bytes hex string, range: 000000~FFFFFF)
   supportTaiList:  # the TAI (Tracking Area Identifier) list supported by this AMF
     - plmnId: # Public Land Mobile Network ID, <PLMN ID> = <MCC><MNC>
-        mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-        mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+        mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+        mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
       tac: 000001 # Tracking Area Code (3 bytes hex string, range: 000000~FFFFFF)
   plmnSupportList: # the PLMNs (Public land mobile network) list supported by this AMF
     - plmnId: # Public Land Mobile Network ID, <PLMN ID> = <MCC><MNC>
-        mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-        mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+        mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+        mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
       snssaiList: # the S-NSSAI (Single Network Slice Selection Assistance Information) list supported by this AMF
         - sst: 1 # Slice/Service Type (uinteger, range: 0~255)
           sd: 010203 # Slice Differentiator (3 bytes hex string, range: 000000~FFFFFF)
  • ausfcfg.yaml
--- ausfcfg.yaml.orig   2023-06-17 13:32:30.937184630 +0900
+++ ausfcfg.yaml        2023-06-17 13:44:45.741848358 +0900
@@ -15,8 +15,8 @@
     - nausf-auth # Nausf_UEAuthentication service
   nrfUri: http://127.0.0.10:8000 # a valid URI of NRF
   plmnSupportList: # the PLMNs (Public Land Mobile Network) list supported by this AUSF
-    - mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-      mnc: 93  # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+    - mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+      mnc: 01  # Mobile Network Code (2 or 3 digits string, digit: 0~9)
     - mcc: 123 # Mobile Country Code (3 digits string, digit: 0~9)
       mnc: 45  # Mobile Network Code (2 or 3 digits string, digit: 0~9)
   groupId: ausfGroup001 # ID for the group of the AUSF
  • nrfcfg.yaml
--- nrfcfg.yaml.orig    2023-06-17 13:32:30.937184630 +0900
+++ nrfcfg.yaml 2023-06-17 13:45:55.575758415 +0900
@@ -14,8 +14,8 @@
       pem: cert/nrf.pem # NRF TLS Certificate
       key: cert/nrf.key # NRF TLS Private key
   DefaultPlmnId:
-    mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-    mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+    mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+    mnc: 001 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
   serviceNameList: # the SBI services provided by this NRF, refer to TS 29.510
     - nnrf-nfm # Nnrf_NFManagement service
     - nnrf-disc # Nnrf_NFDiscovery service
  • nssfcfg.yaml
--- nssfcfg.yaml.orig   2023-06-17 13:32:30.937184630 +0900
+++ nssfcfg.yaml        2023-06-17 13:46:37.986325676 +0900
@@ -17,12 +17,12 @@
     - nnssf-nssaiavailability # Nnssf_NSSAIAvailability service
   nrfUri: http://127.0.0.10:8000 # a valid URI of NRF
   supportedPlmnList: # the PLMNs (Public land mobile network) list supported by this NSSF
-    - mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-      mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+    - mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+      mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
   supportedNssaiInPlmnList: # Supported S-NSSAI List for each PLMN
     - plmnId: # Public Land Mobile Network ID, <PLMN ID> = <MCC><MNC>
-        mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-        mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+        mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+        mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
       supportedSnssaiList: # Supported S-NSSAIs of the PLMN
         - sst: 1 # Slice/Service Type (uinteger, range: 0~255)
           sd: 010203 # Slice Differentiator (3 bytes hex string, range: 000000~FFFFFF)
  • smfcfg.yaml
--- smfcfg.yaml.orig    2023-06-17 13:32:30.937184630 +0900
+++ smfcfg.yaml 2023-06-17 13:53:16.643854000 +0900
@@ -34,22 +34,22 @@
             ipv4: 8.8.8.8
             ipv6: 2001:4860:4860::8888
   plmnList: # the list of PLMN IDs that this SMF belongs to (optional, remove this key when unnecessary)
-    - mcc: 208 # Mobile Country Code (3 digits string, digit: 0~9)
-      mnc: 93 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
+    - mcc: 001 # Mobile Country Code (3 digits string, digit: 0~9)
+      mnc: 01 # Mobile Network Code (2 or 3 digits string, digit: 0~9)
   locality: area1 # Name of the location where a set of AMF, SMF, PCF and UPFs are located
   pfcp: # the IP address of N4 interface on this SMF (PFCP)
     # addr config is deprecated in smf config v1.0.3, please use the following config
-    nodeID: 127.0.0.1 # the Node ID of this SMF
-    listenAddr: 127.0.0.1 # the IP/FQDN of N4 interface on this SMF (PFCP)
-    externalAddr: 127.0.0.1 # the IP/FQDN of N4 interface on this SMF (PFCP)
+    nodeID: 192.168.14.141 # the Node ID of this SMF
+    listenAddr: 192.168.14.141 # the IP/FQDN of N4 interface on this SMF (PFCP)
+    externalAddr: 192.168.14.141 # the IP/FQDN of N4 interface on this SMF (PFCP)
   userplaneInformation: # list of userplane information
     upNodes: # information of userplane node (AN or UPF)
       gNB1: # the name of the node
         type: AN # the type of the node (AN or UPF)
       UPF: # the name of the node
         type: UPF # the type of the node (AN or UPF)
-        nodeID: 127.0.0.8 # the Node ID of this UPF
-        addr: 127.0.0.8 # the IP/FQDN of N4 interface on this UPF (PFCP)
+        nodeID: 192.168.14.151 # the Node ID of this UPF
+        addr: 192.168.14.151 # the IP/FQDN of N4 interface on this UPF (PFCP)
         sNssaiUpfInfos: # S-NSSAI information list for this UPF
           - sNssai: # S-NSSAI (Single Network Slice Selection Assistance Information)
               sst: 1 # Slice/Service Type (uinteger, range: 0~255)
@@ -72,7 +72,7 @@
         interfaces: # Interface list for this UPF
           - interfaceType: N3 # the type of the interface (N3 or N9)
             endpoints: # the IP address of this N3/N9 interface on this UPF
-              - 127.0.0.8
+              - 192.168.13.151
             networkInstances:  # Data Network Name (DNN)
               - internet
     links: # the topology graph of userplane, A and B represent the two nodes of each link
@@ -91,6 +91,7 @@
   nrfUri: http://127.0.0.10:8000 # a valid URI of NRF
   #urrPeriod: 10 # default usage report period in seconds
   #urrThreshold: 1000 # default usage report threshold in bytes
+  ulcl: false
 
 logger: # log output setting
   enable: true # true or false

I attached the entire config files just in case. config.zip

PCAP File

0620_02.zip

Log File

2023-06-20T19:26:52.848850008+09:00 [INFO][SMF][PduSess] Sending PFCP Session Establishment Request
2023-06-20T19:26:52.849866879+09:00 [INFO][AMF][Gmm][amf_ue_ngap_id:RU:1,AU:1(3GPP)][supi:SUPI:imsi-001010000000000] create smContext[pduSessionID: 1] Success
2023-06-20T19:26:52.852344722+09:00 [INFO][SMF][PduSess] Received PFCP Session Establishment Not Accepted Response
  • PFCP Session Establishment Request (pcap)
Frame 1397: 379 bytes on wire (3032 bits), 379 bytes captured (3032 bits)
Linux cooked capture v2
Internet Protocol Version 4, Src: 192.168.14.141, Dst: 192.168.14.151
User Datagram Protocol, Src Port: 8805, Dst Port: 8805
Packet Forwarding Control Protocol
    Flags: 0x23, Message Priority (MP), SEID (S)
    Message Type: PFCP Session Establishment Request (50)
    Length: 327
    SEID: 0x0000000000000000
    Sequence Number: 2
    .... .... .... .... 0000 .... = Message Priority: 0
    .... 0000 = Spare: 0
    Node ID : IPv4 address: 192.168.14.141
    F-SEID : SEID: 0x0000000000000001, IPv4 192.168.14.141
    Create PDR : [Grouped IE]: PDR ID: 1
        IE Type: Create PDR (1)
        IE Length: 86
        PDR ID : 1
        Precedence : 255
        PDI : [Grouped IE]
            IE Type: PDI (2)
            IE Length: 39
            Source Interface : Access
            F-TEID : TEID: 0x00000001, IPv4 192.168.13.151
-->         Network Instance : internet
                IE Type: Network Instance (22)
                IE Length: 8
                Network Instance: internet
            UE IP Address : 
        Outer Header Removal : GTP-U/UDP/IPv4
        FAR ID : Dynamic by CP 1
        QER ID : Dynamic by CP 2
        QER ID : Dynamic by CP 1
    Create PDR : [Grouped IE]: PDR ID: 2
    Create FAR : [Grouped IE]: FAR ID: Dynamic by CP 1
    Create FAR : [Grouped IE]: FAR ID: Dynamic by CP 2
    Create QER : [Grouped IE]: QER ID: Dynamic by CP 2
    Create QER : [Grouped IE]: QER ID: Dynamic by CP 1
    PDN Type : IPv4
    [Response In: 1404]
  • PFCP Session Establishment Response (pcap)
Frame 1404: 159 bytes on wire (1272 bits), 159 bytes captured (1272 bits)
Linux cooked capture v2
Internet Protocol Version 4, Src: 192.168.14.151, Dst: 192.168.14.141
User Datagram Protocol, Src Port: 8805, Dst Port: 8805
Packet Forwarding Control Protocol
    Flags: 0x21, SEID (S)
    Message Type: PFCP Session Establishment Response (51)
    Length: 107
    SEID: 0x0000000000000001
    Sequence Number: 2
    Spare: 0
    Node ID : FQDN: 192.168.14.151
        IE Type: Node ID (60)
        IE Length: 16
        0000 .... = Spare: 0
        .... 0010 = Address Type: FQDN (2)
        FQDN: 192.168.14.151
    Cause : Rule creation / modification Failure
        IE Type: Cause (19)
        IE Length: 1
        Cause: Rule creation / modification Failure (73)
    Error Report : [Grouped IE]
        Enterprise specific IE Type: 32774
        IE Length: 42
        Enterprise ID: Travelping GmbH (18681)
-->     Error Message : PDR ID 1, unknown Network Instance
            Enterprise specific IE Type: 32775
            IE Length: 36
            Enterprise ID: Travelping GmbH (18681)
            Error Message: PDR ID 1, unknown Network Instance
    F-SEID : SEID: 0x0000000000000001, IPv4 192.168.14.151
        IE Type: F-SEID (57)
        IE Length: 13
        0... .... = Spare: 0
        .0.. .... = Spare: 0
        ..0. .... = Spare: 0
        ...0 .... = Spare: 0
        .... 0... = Spare: 0
        .... .0.. = Spare: 0
        .... ..1. = V4 (IPv4): Present
        .... ...0 = V6 (IPv6): Not Present
        SEID: 0x0000000000000001
        IPv4 address: 192.168.14.151
    Failed Rule ID : PDR: 1
        IE Type: Failed Rule ID (114)
        IE Length: 3
        .... .000 = Failed Rule ID Type: PDR (0)
        Rule ID: 1
    [Response To: 1397]
    [Response Time: 0.003092000 seconds]

Any idea why PFCP Session Establishment is successful in free5GC v3.2.1 but fails in v3.3.0?

Best regards,

–Shigeru

System architecture (Option)

Walkthrough (Option)

Additional context

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 24 (23 by maintainers)

Commits related to this issue

Most upvoted comments

Hi @ianchen0119

Sure!

I would be very glad if you could link to my repository.

Thanks!