From 1f2a84fa8998990f7341c5d29ffc524b182538e9 Mon Sep 17 00:00:00 2001 From: yogeshg Date: Tue, 14 Apr 2026 10:19:42 +0000 Subject: [PATCH 1/5] Add leaves for common org defined TLVs to LLDP model --- release/models/lldp/openconfig-lldp.yang | 58 +++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/release/models/lldp/openconfig-lldp.yang b/release/models/lldp/openconfig-lldp.yang index 2bf218818f..b7108d9f8c 100644 --- a/release/models/lldp/openconfig-lldp.yang +++ b/release/models/lldp/openconfig-lldp.yang @@ -25,7 +25,15 @@ module openconfig-lldp { "This module defines configuration and operational state data for the LLDP protocol."; - oc-ext:openconfig-version "1.0.0"; + oc-ext:openconfig-version "1.1.0"; + + revision "2026-04-14" { + description + "Add LLDP neighbor state leaves for LLDP-MED inventory serial + number, IEEE 802.1 port VLAN ID, and IEEE 802.3 link aggregation + and max frame size."; + reference "1.1.0"; + } revision "2026-01-14" { description @@ -362,6 +370,54 @@ module openconfig-lldp { typing to pair up with the 802.1AB Management Address TLV specification."; } + + leaf med-inventory-serial-number { + type string; + description + "The serial number of the remote device as advertised in + the LLDP-MED Inventory - Serial Number TLV."; + reference + "ANSI/TIA-1057 Section 10.2.6.2"; + } + + leaf port-vlan-id { + type uint16; + description + "The port VLAN identifier (PVID) advertised by the + neighbor in the IEEE 802.1 Port VLAN ID TLV."; + reference + "IEEE 802.1Q Annex D"; + } + + leaf link-aggregation-status { + type uint8; + description + "The link aggregation status of the neighbor port as + advertised in the IEEE 802.3 Link Aggregation TLV. + Bit 0 indicates aggregation capability, bit 1 indicates + aggregation status."; + reference + "IEEE 802.1AB-2005 Annex G.4"; + } + + leaf link-aggregation-port-id { + type uint32; + description + "The aggregated port identifier of the neighbor port as + advertised in the IEEE 802.3 Link Aggregation TLV."; + reference + "IEEE 802.1AB-2005 Annex G.4"; + } + + leaf max-frame-size { + type uint16; + description + "The maximum frame size in octets supported by the + neighbor port as advertised in the IEEE 802.3 Maximum + Frame Size TLV."; + reference + "IEEE 802.1AB-2005 Annex G.5"; + } } grouping lldp-capabilities-config { From 2053cffb46ca91cd985abded2b05525e5c58c692 Mon Sep 17 00:00:00 2001 From: yogeshg Date: Tue, 14 Apr 2026 10:19:42 +0000 Subject: [PATCH 2/5] Add leaves for common org defined TLVs to LLDP model --- release/models/lldp/openconfig-lldp.yang | 49 +++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/release/models/lldp/openconfig-lldp.yang b/release/models/lldp/openconfig-lldp.yang index 2bf218818f..3fd610dbed 100644 --- a/release/models/lldp/openconfig-lldp.yang +++ b/release/models/lldp/openconfig-lldp.yang @@ -12,6 +12,7 @@ module openconfig-lldp { import openconfig-yang-types { prefix oc-yang; } import openconfig-inet-types { prefix oc-inet; } import openconfig-extensions { prefix oc-ext; } + import openconfig-vlan-types { prefix oc-vlan-types; } // meta @@ -25,7 +26,15 @@ module openconfig-lldp { "This module defines configuration and operational state data for the LLDP protocol."; - oc-ext:openconfig-version "1.0.0"; + oc-ext:openconfig-version "1.1.0"; + + revision "2026-04-14" { + description + "Add LLDP neighbor state leaves for LLDP-MED inventory serial + number, IEEE 802.1 port VLAN ID, and IEEE 802.3 link aggregation + and max frame size."; + reference "1.1.0"; + } revision "2026-01-14" { description @@ -362,6 +371,44 @@ module openconfig-lldp { typing to pair up with the 802.1AB Management Address TLV specification."; } + + leaf med-inventory-serial-number { + type string; + description + "The serial number of the remote device as advertised in + the LLDP-MED Inventory - Serial Number TLV."; + } + + leaf port-vlan-id { + type oc-vlan-types:vlan-id; + description + "The port VLAN identifier advertised by the + neighbor in the IEEE 802.1 Port VLAN ID TLV."; + } + + leaf link-aggregation-status { + type uint8; + description + "The link aggregation status of the neighbor port as + advertised in the IEEE 802.3 Link Aggregation TLV. + Bit 0 indicates aggregation capability, bit 1 indicates + aggregation status."; + } + + leaf link-aggregation-port-id { + type uint32; + description + "The aggregated port identifier of the neighbor port as + advertised in the IEEE 802.3 Link Aggregation TLV."; + } + + leaf max-frame-size { + type uint16; + description + "The maximum frame size in octets supported by the + neighbor port as advertised in the IEEE 802.3 Maximum + Frame Size TLV."; + } } grouping lldp-capabilities-config { From 2a4764a47d1c8bd6bd7bcbef414fdde8c85033c5 Mon Sep 17 00:00:00 2001 From: yogeshg Date: Wed, 22 Apr 2026 03:18:54 -0700 Subject: [PATCH 3/5] Address review: use uint16 for port-vlan-id, split link-aggregation into booleans - Replace oc-vlan-types:vlan-id with uint16 range 0..4094 to allow PVID value 0 (port not VLAN-aware per IEEE 802.1Q) - Remove unused openconfig-vlan-types import - Replace link-aggregation-status uint8 bitfield with two explicit boolean leaves: link-aggregation-capable and link-aggregation-enabled --- release/models/lldp/openconfig-lldp.yang | 27 ++++++++++++++++-------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/release/models/lldp/openconfig-lldp.yang b/release/models/lldp/openconfig-lldp.yang index 3fd610dbed..b8a70edada 100644 --- a/release/models/lldp/openconfig-lldp.yang +++ b/release/models/lldp/openconfig-lldp.yang @@ -12,7 +12,7 @@ module openconfig-lldp { import openconfig-yang-types { prefix oc-yang; } import openconfig-inet-types { prefix oc-inet; } import openconfig-extensions { prefix oc-ext; } - import openconfig-vlan-types { prefix oc-vlan-types; } + // meta @@ -380,19 +380,28 @@ module openconfig-lldp { } leaf port-vlan-id { - type oc-vlan-types:vlan-id; + type uint16 { + range "0..4094"; + } description "The port VLAN identifier advertised by the - neighbor in the IEEE 802.1 Port VLAN ID TLV."; + neighbor in the IEEE 802.1 Port VLAN ID TLV. A value of 0 + indicates that the port is not VLAN-aware."; + } + + leaf link-aggregation-capable { + type boolean; + description + "Indicates whether the neighbor port is capable of being + aggregated, as advertised in the IEEE 802.3 Link Aggregation + TLV."; } - leaf link-aggregation-status { - type uint8; + leaf link-aggregation-enabled { + type boolean; description - "The link aggregation status of the neighbor port as - advertised in the IEEE 802.3 Link Aggregation TLV. - Bit 0 indicates aggregation capability, bit 1 indicates - aggregation status."; + "Indicates whether the neighbor port is currently aggregated, + as advertised in the IEEE 802.3 Link Aggregation TLV."; } leaf link-aggregation-port-id { From ebc906fe8fa32a7a2e3a4ea4418ff08dc2b47ee2 Mon Sep 17 00:00:00 2001 From: yogeshg Date: Wed, 22 Apr 2026 03:23:48 -0700 Subject: [PATCH 4/5] Remove extra newline. --- release/models/lldp/openconfig-lldp.yang | 1 - 1 file changed, 1 deletion(-) diff --git a/release/models/lldp/openconfig-lldp.yang b/release/models/lldp/openconfig-lldp.yang index b8a70edada..023886f585 100644 --- a/release/models/lldp/openconfig-lldp.yang +++ b/release/models/lldp/openconfig-lldp.yang @@ -14,7 +14,6 @@ module openconfig-lldp { import openconfig-extensions { prefix oc-ext; } - // meta organization "OpenConfig working group"; From 69ac85cc87022d1b2ee5df0a99485561504e3ad9 Mon Sep 17 00:00:00 2001 From: yogeshg Date: Thu, 7 May 2026 10:02:34 -0700 Subject: [PATCH 5/5] Wrap link-aggregation leaves in container, fix whitespace 1. Group link-aggregation-capable, link-aggregation-enabled, and link-aggregation-port-id into a link-aggregation container with shortened leaf names (capable, enabled, port-id) - Fix trailing whitespace and reference indentation in revision block --- release/models/lldp/openconfig-lldp.yang | 42 +++++++++++++----------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/release/models/lldp/openconfig-lldp.yang b/release/models/lldp/openconfig-lldp.yang index 75486969d7..4f6fe9ce2a 100644 --- a/release/models/lldp/openconfig-lldp.yang +++ b/release/models/lldp/openconfig-lldp.yang @@ -33,9 +33,9 @@ module openconfig-lldp { "Add LLDP neighbor state leaves for LLDP-MED inventory serial number, IEEE 802.1 port VLAN ID, and IEEE 802.3 link aggregation and max frame size."; - reference "1.2.0"; + reference "1.2.0"; } - + revision "2026-04-06" { description "Add global TTL configuration/state leaf, interface port-description and custom-tlv-names leaves, custom TLV name leaf, global custom-tlvs list, and add interface counter timestamps for LLDP."; @@ -412,26 +412,30 @@ module openconfig-lldp { indicates that the port is not VLAN-aware."; } - leaf link-aggregation-capable { - type boolean; + container link-aggregation { description - "Indicates whether the neighbor port is capable of being - aggregated, as advertised in the IEEE 802.3 Link Aggregation - TLV."; - } + "Link aggregation state advertised by the neighbor in + the IEEE 802.3 Link Aggregation TLV."; - leaf link-aggregation-enabled { - type boolean; - description - "Indicates whether the neighbor port is currently aggregated, - as advertised in the IEEE 802.3 Link Aggregation TLV."; - } + leaf capable { + type boolean; + description + "Indicates whether the neighbor port is capable of being + aggregated."; + } - leaf link-aggregation-port-id { - type uint32; - description - "The aggregated port identifier of the neighbor port as - advertised in the IEEE 802.3 Link Aggregation TLV."; + leaf enabled { + type boolean; + description + "Indicates whether the neighbor port is currently + aggregated."; + } + + leaf port-id { + type uint32; + description + "The aggregated port identifier of the neighbor port."; + } } leaf max-frame-size {