mirror of
https://github.com/Telecominfraproject/ols-ucentral-schema.git
synced 2026-03-20 03:39:31 +00:00
Compare commits
66 Commits
next
...
OLS-425_sp
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7bffbb1cc9 | ||
|
|
e96efa25ae | ||
|
|
5622b66bb8 | ||
|
|
5bc20c20b3 | ||
|
|
9a7f469e61 | ||
|
|
a8d8de9b4d | ||
|
|
53c239b60d | ||
|
|
9a994374b5 | ||
|
|
44ed03b3f7 | ||
|
|
a72be45c21 | ||
|
|
7c62326155 | ||
|
|
5291c3da99 | ||
|
|
1b12452eeb | ||
|
|
76504b1ad6 | ||
|
|
bcde6a7155 | ||
|
|
82f5eb7740 | ||
|
|
ceccdef561 | ||
|
|
80a598fadf | ||
|
|
81e8cd5706 | ||
|
|
8a4815187f | ||
|
|
e8da89616e | ||
|
|
5da5b090be | ||
|
|
f9e15067ff | ||
|
|
4235960ab8 | ||
|
|
7e839b0681 | ||
|
|
b98f8a2b46 | ||
|
|
1de6cad7e8 | ||
|
|
0f9f4489d2 | ||
|
|
5dc634f78e | ||
|
|
4d03a432c1 | ||
|
|
ee945311e1 | ||
|
|
4336be981b | ||
|
|
747ccb4993 | ||
|
|
a0fac0b3d7 | ||
|
|
1e33d3fa0a | ||
|
|
dc754dc519 | ||
|
|
b3374bb60b | ||
|
|
0ef7362930 | ||
|
|
b9762df2cf | ||
|
|
0983abe2bf | ||
|
|
719fd97705 | ||
|
|
777e2b26a8 | ||
|
|
ab43179a83 | ||
|
|
3a41591f85 | ||
|
|
7fa4d15f5e | ||
|
|
d105fe165e | ||
|
|
d3f610d9ef | ||
|
|
711d7d9066 | ||
|
|
89a78c61be | ||
|
|
f5608bd42c | ||
|
|
54358ff146 | ||
|
|
7994980a3d | ||
|
|
ffafd5bfae | ||
|
|
c29c0d3b3a | ||
|
|
02fa109dc6 | ||
|
|
ad41fc5b27 | ||
|
|
8a55cf509d | ||
|
|
0b59636360 | ||
|
|
75a5670219 | ||
|
|
d2042faf6b | ||
|
|
fec747ae43 | ||
|
|
e81889c1c2 | ||
|
|
4e9d466c81 | ||
|
|
a57682c9ef | ||
|
|
c769b4e24e | ||
|
|
32e90c0ea3 |
28
LICENSE
Normal file
28
LICENSE
Normal file
@@ -0,0 +1,28 @@
|
||||
BSD 3-Clause License
|
||||
|
||||
Copyright (c) 2024, Telecom Infra Project
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
290
capabilities/connect.capabilities.yml
Normal file
290
capabilities/connect.capabilities.yml
Normal file
@@ -0,0 +1,290 @@
|
||||
description:
|
||||
uCentral protocol (OpenLan) device and features capabilities schema
|
||||
type: object
|
||||
properties:
|
||||
serial:
|
||||
type: string
|
||||
examples:
|
||||
- aabbccddeeff
|
||||
firmware:
|
||||
type: string
|
||||
description:
|
||||
Platform revision
|
||||
examples:
|
||||
- Rel 1.6 build 5
|
||||
version:
|
||||
type: object
|
||||
description:
|
||||
The ols schema version to be used with this Switch
|
||||
properties:
|
||||
major:
|
||||
type: integer
|
||||
minor:
|
||||
type: integer
|
||||
patch:
|
||||
type: integer
|
||||
examples:
|
||||
- 'major': 3
|
||||
'minor': 2
|
||||
'patch': 0
|
||||
platform:
|
||||
type: string
|
||||
enum:
|
||||
- Switch
|
||||
- AP
|
||||
model:
|
||||
type: string
|
||||
description:
|
||||
Device model
|
||||
hw-sku:
|
||||
type: string
|
||||
description:
|
||||
Stock keeping unit
|
||||
compatible:
|
||||
type: string
|
||||
description:
|
||||
Compatibility string, that defines the family of the device
|
||||
base-mac:
|
||||
type: string
|
||||
description:
|
||||
Switch MAC address
|
||||
format: uc-mac
|
||||
examples:
|
||||
- aa:bb:cc:dd:ee:ff
|
||||
port-list:
|
||||
type: array
|
||||
description:
|
||||
The list of physical network devices
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
description:
|
||||
The logical name of the port that is used by the OS
|
||||
examples:
|
||||
- Ethernet0
|
||||
- Ethernet1
|
||||
- Ethernet76
|
||||
front-panel-number:
|
||||
type: integer
|
||||
description:
|
||||
The identification number of the port as can be seen on the front-panel of the device
|
||||
port-capabilities:
|
||||
type: object
|
||||
description:
|
||||
Description of physical ports and their form-factors
|
||||
properties:
|
||||
form-factors:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- RJ45
|
||||
- SFP
|
||||
- SFP+
|
||||
- SFP28
|
||||
- SFP-DD
|
||||
- QSFP
|
||||
- QSFP+
|
||||
- QSFP28
|
||||
- QSFP-DD
|
||||
ports-list:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
examples:
|
||||
- RJ45
|
||||
ports:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
examples:
|
||||
- Ethernet1
|
||||
poe-capabilities:
|
||||
type: object
|
||||
description:
|
||||
Description of physical ports and their PoE capabilities
|
||||
properties:
|
||||
supported-standards:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- .3AF-POE
|
||||
- .3AT-POE+
|
||||
- .3BT-PoE++
|
||||
- PreStandard-Passive
|
||||
power-budget:
|
||||
type: integer
|
||||
examples:
|
||||
- 2000
|
||||
poe-ports:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
examples:
|
||||
- .3AF-POE
|
||||
budget-capacity:
|
||||
type: integer
|
||||
ports:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
examples:
|
||||
- Ethernet1
|
||||
mclag-capabilities:
|
||||
description: Capabilities of the MC-LAG (Multi-Chassis Link Aggregation) feature in the switch
|
||||
type: object
|
||||
properties:
|
||||
max-mclag-groups:
|
||||
description: Defines the maximum number of MC-LAG groups that can be configured on the switch.
|
||||
type: integer
|
||||
max-ports-per-mclag-group:
|
||||
description: Specifies the maximum number of physical ports that can be part of a single MC-LAG group.
|
||||
type: integer
|
||||
max-vlans-per-mclag-group:
|
||||
description: Indicates the maximum number of VLANs that can be supported within a single MC-LAG group.
|
||||
type: integer
|
||||
dual-active-detection:
|
||||
description: Describes the dual-active detection mechanism to prevent both switches from becoming active simultaneously.
|
||||
type: string
|
||||
enum:
|
||||
- ICCP
|
||||
- Backup-Link
|
||||
- None
|
||||
failover-time-milliseconds:
|
||||
description: Specifies the time (in milliseconds) required for traffic to fail over to the secondary switch when there is a failure in the primary switch.
|
||||
type: integer
|
||||
vlan-synchronization:
|
||||
description: Indicates whether VLAN synchronization across MC-LAG peers is supported and the number of VLANs that can be synchronized.
|
||||
type: boolean
|
||||
max-mac-entries-per-mclag:
|
||||
description: Maximum number of MAC address entries that can be synchronized across MC-LAG peers.
|
||||
type: integer
|
||||
lldp-capabilities:
|
||||
type: object
|
||||
description:
|
||||
Description of LLDP capabilities across different switch models/vendors.
|
||||
properties:
|
||||
supported-tlvs:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- lldp-basic-tlv-mgmt-ip-v4
|
||||
- lldp-basic-tlv-mgmt-ip-v6
|
||||
- lldp-basic-tlv-port-descr
|
||||
- lldp-basic-tlv-sys-capab
|
||||
- lldp-basic-tlv-sys-descr
|
||||
- lldp-basic-tlv-sys-name
|
||||
- lldp-dot1-tlv-proto-ident
|
||||
- lldp-dot1-tlv-proto-vid
|
||||
- lldp-dot1-tlv-pvid
|
||||
- lldp-dot1-tlv-vlan-name
|
||||
- lldp-dot3-tlv-link-agg
|
||||
- lldp-dot3-tlv-mac-phy
|
||||
- lldp-dot3-tlv-max-frame
|
||||
- lldp-dot3-tlv-poe
|
||||
- lldp-med-location-civic-addr
|
||||
- lldp-med-tlv-ext-poe
|
||||
- lldp-med-tlv-inventory
|
||||
- lldp-med-tlv-location
|
||||
- lldp-med-tlv-med-cap
|
||||
- lldp-med-tlv-network-policy
|
||||
max-neighbors:
|
||||
type: integer
|
||||
description: Maximum number of LLDP neighbors a switch can discover and maintain.
|
||||
examples:
|
||||
- 64
|
||||
- 128
|
||||
- 256
|
||||
supported-features:
|
||||
type: array
|
||||
description:
|
||||
List of all features supported by the device
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
# L2
|
||||
- VLAN
|
||||
- VLAN-Voice
|
||||
- Jumbo-Frames
|
||||
- Link-Aggregation-LACP
|
||||
- Link-Aggregation-Static
|
||||
- Link-Aggregation-MCLAG
|
||||
- Port-Isolation
|
||||
- Spanning-Tree
|
||||
- Spanning-Tree-Rapid
|
||||
- Spanning-Tree-Per-VLAN
|
||||
- Spanning-Tree-Per-VLAN-Rapid
|
||||
- Spanning-Tree-MSTP
|
||||
# L3
|
||||
- SVI-StaticIPv4
|
||||
- SVI-StaticIPv6
|
||||
- Interface-StaticIPv4
|
||||
- Interface-StaticIPv6
|
||||
- Routing-VRF
|
||||
- Routing-IPv4-Route-Blackhole
|
||||
- Routing-IPv4-Route-Unreachable
|
||||
- Routing-IPv4-Nexthop
|
||||
- Routing-IPv4-Broadcast
|
||||
- Routing-IPv4-Multicast-IGMP-Snooping
|
||||
- Routing-IPv4-Multicast-IGMP-Querier
|
||||
- Routing-IPv4-Multicast-IGMP-Static
|
||||
- Routing-IPv4-DHCP-Server
|
||||
- Routing-IPv4-DHCP-Relay
|
||||
- Routing-IPv4-DHCP-Snooping
|
||||
- Routing-IPv4-Port-Forward
|
||||
- Routing-IPv6-DHCP-Relay
|
||||
- Routing-IPv6-DHCP-Stateful
|
||||
- Routing-IPv6-DHCP-Stateless
|
||||
- Routing-IPv6-Port-Forward
|
||||
- Multicast-VLAN-Registration
|
||||
# PoE
|
||||
- PoE-Reset
|
||||
# .1X
|
||||
- Port-Access-Control
|
||||
- PAC-Dynamic-Auth
|
||||
- mac-address-bypass
|
||||
# System
|
||||
- System-PasswordChange
|
||||
- System-SwUpdate
|
||||
- System-SwUpdate-Partial
|
||||
- Port-Mirroring
|
||||
# Security
|
||||
- MAC-ACL
|
||||
- IP-ACL
|
||||
- Guest-VLAN
|
||||
# Services
|
||||
- Service-SSH
|
||||
- Service-RSSH
|
||||
- Service-Telnet
|
||||
- Service-LLDP
|
||||
- Service-HTTP
|
||||
- Service-HTTPS
|
||||
- Service-GPS
|
||||
- Service-IGMP
|
||||
- Service-NTP
|
||||
- Service-NTP-Client
|
||||
- Service-MDNS
|
||||
- Service-QoS
|
||||
- Service-Syslog
|
||||
- Service-PAC
|
||||
- Service-Wireguard-Overlay
|
||||
- Service-Radius-Proxy
|
||||
- Service-Online-Check
|
||||
- Service-CaptivePortal
|
||||
- Service-PublicIpCheck
|
||||
# Tunneling
|
||||
- Tunneling-VxLAN
|
||||
- Tunneling-GRE
|
||||
- Tunneling-GRE6
|
||||
- Tunneling-L2TP
|
||||
- Tunneling-Mesh
|
||||
@@ -7,7 +7,8 @@ set -x
|
||||
./merge-schema.py schema schema ucentral.yml ucentral.schema.pretty.json 0 1
|
||||
./merge-schema.py schema schema ucentral.yml ucentral.schema.full.json 0 0
|
||||
./merge-schema.py state state state.yml ucentral.state.pretty.json 0 1
|
||||
./generate-reader.uc > schemareader.uc
|
||||
./merge-schema.py capabilities capabilities connect.capabilities.yml ucentral.capabilities.pretty.json 0 1
|
||||
#./generate-reader.uc > schemareader.uc
|
||||
#./generate-example.uc > input.json
|
||||
mkdir -p docs
|
||||
which generate-schema-doc > /dev/null
|
||||
|
||||
@@ -18,6 +18,13 @@ properties:
|
||||
- LAN*
|
||||
- WAN*
|
||||
- "*"
|
||||
name:
|
||||
description:
|
||||
This is a free text field, stating the administrative name of the
|
||||
port. It may contain spaces and special characters, not exceeding 64 characters.
|
||||
type: string
|
||||
examples:
|
||||
- cloud_uplink_port
|
||||
speed:
|
||||
description:
|
||||
The link speed that shall be forced.
|
||||
@@ -31,6 +38,7 @@ properties:
|
||||
- 10000
|
||||
- 25000
|
||||
- 100000
|
||||
default: 1000
|
||||
duplex:
|
||||
description:
|
||||
The duplex mode that shall be forced.
|
||||
@@ -38,6 +46,7 @@ properties:
|
||||
enum:
|
||||
- half
|
||||
- full
|
||||
default: full
|
||||
enabled:
|
||||
description:
|
||||
This allows forcing the port to down state by default.
|
||||
@@ -92,7 +101,7 @@ properties:
|
||||
power-limit:
|
||||
description:
|
||||
Option to configure user defined absolute power limit PoE port can dain (in milliwatts, mW).
|
||||
type: number
|
||||
type: integer
|
||||
default: 99900
|
||||
priority:
|
||||
description:
|
||||
@@ -135,10 +144,10 @@ properties:
|
||||
- auto
|
||||
default: force-authorized
|
||||
host-mode:
|
||||
description:
|
||||
Multi-auth — While in this mode, multiple devices are allowed to independently authenticate through the same port.
|
||||
Multi-domain — While in this mode, the authenticator will allow one host from the data domain and one from the voice domain.
|
||||
Multi-host — While in this mode, the first device to authenticate will open to the switchport so that all other devices can use the port. These other devices are not required to be authenticated independently.
|
||||
description: |
|
||||
Multi-auth - While in this mode, multiple devices are allowed to independently authenticate through the same port.
|
||||
Multi-domain - While in this mode, the authenticator will allow one host from the data domain and one from the voice domain.
|
||||
Multi-host - While in this mode, the first device to authenticate will open to the switchport so that all other devices can use the port. These other devices are not required to be authenticated independently.
|
||||
Single-host - While in this mode, the switchport will only allow a single host to be authenticated and to pass traffic at a time.
|
||||
type: string
|
||||
enum:
|
||||
@@ -159,3 +168,200 @@ properties:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4094
|
||||
mac-address-bypass:
|
||||
description: Enables bypass when a device does not support 802.1X authentication (e.g., printers, IP phones)
|
||||
type: boolean
|
||||
mac-address-bypass-timeout-minutes:
|
||||
description: Defines the time period (in minutes) for which a MAC address is allowed access to the network without requiring reauthentication, after being authenticated or allowed via MAC Authentication Bypass (MAB).
|
||||
type: integer
|
||||
trunk-group:
|
||||
description: Associates this port to a trunk or a port-channel.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
lacp-config:
|
||||
description:
|
||||
This section describes the 802.3ad Link Aggregation Control Protocol (LACP) configuration for the current interface.
|
||||
type: object
|
||||
properties:
|
||||
lacp-enable:
|
||||
description:
|
||||
Enables 802.3ad Link Aggregation Control Protocol (LACP) for the current interface.
|
||||
type: boolean
|
||||
default: false
|
||||
lacp-role:
|
||||
description:
|
||||
Configures the port LACP role as actor or partner.
|
||||
type: string
|
||||
enum:
|
||||
- actor
|
||||
- partner
|
||||
default: actor
|
||||
lacp-mode:
|
||||
description:
|
||||
Configures the LACP negotiation activity mode as active or passive.
|
||||
type: string
|
||||
enum:
|
||||
- active
|
||||
- passive
|
||||
default: passive
|
||||
lacp-port-admin-key:
|
||||
description:
|
||||
Configures the port's LACP administration key.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
default: 1
|
||||
lacp-port-priority:
|
||||
description:
|
||||
Configures the LACP port priority.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
default: 32768
|
||||
lacp-system-priority:
|
||||
description:
|
||||
Configures the LACP System priority.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
default: 32768
|
||||
lacp-pchan-admin-key:
|
||||
description:
|
||||
Configures the port channel's LACP administration key (optional).
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
lacp-timeout:
|
||||
description:
|
||||
Configures the timeout to wait for the next LACP data unit.
|
||||
type: string
|
||||
enum:
|
||||
- short
|
||||
- long
|
||||
default: long
|
||||
lldp-interface-config:
|
||||
type: object
|
||||
description: Configurations of LLDP on a specified interface.
|
||||
properties:
|
||||
lldp-admin-status:
|
||||
type: string
|
||||
description: Enables LLDP transmit, receive, or transmit and receive mode on the specified port.
|
||||
enum:
|
||||
- rx
|
||||
- tx
|
||||
- rx-tx
|
||||
lldp-basic-tlv-mgmt-ip-v4:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise the management address for this device.
|
||||
default: true
|
||||
lldp-basic-tlv-mgmt-ip-v6:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise the management IPv6 address for this device, if available.
|
||||
default: false
|
||||
lldp-basic-tlv-port-descr:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its port description.
|
||||
default: true
|
||||
lldp-basic-tlv-sys-capab:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its system capabilities.
|
||||
default: true
|
||||
lldp-basic-tlv-sys-descr:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise the system description.
|
||||
default: true
|
||||
lldp-basic-tlv-sys-name:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its system name.
|
||||
default: true
|
||||
lldp-dot1-tlv-proto-ident:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise the supported protocols.
|
||||
default: true
|
||||
lldp-dot1-tlv-proto-vid:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise port-based protocol-related VLAN information.
|
||||
default: true
|
||||
lldp-dot1-tlv-pvid:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its default Native VLAN ID (PVID).
|
||||
default: true
|
||||
lldp-dot1-tlv-vlan-name:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its VLAN name.
|
||||
default: true
|
||||
lldp-dot3-tlv-link-agg:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its link aggregation capabilities.
|
||||
default: true
|
||||
lldp-dot3-tlv-mac-phy:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its MAC and physical layer specifications.
|
||||
default: true
|
||||
lldp-dot3-tlv-max-frame:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its maximum frame size.
|
||||
default: true
|
||||
lldp-dot3-tlv-poe:
|
||||
type: boolean
|
||||
description: Configures an LLDP-enabled port to advertise its Power-over-Ethernet capabilities.
|
||||
default: true
|
||||
lldp-med-location-civic-addr:
|
||||
type: object
|
||||
description: Configures an LLDP-MED-enabled port to advertise its location identification details.
|
||||
properties:
|
||||
lldp-med-location-civic-addr-admin-status:
|
||||
type: boolean
|
||||
description: Enables or disables the advertisement of this TLV.
|
||||
default: false
|
||||
lldp-med-location-civic-country-code:
|
||||
type: string
|
||||
description: Configure the two-letter ISO 3166 country code in capital ASCII letters.
|
||||
lldp-med-location-civic-device-type:
|
||||
type: integer
|
||||
description: The type of device to which the location applies.
|
||||
lldp-med-location-civic-ca:
|
||||
description: The list of LLDP MED Location CA Types to advertise the physical location of the device, that is the city, street number, building and room information.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
lldp-med-location-civic-ca-type:
|
||||
type: integer
|
||||
description: A one-octet descriptor of the data civic address value.
|
||||
maximum: 255
|
||||
minimum: 0
|
||||
lldp-med-location-civic-ca-value:
|
||||
type: string
|
||||
description: Description of a location.
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
lldp-med-notification:
|
||||
type: boolean
|
||||
description: Enables the transmission of SNMP trap notifications about LLDP-MED changes.
|
||||
default: false
|
||||
lldp-med-tlv-ext-poe:
|
||||
type: boolean
|
||||
description: Configures an LLDP-MED-enabled port to advertise its extended Power over Ethernet configuration and usage information.
|
||||
default: true
|
||||
lldp-med-tlv-inventory:
|
||||
type: boolean
|
||||
description: Configures an LLDP-MED-enabled port to advertise its inventory identification details.
|
||||
default: true
|
||||
lldp-med-tlv-location:
|
||||
type: boolean
|
||||
description: Configures an LLDP-MED-enabled port to advertise its location identification details.
|
||||
default: true
|
||||
lldp-med-tlv-med-cap:
|
||||
type: boolean
|
||||
description: Configures an LLDP-MED-enabled port to advertise its Media Endpoint Device capabilities.
|
||||
default: true
|
||||
lldp-med-tlv-network-policy:
|
||||
type: boolean
|
||||
description: Configures an LLDP-MED-enabled port to advertise its network policy configuration.
|
||||
default: true
|
||||
lldp-notification:
|
||||
type: boolean
|
||||
description: Enables the transmission of SNMP trap notifications about LLDP changes.
|
||||
default: false
|
||||
@@ -40,7 +40,7 @@ properties:
|
||||
vrf:
|
||||
description:
|
||||
VRF id.
|
||||
type: number
|
||||
type: integer
|
||||
ipv4-unreachable:
|
||||
description:
|
||||
Define a list of non-interface specific UNREACHABLE routes.
|
||||
@@ -58,4 +58,4 @@ properties:
|
||||
vrf:
|
||||
description:
|
||||
VRF id.
|
||||
type: number
|
||||
type: integer
|
||||
|
||||
33
schema/interface.acl.yml
Normal file
33
schema/interface.acl.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
description: A collection of access control entries that define the rules for filtering traffic through a network interface.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
acl-inf-policy-preference:
|
||||
description: Determines the priority of multiple ACL policies when more than one is applied to an interface, if any.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
default: 1
|
||||
acl-inf-policy-ingress:
|
||||
description: Specifies the ACL policy that is applied to incoming traffic on an interface.
|
||||
type: string
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
examples:
|
||||
- blacklisted-macs
|
||||
acl-inf-counters-ingress:
|
||||
description: Tracks the number and type of packets that match the ingress ACL rules on an interface.
|
||||
type: boolean
|
||||
default: false
|
||||
acl-inf-policy-egress:
|
||||
description: Specifies the ACL policy that is applied to outgoing traffic from an interface.
|
||||
type: string
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
examples:
|
||||
- blacklisted-macs
|
||||
acl-inf-counters-egress:
|
||||
description: Tracks the number and type of packets that match the egress ACL rules on an interface.
|
||||
type: boolean
|
||||
default: false
|
||||
16
schema/interface.dhcp-snoop-port.yml
Normal file
16
schema/interface.dhcp-snoop-port.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
description: "Configuration for DHCP Snooping on a port level on a switch"
|
||||
type: object
|
||||
properties:
|
||||
dhcp-snoop-port-trust:
|
||||
description: "This parameter designates a switch port as ‘trusted’ for DHCP messages, meaning it can forward DHCP offers and acknowledgments, which is essential for connecting to legitimate DHCP servers"
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snoop-port-client-limit:
|
||||
description: "It sets a limit on the number of DHCP clients that can be associated with a single port, helping to prevent a single port from exhausting the network’s IP address pool"
|
||||
type: integer
|
||||
minimum: 1
|
||||
dhcp-snoop-port-circuit-id:
|
||||
description: "Specifies DHCP Option 82 circuit ID suboption information. Often including information like the interface number and VLAN ID, this can be useful for network management and troubleshooting"
|
||||
type: string
|
||||
minLength: 1
|
||||
maxLength: 32
|
||||
@@ -20,3 +20,19 @@ properties:
|
||||
type: string
|
||||
format: uc-timeout
|
||||
default: 6h
|
||||
relay-server:
|
||||
description:
|
||||
Use host at this IPv4 address to forward packets between clients and servers on different subnets.
|
||||
type: string
|
||||
format: ipv4
|
||||
example: 192.168.2.1
|
||||
circuit-id-format:
|
||||
description:
|
||||
This option selects what info shall be contained within a relayed frame's circuit ID.
|
||||
The string passed in has placeholders that are placed inside a bracket pair "{}".
|
||||
Any text not contained within brackets will be included as freetext.
|
||||
Valid placeholders are "Interface, VLAN-ID"
|
||||
type: string
|
||||
example:
|
||||
- \{Interface\}:\{VLAN-ID\}}
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ properties:
|
||||
vrf:
|
||||
description:
|
||||
VRF id.
|
||||
type: number
|
||||
type: integer
|
||||
gateway:
|
||||
description:
|
||||
This option defines the static IPv4 gateway of the logical interface.
|
||||
@@ -55,7 +55,7 @@ properties:
|
||||
vrf:
|
||||
description:
|
||||
VRF id.
|
||||
type: number
|
||||
type: integer
|
||||
metric:
|
||||
description:
|
||||
Optional metric value (define a NH route's weight / metric).
|
||||
@@ -77,7 +77,107 @@ properties:
|
||||
vrf:
|
||||
description:
|
||||
VRF id.
|
||||
type: number
|
||||
type: integer
|
||||
multicast:
|
||||
type: object
|
||||
properties:
|
||||
unknown-multicast-flood-control:
|
||||
description:
|
||||
The unknown multicast flood control feature enables the system to forward unknown multicast packets only to a multicast router (mrouter).
|
||||
type: boolean
|
||||
default: true
|
||||
igmp:
|
||||
type: object
|
||||
properties:
|
||||
snooping-enable:
|
||||
description:
|
||||
Enable or disable IGMP snooping on per-VLAN basis.
|
||||
type: boolean
|
||||
default: true
|
||||
version:
|
||||
description:
|
||||
Configures the IGMP version. Configurable versions are IGMPv1, IGMPv2, and IGMPv3
|
||||
type: integer
|
||||
enum:
|
||||
- 1
|
||||
- 2
|
||||
- 3
|
||||
examples:
|
||||
- 3
|
||||
default: 3
|
||||
querier-enable:
|
||||
description:
|
||||
Configure this interface to act as a querier (multicast router)
|
||||
type: boolean
|
||||
default: false
|
||||
fast-leave-enable:
|
||||
description:
|
||||
Removes the group state when it receives an IGMP Leave report without sending an IGMP query message
|
||||
type: boolean
|
||||
default: false
|
||||
query-interval:
|
||||
description:
|
||||
Defines the interval between sending IGMP general queries
|
||||
type: integer
|
||||
default: 1000
|
||||
last-member-query-interval:
|
||||
description:
|
||||
Defines the maximum response time (milliseconds) advertised in IGMP group-specific queries
|
||||
type: integer
|
||||
default: 1000
|
||||
max-response-time:
|
||||
description:
|
||||
Configures a query maximum response time (in seconds) that is advertised on IGMP queries.
|
||||
type: integer
|
||||
default: 10
|
||||
static-mcast-groups:
|
||||
description:
|
||||
Configures a Layer 2 port of a VLAN as a static member of an IGMP multicast group(s).
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
egress-ports:
|
||||
description:
|
||||
Specify egress port(s) to forward mcast traffc of static group to.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
address:
|
||||
description:
|
||||
Specify IPV4 address (group) this interface is statically configured to be member of.
|
||||
type: string
|
||||
format: ipv4
|
||||
examples:
|
||||
- 225.0.0.1
|
||||
mvr:
|
||||
type: object
|
||||
description: MVR attributes on a given interface
|
||||
properties:
|
||||
mvr-intf-mvr-role:
|
||||
type: string
|
||||
description: Configure an interface as an MVR receiver or source port. A port which is not configured as an MVR receiver or source port can use IGMP snooping to join or leave multicast groups using the standard rules for multicast filtering.
|
||||
enum:
|
||||
- none
|
||||
- source
|
||||
- receiver
|
||||
mvr-intf-immed-leave:
|
||||
type: string
|
||||
description: Switch to immediately remove an interface from a multicast stream as soon as it receives a leave message for that group. Applies to only receiver role ports.
|
||||
enum:
|
||||
- none
|
||||
- by-host-ip
|
||||
- by-group
|
||||
default: by-group
|
||||
mvr-intf-assoc-domain:
|
||||
type: integer
|
||||
description: Map the port to a specific domain.
|
||||
maximum: 10
|
||||
minimum: 1
|
||||
required:
|
||||
- mvr-intf-mvr-role
|
||||
- mvr-intf-immed-leave
|
||||
- mvr-intf-assoc-domain
|
||||
send-hostname:
|
||||
description:
|
||||
include the devices hostname inside DHCP requests
|
||||
@@ -96,6 +196,39 @@ properties:
|
||||
examples:
|
||||
- 8.8.8.8
|
||||
- 4.4.4.4
|
||||
dhcp-snoop-vlan-enable:
|
||||
description: "Enables DHCP Snooping on a VLAN"
|
||||
type: boolean
|
||||
default: false
|
||||
voice-vlan-intf-config:
|
||||
description: "Configure the Voice VLAN feature at the interface level, allowing for VoIP traffic to be prioritized on this specific port."
|
||||
type: object
|
||||
properties:
|
||||
voice-vlan-intf-mode:
|
||||
description: "Specify the mode of placing this port on the voice VLAN."
|
||||
type: string
|
||||
default: "auto"
|
||||
enum:
|
||||
- none
|
||||
- manual
|
||||
- auto
|
||||
voice-vlan-intf-priority:
|
||||
description: "Define the Class of Service (CoS) priority for VoIP traffic passing through this port, ensuring higher priority over other traffic types."
|
||||
type: integer
|
||||
default: 6
|
||||
minimum: 0
|
||||
maximum: 6
|
||||
voice-vlan-intf-detect-voice:
|
||||
description: "Select the detection method for identifying VoIP traffic on this port, such as OUI-based detection or traffic pattern recognition."
|
||||
type: string
|
||||
default: "oui"
|
||||
enum:
|
||||
- oui
|
||||
- lldp
|
||||
voice-vlan-intf-security:
|
||||
description: "Enable or configure security filtering for VoIP traffic on the interface to protect against unauthorized devices."
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/ipv4/dhcp/"
|
||||
dhcp-leases:
|
||||
|
||||
@@ -68,6 +68,10 @@ properties:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/ipv4/"
|
||||
ipv6:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/ipv6/"
|
||||
acl:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/acl/"
|
||||
dhcp-snooop-port:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/dhcp-snoop-port/"
|
||||
broad-band:
|
||||
$ref: "https://ucentral.io/schema/v1/interface/broad-band/"
|
||||
ssids:
|
||||
|
||||
@@ -18,3 +18,10 @@ properties:
|
||||
- lldp
|
||||
- clients
|
||||
- tid-stats
|
||||
wired-clients-max-num:
|
||||
description:
|
||||
Configure maximum number of FDB entries device's allowed to report.
|
||||
If omitted, device-default number should be used (2000).
|
||||
Setting to zero means no entries should be reported, flag should be raised.
|
||||
If device's current FDB size exceeds configured value, flag should be raised as well.
|
||||
type: integer
|
||||
|
||||
@@ -9,3 +9,7 @@ properties:
|
||||
maximum: 65535
|
||||
minimum: 1
|
||||
default: 80
|
||||
enable:
|
||||
description:
|
||||
This option whether http server should be enabled or disabled.
|
||||
type: boolean
|
||||
|
||||
15
schema/service.https.yml
Normal file
15
schema/service.https.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
description:
|
||||
Enable the webserver with the on-boarding webui
|
||||
type: object
|
||||
properties:
|
||||
https-port:
|
||||
description:
|
||||
The port that the secure HTTP server should run on.
|
||||
type: integer
|
||||
maximum: 65535
|
||||
minimum: 1
|
||||
default: 443
|
||||
enable:
|
||||
description:
|
||||
This option whether secure http server should be enabled or disabled.
|
||||
type: boolean
|
||||
@@ -25,3 +25,7 @@ properties:
|
||||
to false, only ssh key based authentication is possible.
|
||||
type: boolean
|
||||
default: true
|
||||
enable:
|
||||
description:
|
||||
This option whether SSH server should be enabled or disabled.
|
||||
type: boolean
|
||||
|
||||
8
schema/service.telnet.yml
Normal file
8
schema/service.telnet.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
description:
|
||||
This section can be used to setup a Telnet server on the device.
|
||||
type: object
|
||||
properties:
|
||||
enable:
|
||||
description:
|
||||
This option whether telnet server should be enabled or disabled.
|
||||
type: boolean
|
||||
@@ -47,3 +47,7 @@ properties:
|
||||
$ref: 'https://ucentral.io/schema/v1/service/admin-ui/'
|
||||
rrm:
|
||||
$ref: 'https://ucentral.io/schema/v1/service/rrm/'
|
||||
telnet:
|
||||
$ref: "https://ucentral.io/schema/v1/service/telnet/"
|
||||
https:
|
||||
$ref: "https://ucentral.io/schema/v1/service/https/"
|
||||
|
||||
@@ -5,18 +5,20 @@ properties:
|
||||
port-mirror:
|
||||
description:
|
||||
Enable mirror of traffic from multiple minotor ports to a single analysis port.
|
||||
type: object
|
||||
properties:
|
||||
monitor-ports:
|
||||
description:
|
||||
The list of ports that we want to mirror.
|
||||
type: array
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
monitor-ports:
|
||||
description:
|
||||
The list of ports that we want to mirror.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
analysis-port:
|
||||
description:
|
||||
The port that mirror'ed packets should be sent to.
|
||||
type: string
|
||||
analysis-port:
|
||||
description:
|
||||
The port that mirror'ed packets should be sent to.
|
||||
type: string
|
||||
loop-detection:
|
||||
description:
|
||||
Enable loop detection on the L2 switches/bridge.
|
||||
@@ -43,50 +45,50 @@ properties:
|
||||
enum:
|
||||
- upstream
|
||||
- downstream
|
||||
instances:
|
||||
description:
|
||||
Define a list of configuration for each STP instance.
|
||||
Meaning of this field depends on current
|
||||
STP protocol (switch.loop-detection.protocol)
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
description:
|
||||
Indicates instance to configure.
|
||||
Depends on current STP protocol
|
||||
If RPVSTP/PVSTP - vlan id
|
||||
If MSTP - instance id
|
||||
type: integer
|
||||
enabled:
|
||||
description:
|
||||
Enable STP on this instance.
|
||||
type: boolean
|
||||
default: true
|
||||
priority:
|
||||
description:
|
||||
Bridge priority.
|
||||
type: integer
|
||||
default: 32768
|
||||
forward_delay:
|
||||
description:
|
||||
Defines the amount of time a switch port stays in the Listening
|
||||
and Learning states before transitioning to the Forwarding state.
|
||||
type: integer
|
||||
default: 15
|
||||
hellow_time:
|
||||
description:
|
||||
Determines how often switches send BPDU.
|
||||
type: integer
|
||||
default: 2
|
||||
max_age:
|
||||
description:
|
||||
Specifies the maximum time that a switch port should wait to
|
||||
receive a BPDU from its neighbor before
|
||||
considering the link as failed or disconnected.
|
||||
type: integer
|
||||
default: 20
|
||||
instances:
|
||||
description:
|
||||
Define a list of configuration for each STP instance.
|
||||
Meaning of this field depends on current
|
||||
STP protocol (switch.loop-detection.protocol)
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
description:
|
||||
Indicates instance to configure.
|
||||
Depends on current STP protocol
|
||||
If RPVSTP/PVSTP - vlan id
|
||||
If MSTP - instance id
|
||||
type: integer
|
||||
enabled:
|
||||
description:
|
||||
Enable STP on this instance.
|
||||
type: boolean
|
||||
default: true
|
||||
priority:
|
||||
description:
|
||||
Bridge priority.
|
||||
type: integer
|
||||
default: 32768
|
||||
forward_delay:
|
||||
description:
|
||||
Defines the amount of time a switch port stays in the Listening
|
||||
and Learning states before transitioning to the Forwarding state.
|
||||
type: integer
|
||||
default: 15
|
||||
hello_time:
|
||||
description:
|
||||
Determines how often switches send BPDU.
|
||||
type: integer
|
||||
default: 2
|
||||
max_age:
|
||||
description:
|
||||
Specifies the maximum time that a switch port should wait to
|
||||
receive a BPDU from its neighbor before
|
||||
considering the link as failed or disconnected.
|
||||
type: integer
|
||||
default: 20
|
||||
ieee8021x:
|
||||
description:
|
||||
This section describes the global 802.1X (port access control) configuration.
|
||||
@@ -129,3 +131,579 @@ properties:
|
||||
type: integer
|
||||
maximum: 64
|
||||
minimum: 1
|
||||
dynamic-authorization:
|
||||
description:
|
||||
Additional dynamic authorization (RFC 5176 compliant) - configure option for DAS that enable RM and CoA processing.
|
||||
type: object
|
||||
properties:
|
||||
auth-type:
|
||||
description:
|
||||
Sets the accepted authorization types for dynamic RADIUS clients.
|
||||
all - Selects all COA client authentication types. All authentication attributes must match for the authentication to succeed.
|
||||
any - Selects any COA client authentication type. Any authentication attribute may match for the authentication to succeed.
|
||||
session-key - Indicates that the session-key must match for authentication to succeed.
|
||||
type: string
|
||||
enum:
|
||||
- all
|
||||
- any
|
||||
- session-key
|
||||
bounce-port-ignore:
|
||||
description:
|
||||
Sets the switch to ignore bounce-port requests from dynamic authorization clients.
|
||||
type: boolean
|
||||
default: false
|
||||
disable-port-ignore:
|
||||
description:
|
||||
Sets the switch to ignore requests from dynamic authorization clients.
|
||||
type: boolean
|
||||
default: false
|
||||
ignore-server-key:
|
||||
description:
|
||||
Do not attmept to authenticate with the server key.
|
||||
type: boolean
|
||||
default: false
|
||||
ignore-session-key:
|
||||
description:
|
||||
Do not attmept to authenticate with the session key.
|
||||
type: boolean
|
||||
default: false
|
||||
server-key:
|
||||
description:
|
||||
Sets the shared secret to verify client COA requests for this server.
|
||||
type: string
|
||||
client:
|
||||
description:
|
||||
Configure DAC.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
address:
|
||||
description:
|
||||
A valid IP address or hostname of a DAC.
|
||||
type: string
|
||||
server-key:
|
||||
description:
|
||||
Sets the shared secret to verify client COA requests for this server.
|
||||
type: string
|
||||
port-isolation:
|
||||
description:
|
||||
This section describes the per-port specific port-isolation matrix (to which ports selected port can forward traffic to) configuration.
|
||||
Omitting this configuration completely fully disables any port-isolation configuration on this given port.
|
||||
type: object
|
||||
properties:
|
||||
sessions:
|
||||
description:
|
||||
Allow selected port to forward traffic in the provided session-based format.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
description:
|
||||
Session id to configure.
|
||||
type: integer
|
||||
uplink:
|
||||
description:
|
||||
Configuration object for uplink interface(s)
|
||||
type: object
|
||||
properties:
|
||||
interface-list:
|
||||
description:
|
||||
List of interfaces (either physical or trunk ports)
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
downlink:
|
||||
description:
|
||||
Configuration object for downlink interface(s)
|
||||
type: object
|
||||
properties:
|
||||
interface-list:
|
||||
description:
|
||||
List of interfaces (either physical or trunk ports)
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
trunk-balance-method:
|
||||
description:
|
||||
Sets the load-distribution method among ports in aggregated links for both static and LACP based trunks.
|
||||
type: string
|
||||
enum:
|
||||
- dst-ip
|
||||
- dst-mac
|
||||
- src-dst-ip
|
||||
- src-dst-mac
|
||||
- src-ip
|
||||
- src-mac
|
||||
default: src-dst-mac
|
||||
jumbo-frames:
|
||||
description:
|
||||
Enables Jumbo frames
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snooping:
|
||||
description: DHCP Snooping configuration parameters
|
||||
type: object
|
||||
properties:
|
||||
dhcp-snoop-enable:
|
||||
description: "Enables DHCP Snooping on the network switch, which is a security feature that prevents unauthorized DHCP servers from offering IP addresses"
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snoop-rate-limit:
|
||||
description: "Sets a limit on the number of DHCP packets per second that can be received on an untrusted interface to prevent DHCP flooding attacks"
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 2048
|
||||
dhcp-snoop-mac-verify:
|
||||
description: "This option ensures that the MAC address in a DHCP request matches the source MAC address of the packet, providing an additional layer of security"
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snoop-inf-opt-82:
|
||||
description: "This refers to the insertion of information option 82 in DHCP packets, which adds more details about the client’s location and network information for tracking and control purposes"
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snoop-inf-opt-encode-subopt:
|
||||
description: "This parameter allows for the encoding of sub-options within option 82 to further specify client information"
|
||||
type: boolean
|
||||
default: false
|
||||
dhcp-snoop-inf-opt-remoteid:
|
||||
description: "It specifies the remote ID sub-option in option 82, which typically includes information like the circuit ID or remote host identifier"
|
||||
type: string
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
dhcp-snoop-inf-opt-policy:
|
||||
description: "This defines the policy for handling packets with option 82, determining whether they should be forwarded or dropped based on the configuration"
|
||||
type: string
|
||||
enum:
|
||||
- drop
|
||||
- keep
|
||||
- replace
|
||||
acl:
|
||||
description: Contains all the access control rule definitions
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
acl-type:
|
||||
description: Type of the access control list
|
||||
type: string
|
||||
enum:
|
||||
- ipv4
|
||||
- ipv6
|
||||
- ipv4Ext
|
||||
- ipv6Ext
|
||||
- mac
|
||||
- arp
|
||||
acl-name:
|
||||
description: The identifier or name for the Access Control List
|
||||
type: string
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
acl-rule-action:
|
||||
description: Defines whether to permit or deny traffic matching the rule
|
||||
type: string
|
||||
enum:
|
||||
- permit
|
||||
- deny
|
||||
acl-source-macaddress:
|
||||
description: Specifies the source MAC address to filter on
|
||||
type: string
|
||||
format: uc-mac
|
||||
acl-source-macbitmask:
|
||||
description: The mask applied to the source MAC address
|
||||
type: string
|
||||
format: uc-mac
|
||||
acl-dest-macaddress:
|
||||
description: Specifies the destination MAC address for the filter
|
||||
type: string
|
||||
format: uc-mac
|
||||
acl-dest-macbitmask:
|
||||
description: The mask applied to the destination MAC address
|
||||
type: string
|
||||
format: uc-mac
|
||||
acl-packet-format:
|
||||
description: Identifies the protocol encapsulated in the Ethernet frame by its EtherType
|
||||
type: string
|
||||
enum:
|
||||
- any
|
||||
- untagged-eth2
|
||||
- untagged-802.3
|
||||
- tagged-eth2
|
||||
- tagged-802.3
|
||||
acl-vlanid:
|
||||
description: Specifies a VLAN ID to filter traffic from a specific VLAN
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4094
|
||||
acl-vid-bitmask:
|
||||
description: The mask applied to the VLAN ID
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4095
|
||||
acl-ethertype:
|
||||
description: Filters packets based on the custom EtherType field (HEX) in the Ethernet frame
|
||||
type: string
|
||||
default: "800"
|
||||
acl-ethertype-bitmask:
|
||||
description: The mask applied to the EtherType field
|
||||
type: string
|
||||
default: "FFFF"
|
||||
acl-cos:
|
||||
description: Filters based on the Class of Service (CoS) field in the frame
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 7
|
||||
acl-cos-bitmask:
|
||||
description: The mask applied to the CoS field
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 7
|
||||
# IP-ACL (IPv4/IPv6) Parameters
|
||||
acl-ipv4-source-address:
|
||||
description: The IPv4 address of the source to filter on
|
||||
type: string
|
||||
format: ipv4
|
||||
acl-ipv4-source-subnetmask:
|
||||
description: The subnet mask applied to the source IPv4 address
|
||||
type: string
|
||||
format: ipv4
|
||||
acl-ipv4-dest-address:
|
||||
description: The IPv4 address of the destination to filter on
|
||||
type: string
|
||||
format: ipv4
|
||||
acl-ipv4-dest-subnetmask:
|
||||
description: The subnet mask applied to the destination IPv4 address
|
||||
type: string
|
||||
format: ipv4
|
||||
acl-ipv6-source-address:
|
||||
description: The IPv6 address of the source to filter on
|
||||
type: string
|
||||
format: ipv6
|
||||
acl-ipv6-source-prefix-length:
|
||||
description: Defines the length of the prefix used in filtering IPv6 source addresses
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 128
|
||||
acl-ipv6-dest-address:
|
||||
description: The IPv6 address of the destination to filter on
|
||||
type: string
|
||||
format: ipv6
|
||||
acl-ipv6-dest-prefix-length:
|
||||
description: Defines the length of the prefix used in filtering IPv6 destination addresses
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 128
|
||||
acl-ip-proto:
|
||||
description: Filters based on the IP protocol number
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
acl-ipv6-next-header:
|
||||
description: Specifies the next header type in IPv6 traffic, such as TCP, UDP, or ICMPv6
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
acl-ipv6-flow-label:
|
||||
description: Filters packets based on the IPv6 Flow Label field
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 1048575
|
||||
acl-ip-source-port:
|
||||
description: Specifies the source port number for filtering
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 65535
|
||||
acl-ip-source-port-bitmask:
|
||||
description: The mask applied to the source port number
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 65535
|
||||
acl-ip-dest-port:
|
||||
description: Specifies the destination port number for filtering
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 65535
|
||||
acl-ip-dest-port-bitmask:
|
||||
description: The mask applied to the destination port number
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 65535
|
||||
acl-ipv4-fragment-offset:
|
||||
description: Filters based on IPv4 fragment offset for fragmented packets
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 8191
|
||||
acl-ipv6-fragment-offset:
|
||||
description: Filters based on IPv6 fragment offset for fragmented packets
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 8191
|
||||
acl-ip-ttl:
|
||||
description: Filters IPv4 traffic based on the TTL (Time to Live) value
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
acl-ipv6-hop-limit:
|
||||
description: Filters IPv6 traffic based on the hop limit value, equivalent to IPv4 TTL
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
mvr-config:
|
||||
description: This section defines the Multicast VLAN Registration (MVR) general configuration.
|
||||
type: object
|
||||
properties:
|
||||
mvr-enable:
|
||||
description: Enable/Disable MVR globally on the switch.
|
||||
type: boolean
|
||||
default: false
|
||||
mvr-proxy-query-intvl:
|
||||
description:
|
||||
This command configures the interval (in seconds) at which the receiver port sends out general queries.
|
||||
The maximum value is determined based on 12 hours as maximum interval, and minimum as 1 second as allowed value.
|
||||
type: integer
|
||||
default: 125
|
||||
maximum: 43200
|
||||
minimum: 1
|
||||
mvr-proxy-switching:
|
||||
description:
|
||||
Enable the MVR proxy switching mode, where the source port acts as a host, and the receiver port
|
||||
acts as an MVR router with querier service enabled.
|
||||
type: boolean
|
||||
default: false
|
||||
mvr-robustness-val:
|
||||
description:
|
||||
Configure the expected packet loss, and thereby the number of times to generate report
|
||||
and group-specific queries when changes are learned about downstream groups,
|
||||
and the number of times group-specific queries are sent to downstream receiver ports.
|
||||
Right configuration ensures that multicast group memberships are correctly maintained
|
||||
even if some control messages are lost due to network issues.
|
||||
type: integer
|
||||
default: 2
|
||||
maximum: 255
|
||||
minimum: 1
|
||||
mvr-source-port-mode:
|
||||
description:
|
||||
Configure the switch to forward only multicast streams that a source port has dynamically
|
||||
joined or to forward all multicast groups.
|
||||
type: string
|
||||
default: forward
|
||||
enum:
|
||||
- dynamic
|
||||
- forward
|
||||
mvr-domain-config:
|
||||
description: Configure the Multicast VLAN Registration (MVR) domains.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
mvr-domain-id:
|
||||
description: Unique identifier for a Multicast Domain defined under the MVR.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 10
|
||||
default: 1
|
||||
mvr-domain-enable:
|
||||
description: Enable/disable Multicast VLAN Registration (MVR) for a specific domain.
|
||||
type: boolean
|
||||
default: false
|
||||
mvr-domain-vlan-id:
|
||||
description:
|
||||
Per domain Level Multicast VLAN ID. Specifies the VLAN through which MVR multicast data is received.
|
||||
This is the VLAN to which all source ports must be assigned.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4094
|
||||
default: 1
|
||||
mvr-domain-upstream-sip:
|
||||
description: Configures the source IP address assigned to all MVR control packets sent upstream on all domains or on a specified domain.
|
||||
type: string
|
||||
format: ipv4
|
||||
examples:
|
||||
- 192.168.0.5
|
||||
mvr-group-config:
|
||||
type: array
|
||||
description: List of MVR groups (or profiles) configuration.
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
mvr-group-name:
|
||||
type: string
|
||||
description: The name of a MVR group that consists of one or more MVR group addresses
|
||||
maxLength: 16
|
||||
minLength: 1
|
||||
mvr-group-range-start:
|
||||
type: string
|
||||
format: ipv4
|
||||
description: Start IP address on the range of MVR group addresses that maps to a profile/MVR group
|
||||
mvr-group-range-end:
|
||||
type: string
|
||||
format: ipv4
|
||||
description: Statically configure all multicast group addresses that will join an MVR VLAN. Map a range of MVR group addresses to a profile
|
||||
mvr-group-assoc-domain:
|
||||
descpription: Map the MVR Group to a secific domain. There can be many profiles under a single domain
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
maximum: 10
|
||||
minimum: 1
|
||||
required:
|
||||
- mvr-group-name
|
||||
- mvr-group-range-start
|
||||
- mvr-group-range-end
|
||||
- mvr-group-assoc-domain
|
||||
lldp-global-config:
|
||||
type: object
|
||||
description: Configuration options for LLDP on a global level in a OLS switch.
|
||||
properties:
|
||||
lldp-enable:
|
||||
type: boolean
|
||||
default: true
|
||||
description: Enables or disables LLDP globally at a switch level.
|
||||
lldp-holdtime-multiplier:
|
||||
type: integer
|
||||
description: Configures the time-to-live (TTL) value sent in LLDP advertisements. The TTL tells the receiving LLDP agent how long to retain all information from the sending LLDP agent if it does not transmit updates in a timely manner.
|
||||
default: 4
|
||||
lldp-med-fast-start-count:
|
||||
type: integer
|
||||
description: Configures how many medFastStart packets are transmitted during the activation process of the LLDP-MED Fast Start mechanism.
|
||||
default: 4
|
||||
lldp-refresh-interval:
|
||||
type: integer
|
||||
description: Configures the periodic transmit interval for LLDP advertisements (in seconds).
|
||||
default: 30
|
||||
lldp-reinit-delay:
|
||||
type: integer
|
||||
description: Configures the delay (in seconds) before reinitializing after LLDP ports are disabled or the link goes down.
|
||||
default: 2
|
||||
lldp-tx-delay:
|
||||
type: integer
|
||||
description: Configures a delay (in seconds) between successive transmissions of advertisements initiated by a change in local LLDP state.
|
||||
maximum: 8192
|
||||
minimum: 1
|
||||
lldp-notification-interval:
|
||||
type: integer
|
||||
description: Configures the interval (in seconds) for sending SNMP notifications about LLDP changes.
|
||||
default: 5
|
||||
mc-lag:
|
||||
type: boolean
|
||||
description: Enables MC-LAG or disables it.
|
||||
default: false
|
||||
mclag-config:
|
||||
description: This section defines the MC-LAG configuration parameters for the switch.
|
||||
type: object
|
||||
properties:
|
||||
mclag-domains:
|
||||
description: List of MC-LAG domain configurations for the switch.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
mclag-domain:
|
||||
description: Specifies the MC-LAG domain ID to identify the grouping of peer switches.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 1024
|
||||
default: 1
|
||||
peer-link:
|
||||
description: Configures the peer-link, which could be a physical port or a trunk group that connects the two MC-LAG peer switches.
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
description: Defines the type of peer-link, either 'port' or 'trunk-group'
|
||||
type: string
|
||||
enum:
|
||||
- port
|
||||
- trunk-group
|
||||
default: trunk-group
|
||||
value:
|
||||
description: Specifies the port or trunk-group ID for the peer-link.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
mclag-group:
|
||||
description: Configures the MC-LAG group, which binds the interfaces into a multi-chassis LAG.
|
||||
type: object
|
||||
properties:
|
||||
group-id:
|
||||
description: Defines the unique MC-LAG group identifier.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 128
|
||||
members:
|
||||
description: List of interfaces that participate in the MC-LAG group.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
description: Interface names that are part of the MC-LAG group.
|
||||
examples:
|
||||
- eth0
|
||||
- eth1
|
||||
lacp-config:
|
||||
description: LACP configuration settings for the MC-LAG group.
|
||||
type: object
|
||||
properties:
|
||||
lacp-enable:
|
||||
description: Enables or disables LACP for the MC-LAG group.
|
||||
type: boolean
|
||||
default: true
|
||||
lacp-role:
|
||||
description: Configures the LACP role as 'actor' or 'partner'
|
||||
type: string
|
||||
enum:
|
||||
- actor
|
||||
- partner
|
||||
default: actor
|
||||
lacp-timeout:
|
||||
description: Sets the LACP timeout as either 'short' or 'long'.
|
||||
type: string
|
||||
enum:
|
||||
- short
|
||||
- long
|
||||
default: long
|
||||
system-priority:
|
||||
description: Specifies the system priority used by the switch for LACP negotiations.
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
default: 32768
|
||||
dual-active-detection:
|
||||
description: Enables dual-active detection to prevent split-brain scenarios in MC-LAG.
|
||||
type: boolean
|
||||
default: true
|
||||
voice-vlan-config:
|
||||
description: "This parameter enables or disables the overall configuration of the Voice VLAN feature on the switch. When enabled, it allows the system to classify and prioritize voice traffic."
|
||||
type: object
|
||||
properties:
|
||||
voice-vlan-id:
|
||||
description: "Specifies the VLAN ID assigned to the Voice VLAN. This is the unique identifier for the VLAN that will be used for prioritizing voice traffic."
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4094
|
||||
voice-vlan-ageing-time:
|
||||
description: "Defines the time, in minutes, that a dynamic Voice VLAN entry remains in the VLAN after voice traffic is no longer detected. It helps manage resources by removing inactive voice devices from the VLAN after this time elapses."
|
||||
type: integer
|
||||
minimum: 5
|
||||
maximum: 43200
|
||||
default: 1440
|
||||
voice-vlan-oui-config:
|
||||
description: "Configures the Organizationally Unique Identifier (OUI) for identifying the voice devices (like IP phones)."
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
voice-vlan-oui-mac:
|
||||
description: "The specific MAC address pattern that corresponds to voice devices, as determined by the OUI. It is used for identifying and classifying voice traffic."
|
||||
type: string
|
||||
format: uc-mac
|
||||
voice-vlan-oui-mask:
|
||||
description: "A mask applied to the MAC address to help match the OUI more precisely. It ensures that the correct portion of the MAC address is evaluated to identify a device as a voice device."
|
||||
type: string
|
||||
format: uc-mac
|
||||
voice-vlan-oui-description:
|
||||
description: "A descriptive label or comment for the OUI configuration. This can help administrators keep track of which OUI belongs to which type of voice device or vendor."
|
||||
type: string
|
||||
maxLength: 32
|
||||
minLength: 1
|
||||
examples:
|
||||
- "A VoIP Phone"
|
||||
@@ -12,6 +12,11 @@ properties:
|
||||
description:
|
||||
The unique ID of the configuration. This is the unix timestamp of when the config was created.
|
||||
type: integer
|
||||
public_ip_lookup:
|
||||
description:
|
||||
The fqdn to retrieve public ip of internet connection.
|
||||
type: string
|
||||
format: uc-fqdn
|
||||
unit:
|
||||
$ref: "https://ucentral.io/schema/v1/unit/"
|
||||
globals:
|
||||
|
||||
@@ -37,6 +37,10 @@ properties:
|
||||
The device shall create a random root password and tell the gateway about it.
|
||||
type: boolean
|
||||
default: false
|
||||
system-password:
|
||||
description:
|
||||
System-config string that holds the password for main (root / admin) user to apply.
|
||||
type: string
|
||||
beacon-advertisement:
|
||||
description:
|
||||
The TIP vendor IEs that shall be added to beacons
|
||||
@@ -81,4 +85,28 @@ properties:
|
||||
Configure a power alarm threshold for the Power sourcing equipment (in percentages %).
|
||||
type: number
|
||||
default: 90
|
||||
|
||||
multicast:
|
||||
description:
|
||||
This sections describes the system-wide (unit) multicast configuration object.
|
||||
type: object
|
||||
properties:
|
||||
igmp-snooping-enable:
|
||||
description:
|
||||
Global config for controlling whether IGMP snooping is enabled. If this global setting is disabled, all VLANs are treated as disabled, whether they are enabled or not.
|
||||
type: boolean
|
||||
default: true
|
||||
mld-snooping-enable:
|
||||
description:
|
||||
Global config for controlling whether MLD snooping is enabled. If this global setting is disabled, all VLANs are treated as disabled, whether they are enabled or not.
|
||||
type: boolean
|
||||
default: true
|
||||
unknown-multicast-flood-control:
|
||||
description:
|
||||
Global config for the unknown multicast flood control feature. This enables the system to forward unknown multicast packets only to a multicast router (mrouter).
|
||||
type: boolean
|
||||
default: false
|
||||
querier-enable:
|
||||
description:
|
||||
Global IGMP querier config. This enables all Vlan interfaces to act as a querier.
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
1741
schemareader.uc
1741
schemareader.uc
File diff suppressed because it is too large
Load Diff
@@ -8,6 +8,10 @@ properties:
|
||||
type: string
|
||||
description:
|
||||
An IPv4 addreess.
|
||||
public_ip:
|
||||
type: string
|
||||
description:
|
||||
The public IP address of internet connection.
|
||||
leasetime:
|
||||
type: number
|
||||
description:
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
type: array
|
||||
description:
|
||||
This section describes an IPv6 lease that we have served.
|
||||
items:
|
||||
type: object
|
||||
description:
|
||||
This section describes an IPv6 lease that we have served.
|
||||
An object, that describes a single served IPv6 address.
|
||||
properties:
|
||||
addresses:
|
||||
type: array
|
||||
|
||||
@@ -38,8 +38,154 @@ items:
|
||||
$ref: "https://ucentral.io/state/v1/interface/clients/"
|
||||
counters:
|
||||
$ref: "https://ucentral.io/state/v1/interface/counter/"
|
||||
delta_counters:
|
||||
$ref: "https://ucentral.io/state/v1/interface/counter/"
|
||||
mesh-path:
|
||||
$ref: "https://ucentral.io/state/v1/interface/mesh-path/"
|
||||
ssids:
|
||||
$ref: "https://ucentral.io/state/v1/interface/ssid/"
|
||||
|
||||
multicast:
|
||||
type: object
|
||||
description:
|
||||
Detailed information about all multicast-related data (groups joined, src address used etc)
|
||||
properties:
|
||||
igmp:
|
||||
description:
|
||||
Detailed information about IGMP configured / joined multicast groups, outgoing interfaces etc.
|
||||
type: object
|
||||
properties:
|
||||
enabled-groups:
|
||||
description:
|
||||
List of joined IGMP multicast groups.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
address:
|
||||
description:
|
||||
Address of single group this interface is member of.
|
||||
type: string
|
||||
format: ipv4
|
||||
examples:
|
||||
- 225.0.0.1
|
||||
egress-ports:
|
||||
description:
|
||||
List of ports where multicast traffic of this group is being replicated to.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
mvr:
|
||||
type: object
|
||||
description: MVR statistics on interface
|
||||
properties:
|
||||
mvr-intf-fwd-status:
|
||||
description: Shows if MVR traffic is being forwarded or discarded.
|
||||
type: boolean
|
||||
mvr-intf-igmp-count-reports:
|
||||
description: The number of IGMP membership reports received on this interface.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-leave:
|
||||
description: The number of leave messages received on this interface.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-gquery:
|
||||
description: The number of general query messages received on this interface.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-gssquery:
|
||||
description: The number of group specific or group-and-source specific query messages received on this interface.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-drop:
|
||||
description: The number of times a report, leave, or query was dropped.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-joinsucc:
|
||||
description: The number of times a multicast group was successfully joined.
|
||||
type: integer
|
||||
mvr-intf-igmp-count-actgroups:
|
||||
description: The number of MVR groups active on this interface.
|
||||
type: integer
|
||||
acl-stats:
|
||||
description: "Represents the overall statistics for ACLs on the OLS device."
|
||||
type: object
|
||||
properties:
|
||||
acl-intf-stats:
|
||||
description: "A list of ACL-related statistics, each corresponding to a specific interface or port."
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
acl-intf-id:
|
||||
description: "The identifier for the interface or port to which the ACL statistics apply."
|
||||
type: string
|
||||
acl-type:
|
||||
description: "Type of the access control list."
|
||||
type: string
|
||||
enum:
|
||||
- none
|
||||
- ipv4
|
||||
- ipv6
|
||||
- ipv4Ext
|
||||
- ipv6Ext
|
||||
- mac
|
||||
- arp
|
||||
acl-rule-action:
|
||||
description: "Indicates the action (permit or deny) taken when an ACL rule is matched."
|
||||
type: string
|
||||
enum:
|
||||
- permit
|
||||
- deny
|
||||
acl-hit-count:
|
||||
description: "The number of times an ACL rule has been matched by traffic."
|
||||
type: number
|
||||
acl-rule-resource-util:
|
||||
description: "Shows the percentage of this user-configured ACL rule as a percentage of total ACL rules."
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 100
|
||||
acl-resource-stats:
|
||||
description: "Represents the overall resource utilization statistics for ACLs."
|
||||
type: object
|
||||
properties:
|
||||
acl-total-resource-util:
|
||||
description: "Percentage of total ACL consumed resources amongst the resources available."
|
||||
type: integer
|
||||
minimum: 0
|
||||
maximum: 100
|
||||
dhcp-snoop-binding:
|
||||
description: State message entry to show the binding table for DHCP Snooping
|
||||
type: object
|
||||
properties:
|
||||
entries:
|
||||
description: List of DHCP Snooping binding entries
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
dhcp-snoop-bind-mac-address:
|
||||
description: MAC address of the DHCP client in the DHCP Snooping binding table
|
||||
type: string
|
||||
format: uc-mac
|
||||
dhcp-snoop-bind-ip-address:
|
||||
description: IP address assigned to the MAC address in the DHCP Snooping binding table
|
||||
type: string
|
||||
format: ipv4
|
||||
dhcp-snoop-bind-lease-seconds:
|
||||
description: This indicates the lease time in seconds for the IP address assigned to the DHCP client, after which the IP address may be reassigned
|
||||
type: integer
|
||||
dhcp-snoop-bind-type:
|
||||
description: Specifies the type of binding entry, such as dynamic or static, indicating how the IP address was assigned to the client
|
||||
type: string
|
||||
enum:
|
||||
- dynamic
|
||||
- static
|
||||
dhcp-snoop-bind-vlan:
|
||||
description: VLAN ID associated with the DHCP client’s IP address, which helps in managing network segments
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 4094
|
||||
dhcp-snoop-bind-interf:
|
||||
description: Identifies the interface through which the DHCP client is connected, aiding in network topology management
|
||||
type: string
|
||||
examples:
|
||||
- "Ethernet1"
|
||||
- "Unit-1/Port-2"
|
||||
- "1-2"
|
||||
- "Trunk 1"
|
||||
67
state/lacp-trunks.yml
Normal file
67
state/lacp-trunks.yml
Normal file
@@ -0,0 +1,67 @@
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
description:
|
||||
List of dynamically created trunks.
|
||||
properties:
|
||||
trunk-identifier:
|
||||
type: integer
|
||||
description:
|
||||
Logical identifier for the trunk.
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
member-port:
|
||||
type: string
|
||||
description: List of member ports under this trunk.
|
||||
system-priority:
|
||||
type: number
|
||||
description:
|
||||
LACP System priority.
|
||||
port-priority:
|
||||
type: number
|
||||
description:
|
||||
LACP port priority.
|
||||
port-state:
|
||||
type: string
|
||||
description:
|
||||
Port state.
|
||||
lacpdu-sent:
|
||||
type: number
|
||||
description:
|
||||
Number of LACP Data Units (PDUs) sent.
|
||||
lacpdu-recv:
|
||||
type: number
|
||||
description:
|
||||
Number of LACP Data Units (PDUs) received.
|
||||
markerpdu-sent:
|
||||
type: number
|
||||
description:
|
||||
Number of Marker PDUs sent.
|
||||
markerpdu-recv:
|
||||
type: number
|
||||
description:
|
||||
Number of Marker PDUs received.
|
||||
unknownpkt-recv:
|
||||
type: number
|
||||
description:
|
||||
Number of unknown packets received.
|
||||
illegalpkt-recv:
|
||||
type: number
|
||||
description:
|
||||
Number of illegal packets received.
|
||||
port-oper-key:
|
||||
type: number
|
||||
description:
|
||||
Operational key for the port.
|
||||
partner-oper-key:
|
||||
type: number
|
||||
description:
|
||||
Operational key for the partner.
|
||||
oper-state:
|
||||
type: string
|
||||
description:
|
||||
Operational state.
|
||||
partner-oper-state:
|
||||
type: string
|
||||
description:
|
||||
Operational state of the partner.
|
||||
@@ -10,7 +10,7 @@ properties:
|
||||
type: number
|
||||
description:
|
||||
The speed of the physical link.
|
||||
duplex:
|
||||
duplex:
|
||||
type: string
|
||||
description:
|
||||
The physical links duplex mode.
|
||||
@@ -19,6 +19,8 @@ properties:
|
||||
- half
|
||||
counters:
|
||||
$ref: "https://ucentral.io/state/v1/interface/counter/"
|
||||
delta_counters:
|
||||
$ref: "https://ucentral.io/state/v1/interface/counter/"
|
||||
poe:
|
||||
description:
|
||||
This section describes the ethernet poe-port link-state object (statistics + PD info).
|
||||
@@ -74,6 +76,7 @@ properties:
|
||||
- "NO_ERROR"
|
||||
counters:
|
||||
description:
|
||||
PoE-related descriptive statistics (counters).
|
||||
type: object
|
||||
properties:
|
||||
overload:
|
||||
@@ -140,3 +143,51 @@ properties:
|
||||
Vlan type of authenticated client (Authorization status of the client).
|
||||
type: integer
|
||||
maximum: 4095
|
||||
transceiver-info:
|
||||
description:
|
||||
Object holds information about underlying SFP module currently inserted into port's cage.
|
||||
Some of information is read directly from module's EEPROM, while other data is measured in runtime by device's hardware (vcc for example).
|
||||
type: object
|
||||
properties:
|
||||
vendor-name:
|
||||
description:
|
||||
Vendor (name) identifier
|
||||
type: string
|
||||
form-factor:
|
||||
description:
|
||||
Form-factor of the module itself (For example - QSFP28, QSFP56-DD etc)
|
||||
type: string
|
||||
supported-link-modes:
|
||||
description:
|
||||
Reports supported link modes of inserted module
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
part-number:
|
||||
description:
|
||||
Module's part number (vendor's specific)
|
||||
type: string
|
||||
serial-number:
|
||||
description:
|
||||
Serial number of connected module
|
||||
type: string
|
||||
revision:
|
||||
description:
|
||||
Module's HW revision (same part number can have multiple revisions)
|
||||
type: string
|
||||
temperature:
|
||||
description:
|
||||
Current module's temperature
|
||||
type: number
|
||||
tx-optical-power:
|
||||
description:
|
||||
Current module's transmit optical level (power)
|
||||
type: number
|
||||
rx-optical-power:
|
||||
description:
|
||||
Current module's receive optical level (power)
|
||||
type: number
|
||||
max-module-power:
|
||||
description:
|
||||
Max power (in Watts) module can drain.
|
||||
type: number
|
||||
|
||||
@@ -28,3 +28,105 @@ items:
|
||||
type: string
|
||||
description:
|
||||
The physical network port that we see this neighbour on.
|
||||
lldp-remote-port-info:
|
||||
type: object
|
||||
description: Provides information about the remote port, such as the interface name and its operational status on the neighboring device.
|
||||
properties:
|
||||
lldp-remote-port-id:
|
||||
type: string
|
||||
description: The identifier for the remote port connected to the local port, often displayed as a string or number representing the remote interface.
|
||||
lldp-remote-port-id-type:
|
||||
type: string
|
||||
description: Specifies the type of identifier used for the remote port, such as MAC address, interface name, or ifIndex.
|
||||
enum:
|
||||
- MAC Address
|
||||
- Interface Name
|
||||
- ifIndex
|
||||
lldp-remote-ttl:
|
||||
type: integer
|
||||
description: Shows the time-to-live (TTL) value for LLDP advertisements from the remote device. This is the duration (in seconds) the LLDP information remains valid before expiring."
|
||||
lldp-remote-port-descr:
|
||||
type: string
|
||||
description: Provides a textual description of the remote port, typically describing the interface or its purpose.
|
||||
example: "Ethernet Port on unit 1, port 2"
|
||||
lldp-remote-port-max-mtu:
|
||||
type: string
|
||||
description: Displays the maximum transmission unit (MTU) size that the remote port supports, indicating the largest packet size the port can handle.
|
||||
lldp-remote-sys-descr:
|
||||
type: string
|
||||
description: A textual description of the remote system, including the device model, software version, or any user-configured description.
|
||||
example: "ECS4150-28P"
|
||||
lldp-remote-sys-capab:
|
||||
type: array
|
||||
description: Indicates the system capabilities advertised by the remote device, such as whether it supports routing, switching, bridging, etc.
|
||||
items:
|
||||
type: string
|
||||
example: ["Switch", "Bridge", "Routing"]
|
||||
lldp-remote-enabled-capab:
|
||||
type: array
|
||||
description: Displays the capabilities that are actually enabled on the remote device, such as routing, switching, or bridging functionality.
|
||||
items:
|
||||
type: string
|
||||
example: ["Switch", "Bridge", "Routing"]
|
||||
lldp-remote-port-mgmt-address:
|
||||
type: string
|
||||
description: The management IP address of the remote device, used to access the device for administrative purposes.
|
||||
example: "192.168.0.4"
|
||||
lldp-remote-port-vlan-id:
|
||||
type: integer
|
||||
description: Shows the VLAN ID associated with the remote port, which could indicate the native VLAN or the port's trunk configuration.
|
||||
lldp-remote-port-protocol-id:
|
||||
type: string
|
||||
description: Identifies any protocol-specific information (in HEX) advertised by the remote device, such as VLAN, Spanning Tree, or Link Aggregation protocol.
|
||||
lldp-remote-port-mac-phy-status:
|
||||
type: object
|
||||
description: Displays the physical layer status of the remote port.
|
||||
properties:
|
||||
lldp-remote-port-aneg-suport:
|
||||
type: boolean
|
||||
description: Indicates whether the remote port supports auto-negotiation of link parameters like speed and duplex settings.
|
||||
lldp-remote-port-aneg-enabled:
|
||||
type: boolean
|
||||
description: Shows whether auto-negotiation is enabled on the remote port.
|
||||
lldp-remote-port-aneg-advertised-cap:
|
||||
type: string
|
||||
description: Lists the capabilities (in HEX) the remote port is advertising during auto-negotiation, such as supported speeds and duplex modes.
|
||||
lldp-remote-port-mau-type:
|
||||
type: integer
|
||||
description: Displays the Media Access Unit (MAU) type, describing the port's physical characteristics (e.g., copper or fiber, 10/100/1000Base-T, etc.).
|
||||
lldp-remote-port-power-info:
|
||||
type: object
|
||||
description: Provides detailed PoE information.
|
||||
properties:
|
||||
lldp-remote-port-power-class:
|
||||
type: string
|
||||
description: Indicates if the device is a PSE or a PD.
|
||||
enum:
|
||||
- pse
|
||||
- pd
|
||||
lldp-remote-port-power-mdi-support:
|
||||
type: boolean
|
||||
description: Indicates whether the remote device supports Media Dependent Interface (MDI) power supply, allowing power to be supplied through the Ethernet cable.
|
||||
lldp-remote-port-power-mdi-enabled:
|
||||
type: boolean
|
||||
description: Shows whether MDI power is currently enabled on the remote port.
|
||||
lldp-remote-port-power-pair-control:
|
||||
type: boolean
|
||||
description: Displays whether the remote device has control over which wire pairs in the Ethernet cable provide power (important for PoE).
|
||||
lldp-remote-port-power-classification:
|
||||
type: string
|
||||
description: Displays the PoE class of the remote device, indicating its power consumption classification.
|
||||
enum: ["Class-1", "Class-2", "Class-3", "Class-4","Class-5", "Class-6", "Class-7", "Class-8"]
|
||||
lldp-remote-port-lag-info:
|
||||
type: object
|
||||
description: Provides information about the remote port’s involvement in Link Aggregation Groups (LAG), if applicable.
|
||||
properties:
|
||||
lldp-remote-port-lag-support:
|
||||
type: boolean
|
||||
description: Indicates whether the remote port supports Link Aggregation (static or LACP).
|
||||
lldp-remote-port-lag-enabled:
|
||||
type: boolean
|
||||
description: Shows whether Link Aggregation is enabled on the remote port.
|
||||
lldp-remote-port-lag-port-id:
|
||||
type: integer
|
||||
description: Displays the identifier of the Link Aggregation Group (LAG) that the remote port belongs to.
|
||||
22
state/mac-address-list.yml
Normal file
22
state/mac-address-list.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
type: object
|
||||
description:
|
||||
This section describes the global (device-wise) mac-address-list (FDB table / wired clients).
|
||||
properties:
|
||||
overflow:
|
||||
description:
|
||||
Flag indicates that device could report an amount of FDB entries, which is bigger than what cloud had requested.
|
||||
type: boolean
|
||||
additionalProperties:
|
||||
type: object
|
||||
additionalProperties:
|
||||
description:
|
||||
VID (vlan id) identifier
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
examples:
|
||||
- overflow: true
|
||||
Ethernet1:
|
||||
'1': [ 'AABBCCDDEEFF', '112233445566']
|
||||
Ethernet2:
|
||||
'10': [ '11BBCCDDEEFF', '332233445566']
|
||||
@@ -52,3 +52,13 @@ properties:
|
||||
patternProperties:
|
||||
"^(eth|lan|wan)[0-9]*$":
|
||||
$ref: "https://ucentral.io/state/v1/link-state/"
|
||||
mac-address-list:
|
||||
$ref: "https://ucentral.io/state/v1/mac-address-list/"
|
||||
static-trunks:
|
||||
$ref: "https://ucentral.io/state/v1/static-trunks/"
|
||||
lacp-trunks:
|
||||
$ref: "https://ucentral.io/state/v1/lacp-trunks/"
|
||||
uplink_interface:
|
||||
type: string
|
||||
description:
|
||||
Current interface that serves as the Uplink. Example Ethernet2.
|
||||
|
||||
18
state/static-trunks.yml
Normal file
18
state/static-trunks.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
description:
|
||||
List of statically created trunks.
|
||||
properties:
|
||||
trunk-identifier:
|
||||
type: integer
|
||||
description:
|
||||
Logical identifier for the trunk.
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
member-ports:
|
||||
type: array
|
||||
description:
|
||||
List of member ports under this static trunk.
|
||||
items:
|
||||
type: string
|
||||
@@ -74,4 +74,50 @@ properties:
|
||||
examples:
|
||||
- "ON"
|
||||
- "OFF"
|
||||
|
||||
ieee8021x:
|
||||
description:
|
||||
This section describes the global (device-wise) 802.1X (port access control) state and config applied.
|
||||
type: object
|
||||
properties:
|
||||
dynamic-authorization:
|
||||
description:
|
||||
Reported DAS-related state info.
|
||||
type: object
|
||||
properties:
|
||||
stats:
|
||||
description:
|
||||
Cumulative statistics for all configured DACs.
|
||||
type: object
|
||||
properties:
|
||||
coa_req_received:
|
||||
description:
|
||||
Number of CoA requests received.
|
||||
type: number
|
||||
coa_ack_sent:
|
||||
description:
|
||||
Number of CoA ACK responses sent.
|
||||
type: number
|
||||
coa_nak_sent:
|
||||
description:
|
||||
Number of CoA NAK responses sent.
|
||||
type: number
|
||||
coa_ignored:
|
||||
description:
|
||||
Number of CoA requests ignored.
|
||||
type: number
|
||||
coa_wrong_attr:
|
||||
description:
|
||||
Number of CoA requests received with invalid (unsupported) attributes.
|
||||
type: number
|
||||
coa_wrong_attr_value:
|
||||
description:
|
||||
Number of CoA requests received with invalid (unsupported) attribute value.
|
||||
type: number
|
||||
coa_wrong_session_context:
|
||||
description:
|
||||
Number of CoA requests received with inexisting session context.
|
||||
type: number
|
||||
administratively_prohibited_req:
|
||||
description:
|
||||
Number of CoA requests that are sent if the NAS is configured to prohibit honoring of CoA-Request or Disconnect-Request packets for the specified session.
|
||||
type: number
|
||||
|
||||
@@ -79,6 +79,16 @@ let delta = 1;
|
||||
if (telemetry)
|
||||
delta = 0;
|
||||
|
||||
let public_ip_file = "/tmp/public_ip";
|
||||
let public_ip = "";
|
||||
if (cfg.public_ip_lookup) {
|
||||
if (!fs.access(public_ip_file))
|
||||
system(sprintf("/usr/bin/curl -m 3 %s -o %s", cfg.public_ip_lookup, public_ip_file));
|
||||
let online_file = fs.open(public_ip_file);
|
||||
public_ip = online_file.read("all") || '';
|
||||
online_file.close();
|
||||
}
|
||||
|
||||
global.tid_stats = (index(stats.types, 'tid-stats') > 0);
|
||||
|
||||
/* load state data */
|
||||
@@ -412,6 +422,8 @@ cursor.foreach("network", "interface", function(d) {
|
||||
push(ipv4, sprintf("%s/%d", a.address, a.mask));
|
||||
|
||||
iface.ipv4.addresses = ipv4;
|
||||
if( cfg.public_ip_lookup && length(public_ip))
|
||||
iface.ipv4.public_ip = public_ip;
|
||||
}
|
||||
|
||||
if (length(status["ipv6-address"])) {
|
||||
|
||||
346
ucentral.capabilities.pretty.json
Normal file
346
ucentral.capabilities.pretty.json
Normal file
@@ -0,0 +1,346 @@
|
||||
{
|
||||
"description": "uCentral protocol (OpenLan) device and features capabilities schema",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"serial": {
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"aabbccddeeff"
|
||||
]
|
||||
},
|
||||
"firmware": {
|
||||
"type": "string",
|
||||
"description": "Platform revision",
|
||||
"examples": [
|
||||
"Rel 1.6 build 5"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"type": "object",
|
||||
"description": "The ols schema version to be used with this Switch",
|
||||
"properties": {
|
||||
"major": {
|
||||
"type": "integer"
|
||||
},
|
||||
"minor": {
|
||||
"type": "integer"
|
||||
},
|
||||
"patch": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"examples": [
|
||||
{
|
||||
"major": 3,
|
||||
"minor": 2,
|
||||
"patch": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"platform": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Switch",
|
||||
"AP"
|
||||
]
|
||||
},
|
||||
"model": {
|
||||
"type": "string",
|
||||
"description": "Device model"
|
||||
},
|
||||
"hw-sku": {
|
||||
"type": "string",
|
||||
"description": "Stock keeping unit"
|
||||
},
|
||||
"compatible": {
|
||||
"type": "string",
|
||||
"description": "Compatibility string, that defines the family of the device"
|
||||
},
|
||||
"base-mac": {
|
||||
"type": "string",
|
||||
"description": "Switch MAC address",
|
||||
"format": "uc-mac",
|
||||
"examples": [
|
||||
"aa:bb:cc:dd:ee:ff"
|
||||
]
|
||||
},
|
||||
"port-list": {
|
||||
"type": "array",
|
||||
"description": "The list of physical network devices",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "The logical name of the port that is used by the OS",
|
||||
"examples": [
|
||||
"Ethernet0",
|
||||
"Ethernet1",
|
||||
"Ethernet76"
|
||||
]
|
||||
},
|
||||
"front-panel-number": {
|
||||
"type": "integer",
|
||||
"description": "The identification number of the port as can be seen on the front-panel of the device"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"port-capabilities": {
|
||||
"type": "object",
|
||||
"description": "Description of physical ports and their form-factors",
|
||||
"properties": {
|
||||
"form-factors": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"RJ45",
|
||||
"SFP",
|
||||
"SFP+",
|
||||
"SFP28",
|
||||
"SFP-DD",
|
||||
"QSFP",
|
||||
"QSFP+",
|
||||
"QSFP28",
|
||||
"QSFP-DD"
|
||||
]
|
||||
}
|
||||
},
|
||||
"ports-list": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"RJ45"
|
||||
]
|
||||
},
|
||||
"ports": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"Ethernet1"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"poe-capabilities": {
|
||||
"type": "object",
|
||||
"description": "Description of physical ports and their PoE capabilities",
|
||||
"properties": {
|
||||
"supported-standards": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
".3AF-POE",
|
||||
".3AT-POE+",
|
||||
".3BT-PoE++",
|
||||
"PreStandard-Passive"
|
||||
]
|
||||
}
|
||||
},
|
||||
"power-budget": {
|
||||
"type": "integer",
|
||||
"examples": [
|
||||
2000
|
||||
]
|
||||
},
|
||||
"poe-ports": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"examples": [
|
||||
".3AF-POE"
|
||||
]
|
||||
},
|
||||
"budget-capacity": {
|
||||
"type": "integer"
|
||||
},
|
||||
"ports": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"Ethernet1"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"mclag-capabilities": {
|
||||
"description": "Capabilities of the MC-LAG (Multi-Chassis Link Aggregation) feature in the switch",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"max-mclag-groups": {
|
||||
"description": "Defines the maximum number of MC-LAG groups that can be configured on the switch.",
|
||||
"type": "integer"
|
||||
},
|
||||
"max-ports-per-mclag-group": {
|
||||
"description": "Specifies the maximum number of physical ports that can be part of a single MC-LAG group.",
|
||||
"type": "integer"
|
||||
},
|
||||
"max-vlans-per-mclag-group": {
|
||||
"description": "Indicates the maximum number of VLANs that can be supported within a single MC-LAG group.",
|
||||
"type": "integer"
|
||||
},
|
||||
"dual-active-detection": {
|
||||
"description": "Describes the dual-active detection mechanism to prevent both switches from becoming active simultaneously.",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"ICCP",
|
||||
"Backup-Link",
|
||||
"None"
|
||||
]
|
||||
},
|
||||
"failover-time-milliseconds": {
|
||||
"description": "Specifies the time (in milliseconds) required for traffic to fail over to the secondary switch when there is a failure in the primary switch.",
|
||||
"type": "integer"
|
||||
},
|
||||
"vlan-synchronization": {
|
||||
"description": "Indicates whether VLAN synchronization across MC-LAG peers is supported and the number of VLANs that can be synchronized.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"max-mac-entries-per-mclag": {
|
||||
"description": "Maximum number of MAC address entries that can be synchronized across MC-LAG peers.",
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"lldp-capabilities": {
|
||||
"type": "object",
|
||||
"description": "Description of LLDP capabilities across different switch models/vendors.",
|
||||
"properties": {
|
||||
"supported-tlvs": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"lldp-basic-tlv-mgmt-ip-v4",
|
||||
"lldp-basic-tlv-mgmt-ip-v6",
|
||||
"lldp-basic-tlv-port-descr",
|
||||
"lldp-basic-tlv-sys-capab",
|
||||
"lldp-basic-tlv-sys-descr",
|
||||
"lldp-basic-tlv-sys-name",
|
||||
"lldp-dot1-tlv-proto-ident",
|
||||
"lldp-dot1-tlv-proto-vid",
|
||||
"lldp-dot1-tlv-pvid",
|
||||
"lldp-dot1-tlv-vlan-name",
|
||||
"lldp-dot3-tlv-link-agg",
|
||||
"lldp-dot3-tlv-mac-phy",
|
||||
"lldp-dot3-tlv-max-frame",
|
||||
"lldp-dot3-tlv-poe",
|
||||
"lldp-med-location-civic-addr",
|
||||
"lldp-med-tlv-ext-poe",
|
||||
"lldp-med-tlv-inventory",
|
||||
"lldp-med-tlv-location",
|
||||
"lldp-med-tlv-med-cap",
|
||||
"lldp-med-tlv-network-policy"
|
||||
]
|
||||
}
|
||||
},
|
||||
"max-neighbors": {
|
||||
"type": "integer",
|
||||
"description": "Maximum number of LLDP neighbors a switch can discover and maintain.",
|
||||
"examples": [
|
||||
64,
|
||||
128,
|
||||
256
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"supported-features": {
|
||||
"type": "array",
|
||||
"description": "List of all features supported by the device",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"VLAN",
|
||||
"VLAN-Voice",
|
||||
"Jumbo-Frames",
|
||||
"Link-Aggregation-LACP",
|
||||
"Link-Aggregation-Static",
|
||||
"Link-Aggregation-MCLAG",
|
||||
"Port-Isolation",
|
||||
"Spanning-Tree",
|
||||
"Spanning-Tree-Rapid",
|
||||
"Spanning-Tree-Per-VLAN",
|
||||
"Spanning-Tree-Per-VLAN-Rapid",
|
||||
"Spanning-Tree-MSTP",
|
||||
"SVI-StaticIPv4",
|
||||
"SVI-StaticIPv6",
|
||||
"Interface-StaticIPv4",
|
||||
"Interface-StaticIPv6",
|
||||
"Routing-VRF",
|
||||
"Routing-IPv4-Route-Blackhole",
|
||||
"Routing-IPv4-Route-Unreachable",
|
||||
"Routing-IPv4-Nexthop",
|
||||
"Routing-IPv4-Broadcast",
|
||||
"Routing-IPv4-Multicast-IGMP-Snooping",
|
||||
"Routing-IPv4-Multicast-IGMP-Querier",
|
||||
"Routing-IPv4-Multicast-IGMP-Static",
|
||||
"Routing-IPv4-DHCP-Server",
|
||||
"Routing-IPv4-DHCP-Relay",
|
||||
"Routing-IPv4-DHCP-Snooping",
|
||||
"Routing-IPv4-Port-Forward",
|
||||
"Routing-IPv6-DHCP-Relay",
|
||||
"Routing-IPv6-DHCP-Stateful",
|
||||
"Routing-IPv6-DHCP-Stateless",
|
||||
"Routing-IPv6-Port-Forward",
|
||||
"Multicast-VLAN-Registration",
|
||||
"PoE-Reset",
|
||||
"Port-Access-Control",
|
||||
"PAC-Dynamic-Auth",
|
||||
"mac-address-bypass",
|
||||
"System-PasswordChange",
|
||||
"System-SwUpdate",
|
||||
"System-SwUpdate-Partial",
|
||||
"Port-Mirroring",
|
||||
"MAC-ACL",
|
||||
"IP-ACL",
|
||||
"Guest-VLAN",
|
||||
"Service-SSH",
|
||||
"Service-RSSH",
|
||||
"Service-Telnet",
|
||||
"Service-LLDP",
|
||||
"Service-HTTP",
|
||||
"Service-HTTPS",
|
||||
"Service-GPS",
|
||||
"Service-IGMP",
|
||||
"Service-NTP",
|
||||
"Service-NTP-Client",
|
||||
"Service-MDNS",
|
||||
"Service-QoS",
|
||||
"Service-Syslog",
|
||||
"Service-PAC",
|
||||
"Service-Wireguard-Overlay",
|
||||
"Service-Radius-Proxy",
|
||||
"Service-Online-Check",
|
||||
"Service-CaptivePortal",
|
||||
"Service-PublicIpCheck",
|
||||
"Tunneling-VxLAN",
|
||||
"Tunneling-GRE",
|
||||
"Tunneling-GRE6",
|
||||
"Tunneling-L2TP",
|
||||
"Tunneling-Mesh"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"$defs": {}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
1158
ucentral.schema.json
1158
ucentral.schema.json
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -75,6 +75,19 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"mac-address-list": {
|
||||
"$ref": "#/$defs/mac-address-list"
|
||||
},
|
||||
"static-trunks": {
|
||||
"$ref": "#/$defs/static-trunks"
|
||||
},
|
||||
"lacp-trunks": {
|
||||
"$ref": "#/$defs/lacp-trunks"
|
||||
},
|
||||
"uplink_interface": {
|
||||
"type": "string",
|
||||
"description": "Current interface that serves as the Uplink. Example Ethernet2."
|
||||
}
|
||||
},
|
||||
"$defs": {
|
||||
@@ -132,6 +145,82 @@
|
||||
"items": {
|
||||
"type": "number"
|
||||
}
|
||||
},
|
||||
"poe": {
|
||||
"description": "This section describes the current state of the PoE unit on the device",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"max-power-budget": {
|
||||
"description": "Reports the total power available (power budget) (in watts, W) device's Power sourcing equipment is able to source.",
|
||||
"type": "number"
|
||||
},
|
||||
"power-threshold": {
|
||||
"description": "Reports configured power alarm threshold value for the Power sourcing equipment (in milliwatts, mW).",
|
||||
"type": "number"
|
||||
},
|
||||
"power-consumed": {
|
||||
"description": "Reports a total power Powered Devices are draining from the device's Power sourcing equipment (in milliwatts, mW).",
|
||||
"type": "number"
|
||||
},
|
||||
"power-status": {
|
||||
"description": "Reports power status of the device's Power sourcing equipment.",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"ON",
|
||||
"OFF"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"ieee8021x": {
|
||||
"description": "This section describes the global (device-wise) 802.1X (port access control) state and config applied.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"dynamic-authorization": {
|
||||
"description": "Reported DAS-related state info.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"stats": {
|
||||
"description": "Cumulative statistics for all configured DACs.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"coa_req_received": {
|
||||
"description": "Number of CoA requests received.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_ack_sent": {
|
||||
"description": "Number of CoA ACK responses sent.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_nak_sent": {
|
||||
"description": "Number of CoA NAK responses sent.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_ignored": {
|
||||
"description": "Number of CoA requests ignored.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_wrong_attr": {
|
||||
"description": "Number of CoA requests received with invalid (unsupported) attributes.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_wrong_attr_value": {
|
||||
"description": "Number of CoA requests received with invalid (unsupported) attribute value.",
|
||||
"type": "number"
|
||||
},
|
||||
"coa_wrong_session_context": {
|
||||
"description": "Number of CoA requests received with inexisting session context.",
|
||||
"type": "number"
|
||||
},
|
||||
"administratively_prohibited_req": {
|
||||
"description": "Number of CoA requests that are sent if the NAS is configured to prohibit honoring of CoA-Request or Disconnect-Request packets for the specified session.",
|
||||
"type": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -246,6 +335,10 @@
|
||||
"description": "An IPv4 addreess."
|
||||
}
|
||||
},
|
||||
"public_ip": {
|
||||
"type": "string",
|
||||
"description": "The public IP address of internet connection."
|
||||
},
|
||||
"leasetime": {
|
||||
"type": "number",
|
||||
"description": "This is the leasetime if the IPv4 address of this logical interface was acquired via DHCPv4."
|
||||
@@ -278,10 +371,10 @@
|
||||
},
|
||||
"interface.ipv6-lease": {
|
||||
"type": "array",
|
||||
"description": null,
|
||||
"description": "This section describes an IPv6 lease that we have served.",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"description": "This section describes an IPv6 lease that we have served.",
|
||||
"description": "An object, that describes a single served IPv6 address.",
|
||||
"properties": {
|
||||
"addresses": {
|
||||
"type": "array",
|
||||
@@ -676,11 +769,203 @@
|
||||
"counters": {
|
||||
"$ref": "#/$defs/interface.counter"
|
||||
},
|
||||
"delta_counters": {
|
||||
"$ref": "#/$defs/interface.counter"
|
||||
},
|
||||
"mesh-path": {
|
||||
"$ref": "#/$defs/interface.mesh-path"
|
||||
},
|
||||
"ssids": {
|
||||
"$ref": "#/$defs/interface.ssid"
|
||||
},
|
||||
"multicast": {
|
||||
"type": "object",
|
||||
"description": "Detailed information about all multicast-related data (groups joined, src address used etc)",
|
||||
"properties": {
|
||||
"igmp": {
|
||||
"description": "Detailed information about IGMP configured / joined multicast groups, outgoing interfaces etc.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled-groups": {
|
||||
"description": "List of joined IGMP multicast groups.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"address": {
|
||||
"description": "Address of single group this interface is member of.",
|
||||
"type": "string",
|
||||
"format": "ipv4",
|
||||
"examples": [
|
||||
"225.0.0.1"
|
||||
]
|
||||
},
|
||||
"egress-ports": {
|
||||
"description": "List of ports where multicast traffic of this group is being replicated to.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"mvr": {
|
||||
"type": "object",
|
||||
"description": "MVR statistics on interface",
|
||||
"properties": {
|
||||
"mvr-intf-fwd-status": {
|
||||
"description": "Shows if MVR traffic is being forwarded or discarded.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"mvr-intf-igmp-count-reports": {
|
||||
"description": "The number of IGMP membership reports received on this interface.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-leave": {
|
||||
"description": "The number of leave messages received on this interface.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-gquery": {
|
||||
"description": "The number of general query messages received on this interface.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-gssquery": {
|
||||
"description": "The number of group specific or group-and-source specific query messages received on this interface.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-drop": {
|
||||
"description": "The number of times a report, leave, or query was dropped.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-joinsucc": {
|
||||
"description": "The number of times a multicast group was successfully joined.",
|
||||
"type": "integer"
|
||||
},
|
||||
"mvr-intf-igmp-count-actgroups": {
|
||||
"description": "The number of MVR groups active on this interface.",
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
},
|
||||
"acl-stats": {
|
||||
"description": "Represents the overall statistics for ACLs on the OLS device.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"acl-intf-stats": {
|
||||
"description": "A list of ACL-related statistics, each corresponding to a specific interface or port.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"acl-intf-id": {
|
||||
"description": "The identifier for the interface or port to which the ACL statistics apply.",
|
||||
"type": "string"
|
||||
},
|
||||
"acl-type": {
|
||||
"description": "Type of the access control list.",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"none",
|
||||
"ipv4",
|
||||
"ipv6",
|
||||
"ipv4Ext",
|
||||
"ipv6Ext",
|
||||
"mac",
|
||||
"arp"
|
||||
]
|
||||
},
|
||||
"acl-rule-action": {
|
||||
"description": "Indicates the action (permit or deny) taken when an ACL rule is matched.",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"permit",
|
||||
"deny"
|
||||
]
|
||||
},
|
||||
"acl-hit-count": {
|
||||
"description": "The number of times an ACL rule has been matched by traffic.",
|
||||
"type": "number"
|
||||
},
|
||||
"acl-rule-resource-util": {
|
||||
"description": "Shows the percentage of this user-configured ACL rule as a percentage of total ACL rules.",
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 100
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"acl-resource-stats": {
|
||||
"description": "Represents the overall resource utilization statistics for ACLs.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"acl-total-resource-util": {
|
||||
"description": "Percentage of total ACL consumed resources amongst the resources available.",
|
||||
"type": "integer",
|
||||
"minimum": 0,
|
||||
"maximum": 100
|
||||
}
|
||||
}
|
||||
},
|
||||
"dhcp-snoop-binding": {
|
||||
"description": "State message entry to show the binding table for DHCP Snooping",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"entries": {
|
||||
"description": "List of DHCP Snooping binding entries",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"dhcp-snoop-bind-mac-address": {
|
||||
"description": "MAC address of the DHCP client in the DHCP Snooping binding table",
|
||||
"type": "string",
|
||||
"format": "uc-mac"
|
||||
},
|
||||
"dhcp-snoop-bind-ip-address": {
|
||||
"description": "IP address assigned to the MAC address in the DHCP Snooping binding table",
|
||||
"type": "string",
|
||||
"format": "ipv4"
|
||||
},
|
||||
"dhcp-snoop-bind-lease-seconds": {
|
||||
"description": "This indicates the lease time in seconds for the IP address assigned to the DHCP client, after which the IP address may be reassigned",
|
||||
"type": "integer"
|
||||
},
|
||||
"dhcp-snoop-bind-type": {
|
||||
"description": "Specifies the type of binding entry, such as dynamic or static, indicating how the IP address was assigned to the client",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"dynamic",
|
||||
"static"
|
||||
]
|
||||
},
|
||||
"dhcp-snoop-bind-vlan": {
|
||||
"description": "VLAN ID associated with the DHCP client\u2019s IP address, which helps in managing network segments",
|
||||
"type": "integer",
|
||||
"minimum": 1,
|
||||
"maximum": 4094
|
||||
},
|
||||
"dhcp-snoop-bind-interf": {
|
||||
"description": "Identifies the interface through which the DHCP client is connected, aiding in network topology management",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"Ethernet1",
|
||||
"Unit-1/Port-2",
|
||||
"1-2",
|
||||
"Trunk 1"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -716,6 +1001,160 @@
|
||||
"port": {
|
||||
"type": "string",
|
||||
"description": "The physical network port that we see this neighbour on."
|
||||
},
|
||||
"lldp-remote-port-info": {
|
||||
"type": "object",
|
||||
"description": "Provides information about the remote port, such as the interface name and its operational status on the neighboring device.",
|
||||
"properties": {
|
||||
"lldp-remote-port-id": {
|
||||
"type": "string",
|
||||
"description": "The identifier for the remote port connected to the local port, often displayed as a string or number representing the remote interface."
|
||||
},
|
||||
"lldp-remote-port-id-type": {
|
||||
"type": "string",
|
||||
"description": "Specifies the type of identifier used for the remote port, such as MAC address, interface name, or ifIndex.",
|
||||
"enum": [
|
||||
"MAC Address",
|
||||
"Interface Name",
|
||||
"ifIndex"
|
||||
]
|
||||
},
|
||||
"lldp-remote-ttl": {
|
||||
"type": "integer",
|
||||
"description": "Shows the time-to-live (TTL) value for LLDP advertisements from the remote device. This is the duration (in seconds) the LLDP information remains valid before expiring.\""
|
||||
},
|
||||
"lldp-remote-port-descr": {
|
||||
"type": "string",
|
||||
"description": "Provides a textual description of the remote port, typically describing the interface or its purpose.",
|
||||
"example": "Ethernet Port on unit 1, port 2"
|
||||
},
|
||||
"lldp-remote-port-max-mtu": {
|
||||
"type": "string",
|
||||
"description": "Displays the maximum transmission unit (MTU) size that the remote port supports, indicating the largest packet size the port can handle."
|
||||
},
|
||||
"lldp-remote-sys-descr": {
|
||||
"type": "string",
|
||||
"description": "A textual description of the remote system, including the device model, software version, or any user-configured description.",
|
||||
"example": "ECS4150-28P"
|
||||
},
|
||||
"lldp-remote-sys-capab": {
|
||||
"type": "array",
|
||||
"description": "Indicates the system capabilities advertised by the remote device, such as whether it supports routing, switching, bridging, etc.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"example": [
|
||||
"Switch",
|
||||
"Bridge",
|
||||
"Routing"
|
||||
]
|
||||
},
|
||||
"lldp-remote-enabled-capab": {
|
||||
"type": "array",
|
||||
"description": "Displays the capabilities that are actually enabled on the remote device, such as routing, switching, or bridging functionality.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"example": [
|
||||
"Switch",
|
||||
"Bridge",
|
||||
"Routing"
|
||||
]
|
||||
},
|
||||
"lldp-remote-port-mgmt-address": {
|
||||
"type": "string",
|
||||
"description": "The management IP address of the remote device, used to access the device for administrative purposes.",
|
||||
"example": "192.168.0.4"
|
||||
},
|
||||
"lldp-remote-port-vlan-id": {
|
||||
"type": "integer",
|
||||
"description": "Shows the VLAN ID associated with the remote port, which could indicate the native VLAN or the port's trunk configuration."
|
||||
},
|
||||
"lldp-remote-port-protocol-id": {
|
||||
"type": "string",
|
||||
"description": "Identifies any protocol-specific information (in HEX) advertised by the remote device, such as VLAN, Spanning Tree, or Link Aggregation protocol."
|
||||
},
|
||||
"lldp-remote-port-mac-phy-status": {
|
||||
"type": "object",
|
||||
"description": "Displays the physical layer status of the remote port.",
|
||||
"properties": {
|
||||
"lldp-remote-port-aneg-suport": {
|
||||
"type": "boolean",
|
||||
"description": "Indicates whether the remote port supports auto-negotiation of link parameters like speed and duplex settings."
|
||||
},
|
||||
"lldp-remote-port-aneg-enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Shows whether auto-negotiation is enabled on the remote port."
|
||||
},
|
||||
"lldp-remote-port-aneg-advertised-cap": {
|
||||
"type": "string",
|
||||
"description": "Lists the capabilities (in HEX) the remote port is advertising during auto-negotiation, such as supported speeds and duplex modes."
|
||||
},
|
||||
"lldp-remote-port-mau-type": {
|
||||
"type": "integer",
|
||||
"description": "Displays the Media Access Unit (MAU) type, describing the port's physical characteristics (e.g., copper or fiber, 10/100/1000Base-T, etc.)."
|
||||
}
|
||||
}
|
||||
},
|
||||
"lldp-remote-port-power-info": {
|
||||
"type": "object",
|
||||
"description": "Provides detailed PoE information.",
|
||||
"properties": {
|
||||
"lldp-remote-port-power-class": {
|
||||
"type": "string",
|
||||
"description": "Indicates if the device is a PSE or a PD.",
|
||||
"enum": [
|
||||
"pse",
|
||||
"pd"
|
||||
]
|
||||
},
|
||||
"lldp-remote-port-power-mdi-support": {
|
||||
"type": "boolean",
|
||||
"description": "Indicates whether the remote device supports Media Dependent Interface (MDI) power supply, allowing power to be supplied through the Ethernet cable."
|
||||
},
|
||||
"lldp-remote-port-power-mdi-enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Shows whether MDI power is currently enabled on the remote port."
|
||||
},
|
||||
"lldp-remote-port-power-pair-control": {
|
||||
"type": "boolean",
|
||||
"description": "Displays whether the remote device has control over which wire pairs in the Ethernet cable provide power (important for PoE)."
|
||||
},
|
||||
"lldp-remote-port-power-classification": {
|
||||
"type": "string",
|
||||
"description": "Displays the PoE class of the remote device, indicating its power consumption classification.",
|
||||
"enum": [
|
||||
"Class-1",
|
||||
"Class-2",
|
||||
"Class-3",
|
||||
"Class-4",
|
||||
"Class-5",
|
||||
"Class-6",
|
||||
"Class-7",
|
||||
"Class-8"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"lldp-remote-port-lag-info": {
|
||||
"type": "object",
|
||||
"description": "Provides information about the remote port\u2019s involvement in Link Aggregation Groups (LAG), if applicable.",
|
||||
"properties": {
|
||||
"lldp-remote-port-lag-support": {
|
||||
"type": "boolean",
|
||||
"description": "Indicates whether the remote port supports Link Aggregation (static or LACP)."
|
||||
},
|
||||
"lldp-remote-port-lag-enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Shows whether Link Aggregation is enabled on the remote port."
|
||||
},
|
||||
"lldp-remote-port-lag-port-id": {
|
||||
"type": "integer",
|
||||
"description": "Displays the identifier of the Link Aggregation Group (LAG) that the remote port belongs to."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -767,6 +1206,306 @@
|
||||
},
|
||||
"counters": {
|
||||
"$ref": "#/$defs/interface.counter"
|
||||
},
|
||||
"delta_counters": {
|
||||
"$ref": "#/$defs/interface.counter"
|
||||
},
|
||||
"poe": {
|
||||
"description": "This section describes the ethernet poe-port link-state object (statistics + PD info). Present only in case if port has any Power sourcing capabilities.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"class-requested": {
|
||||
"description": "Reports which PoE power class PD requested.",
|
||||
"type": "number"
|
||||
},
|
||||
"class-assigned": {
|
||||
"description": "Reports which PoE power class PD has been assigned by the Power sourcing equipment.",
|
||||
"type": "number"
|
||||
},
|
||||
"output-power": {
|
||||
"description": "Reports the power-value (in milliwatts, mW) poe-port's Powered Device is currently draining.",
|
||||
"type": "number"
|
||||
},
|
||||
"output-current": {
|
||||
"description": "Reports the current value (in milliamps, mA) poe-port's Powered Device is currently draining.",
|
||||
"type": "number"
|
||||
},
|
||||
"output-voltage": {
|
||||
"description": "Reports the operational voltage-level-value of poe-port's Power sourcing equipment (in Volts, V).",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"54.14"
|
||||
]
|
||||
},
|
||||
"temp": {
|
||||
"description": "Reports the operational temperature of poe-port's Power sourcing equipment (in Celsius, C).",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"22.5"
|
||||
]
|
||||
},
|
||||
"status": {
|
||||
"description": "Reports the operational status of poe-port's Power sourcing equipment. Searching option - the poe-port's PSE is trying to detect a Powered Device. Delivering option - the poe-port's PSE is delivering power to a Powered Device. Disabled option - the poe-port's PSE is either disabled or PoE power is enabled but the PoE module does not have enough power available to supply the port's power needs. Fault option - the poe-port's PSE detects a problem with the Powered Device. Other Fault option - the PSE has detected an internal fault that prevents it from supplying power on that port.",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"DELIVERING_POWER",
|
||||
"DISABLED"
|
||||
]
|
||||
},
|
||||
"fault-status": {
|
||||
"description": "Reports the fault status of poe-port's PSE (in case if any).",
|
||||
"type": "string",
|
||||
"examples": [
|
||||
"NO_ERROR"
|
||||
]
|
||||
},
|
||||
"counters": {
|
||||
"description": "PoE-related descriptive statistics (counters).",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"overload": {
|
||||
"description": "Displays the total number of power overload occurrences. (Powered Device is consuming more power than the maximum limit of a port)",
|
||||
"type": "number"
|
||||
},
|
||||
"short": {
|
||||
"description": "Displays the total number of power shortage occurrences.",
|
||||
"type": "number"
|
||||
},
|
||||
"power-denied": {
|
||||
"description": "Displays the number of times that the powered device was denied power. (possible cause could be that Requested power exceeds PSE capability)",
|
||||
"type": "number"
|
||||
},
|
||||
"absent": {
|
||||
"description": "Displays the number of times that the power was stopped to the powered device because the powered device was no longer detected.",
|
||||
"type": "number"
|
||||
},
|
||||
"invalid-signature": {
|
||||
"description": "Displays the times that an invalid signature was received. Signatures are the means by which the powered device identifies itself to the PSE. Signatures are generated during powered device detection, classification, or maintenance.",
|
||||
"type": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ieee8021x": {
|
||||
"description": "This section describes the per-port specific 802.1X (port access control) link-state object (authenticated clients). Present only in case if port has enabled EAP processing and has any authenticated clients.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"authenticated-clients": {
|
||||
"description": "List of authenticated clients and (their) authentication data.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"authenticated-method": {
|
||||
"description": "Authentication method used by client for it's authentication.",
|
||||
"type": "string"
|
||||
},
|
||||
"mac-address": {
|
||||
"description": "MAC address of authenticated client.",
|
||||
"type": "string",
|
||||
"format": "uc-mac"
|
||||
},
|
||||
"session-time": {
|
||||
"description": "Client session time.",
|
||||
"type": "integer"
|
||||
},
|
||||
"username": {
|
||||
"description": "Client username.",
|
||||
"type": "string"
|
||||
},
|
||||
"vlan-type": {
|
||||
"description": "Vlan type of authenticated client (Authorization status of the client).",
|
||||
"type": "string"
|
||||
},
|
||||
"vlan-id": {
|
||||
"description": "Vlan type of authenticated client (Authorization status of the client).",
|
||||
"type": "integer",
|
||||
"maximum": 4095
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"transceiver-info": {
|
||||
"description": "Object holds information about underlying SFP module currently inserted into port's cage. Some of information is read directly from module's EEPROM, while other data is measured in runtime by device's hardware (vcc for example).",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"vendor-name": {
|
||||
"description": "Vendor (name) identifier",
|
||||
"type": "string"
|
||||
},
|
||||
"form-factor": {
|
||||
"description": "Form-factor of the module itself (For example - QSFP28, QSFP56-DD etc)",
|
||||
"type": "string"
|
||||
},
|
||||
"supported-link-modes": {
|
||||
"description": "Reports supported link modes of inserted module",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"part-number": {
|
||||
"description": "Module's part number (vendor's specific)",
|
||||
"type": "string"
|
||||
},
|
||||
"serial-number": {
|
||||
"description": "Serial number of connected module",
|
||||
"type": "string"
|
||||
},
|
||||
"revision": {
|
||||
"description": "Module's HW revision (same part number can have multiple revisions)",
|
||||
"type": "string"
|
||||
},
|
||||
"temperature": {
|
||||
"description": "Current module's temperature",
|
||||
"type": "number"
|
||||
},
|
||||
"tx-optical-power": {
|
||||
"description": "Current module's transmit optical level (power)",
|
||||
"type": "number"
|
||||
},
|
||||
"rx-optical-power": {
|
||||
"description": "Current module's receive optical level (power)",
|
||||
"type": "number"
|
||||
},
|
||||
"max-module-power": {
|
||||
"description": "Max power (in Watts) module can drain.",
|
||||
"type": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"mac-address-list": {
|
||||
"type": "object",
|
||||
"description": "This section describes the global (device-wise) mac-address-list (FDB table / wired clients).",
|
||||
"properties": {
|
||||
"overflow": {
|
||||
"description": "Flag indicates that device could report an amount of FDB entries, which is bigger than what cloud had requested.",
|
||||
"type": "boolean"
|
||||
}
|
||||
},
|
||||
"additionalProperties": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"description": "VID (vlan id) identifier",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"examples": [
|
||||
{
|
||||
"overflow": true,
|
||||
"Ethernet1": {
|
||||
"1": [
|
||||
"AABBCCDDEEFF",
|
||||
"112233445566"
|
||||
]
|
||||
},
|
||||
"Ethernet2": {
|
||||
"10": [
|
||||
"11BBCCDDEEFF",
|
||||
"332233445566"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"static-trunks": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"description": "List of statically created trunks.",
|
||||
"properties": {
|
||||
"trunk-identifier": {
|
||||
"type": "integer",
|
||||
"description": "Logical identifier for the trunk.",
|
||||
"minimum": 1,
|
||||
"maximum": 64
|
||||
},
|
||||
"member-ports": {
|
||||
"type": "array",
|
||||
"description": "List of member ports under this static trunk.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"lacp-trunks": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"description": "List of dynamically created trunks.",
|
||||
"properties": {
|
||||
"trunk-identifier": {
|
||||
"type": "integer",
|
||||
"description": "Logical identifier for the trunk.",
|
||||
"minimum": 1,
|
||||
"maximum": 64
|
||||
},
|
||||
"member-port": {
|
||||
"type": "string",
|
||||
"description": "List of member ports under this trunk."
|
||||
},
|
||||
"system-priority": {
|
||||
"type": "number",
|
||||
"description": "LACP System priority."
|
||||
},
|
||||
"port-priority": {
|
||||
"type": "number",
|
||||
"description": "LACP port priority."
|
||||
},
|
||||
"port-state": {
|
||||
"type": "string",
|
||||
"description": "Port state."
|
||||
},
|
||||
"lacpdu-sent": {
|
||||
"type": "number",
|
||||
"description": "Number of LACP Data Units (PDUs) sent."
|
||||
},
|
||||
"lacpdu-recv": {
|
||||
"type": "number",
|
||||
"description": "Number of LACP Data Units (PDUs) received."
|
||||
},
|
||||
"markerpdu-sent": {
|
||||
"type": "number",
|
||||
"description": "Number of Marker PDUs sent."
|
||||
},
|
||||
"markerpdu-recv": {
|
||||
"type": "number",
|
||||
"description": "Number of Marker PDUs received."
|
||||
},
|
||||
"unknownpkt-recv": {
|
||||
"type": "number",
|
||||
"description": "Number of unknown packets received."
|
||||
},
|
||||
"illegalpkt-recv": {
|
||||
"type": "number",
|
||||
"description": "Number of illegal packets received."
|
||||
},
|
||||
"port-oper-key": {
|
||||
"type": "number",
|
||||
"description": "Operational key for the port."
|
||||
},
|
||||
"partner-oper-key": {
|
||||
"type": "number",
|
||||
"description": "Operational key for the partner."
|
||||
},
|
||||
"oper-state": {
|
||||
"type": "string",
|
||||
"description": "Operational state."
|
||||
},
|
||||
"partner-oper-state": {
|
||||
"type": "string",
|
||||
"description": "Operational state of the partner."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user