Commit 4ad1556c authored by lengyelb's avatar lengyelb Committed by lengyelb
Browse files

updated DnnUpfInfoItemGrp and PduSessionType

parent 96814f4f
Loading
Loading
Loading
Loading
+108 −2
Original line number Diff line number Diff line
@@ -9,7 +9,6 @@ module _3gpp-5gc-nrm-upffunction {
  import _3gpp-5g-common-yang-types { prefix types5g3gpp; }
  import _3gpp-common-top { prefix top3gpp; }
  import _3gpp-common-yang-extensions { prefix yext3gpp; }
  import _3gpp-5gc-nrm-neffunction { prefix nef3gpp; }
  import ietf-inet-types { prefix inet; }

  organization "3GPP SA5";
@@ -28,6 +27,113 @@ module _3gpp-5gc-nrm-upffunction {
  revision 2019-05-31 { reference "Ericsson refactoring."; }
  revision 2018-08-07 { reference "Initial revision"; }

  typedef PduSessionType {
    type enumeration {
      enum IPV4;
      enum IPV6;
      enum IPV4V6;
      enum UNSTRUCTURED;
      enum ETHERNET;
    }
  }
  
  grouping DnnUpfInfoItemGrp { 
    leaf dnn {
      description "String representing a Data Network.";
      mandatory true;
      type string;
    }
    
    leaf-list dnaiList {
      description "List of Data network access identifiers supported
       by the UPF for this DNN.
                   The absence of this attribute indicates that the UPF 
                   can be selected for this DNN for any DNAI.";
      min-elements 1;
      type string; //dnai is the type but its only a string with 
      //desc: DNAI (Data network access identifier), 
      //is this needed as its own typedef or string is ok
    }
    
    leaf-list pduSessionTypes {
      description "List of PDU session type(s) supported by
       the UPF for a specific DNN.";
      min-elements 1;
      type PduSessionType;
    }
    
    list ipv4AddressRanges {
      description "This attribute represents a list of ranges of IPv4 addresses 
        handled by UPF. ";
      key idx;
      leaf idx { type uint32; }
      uses types3gpp:Ipv4AddressRange;
    }
    
    list ipv6PrefixRanges {
      description "This attribute represents a list of ranges of IPv6 prefixes 
        handled by the UPF. ";
      key idx;
      leaf idx { type uint32; }
      uses types3gpp:Ipv6PrefixRange;    }
    
    list natedIpv4AddressRanges {
      description "This attribute represents a list of ranges of NATed IPv4 
        addresses.";
      key idx;
      leaf idx { type uint32; }
      uses types3gpp:Ipv4AddressRange;
    }
    
    list natedIpv6PrefixRanges {
      description "This attribute represents a list of ranges of NATed IPv6 
        prefixes.";
      key idx;
      leaf idx { type uint32; }
      uses types3gpp:Ipv6PrefixRange;
    }
    
    leaf-list ipv4IndexList {
      type union {
        type int32;
        type string;
      }
      description "This attribute represents a list of Ipv4 Index supported by 
        the UPF.
        This <<choice>> represents the IP Index to be sent from UDM to the SMF. 
        (See clause 6.1.6.2.77 TS 29.503)
        It is a list of non-exclusive alternatives (Integer or String).";
    }
    
    leaf-list ipv6IndexList {
      type union {
        type int32;
        type string;
      }
      description "This attribute represents a list of Ipv6 Index supported 
        by the UPF.
        This <<choice>> represents the IP Index to be sent from UDM to the SMF. 
        (See clause 6.1.6.2.77 TS 29.503)
        It is a list of non-exclusive alternatives (Integer or String).";
    }
    
    leaf networkInstance {
      type string;
      description "This attribute represents the N6 Network Instance 
        (See TS 29.244) associated with the S-NSSAI and DNN.";
    }
    
    leaf-list dnaiNwInstanceList {
      type string;
      description "This attribute represents a map of a network instance per 
        DNAI for the DNN, where the key of the map is the DNAI (Data network 
        access identifier), see TS 23.501.

        When present, the value of each entry of the map shall contain a N6 
        network instance that is configured for the DNAI indicated by the key.";
    }
  }  
  
  grouping SnssaiUpfInfoItemGrp { 
    list sNssai { 
      description "Supported S-NSSAI.";
@@ -43,7 +149,7 @@ module _3gpp-5gc-nrm-upffunction {
        per DNN.";
      min-elements 1;
      key dnn;
      uses nef3gpp:DnnInfoItemGrp;
      uses DnnUpfInfoItemGrp;  
    }
      
    leaf redundantTransport {