Tech-invite3GPPspaceIETFspace
96959493929190898887868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100
in Index   Prev   Next

RFC 6095

Extending YANG with Language Abstractions

Pages: 75
Experimental
Part 4 of 4 – Pages 56 to 75
First   Prev   None

Top   ToC   RFC6095 - Page 56   prevText
       leaf activeFlows {
         type yang:gauge32;
         units flows;
         config false;
         description "The number of Flows currently active in this
           Cache.";
         reference "RFC 5815, Section 8
           (ipfixMeteringProcessCacheActiveFlows).";
       }
       leaf unusedCacheEntries {
         type yang:gauge32;
         units flows;
         config false;
         description "The number of unused Cache entries in this
           Cache.";
         reference "RFC 5815, Section 8
           (ipfixMeteringProcessCacheUnusedCacheEntries).";
       }
    }

    ct:complex-type NonPermanentCache {
      ct:abstract true;
      ct:extends NonImmediateCache;
      leaf activeTimeout {
        type uint32;
        units milliseconds;
        description "This parameter configures the time in
          milliseconds after which ... ";
      }
      leaf inactiveTimeout {
        type uint32;
        units milliseconds;
        description "This parameter configures the time in
          milliseconds after which ... ";
      }
    }

    ct:complex-type NaturalCache {
      if-feature cacheModeNatural;
      ct:extends NonPermanentCache;
    }

    ct:complex-type TimeoutCache {
      if-feature cacheModeTimeout;
      ct:extends NonPermanentCache;
    }

    ct:complex-type PermanentCache {
Top   ToC   RFC6095 - Page 57
      if-feature cacheModePermanent;
      ct:extends NonImmediateCache;
      leaf exportInterval {
        type uint32;
        units milliseconds;
        description "This parameter configures the interval for
          periodical export of Flow Records in milliseconds.
          If not configured by the user, the Monitoring Device sets
          this parameter.";
       }
    }

    ct:complex-type ExportDestination {
      ct:abstract true;
      description "Abstract export destination.";
      key name;
      leaf name {
        type nameType;
        description "Key of an export destination.";
      }
    }

    ct:complex-type IpDestination {
      ct:abstract true;
      ct:extends ExportDestination;
      description "IP export destination.";
      leaf ipfixVersion {
         type uint16;
         default 10;
         description "IPFIX version number.";
       }
       leaf destinationPort {
         type inet:port-number;
         description "If not configured by the user, the Monitoring
           Device uses the default port number for IPFIX, which is
           4739 without Transport Layer Security, and 4740 if Transport
           Layer Security is activated.";
       }
       choice indexOrName {
         description "Index or name of the interface ... ";
         reference "RFC 2863.";
         leaf ifIndex {
           type uint32;
           description "Index of an interface as stored in the ifTable
             of IF-MIB.";
           reference "RFC 2863.";
         }
         leaf ifName {
Top   ToC   RFC6095 - Page 58
           type string;
           description "Name of an interface as stored in the ifTable
             of IF-MIB.";
           reference "RFC 2863.";
         }
       }
       leaf sendBufferSize {
         type uint32;
         units bytes;
         description "Size of the socket send buffer.
           If not configured by the user, this parameter is set by
           the Monitoring Device.";
       }
       leaf rateLimit {
         type uint32;
         units "bytes per second";
         description "Maximum number of bytes per second ... ";
         reference "RFC 5476, Section 6.3";
       }
       container transportLayerSecurity {
         presence "If transportLayerSecurity is present, DTLS is
           enabled if the transport protocol is SCTP or UDP, and TLS
           is enabled if the transport protocol is TCP.";
         description "Transport Layer Security configuration.";
         uses transportLayerSecurityParameters;
       }
       container transportSession {
         config false;
         description "State parameters of the Transport Session
           directed to the given destination.";
         uses transportSessionParameters;
       }
    }

     ct:complex-type SctpExporter {
       ct:extends IpDestination;
       description "SCTP exporter.";
       leaf-list sourceIPAddress {
         type inet:ip-address;
         description "List of source IP addresses used ... ";
         reference "RFC 4960, Section 6.4
           (Multi-Homed SCTP Endpoints).";
       }
       leaf-list destinationIPAddress {
         type inet:ip-address;
         min-elements 1;
         description "One or multiple IP addresses ... ";
         reference "RFC 4960, Section 6.4
Top   ToC   RFC6095 - Page 59
           (Multi-Homed SCTP Endpoints).";
       }
       leaf timedReliability {
         type uint32;
         units milliseconds;
         default 0;
         description "Lifetime in milliseconds ... ";
         reference "RFC 3758; RFC 4960.";
       }
     }

     ct:complex-type UdpExporter {
       ct:extends IpDestination;
       if-feature udpTransport;
       description "UDP parameters.";
       leaf sourceIPAddress {
         type inet:ip-address;
         description "Source IP address used by the Exporting
            Process ...";
       }
       leaf destinationIPAddress {
         type inet:ip-address;
         mandatory true;
         description "IP address of the Collection Process to which
           IPFIX Messages are sent.";
       }
       leaf maxPacketSize {
         type uint16;
         units octets;
         description "This parameter specifies the maximum size of
           IP packets ... ";
       }
       leaf templateRefreshTimeout {
         type uint32;
         units seconds;
         default 600;
         description "Sets time after which Templates are resent in the
           UDP Transport Session. ... ";
         reference "RFC 5101, Section 10.3.6; RFC 5815, Section 8
           (ipfixTransportSessionTemplateRefreshTimeout).";
       }
       leaf optionsTemplateRefreshTimeout {
         type uint32;
         units seconds;
         default 600;
         description "Sets time after which Options Templates are
           resent in the UDP Transport Session. ... ";
         reference "RFC 5101, Section 10.3.6; RFC 5815, Section 8
Top   ToC   RFC6095 - Page 60
           (ipfixTransportSessionOptionsTemplateRefreshTimeout).";
       }
       leaf templateRefreshPacket {
         type uint32;
         units "IPFIX Messages";
         description "Sets number of IPFIX Messages after which
           Templates are resent in the UDP Transport Session. ... ";
         reference "RFC 5101, Section 10.3.6; RFC 5815, Section 8
           (ipfixTransportSessionTemplateRefreshPacket).";
       }
       leaf optionsTemplateRefreshPacket {
         type uint32;
         units "IPFIX Messages";
         description "Sets number of IPFIX Messages after which
           Options Templates are resent in the UDP Transport Session
           protocol. ... ";
         reference "RFC 5101, Section 10.3.6; RFC 5815, Section 8
           (ipfixTransportSessionOptionsTemplateRefreshPacket).";
       }
    }

     ct:complex-type TcpExporter {
       ct:extends IpDestination;
       if-feature tcpTransport;
       description "TCP exporter";
       leaf sourceIPAddress {
         type inet:ip-address;
         description "Source IP address used by the Exporting
           Process...";
       }
       leaf destinationIPAddress {
         type inet:ip-address;
         mandatory true;
         description "IP address of the Collection Process to which
           IPFIX Messages are sent.";
       }
     }

     ct:complex-type FileWriter {
       ct:extends ExportDestination;
       if-feature fileWriter;
       description "File Writer.";
       leaf ipfixVersion {
         type uint16;
         default 10;
         description "IPFIX version number.";
       }
       leaf file {
Top   ToC   RFC6095 - Page 61
         type inet:uri;
         mandatory true;
         description "URI specifying the location of the file.";
       }
       leaf bytes {
         type yang:counter64;
         units octets;
         config false;
         description "The number of bytes written by the File
           Writer...";
       }
       leaf messages {
         type yang:counter64;
         units "IPFIX Messages";
         config false;
         description "The number of IPFIX Messages written by the File
           Writer. ... ";
       }
       leaf discardedMessages {
         type yang:counter64;
         units "IPFIX Messages";
         config false;
         description "The number of IPFIX Messages that could not be
           written by the File Writer ... ";
       }
       leaf records {
         type yang:counter64;
         units "Data Records";
         config false;
         description "The number of Data Records written by the File
           Writer. ... ";
       }
       leaf templates {
         type yang:counter32;
         units "Templates";
         config false;
         description "The number of Template Records (excluding
           Options Template Records) written by the File Writer.
           ... ";
       }
       leaf optionsTemplates {
         type yang:counter32;
         units "Options Templates";
         config false;
         description "The number of Options Template Records written
           by the File Writer. ... ";
       }
       leaf fileWriterDiscontinuityTime {
Top   ToC   RFC6095 - Page 62
         type yang:date-and-time;
         config false;
         description "Timestamp of the most recent occasion at which
           one or more File Writer counters suffered a discontinuity.
           ... ";
       }
       list template {
         config false;
         description "This list contains the Templates and Options
           Templates that have been written by the File Reader. ... ";
         uses templateParameters;
       }
     }

     ct:complex-type ExportingProcess {
       if-feature exporter;
       description "Exporting Process of the Monitoring Device.";
       key name;
       leaf name {
         type nameType;
         description "Key of this list.";
       }
       leaf exportMode {
         type identityref {
           base "exportMode";
         }
         default parallel;
         description "This parameter determines to which configured
           destination(s) the incoming Data Records are exported.";
       }
       ct:instance-list destination {
         ct:instance-type ExportDestination;
         min-elements 1;
         description "Export destinations.";
       }
       list options {
         key name;
         description "List of options reported by the Exporting
           Process.";
         leaf name {
           type nameType;
           description "Key of this list.";
         }
         leaf optionsType {
           type identityref {
             base "optionsType";
           }
           mandatory true;
Top   ToC   RFC6095 - Page 63
           description "Type of the exported options data.";
         }
         leaf optionsTimeout {
           type uint32;
           units milliseconds;
           description "Time interval for periodic export of the options
             data. ... ";
         }
       }
     }

     ct:complex-type CollectingProcess {
       description "A Collecting Process.";
       key name;
       leaf name {
         type nameType;
         description "Key of a collecing process.";
       }
       ct:instance-list sctpCollector {
         ct:instance-type SctpCollector;
         description "List of SCTP receivers (sockets) on which the
           Collecting Process receives IPFIX Messages.";
       }
       ct:instance-list udpCollector {
         if-feature udpTransport;
         ct:instance-type UdpCollector;
         description "List of UDP receivers (sockets) on which the
           Collecting Process receives IPFIX Messages.";
       }
       ct:instance-list tcpCollector {
         if-feature tcpTransport;
         ct:instance-type TcpCollector;
         description "List of TCP receivers (sockets) on which the
           Collecting Process receives IPFIX Messages.";
       }
       ct:instance-list fileReader {
         if-feature fileReader;
         ct:instance-type FileReader;
         description "List of File Readers from which the Collecting
           Process reads IPFIX Messages.";
       }
       leaf-list exportingProcess {
         type instance-identifier { ct:instance-type ExportingProcess; }
         description "Export of received records without any
           modifications.  Records are processed by all Exporting
           Processes in the list.";
       }
     }
