ieee802-dot1q-preemption

This module provides for management of IEEE Std 802.1Q Bridges that support frame preemption. Copyright (C) IEEE (2023). This ...

  • Version: 2023-10-26

    ieee802-dot1q-preemption@2023-10-26


    
      module ieee802-dot1q-preemption {
    
        yang-version 1.1;
    
        namespace
          "urn:ieee:std:802.1Q:yang:ieee802-dot1q-preemption";
    
        prefix preempt;
    
        organization "IEEE 802.1 Working Group";
    
        contact
          "WG-URL: http://www.ieee802.org/1/
    WG-EMail: stds-802-1-l@ieee.org
    
    Contact: IEEE 802.1 Working Group Chair
    Postal: C/O IEEE 802.1 Working Group
    IEEE Standards Association
    445 Hoes Lane
    Piscataway, NJ 08854
    USA
    
    E-mail: STDS-802-1-CHAIRS@IEEE.ORG";
    
        description
          "This module provides for management of IEEE Std 802.1Q Bridges that
    support frame preemption.
    
    Copyright (C) IEEE (2023).
    
    This version of this YANG module is part of IEEE Std 802.1Q; see the
    standard itself for full legal notices.";
    
        revision "2023-10-26" {
          description
            "Published as part of IEEE Std 802.1Qcw-2023.
    
    The following reference statement identifies each referenced IEEE
    Standard as updated by applicable amendments.";
          reference
            "IEEE Std 802.1Q Bridges and Bridged Networks:
            IEEE Std 802.1Q-2022, IEEE Std 802.1Qcz-2023, IEEE Std 802.1Qcw-2023.";
    
        }
    
    
        feature frame-preemption {
          description
            "Frame preemption supported.";
          reference
            "IEEE Std 802.1Q";
    
        }
    
        typedef frame-preemption-status-enum {
          type enumeration {
            enum "express" {
              value 0;
              description
                "Frames queued for the priority are to be transmitted using the
    express service for the Port.";
            }
            enum "preemptable" {
              value 1;
              description
                "Frames queued for the priority are to be transmitted using the
    preemptable service for the Port.";
            }
          }
          description
            "Frame preemption status of each priority.";
        }
    
        grouping preemption-parameters {
          description
            "preemption-parameters comprises all of the parameters associated with
    frame preemption configuration.";
          container frame-preemption-parameters {
            description
              "A table containing a set of frame preemption parameters, one for
    each Port. All writeable objects in this table must be persistent
    over power up restart/reboot.";
            reference
              "12.30.1 of IEEE Std 802.1Q";
    
            container frame-preemption-status-table {
              description
                "The framePreemptionStatusTable consists of 8 frame-preemption
    status parameter leafs, one per priority";
              reference
                "12.30.1.1 of IEEE Std 802.1Q";
    
              leaf priority0 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 0. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority1 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 1. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority2 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 2. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority3 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 3. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority4 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption-status parameter for the
    priority 4. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority5 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 5. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority6 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 6. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
    
              leaf priority7 {
                type frame-preemption-status-enum;
                default "express";
                description
                  "The value of the frame-preemption status parameter for the
    priority 7. The default value of the parameter is express (1).
    The value of this object MUST be retained across
    reinitializations of the management system.";
                reference
                  "12.30.1.1.1 of IEEE Std 802.1Q";
    
              }
            }  // container frame-preemption-status-table
    
            leaf hold-advance {
              type uint32;
              units "nanoseconds";
              config false;
              description
                "The value of the holdAdvance parameter for the Port in
    nanoseconds. There is no default value; the holdAdvance is a
    property of the underlying MAC.";
              reference
                "12.30.1.2 of IEEE Std 802.1Q";
    
            }
    
            leaf release-advance {
              type uint32;
              units "nanoseconds";
              config false;
              description
                "The value of the releaseAdvance parameter for the Port in
    nanoseconds. There is no default value; the releaseAdvance is a
    property of the underlying MAC.";
              reference
                "12.30.1.3 of IEEE Std 802.1Q";
    
            }
    
            leaf preemption-active {
              type boolean;
              config false;
              description
                "TRUE if preemption is both supported by the MAC and currently
    active.";
              reference
                "12.30.1.4 of IEEE Std 802.1Q";
    
            }
    
            leaf hold-request {
              type enumeration {
                enum "hold" {
                  value 1;
                  description
                    "A hold request has been issued to the MAC.";
                }
                enum "release" {
                  value 2;
                  description
                    "A release request has been issued to the MAC.";
                }
              }
              config false;
              description
                "The value of the holdRequest parameter for the Port, either hold
    (1) or release (2). The value of this object is release (2) on
    system initialization.";
              reference
                "12.30.1.5 of IEEE Std 802.1Q";
    
            }
          }  // container frame-preemption-parameters
        }  // grouping preemption-parameters
      }  // module ieee802-dot1q-preemption
    

© 2024 YumaWorks, Inc. All rights reserved.