ietf-connectionless-oam

This YANG module defines the generic configuration, data model, and statistics for OAM protocols using connectionless communicat...

  • Version: 2019-04-16

    ietf-connectionless-oam@2019-04-16


    
      module ietf-connectionless-oam {
    
        yang-version 1.1;
    
        namespace
          "urn:ietf:params:xml:ns:yang:ietf-connectionless-oam";
    
        prefix cl-oam;
    
        import ietf-yang-schema-mount {
          prefix yangmnt;
        }
        import ietf-network {
          prefix nd;
        }
        import ietf-yang-types {
          prefix yang;
        }
        import ietf-interfaces {
          prefix if;
        }
        import ietf-inet-types {
          prefix inet;
        }
        import ietf-network-instance {
          prefix ni;
        }
        import ietf-routing-types {
          prefix rt;
        }
        import ietf-lime-time-types {
          prefix lime;
        }
    
        organization "IETF LIME Working Group";
    
        contact
          "WG Web:   <https://datatracker.ietf.org/wg/lime>
    WG List:  <mailto:lmap@ietf.org>
    
    Deepak Kumar <dekumar@cisco.com>
    Qin Wu <bill.wu@huawei.com>
    Srihari Raghavan <srihari@cisco.com>
    Michael Wang <wangzitao@huawei.com>
    Reshad Rahman <rrahman@cisco.com>";
    
        description
          "This YANG module defines the generic configuration,
    data model, and statistics for OAM protocols using
    connectionless communications, described in a
    protocol independent manner.  It is assumed that each
    protocol maps corresponding abstracts to its native
    format.  Each protocol may extend the YANG data model defined
    here to include protocol specific extensions.
    
    Copyright (c) 2019 IETF Trust and the persons identified as
    authors of the code.  All rights reserved.
    
    Redistribution and use in source and binary forms, with or
    without modification, is permitted pursuant to, and subject
    to the license terms contained in, the Simplified BSD License
    set forth in Section 4.c of the IETF Trust's Legal Provisions
    Relating to IETF Documents
    (http://trustee.ietf.org/license-info).
    
    This version of this YANG module is part of RFC 8532; see
    the RFC itself for full legal notices.";
    
        revision "2019-04-16" {
          description
            "Base model for Connectionless Operations, Administration,
    and Maintenance (OAM).";
          reference
            "RFC 8532: Generic YANG Data Model for the Management of
            Operations, Administration, and Maintenance (OAM) Protocols
            That Use Connectionless Communications";
    
        }
    
    
        feature connectionless {
          description
            "This feature indicates that the OAM solution is connectionless.";
        }
    
        feature continuity-check {
          description
            "This feature indicates that the server supports
    executing a Continuity Check OAM command and
    returning a response.  Servers that do not advertise
    this feature will not support executing
    Continuity Check commands or the RPC operation model for
    Continuity Check commands.";
        }
    
        feature path-discovery {
          description
            "This feature indicates that the server supports
    executing a path discovery OAM command and
    returning a response.  Servers that do not advertise
    this feature will not support executing
    path discovery commands or the RPC operation model for
    path discovery commands.";
        }
    
        feature ptp-long-format {
          description
            "This feature indicates that the timestamp is PTP long format.";
        }
    
        feature ntp-short-format {
          description
            "This feature indicates that the timestamp is NTP short format.";
        }
    
        feature icmp-timestamp {
          description
            "This feature indicates that the timestamp is ICMP timestamp.";
        }
    
        identity traffic-type {
          description
            "This is the base identity of the traffic type,
    which includes IPv4, IPv6, etc.";
        }
    
        identity ipv4 {
          base traffic-type;
          description
            "identity for IPv4 traffic type.";
        }
    
        identity ipv6 {
          base traffic-type;
          description
            "identity for IPv6 traffic type.";
        }
    
        identity address-attribute-types {
          description
            "This is the base identity of the address attribute types, which
    are Generic IPv4/IPv6 Prefix, BGP Labeled IPv4/IPv6 Prefix,
    Tunnel ID, PW ID, VPLS VE ID, etc. (See RFC 8029 for details.)";
        }
    
        typedef address-attribute-type {
          type identityref {
            base address-attribute-types;
          }
          description
            "Target address attribute type.";
        }
    
        typedef percentage {
          type decimal64 {
            fraction-digits 5;
            range "0..100";
          }
          description "Percentage.";
        }
    
        typedef routing-instance-ref {
          type leafref {
            path "/ni:network-instances/ni:network-instance/ni:name";
          }
          description
            "This type is used for leafs that reference a routing instance
    configuration.";
        }
    
        identity tp-address-technology-type {
          description "Test point address type.";
        }
    
        identity mac-address-type {
          base tp-address-technology-type;
          description "MAC address type.";
        }
    
        identity ipv4-address-type {
          base tp-address-technology-type;
          description "IPv4 address type.";
        }
    
        identity ipv6-address-type {
          base tp-address-technology-type;
          description "IPv6 address type.";
        }
    
        identity tp-attribute-type {
          base tp-address-technology-type;
          description
            "Test point attribute type.";
        }
    
        identity router-id-address-type {
          base tp-address-technology-type;
          description "System ID address type.";
        }
    
        identity as-number-address-type {
          base tp-address-technology-type;
          description "AS number address type.";
        }
    
        identity route-distinguisher-address-type {
          base tp-address-technology-type;
          description
            "Route Distinguisher address type.";
        }
    
        container cc-session-statistics-data {
          if-feature continuity-check;
          config false;
          description
            "CC operational information.";
          list cc-session-statistics {
            key "type";
            description
              "List of CC session statistics data.";
            leaf type {
              type identityref {
                base traffic-type;
              }
              description "Type of traffic.";
            }
    
            container cc-ipv4-sessions-statistics {
              when "../type = 'ipv4'" {
                description
                  "Only applies when traffic type is IPv4.";
              }
              description "CC ipv4 sessions.";
              container cc-session-statistics {
                description
                  "CC session counters.";
                leaf session-count {
                  type uint32;
                  default "0";
                  description
                    "Number of Continuity Check sessions.
    A value of zero indicates that no session
    count is sent.";
                }
    
                leaf session-up-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are up.
    A value of zero indicates that no up
    session count is sent.";
                }
    
                leaf session-down-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are down.
    A value of zero indicates that no down
    session count is sent.";
                }
    
                leaf session-admin-down-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are admin-down.
    A value of zero indicates that no admin-
    down session count is sent.";
                }
              }  // container cc-session-statistics
            }  // container cc-ipv4-sessions-statistics
    
            container cc-ipv6-sessions-statistics {
              when "../type = 'ipv6'" {
                description
                  "Only applies when traffic type is IPv6.";
              }
              description "CC IPv6 sessions.";
              container cc-session-statistics {
                description
                  "CC session counters.";
                leaf session-count {
                  type uint32;
                  default "0";
                  description
                    "Number of Continuity Check sessions.
    A value of zero indicates that no session
    count is sent.";
                }
    
                leaf session-up-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are up.
    A value of zero indicates that no up
    session count is sent.";
                }
    
                leaf session-down-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are down.
    A value of zero indicates that no down
    session count is sent.";
                }
    
                leaf session-admin-down-count {
                  type uint32;
                  default "0";
                  description
                    "Number of sessions that are admin-down.
    A value of zero indicates that no admin-
    down session count is sent.";
                }
              }  // container cc-session-statistics
            }  // container cc-ipv6-sessions-statistics
          }  // list cc-session-statistics
        }  // container cc-session-statistics-data
      }  // module ietf-connectionless-oam
    

© 2023 YumaWorks, Inc. All rights reserved.