DNN Profile Optimization

Configuring common attributes multiple times in a different DNN profile is a repetitive activity for the Operators. It becomes time consuming activity as the number of DNN profiles gets increased.

SMF provides a way to configure common attributes in a parent DNN profile template and reuse it in other DNN profiles, for example child DNN profiles as and when required.

Note
The DNN Profile Optimization feature is currently qualified only for the SMF and not for the cnSGW.

How it Works

This section provides details about how the network operators can perform the DNN profile configuration to inherit or reuse a parent DNN profile:

Preparation to Configure the Parent DNN Profile
Step Description
1

Configure parent DNN profile having common attributes.

2

Inherit the configured parent DNN profile in a child DNN profile.

The following conditions apply:

  • If a child profile is trying to inherit a DNN Profile that doesn’t exists, then the SMF CLI displays an error while committing the changes.

  • If the parent DNN profile is deleted but found in a child profile, then SMF CLI displays an error while committing the changes.

    Note
    Delink the Parent profile from the Child DNN profile to delete the Parent DNN profile.
  • If the attributes configured in a child DNN profile do not belong to any parent DNN profile, then the operator can modify those attributes in an individual child DNN profile.

3

SMF gets request for the child DNN profile. If the child DNN profile has an inherit attribute, then SMF resolves the inherited/parent profile on the following conditions:

  • If the parent profile is found and the child profile doesn’t override parent attributes, then SMF updates the child profile with inherited attributes.

  • If a Parent profile is found and a Child profile overrides some or all the parent attributes, then SMF prioritizes overridden attributes over a Parent profile and updates the child profile by taking overridden attributes from a Child profile and the rest of the attributes from a Parent profile.

  • If a Parent profile has attributes in the form of arrays or slices, and the Child profile also has the same attributes configured, then the resultant DNN profile overrides that attribute completely from the Child profile, which means the combined profile contains the value of the Child attribute.

    Example for DNN Profiles:
    profile dnn intershat_Parent // parent dnn profile
              ims mark qci [ 83 128 ]
              network-element-profiles chf chf1
              network-element-profiles amf amf1 
              network-element-profiles pcf pcf1
              network-element-profiles udm udm1
              charging-profile chgprfFBC
              override         [ charging-profile charging-characteristics-id ]
              virtual-mac      b6:6d:47:47:47:47
              session type IPV4 allowed [ IPV6 IPV4V6 ]
              dcnr             true
            exit
    
     profile dnn intershatRoamer // child dnn profile
        inherit  intershat_Parent
        override [ charging-characteristics-id charging-qbc-profile ]
     exit
    

    Example for Resultant Profiles:

     profile dnn intershatRoamer // Resultant dnn profile
               ims mark qci [ 83 128 ]
               network-element-profiles chf chf1
               network-element-profiles amf amf1
               network-element-profiles pcf pcf1
               network-element-profiles udm udm1
               charging-profile chgprfFBC
               override        [charging-characteristics-id charging-qbc-profile ]
               virtual-mac      b6:6d:47:47:47:47
               session type IPV4 allowed [ IPV6 IPV4V6 ]
               dcnr             true
             exit
  • If a Parent profile has attributes in form of structures and the Child profile also has the same attributes configured, then the resultant DNN profile overrides that attribute completely from child, which means the combined profile contains the value of a Child attribute.

    Example for DNN Profiles:
    
    profile dnn intershat_Parent // parent dnn profile
            charging-profile chgprfFBC
            virtual-mac      b6:6d:47:47:47:47
            dcnr             true
            network-element-profiles chf chf1
            network-element-profiles amf amf1
            network-element-profiles udm udm1
       exit
    
    profile dnn intershatRoamer // child dnn profile
           inherit intershat_Parent
           network-element-profiles pcf pcf1
    exit
    
    Example for Resultant profiles:
    profile dnn intershatRoamer // Resultant dnn profile
         charging-profile chgprfFBC
         virtual-mac      b6:6d:47:47:47:47
         dcnr             true
     network-element-profiles pcf pcf1
     exit
    
Note
When the SMF gets a request for the Child DNN profile and the child DNN profile doesn’t have an inherit attribute, then the SMF returns all attributes from the child DNN profile.
4

Update the parent and child DNN profile at runtime. After changes are committed, SMF picks the latest attributes from the Child and Parent profiles.