Top   ToC   RFC6095 - Page 64
     ct:complex-type Collector {
         ct:abstract true;
         description "Abstract collector.";
         key name;
         leaf name {
           type nameType;
           description "Key of collectors";
         }
     }

     ct:complex-type IpCollector {
       ct:abstract true;
       ct:extends Collector;
       description "Collector for IP transport protocols.";
       leaf localPort {
         type inet:port-number;
         description "If not configured, the Monitoring Device uses the
           default port number for IPFIX, which is 4739 without
           Transport Layer Security, and 4740 if Transport Layer
           Security is activated.";
       }
       container transportLayerSecurity {
         presence "If transportLayerSecurity is present, DTLS is enabled
           if the transport protocol is SCTP or UDP, and TLS is enabled
           if the transport protocol is TCP.";
         description "Transport Layer Security configuration.";
         uses transportLayerSecurityParameters;
       }
       list transportSession {
         config false;
         description "This list contains the currently established
           Transport Sessions terminating at the given socket.";
         uses transportSessionParameters;
       }
     }

     ct:complex-type SctpCollector {
       ct:extends IpCollector;
       description "Collector listening on an SCTP socket";
       leaf-list localIPAddress {
         type inet:ip-address;
         description "List of local IP addresses ... ";
         reference "RFC 4960, Section 6.4
           (Multi-Homed SCTP Endpoints).";
       }
     }

     ct:complex-type UdpCollector {
Top   ToC   RFC6095 - Page 65
       ct:extends IpCollector;
       description "Parameters of a listening UDP socket at a
         Collecting Process.";
       leaf-list localIPAddress {
         type inet:ip-address;
         description "List of local IP addresses on which the Collecting
           Process listens for IPFIX Messages.";
       }
       leaf templateLifeTime {
         type uint32;
         units seconds;
         default 1800;
         description "Sets the lifetime of Templates for all UDP
           Transport Sessions ... ";
         reference "RFC 5101, Section 10.3.7; RFC 5815, Section 8
           (ipfixTransportSessionTemplateRefreshTimeout).";
       }
       leaf optionsTemplateLifeTime {
         type uint32;
         units seconds;
         default 1800;
         description "Sets the lifetime of Options Templates for all
           UDP Transport Sessions terminating at this UDP socket.
           ... ";
         reference "RFC 5101, Section 10.3.7; RFC 5815, Section 8
           (ipfixTransportSessionOptionsTemplateRefreshTimeout).";
       }
       leaf templateLifePacket {
         type uint32;
         units "IPFIX Messages";
         description "If this parameter is configured, Templates
           defined in a UDP Transport Session become invalid if ...";
         reference "RFC 5101, Section 10.3.7; RFC 5815, Section 8
           (ipfixTransportSessionTemplateRefreshPacket).";
       }
       leaf optionsTemplateLifePacket {
         type uint32;
         units "IPFIX Messages";
         description "If this parameter is configured, Options
           Templates defined in a UDP Transport Session become
           invalid if ...";
         reference "RFC 5101, Section 10.3.7; RFC 5815, Section 8
           (ipfixTransportSessionOptionsTemplateRefreshPacket).";
       }
     }

     ct:complex-type TcpCollector {
       ct:extends IpCollector;
Top   ToC   RFC6095 - Page 66
       description "Collector listening on a TCP socket.";
       leaf-list localIPAddress {
         type inet:ip-address;
         description "List of local IP addresses on which the Collecting
           Process listens for IPFIX Messages.";
       }
     }

     ct:complex-type FileReader {
       ct:extends Collector;
       description "File Reading collector.";
       leaf file {
         type inet:uri;
         mandatory true;
         description "URI specifying the location of the file.";
       }
       leaf bytes {
         type yang:counter64;
         units octets;
         config false;
         description "The number of bytes read by the File Reader.
           ... ";
       }
       leaf messages {
         type yang:counter64;
         units "IPFIX Messages";
         config false;
         description "The number of IPFIX Messages read by the File
           Reader. ... ";
       }
       leaf records {
         type yang:counter64;
         units "Data Records";
         config false;
         description "The number of Data Records read by the File
           Reader. ... ";
       }
       leaf templates {
         type yang:counter32;
         units "Templates";
         config false;
         description "The number of Template Records (excluding
           Options Template Records) read by the File Reader. ...";
       }
       leaf optionsTemplates {
         type yang:counter32;
         units "Options Templates";
         config false;
Top   ToC   RFC6095 - Page 67
         description "The number of Options Template Records read by
           the File Reader. ... ";
       }
       leaf fileReaderDiscontinuityTime {
         type yang:date-and-time;
         config false;
         description "Timestamp of the most recent occasion ... ";
       }
       list template {
         config false;
         description "This list contains the Templates and Options
           Templates that have been read by the File Reader.
           Withdrawn or invalidated (Options) Templates MUST be removed
           from this list.";
         uses templateParameters;
       }
     }

     ct:complex-type SelectionProcess {
         description "Selection Process";
         key name;
         leaf name {
           type nameType;
           description "Key of a selection process.";
         }
         ct:instance-list selector {
           ct:instance-type Selector;
           min-elements 1;
           ordered-by user;
           description "List of Selectors that define the action of the
             Selection Process on a single packet.  The Selectors are
             serially invoked in the same order as they appear in this
             list.";
         }
         list selectionSequence {
           config false;
           description "This list contains the Selection Sequence IDs
             which are assigned by the Monitoring Device ... ";
           reference "RFC 5476.";
           leaf observationDomainId {
             type uint32;
             description "Observation Domain ID for which the
               Selection Sequence ID is assigned.";
           }
           leaf selectionSequenceId {
             type uint64;
             description "Selection Sequence ID used in the Selection
               Sequence (Statistics) Report Interpretation.";
Top   ToC   RFC6095 - Page 68
           }
         }
         leaf cache {
           type instance-identifier { ct:instance-type Cache; }
           description "Cache which receives the output of the
             Selection Process.";
         }
       }

     /*****************************************************************
     * Groupings
     *****************************************************************/

     grouping transportLayerSecurityParameters {
       description "Transport layer security parameters.";
       leaf-list localCertificationAuthorityDN {
         type string;
         description "Distinguished names of certification authorities
           whose certificates may be used to identify the local
           endpoint.";
       }
       leaf-list localSubjectDN {
         type string;
         description "Distinguished names that may be used in the
           certificates to identify the local endpoint.";
       }
       leaf-list localSubjectFQDN {
         type inet:domain-name;
         description "Fully qualified domain names that may be used to
           in the certificates to identify the local endpoint.";
       }
       leaf-list remoteCertificationAuthorityDN {
         type string;
         description "Distinguished names of certification authorities
           whose certificates are accepted to authorize remote
           endpoints.";
       }
       leaf-list remoteSubjectDN {
         type string;
         description "Distinguished names that are accepted in
           certificates to authorize remote endpoints.";
       }
       leaf-list remoteSubjectFQDN {
         type inet:domain-name;
         description "Fully qualified domain names that are accepted in
           certificates to authorize remote endpoints.";
       }
     }
