module ieee802-dot1q-lldp-pbbn-aa-tlv { yang-version "1.1"; namespace urn:ieee:std:802.1Q:yang:ieee802-dot1q-lldp-pbbn-aa-tlv; prefix lldp-aa-tlv; import ieee802-dot1ab-lldp { prefix lldp; } import ieee802-dot1q-types { prefix dot1qtypes; } 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 "LLDP PBBN Auto Attach TLVs 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.1Qcj-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, IEEE Std 802.1Qcj-2023. IEEE Std 802 Overview and Architecture: IEEE Std 802-2014."; } identity assoc-state-selector { description "Specify the state of the association between the AAS entities as described by D.2.17.5 of IEEE Std 802.1Q"; } identity not-ready { base assoc-state-selector; description "Indicates the association state of NOT_READY as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x00."; } identity ready-to-assoc { base assoc-state-selector; description "Indicates the association state of READY_TO_ASSOC as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x01."; } identity ready-to-attach { base assoc-state-selector; description "Indicates the association state of READY_TO_ATTACH as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x02."; } identity assoc-failed-types { base assoc-state-selector; description "Indicates the association state of ASSOC_FAILED_TYPES as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x12."; } identity assoc-failed-tags { base assoc-state-selector; description "Indicates the association state of ASSOC_FAILED_TAGS as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x22."; } identity assoc-failed-topo { base assoc-state-selector; description "Indicates the association state of ASSOC_FAILED_TOPO as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x32."; } identity assoc-failed-other { base assoc-state-selector; description "Indicates the association state of ASSOC_FAILED_OTHER as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x42."; } identity assoc-attached { base assoc-state-selector; description "Indicates the association state of ASSOC_ATTACHED as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x03."; } identity assoc-standby { base assoc-state-selector; description "Indicates the association state of ASSOC_STANDBY as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x13."; } identity assoc-invalid { base assoc-state-selector; description "Indicates the association state of ASSOC_INVALID as specified in D.2.17.5 of IEEE Std 802.1Q. Signaled as the value 0x23."; } identity system-type-selector { description "Specify the selection of the PPBN Auto-attach system type as specified in D.2.17.7 of IEEE Std 802.1Q"; } identity aab-system { base system-type-selector; description "Indicates the system type of an Auto Attach BEB (AAB) in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q. Signaled as the value 1."; } identity aad-cvlan-system { base system-type-selector; description "Indicates the system type of a C-VLAN aware Auto Attach Device (AAD) in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q. Signaled as the value 2."; } identity aad-vlan-unaware-system { base system-type-selector; description "Indicates the system type of a VLAN unaware Auto Attach Device (AAD) in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q. Signaled as the value 3."; } identity aad-svlan-system { base system-type-selector; description "Indicates the system type of a S-VLAN aware Auto Attach Device (AAD) in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q. Signaled as the value 4."; } identity tagging-selector { description "Specify the tagging field selection of the PPBN Auto Attach System TLV as specified in D.2.17.8 of IEEE Std 802.1Q"; } identity tagged-only { base tagging-selector; description "Indicates the AAD link tagging requirement of all VLAN tagged in AAD sourced frames. Signaled as the value 0 in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q."; } identity untagged-or-tagged { base tagging-selector; description "Indicates the AAD link tagging requirement of untagged and VLAN tagged in AAD sourced frames. Signaled as the value 1 in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q."; } identity untagged-only { base tagging-selector; description "Indicates the AAD link tagging requirement of all untagged in AAD sourced frames. Signaled as the value 2 in the PPBN Auto Attach System TLV specified in D.2.17 of IEEE Std 802.1Q."; } identity assignment-status-selector { description "Specify the status of an assignment in the PBBN Auto Attach Assignment TLV sent by the AAB for each VID/I-SID assignment request."; } identity pending { base assignment-status-selector; description "Indicates the AAB is processing the assignment. This status is used by the AAD while it is waiting for a response from the AAB as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 1."; } identity accepted { base assignment-status-selector; description "Indicates the AAB assignment processing request is complete for the VID/I-SID and the VLAN to BSI connection has been established as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 2."; } identity rejected-generic { base assignment-status-selector; description "Indicates an undefined rejection has occurred as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 3."; } identity rejected-resource { base assignment-status-selector; description "Indicates a rejection has occurred due to system resources being unavailable as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 4."; } identity rejected-invalid-vlan { base assignment-status-selector; description "Indicates a rejection has occurred because the VID value is outside the range of 1 to 4094 as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 5."; } identity rejected-vlan-resource { base assignment-status-selector; description "Indicates a rejection has occurred due to maximum VLAN resource limits have been reached as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 6."; } identity rejected-invalid-isid { base assignment-status-selector; description "Indicates a rejection has occurred because the I-SID value is outside of the range 1 or 256 through 16777214 as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 7."; } identity rejected-isid-resource { base assignment-status-selector; description "Indicates a rejection has occurred due to maximum I-SID resource limits have been reached as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 8."; } identity rejected-application { base assignment-status-selector; description "Indicates a rejection has occurred because of an issue with Auto Attach agent functions on the AAB as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 9."; } identity rejected-policy { base assignment-status-selector; description "Indicates a rejection has occurred because the Auto Attach assignment processing is subject to a policy or rule on the AAB where the assignment requested is not permitted or denied as described in D.2.18.6 of IEEE Std 802.1Q. Signaled as the value 10."; } typedef aa-isid-type { type dot1qtypes:isid-type { range "1 | 256..16777214"; } description "The aa-i-sid type represents a Backbone Service Instance Identifier (I-SID). This is the 24-bit I-SID field used in the I-TAG TCI of a Provider Backbone Bridging frame. The values 0, 2-254, and 16777215 are reserved for future standardization. The value 255 is dedicated to use by the SPB protocol. For Auto Attach values 2-255 are not allowed."; reference "D.2.18.8 of IEEE Std 802.1Q."; } typedef port-netid-type { type binary { length "12"; } description "A 12-octet binary string representing the PortNetID fields of the PPBN Auto Attach System TLV as specified in D.2.17 of IEEE Std 802.1Q. The 12 octet field uniquely identifies an Auto Attach port within the administrative domain used for Auto Attach. The first 6 octets of the string are the binary representation of the system's MAC address. The next 2 octets are reserved and have the value 0. The last 4 octets are the integer IfIndex for the port."; reference "D.2.17.10 of IEEE Std 802.1Q"; } grouping aa-system-tlv { description "PBBN Auto Attach System TLV"; reference "D.2.17 of IEEE Std 802.1Q"; leaf assoc-state { type identityref { base assoc-state-selector; } config false; description "Association state between AAS entities on the link"; reference "D.2.17.5 of IEEE Std 802.1Q."; } leaf system-type { type identityref { base system-type-selector; } config false; description "Identifies the capability of the advertising system type."; reference "D.2.17.7 of IEEE Std 802.1Q."; } leaf tagging { type identityref { base tagging-selector; } config false; description "Indicates AAD link tagging requirements in AAD-sourced frames and current provisioning mode information."; reference "D.2.17.8 of IEEE Std 802.1Q."; } leaf portnetid { type port-netid-type; config false; description "Uniquely identifies an Auto Attach port within the administrative domain used for Auto Attach connection management."; reference "D.2.17.10 of IEEE Std 802.1Q."; } } grouping aa-assign-tlv { description "PBBN Auto Attach Assignment TLV"; reference "D.2.18 of IEEE Std 802.1Q"; leaf num-assigns { type uint8 { range "0..101"; } config false; description "Contains the number of Status/VID/I-SID triples in the PBBN Auto Attach assignment TLV."; reference "D.2.18.5 of IEEE Std 802.1Q."; } list assignments { key "vlan-id i-sid"; config false; description "A triplet of fields in the PBBN Auto Attach Assignment TLV that indicates the mapping of VLAN ID to I-SID and the status of that mapping."; leaf assignment-status { type identityref { base assignment-status-selector; } config false; reference "D.2.18.6 of IEEE Std 802.1Q."; } leaf vlan-id { type dot1qtypes:vlanid; config false; description "Advertises the VLAN ID of the VLAN being mapped by the assignment. If this is an association with a VLAN unaware AAD this field is transmitted as zero and ignored on receive. If this is a VLAN aware AAD, then this field is a valid VID."; reference "D.2.18.7 of IEEE Std 802.1Q."; } leaf i-sid { type aa-isid-type; config false; description "Advertises the value of the PBBN Backbone Service Instance Identifier (I-SID) mapped by this assignment."; reference "D.2.18.8 of IEEE Std 802.1Q."; } } } augment "/lldp:lldp/lldp:port" { description "Augments port with the PBBN Auto Attach TLVs"; leaf tlvs-tx-org-aa-system-enable { type bits { bit aaSystem { position 0; description "D.2.17 of IEEE Std 802.1Q"; } bit aaAssign { position 1; description "D.2.18 of IEEE Std 802.1Q"; } } config false; description "Bitmap that includes the aaSet of TLVs from Table D-1 of IEEE Std 802.1Q"; reference "D.1 of IEEE Std 802.1Q"; } container aa-system-tlv-extension { description "The PBBN Auto Attach System TLV"; uses aa-system-tlv; } container aa-assign-tlv-extension { description "The PBBN Auto Attach Assignment TLV"; uses aa-assign-tlv; } } augment "/lldp:lldp/lldp:port/lldp:remote-systems-data" { description "Augments port remote-systems-data with received PBBN Auto Attach TLVs"; container aa-system-tlv-extension { description "Holds a received PBBN Auto Attach System TLV"; uses aa-system-tlv; } container aa-assign-tlv-extension { description "Holds a received PBBN Auto Attach Assignment TLV"; uses aa-assign-tlv; } } }