dell-base-mirror

This module contains a collection of YANG definitions provided by the platform for port mirroring. Copyright (c) 2015-2019 by D...

  • Version: 2018-02-18

    dell-base-mirror@2018-02-18


    
      module dell-base-mirror {
    
        yang-version 1;
    
        namespace
          "http://www.dellemc.com/networking/os10/dell-base-mirror";
    
        prefix base-mirror;
    
        import dell-base-common {
          prefix base-cmn;
        }
    
        organization "Dell EMC";
    
        contact "http://www.dell.com/support";
    
        description
          "This module contains a collection of YANG definitions provided
             by the platform for port mirroring.
    
             Copyright (c) 2015-2019 by Dell EMC, All rights reserved.";
    
        revision "2018-02-18" {
          description
            "Fixing pyang IETF errors and adding documentation to the model.";
          reference
            "Network Platform Abstraction";
    
        }
    
        revision "2015-01-31" {
          description "Initial revision.";
          reference
            "Network Platform Abstraction";
    
        }
    
    
        typedef mode {
          type enumeration {
            enum "SPAN" {
              value 1;
              description
                "Local Port Mirroring - Packets can be mirrored only in the local switch";
            }
            enum "RSPAN" {
              value 2;
              description
                "Remote Port Mirroring - Packets can be mirrored over L2 tunnel
                         across remote switches";
            }
            enum "ERSPAN" {
              value 3;
              description
                "Encapsulated Remote Port Mirroring -
                         Packets can be mirrored over L3 tunnel to remote IP destination";
            }
          }
          description
            "Various way of mirroring the ports";
        }
    
        grouping rspan-attr {
          description
            "RSPAN mirror session attributes";
          leaf vlan {
            type base-cmn:vlan-id;
            mandatory true;
            description
              "Remote SPAN VLAN to be used for mirrored packets";
          }
        }  // grouping rspan-attr
    
        grouping erspan-attr {
          description
            "ERSPAN mirror session attributes";
          leaf source-ip {
            type base-cmn:ipv4-address;
            mandatory true;
            description
              "IPv4 source address to be used for ERSPAN tunnel encapsulation";
          }
    
          leaf destination-ip {
            type base-cmn:ipv4-address;
            mandatory true;
            description
              "IPv4 destination address to be used for ERSPAN tunnel encapsulation";
          }
    
          leaf source-mac {
            type base-cmn:mac-address;
            mandatory true;
            description
              "ERSPAN Tunnel L2 Source MAC Address";
          }
    
          leaf dest-mac {
            type base-cmn:mac-address;
            mandatory true;
            description
              "ERSPAN Tunnel L2 Destination MAC Address";
          }
    
          leaf erspan-vlan-id {
            type base-cmn:vlan-id;
            description
              "ERSPAN Tunnel L2 Header VLAN id";
          }
    
          leaf ttl {
            type uint8;
            description
              "ERSPAN Tunnel header TTL value";
          }
    
          leaf dscp {
            type uint8;
            description
              "ERSPAN Tunnel header DSCP";
          }
    
          leaf gre-protocol-type {
            type uint16;
            description "ERSPAN GRE protocol id";
          }
        }  // grouping erspan-attr
    
        list entry {
          key "id";
          description
            "List of all the mirror-sessions, uniquely identified by the session ID.
                 Each session is associated with a list of attributes defined here.";
          leaf id {
            type base-cmn:mirror-id;
            description "Mirror-session ID";
          }
    
          leaf opaque-data {
            type base-cmn:mirror-opaque-data;
            config false;
            description
              "NPU Mirror opaque data associated with the Mirror session";
          }
    
          leaf dst-intf {
            type base-cmn:logical-ifindex;
            mandatory true;
            description
              "ifindex of the destination interface which is to be mirroed.";
          }
    
          list intf {
            key "src";
            description
              "List which contains mapping of the Mirror source interface,
                     and the direction in which mirroring is enabled";
            leaf src {
              type base-cmn:logical-ifindex;
              mandatory true;
              description
                "ifindex of the source interface which is to be mirroed.";
            }
    
            leaf direction {
              type base-cmn:traffic-path;
              mandatory true;
              description
                "Direction of packets in source interface which needs
                    	 to be mirrored";
            }
          }  // list intf
    
          leaf flow-enabled {
            type boolean;
            default 'false';
            description
              "Flag that indicates whether the mirroring sessions are flow-enabled sessions.";
          }
    
          leaf type {
            type mode;
            mandatory true;
            description "Mirroring session type";
          }
    
          leaf lag-opaque-data {
            type base-cmn:lag-opaque-data;
            config false;
            description
              "In case the mirror destination is a LAG interface, this field stores the mirror destination.";
          }
    
          uses rspan-attr {
            when "../type = RSPAN ";
            description
              "Include the attributes of a RSPAN mirror session, when the session type is RSPAN.";
          }
    
          uses erspan-attr {
            when "../type = ERSPAN ";
            description
              "Include the attributes of a ERSPAN mirror session, when the session type is ERSPAN.";
          }
        }  // list entry
      }  // module dell-base-mirror
    

© 2023 YumaWorks, Inc. All rights reserved.