Top   ToC   RFC6095 - Page 69
     grouping templateParameters {
       description "State parameters of a Template used by an Exporting
         Process or received by a Collecting Process ... ";
       reference "RFC 5101; RFC 5815, Section 8 (ipfixTemplateEntry,
         ipfixTemplateDefinitionEntry, ipfixTemplateStatsEntry)";
       leaf observationDomainId {
         type uint32;
         description "The ID of the Observation Domain for which this
           Template is defined.";
         reference "RFC 5815, Section 8
           (ipfixTemplateObservationDomainId).";
       }
       leaf templateId {
         type uint16 {
           range "256..65535" {
             description "Valid range of Template Ids.";
             reference "RFC 5101";
           }
         }
         description "This number indicates the Template Id in the IPFIX
           message.";
         reference "RFC 5815, Section 8 (ipfixTemplateId).";
       }
       leaf setId {
         type uint16;
         description "This number indicates the Set Id of the Template.
           ... ";
         reference "RFC 5815, Section 8 (ipfixTemplateSetId).";
       }
       leaf accessTime {
         type yang:date-and-time;
         description "Used for Exporting Processes, ... ";
         reference "RFC 5815, Section 8 (ipfixTemplateAccessTime).";
       }
       leaf templateDataRecords {
         type yang:counter64;
         description "The number of transmitted or received Data
           Records ... ";
         reference "RFC 5815, Section 8 (ipfixTemplateDataRecords).";
       }
       leaf templateDiscontinuityTime {
         type yang:date-and-time;
         description "Timestamp of the most recent occasion at which
           the counter templateDataRecords suffered a discontinuity.
           ... ";
         reference "RFC 5815, Section 8
           (ipfixTemplateDiscontinuityTime).";
       }
