Cisco-IOS-XR-Ethernet-SPAN-oper-sub3

This submodule contains a collection of YANG definitions for Cisco IOS-XR Ethernet-SPAN package operational data. Copyright (c)...

  • Version: 2020-12-03

    Cisco-IOS-XR-Ethernet-SPAN-oper-sub3@2020-12-03


    
      submodule Cisco-IOS-XR-Ethernet-SPAN-oper-sub3 {
    
        yang-version 1;
    
        belongs-to
          Cisco-IOS-XR-Ethernet-SPAN-oper {
            prefix
              Cisco-IOS-XR-Ethernet-SPAN-oper;
        }
    
        import ietf-inet-types {
          prefix inet;
        }
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import cisco-semver {
          prefix semver;
        }
    
        include Cisco-IOS-XR-Ethernet-SPAN-oper-sub1 {
          revision-date "2020-12-03";
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This submodule contains a collection of YANG definitions
         for Cisco IOS-XR Ethernet-SPAN package operational data.
         
         Copyright (c) 2013-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-12-03" {
          description
            "Added support for multiple attachments per class on an interface
           2020-09-14
             Added support for mirror rx and tx traffic to separate destinations
           2020-04-03
             Added support for bundle destinations.";
        }
    
        revision "2020-01-30" {
          description
            "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session
           2019-12-12
           Added support for file format and PCAP filter expressions under file
           2019-10-02
           Added support for UDP destinations and CloudSPAN.";
        }
    
        revision "2019-05-12" {
          description
            "Added support for file destinations.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "4.0.0";
        semver:module-version "3.0.0";
        semver:module-version "2.0.0";
        semver:module-version "1.0.0";
    
        grouping INJECT-INTERFACE-DATA {
          description "Inject interface data";
          leaf name {
            type string;
            description "Interface Name";
          }
        }  // grouping INJECT-INTERFACE-DATA
    
        grouping SPAN-MGR-BAG-SESS-DST-INFO {
          description
            "SPAN MGR BAG SESS DST INFO";
          container destination-data {
            description "Destination data";
            uses DESTINATION-STATE;
          }  // container destination-data
    
          container destination-id {
            description "Destination ID";
            uses DESTINATION-ID;
          }  // container destination-id
    
          leaf destination-error {
            type uint32;
            description
              "Last error observed for the destination ";
          }
        }  // grouping SPAN-MGR-BAG-SESS-DST-INFO
    
        grouping DESTINATION-BUNDLE-DATA {
          description "Destination Bundle Data";
          leaf bundle-name {
            type Destination-name-string;
            description "Bundle Name";
          }
    
          leaf bundle-state {
            type Im-state-enum;
            description "Bundle State";
          }
        }  // grouping DESTINATION-BUNDLE-DATA
    
        grouping DESTINATION-NEXT-HOP-IPV6-ADDRESS-DATA {
          description
            "Destination Next-hop IPv6 Address Data";
          leaf ipv6-address {
            type inet:ipv6-address;
            description "IPv6 address";
          }
    
          leaf vrf-name {
            type Destination-name-string;
            description "VRF name";
          }
    
          leaf address-is-reachable {
            type boolean;
            description "Address is reachable";
          }
        }  // grouping DESTINATION-NEXT-HOP-IPV6-ADDRESS-DATA
    
        grouping DESTINATION-NEXT-HOP-IPV4-ADDRESS-DATA {
          description
            "Destination Next-hop IPv4 Address Data";
          leaf ipv4-address {
            type inet:ipv4-address;
            description "IPv4 address";
          }
    
          leaf vrf-name {
            type Destination-name-string;
            description "VRF name";
          }
    
          leaf address-is-reachable {
            type boolean;
            description "Address is reachable";
          }
        }  // grouping DESTINATION-NEXT-HOP-IPV4-ADDRESS-DATA
    
        grouping DESTINATION-PSEUDOWIRE-DATA {
          description
            "Destination Pseudowire Data";
          leaf pseudowire-name {
            type Destination-name-string;
            description "Pseudowire Name";
          }
    
          leaf pseudowire-is-up {
            type boolean;
            description "Pseudowire State";
          }
        }  // grouping DESTINATION-PSEUDOWIRE-DATA
    
        grouping DESTINATION-INTERFACE-DATA {
          description
            "Destination Interface Data";
          leaf interface-name {
            type Destination-name-string;
            description "Interface Name";
          }
    
          leaf interface-state {
            type Im-state-enum;
            description "Interface State";
          }
        }  // grouping DESTINATION-INTERFACE-DATA
    
        grouping DESTINATION-STATE {
          description "Destination state";
          container interface-data {
            when
              "../destination-class = 'interface-class'" {
              description
                "../DestinationClass = 'InterfaceClass'";
            }
            description "Interface data";
            uses DESTINATION-INTERFACE-DATA;
          }  // container interface-data
    
          container pseudowire-data {
            when
              "../destination-class = 'pseudowire-class'" {
              description
                "../DestinationClass = 'PseudowireClass'";
            }
            description "Pseudowire data";
            uses DESTINATION-PSEUDOWIRE-DATA;
          }  // container pseudowire-data
    
          container next-hop-ipv4-data {
            when
              "../destination-class = 'next-hop-ipv4-class'" {
              description
                "../DestinationClass = 'NextHopIPv4Class'";
            }
            description "Next-hop IPv4 data";
            uses DESTINATION-NEXT-HOP-IPV4-ADDRESS-DATA;
          }  // container next-hop-ipv4-data
    
          container next-hop-ipv6-data {
            when
              "../destination-class = 'next-hop-ipv6-class'" {
              description
                "../DestinationClass = 'NextHopIPv6Class'";
            }
            description "Next-hop IPv6 data";
            uses DESTINATION-NEXT-HOP-IPV6-ADDRESS-DATA;
          }  // container next-hop-ipv6-data
    
          container file-data {
            when
              "../destination-class = 'file-class'" {
              description
                "../DestinationClass = 'FileClass'";
            }
            description "File data";
            uses FILE-DST-CFG-INFO;
          }  // container file-data
    
          container udp-data {
            when
              "../destination-class = 'udp-class'" {
              description
                "../DestinationClass = 'UDPClass'";
            }
            description "UDP data";
            uses UDP-DST-CFG-INFO;
          }  // container udp-data
    
          container bundle-data {
            when
              "../destination-class = 'bundle-class'" {
              description
                "../DestinationClass = 'BundleClass'";
            }
            description "Bundle data";
            uses DESTINATION-BUNDLE-DATA;
          }  // container bundle-data
    
          leaf destination-class {
            type Destination-class;
            description "DestinationClass";
          }
    
          leaf invalid-value {
            when
              "../destination-class != 'interface-class' and ../destination-class != 'pseudowire-class' and ../destination-class != 'next-hop-ipv4-class' and ../destination-class != 'next-hop-ipv6-class' and ../destination-class != 'file-class' and ../destination-class != 'udp-class' and ../destination-class != 'bundle-class'" {
              description
                "../DestinationClass != 'InterfaceClass' and .
               ./DestinationClass != 'PseudowireClass' and .
               ./DestinationClass != 'NextHopIPv4Class' and .
               ./DestinationClass != 'NextHopIPv6Class' and .
               ./DestinationClass != 'FileClass' and .
               ./DestinationClass != 'UDPClass' and .
               ./DestinationClass != 'BundleClass'";
            }
            type Optional-value;
            description "Invalid Parameter";
          }
        }  // grouping DESTINATION-STATE
    
        grouping SPAN-MGR-SESSION-BAG {
          description
            "SPAN Manager Session Information";
          container destination-data {
            description "Destination data";
            uses DESTINATION-STATE;
          }  // container destination-data
    
          container destination-id {
            description "Destination ID";
            uses DESTINATION-ID;
          }  // container destination-id
    
          container rx-destination-info {
            description "Rx Destination Info";
            uses SPAN-MGR-BAG-SESS-DST-INFO;
          }  // container rx-destination-info
    
          container tx-destination-info {
            description "Tx Destination Info";
            uses SPAN-MGR-BAG-SESS-DST-INFO;
          }  // container tx-destination-info
    
          container inject-interface {
            description "Inject interface data";
            uses INJECT-INTERFACE-DATA;
          }  // container inject-interface
    
          container file-information {
            description
              "Extra information relating to SPAN to file";
            uses FILE-DST-STATE-INFO;
          }  // container file-information
    
          container cloud-span {
            description
              "Properties related to CloudSPAN";
            uses CLOUD-SPAN-PROPERTIES;
          }  // container cloud-span
    
          leaf name {
            type string;
            description "Session Name";
          }
    
          leaf session-class {
            type Session-class;
            description "Session class";
          }
    
          leaf id {
            type uint32;
            description
              "Numerical ID assigned to session";
          }
    
          leaf destination-error {
            type uint32;
            description
              "Last error observed for the destination ";
          }
    
          leaf separate-destinations {
            type boolean;
            description "Separate Destinations";
          }
    
          leaf destination-interface-name {
            type string;
            description
              "Destination interface name (deprecated by
             DestinationData, invalid for pseudowires)";
          }
    
          leaf destination-interface-handle {
            type xr:Interface-name;
            description
              "Destination interface handle (deprecated by
             DestinationID, invalid for pseudowires)";
          }
    
          leaf interface-error {
            type uint32;
            description
              "Last error observed for the destination
             interface (deprecated by DestinationError)";
          }
        }  // grouping SPAN-MGR-SESSION-BAG
      }  // submodule Cisco-IOS-XR-Ethernet-SPAN-oper-sub3
    

© 2023 YumaWorks, Inc. All rights reserved.