ieee802-dot1cs-lrp

This module provides management of systems that support the Link-local Registration Protocol (LRP). Copyright (C) IEEE (2024). ...

  • Version: 2024-02-15

    ieee802-dot1cs-lrp@2024-02-15


    
      module ieee802-dot1cs-lrp {
    
        yang-version 1.1;
    
        namespace
          "urn:ieee:std:802.1CS:yang:ieee802-dot1cs-lrp";
    
        prefix dot1cs;
    
        import ietf-system {
          prefix sys;
        }
        import ietf-yang-types {
          prefix yang;
        }
        import ietf-interfaces {
          prefix if;
        }
        import ieee802-types {
          prefix ieee;
        }
        import ietf-inet-types {
          prefix inet;
        }
    
        organization
          "Institute of Electrical and Electronics Engineers";
    
        contact
          "WG-URL: http://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 management of systems that support the
        Link-local Registration Protocol (LRP).
    
        Copyright (C) IEEE (2024).
    
        This version of this YANG module is part of IEEE Std 802.1CS;
        see the standard itself for full legal notices.";
    
        revision "2024-02-15" {
          description
            "Published as part of IEEE Std 802.1CS-2020/Cor 1-2024.
    
          The following reference statement identifies each referenced
          IEEE Standard as updated by applicable amendments.";
          reference
            "IEEE Std 802.1CS:
            IEEE Std 802.1CS-2020 Link-local Registration Protocol,
            IEEE Std 802.1CS-2020/Cor 1-2024: Corrections to
            Management Modules and Protocol Encoding.";
    
        }
    
        revision "2020-12-03" {
          description
            "First defined in IEEE P802.1CS-2020";
          reference
            "IEEE Std 802.1CS-2020.";
    
        }
    
    
        feature lrp {
          description
            "Feature Link-local Registration Protocol";
        }
    
        typedef lrp-dt-address-union {
          type union {
            type ieee:mac-address;
            type inet:ipv4-address;
            type inet:ipv6-address;
          }
        }
    
        augment /sys:system {
          description
            "Link-local Registration Protocol";
          container lrp {
            if-feature lrp;
            description
              "Configure the Link-local Registration Protocol";
            leaf lrp-ack-timer-init {
              type uint32;
              units "milliseconds";
              config false;
              description
                "A read-only integer n specifying the number of milliseconds for
                ackTimerInit (D.2.12.6 of IEEE Std 802.1Q-2018)";
              reference
                "11.3.1 of IEEE Std 802.1CS";
    
            }
    
            leaf lrp-reconnect-max {
              type uint16;
              units "seconds";
              description
                "An integer number of seconds which is the maximum value for
                instReconnectReset.";
              reference
                "11.3.2 of IEEE Std 802.1CS";
    
            }
    
            list portal {
              key "portal-id";
              config false;
              leaf portal-id {
                type uint32;
                config false;
                description
                  "Local Identifier of portal";
                reference
                  "Clause 10 of IEEE Std 802.1CS";
    
              }
    
              leaf target-port-interface-ref {
                type if:interface-ref;
                config false;
                description
                  "The interface reference identifying the target 
                port to which this portal is attached.";
                reference
                  "8.2.1 of IEEE Std 802.1CS";
    
              }
    
              leaf lrp-dt-instance-id {
                type leafref {
                  path "/sys:system/dot1cs:lrp/dot1cs:lrp-dt-instance/dot1cs:instance-id";
                }
                config false;
                description
                  "The LRP-DT instance id that this portal is 
                attached to.";
                reference
                  "8.2.1 of IEEE Std 802.1CS";
    
              }
    
              leaf application-id {
                type string;
                config false;
                description
                  "The value transmitted in, and expected to be received in, the
                appId field of Hello LRPDUs.";
                reference
                  "8.2.2.1 of IEEE Std 802.1CS";
    
              }
    
              leaf my-chassis-id {
                type ieee:chassis-id-type;
                config false;
                description
                  "The value transmitted in the My Chassis ID TLV, and expected to be
                received in the Neighbor Chassis ID TLV, of Hello LRPDUs";
                reference
                  "8.2.2.2 of IEEE Std 802.1CS";
    
              }
    
              leaf my-port-id {
                type ieee:port-id-type;
                config false;
                description
                  "The value transmitted in the My Port ID TLV, and expected to be
                received in the Neighbor Port ID TLV, of Hello LRPDUs.";
                reference
                  "8.2.2.3 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-chassis-id {
                type ieee:chassis-id-type;
                config false;
                description
                  "The value transmitted in the Neighbor Chassis ID TLV, and expected
                to be received in the My Chassis ID TLV, of Hello LRPDUs.";
                reference
                  "8.2.2.4 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-port-id {
                type ieee:port-id-type;
                config false;
                description
                  "The value transmitted in the Neighbor Port ID TLV, and expected to
                be received in the My Port ID TLV, of Hello LRPDUs.";
                reference
                  "8.2.2.5 of IEEE Std 802.1CS";
    
              }
    
              leaf my-hello-status {
                type enumeration {
                  enum "hs-looking" {
                    value 1;
                    description
                      "This Portal has not yet received a successful Associate Portal
                    request.";
                  }
                  enum "hs-connecting" {
                    value 2;
                    description
                      "This Portal has received a successful Associate Portal
                    request, and a Hello LRPDU with the hsLooking status. The
                    Portal is ready to receive all LRPDUs.";
                  }
                  enum "hs-connected" {
                    value 3;
                    description
                      "This Portal is up and ready to transfer LRP application data.
                    The Portal is allowed to transmit all LRPDUs.";
                  }
                }
                config false;
                description
                  "An enumerated value to be transmitted in the Hello status field
                of any Hello LRPDU.";
                reference
                  "8.2.2.8 of IEEE Std 802.1CS";
    
              }
    
              leaf local-overflow {
                type boolean;
                config false;
                description
                  "Contains the last Boolean input from the Database overflow
                request. A value of TRUE indicates that the partner applicant
                database has exceeded the capacity of the local registrar LRP
                application.";
                reference
                  "8.2.2.10 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-overflow {
                type boolean;
                config false;
                description
                  "A Boolean copied from the last-received database overflow bit [bit
                8] in the Error status field of the last-received Hello LRPDU.";
                reference
                  "8.2.2.11 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-acknowledged {
                type boolean;
                config false;
                description
                  "A Boolean, equal to the AND of all of the actAcknowledged
                variables for all of the Applicant state machines (records) on this
                Portal.";
                reference
                  "8.2.2.12 of IEEE Std 802.1CS";
    
              }
    
              leaf my-app-hello-info {
                type string;
                config false;
                description
                  "Value to put in the Application Information TLV of a
                transmitted Hello LRPDU.";
                reference
                  "8.2.2.16 of IEEE Std 802.1CS";
    
              }
    
              leaf last-received-status {
                type string;
                config false;
                description
                  "Used by the Receive Hello state machine to record the
                Hello status field of a Hello LRPDU received from the
                neighbor Portal.";
                reference
                  "8.2.2.22 of IEEE Std 802.1CS";
    
              }
    
              leaf applicant-active-records {
                type uint32;
                config false;
                description
                  "An integer reporting the number of records in the applicant
                database.";
                reference
                  "11.5.1 of IEEE Std 802.1CS";
    
              }
    
              leaf registrar-active-records {
                type uint32;
                config false;
                description
                  "An integer reporting the number of records in the registrar
                database.";
                reference
                  "11.5.2 of IEEE Std 802.1CS";
    
              }
    
              leaf sent-hellos {
                type yang:counter64;
                config false;
                description
                  "The number of Hello LRPDUs transmitted by the Send Hello state machines.";
                reference
                  "11.5.3 of IEEE Std 802.1CS";
    
              }
    
              leaf accepted-hellos {
                type yang:counter64;
                config false;
                description
                  "The number of valid Hello LRPDUsreceived by the Receive Hello
                state machine.";
                reference
                  "11.5.4 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-hellos {
                type yang:counter64;
                config false;
                description
                  "The number of invalid Hello LRPDUs discarded by the Receive Hello
                state machine";
                reference
                  "11.5.5 of IEEE Std 802.1CS";
    
              }
    
              leaf sent-records {
                type yang:counter64;
                config false;
                description
                  "The number of Record LRPDUs transmitted by the Applicant state
                machine.";
                reference
                  "11.5.6 of IEEE Std 802.1CS";
    
              }
    
              leaf accepted-records {
                type yang:counter64;
                config false;
                description
                  "The number of valid Record LRPDUs received by the Partial list
                state machine.";
                reference
                  "11.5.7 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-records {
                type yang:counter64;
                config false;
                description
                  "The number of invalid Record LRPDUs discarded by the Partial list
                state machine.";
                reference
                  "11.5.8 of IEEE Std 802.1CS";
    
              }
    
              leaf record-errors {
                type yang:counter64;
                config false;
                description
                  "The number of records discarded from otherwise-valid Record LRPDUs
                by regReceiveWriteRecord due to inconsistencies between the
                Checksum, Application data, and Data length fields.";
                reference
                  "11.5.9 of IEEE Std 802.1CS";
    
              }
    
              leaf sent-partials {
                type yang:counter64;
                config false;
                description
                  "The number of Partial List LRPDUs transmitted by the Applicant
                state machine.";
                reference
                  "11.5.10 of IEEE Std 802.1CS";
    
              }
    
              leaf accepted-partials {
                type yang:counter64;
                config false;
                description
                  "The number of valid Partial List LRPDUs received by the Applicant
                state machine.";
                reference
                  "11.5.11 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-partials {
                type yang:counter64;
                config false;
                description
                  "The number of invalid Partial List LRPDUs discarded by the
                Applicant state machine.";
                reference
                  "11.5.12 of IEEE Std 802.1CS";
    
              }
    
              leaf sent-complete {
                type yang:counter64;
                config false;
                description
                  "The number of Complete List LRPDUs transmitted by the Applicant
                state machine.";
                reference
                  "11.5.13 of IEEE Std 802.1CS";
    
              }
    
              leaf accepted-completes {
                type yang:counter64;
                config false;
                description
                  "The number of valid Complete List LRPDUs received by the Applicant
                state machine.";
                reference
                  "11.5.14 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-completes {
                type yang:counter64;
                config false;
                description
                  "The number of invalid Complete List LRPDUs discarded by the
                Applicant state machine.";
                reference
                  "11.5.15 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-unknowns {
                type yang:counter64;
                config false;
                description
                  "The number of LRPDUs of unknown type discarded by the Applicant
                state machine or Partial list state machine.";
                reference
                  "11.5.16 of IEEE Std 802.1CS";
    
              }
            }  // list portal
    
            list lrp-dt-instance {
              key "instance-id";
              config false;
              leaf instance-id {
                type uint32;
                config false;
                description
                  "Local data transport instance";
                reference
                  "Clause 7 of IEEE Std 802.1CS";
    
              }
    
              leaf active-tcp-open {
                type boolean;
                config false;
                description
                  "A Boolean value that is TRUE if and only if instMyAddress and
                instNeighborAddress are TCP addresses and this LRP-DT instance is
                using the active , not the passive , form of TCP OPEN";
                reference
                  "7.3.2.1 of IEEE Std 802.1CS";
    
              }
    
              leaf my-dt-address {
                type lrp-dt-address-union;
                config false;
                description
                  "The address of the local system for this LRP-DT instance; the
                address used as a destination address by the neighbor LRP-DT
                instance. The address includes a type (MAC, IPv4, or IPv6) and an
                address of that type.";
                reference
                  "7.3.2.2 of IEEE Std 802.1CS";
    
              }
    
              leaf my-tcp-port {
                type inet:port-number;
                config false;
                description
                  "The local port number for this TCP connection, or 0, if this
                connection uses ECP, instead of TCP.";
                reference
                  "7.3.2.3 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-dt-address {
                type lrp-dt-address-union;
                config false;
                description
                  "The address of the neighbor LRP-DT instance; the address used as a
                destination address by this LRP-DT instance. The address includes a
                type (MAC, IPv4, or IPv6) and an address of that type.";
                reference
                  "7.3.2.4 of IEEE Std 802.1CS";
    
              }
    
              leaf neighbor-tcp-port {
                type inet:port-number;
                config false;
                description
                  "The remote port number for this TCP connection, or 0, if this
                connection uses ECP, instead of TCP.";
                reference
                  "7.3.2.5 of IEEE Std 802.1CS";
    
              }
    
              leaf discarded-lrpdus {
                type yang:counter64;
                config false;
                description
                  "A counter indicating the number of LRPDUs discarded by the LRP-DT
                instance that cannot be assigned to a Portal for processing.";
                reference
                  "11.4.1 of IEEE Std 802.1CS";
    
              }
            }  // list lrp-dt-instance
          }  // container lrp
        }
      }  // module ieee802-dot1cs-lrp
    

© 2023 YumaWorks, Inc. All rights reserved.