Top   ToC   RFC6095 - Page 70
       list field {
         description "This list contains the (Options) Template
           fields of which the (Options) Template is defined.
           ... ";
         leaf ieId {
           type uint16 {
             range "1..32767" {
               description "Valid range of Information Element
                   identifiers.";
               reference "RFC 5102, Section 4.";
             }
           }
           description "This parameter indicates the Information
             Element Id of the field.";
           reference "RFC 5815, Section 8 (ipfixTemplateDefinitionIeId);
             RFC 5102.";
         }
         leaf ieLength {
           type uint16;
           units octets;
           description "This parameter indicates the length of the
             Information Element of the field.";
           reference "RFC 5815, Section 8
             (ipfixTemplateDefinitionIeLength); RFC 5102.";
         }
         leaf ieEnterpriseNumber {
           type uint32;
           description "This parameter indicates the IANA enterprise
             number of the authority ... ";
           reference "RFC 5815, Section 8
             (ipfixTemplateDefinitionEnterpriseNumber).";
         }
         leaf isFlowKey {
           when "../../setId = 2" {
             description "This parameter is available for non-Options
               Templates (Set Id is 2).";
           }
           type empty;
           description "If present, this is a Flow Key field.";
           reference "RFC 5815, Section 8
             (ipfixTemplateDefinitionFlags).";
         }
         leaf isScope {
           when "../../setId = 3" {
             description "This parameter is available for Options
               Templates (Set Id is 3).";
           }
           type empty;
Top   ToC   RFC6095 - Page 71
           description "If present, this is a scope field.";
           reference "RFC 5815, Section 8
             (ipfixTemplateDefinitionFlags).";
         }
       }
     }

     grouping transportSessionParameters {
       description "State parameters of a Transport Session ... ";
       reference "RFC 5101; RFC 5815, Section 8
         (ipfixTransportSessionEntry,
          ipfixTransportSessionStatsEntry)";
       leaf ipfixVersion {
         type uint16;
         description "Used for Exporting Processes, this parameter
           contains the version number of the IPFIX protocol ... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionIpfixVersion).";
       }
       leaf sourceAddress {
         type inet:ip-address;
         description "The source address of the Exporter of the
           IPFIX Transport Session... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionSourceAddressType,
           ipfixTransportSessionSourceAddress).";
       }
       leaf destinationAddress {
         type inet:ip-address;
         description "The destination address of the Collector of
           the IPFIX Transport Session... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionDestinationAddressType,
           ipfixTransportSessionDestinationAddress).";
       }
       leaf sourcePort {
         type inet:port-number;
         description "The transport protocol port number of the
           Exporter of the IPFIX Transport Session.";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionSourcePort).";
       }
       leaf destinationPort {
         type inet:port-number;
         description "The transport protocol port number of the
           Collector of the IPFIX Transport Session... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionDestinationPort).";
Top   ToC   RFC6095 - Page 72
       }
       leaf sctpAssocId {
         type uint32;
         description "The association id used for the SCTP session
           between the Exporter and the Collector ... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionSctpAssocId),
           RFC 3871";
       }
       leaf status {
         type transportSessionStatus;
         description "Status of the Transport Session.";
         reference "RFC 5815, Section 8 (ipfixTransportSessionStatus).";
       }
       leaf rate {
         type yang:gauge32;
         units "bytes per second";
         description "The number of bytes per second transmitted by the
           Exporting Process or received by the Collecting Process.
           This parameter is updated every second.";
         reference "RFC 5815, Section 8 (ipfixTransportSessionRate).";
       }
       leaf bytes {
         type yang:counter64;
         units bytes;
         description "The number of bytes transmitted by the
           Exporting Process or received by the Collecting
           Process ... ";
         reference "RFC 5815, Section 8 (ipfixTransportSessionBytes).";
       }
       leaf messages {
         type yang:counter64;
         units "IPFIX Messages";
         description "The number of messages transmitted by the
           Exporting Process or received by the Collecting Process... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionMessages).";
       }
       leaf discardedMessages {
         type yang:counter64;
         units "IPFIX Messages";
         description "Used for Exporting Processes, this parameter
           indicates the number of messages that could not be
           sent ...";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionDiscardedMessages).";
       }
       leaf records {
Top   ToC   RFC6095 - Page 73
         type yang:counter64;
         units "Data Records";
         description "The number of Data Records transmitted ... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionRecords).";
       }
       leaf templates {
         type yang:counter32;
         units "Templates";
         description "The number of Templates transmitted by the
           Exporting Process or received by the Collecting Process.
           ... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionTemplates).";
       }
       leaf optionsTemplates {
         type yang:counter32;
         units "Options Templates";
         description "The number of Option Templates transmitted by the
           Exporting Process or received by the Collecting Process...";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionOptionsTemplates).";
       }
       leaf transportSessionStartTime {
         type yang:date-and-time;
         description "Timestamp of the start of the given Transport
           Session... ";
       }
       leaf transportSessionDiscontinuityTime {
         type yang:date-and-time;
         description "Timestamp of the most recent occasion at which
           one or more of the Transport Session counters suffered a
           discontinuity... ";
         reference "RFC 5815, Section 8
           (ipfixTransportSessionDiscontinuityTime).";
       }
       list template {
         description "This list contains the Templates and Options
           Templates that are transmitted by the Exporting Process
           or received by the Collecting Process.
           Withdrawn or invalidated (Options) Templates MUST be removed
           from this list.";
         uses templateParameters;
       }
     }

     /*****************************************************************
     * Main container
Top   ToC   RFC6095 - Page 74
     *****************************************************************/

     container ipfix {
       description "Top-level node of the IPFIX/PSAMP configuration
         data model.";
       ct:instance-list collectingProcess {
         if-feature collector;
         ct:instance-type CollectingProcess;
       }

       ct:instance-list observationPoint {
         if-feature meter;
         ct:instance-type ObservationPoint;
       }

       ct:instance-list selectionProcess {
         if-feature meter;
         ct:instance-type SelectionProcess;
       }

       ct:instance-list cache {
         if-feature meter;
         description "Cache of the Monitoring Device.";
         ct:instance-type Cache;
       }

       ct:instance-list exportingProcess {
         if-feature exporter;
         description "Exporting Process of the Monitoring Device.";
         ct:instance-type ExportingProcess;
       }

     }
}
<CODE ENDS>
Top   ToC   RFC6095 - Page 75

Authors' Addresses

Bernd Linowski TCS/Nokia Siemens Networks Heltorfer Strasse 1 Duesseldorf 40472 Germany EMail: bernd.linowski.ext@nsn.com Mehmet Ersue Nokia Siemens Networks St.-Martin-Strasse 76 Munich 81541 Germany EMail: mehmet.ersue@nsn.com Siarhei Kuryla 360 Treasury Systems Grueneburgweg 16-18 Frankfurt am Main 60322 Germany EMail: s.kuryla@gmail.com