OLS-425 Sprint-6-Schema

This commit is contained in:
Binny
2024-10-30 05:31:54 +00:00
parent 5bc20c20b3
commit 5622b66bb8
9 changed files with 2383 additions and 12 deletions

View File

@@ -139,6 +139,170 @@ properties:
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
peer-link-bandwidth:
description: Defines the required minimum bandwidth for the peer link that connects two MC-LAG switches.
type: string
enum:
- 1G
- 10G
- 40G
- 100G
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:
description: Specifies the time required for traffic to fail over to the secondary switch when there is a failure in the primary switch.
type: integer
unit: "milliseconds"
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:
- management-ip-address
- port-description
- system-capabilities
- system-description
- system-name
- proto-ident
- proto-vid
- pvid
- vlan-name
- link-agg
- mac-phy
- max-frame
- poe
- med-location
- med-inventory
- med-capabilities
- med-network-policy
lldp-med-support:
type: boolean
description: Specifies whether LLDP-MED support is available on the switch.
examples:
- true
- false
max-neighbors:
type: integer
description: Maximum number of LLDP neighbors a switch can discover and maintain.
examples:
- 64
- 128
- 256
refresh-interval:
type: object
description: Time interval (in seconds) for sending LLDP advertisements.
properties:
min:
type: integer
examples:
- 2
- 5
max:
type: integer
examples:
- 60
- 120
holdtime-multiplier-range:
type: object
description: Range of holdtime multiplier values for LLDP TTL calculation.
properties:
min:
type: integer
examples:
- 2
- 4
max:
type: integer
examples:
- 10
- 20
reinit-delay:
type: object
description: Time delay (in seconds) before reinitializing LLDP after a port/link down event.
properties:
min:
type: integer
examples:
- 1
- 2
max:
type: integer
examples:
- 5
- 10
notification-interval:
type: object
description: Interval for sending SNMP notifications upon LLDP changes (in seconds).
properties:
min:
type: integer
examples:
- 10
- 30
max:
type: integer
examples:
- 300
- 600
mac-phy-support:
type: boolean
description: Specifies whether LLDP advertisements include MAC and physical layer specifications.
examples:
- true
- false
max-frame-size:
type: integer
description: Maximum frame size that the switch supports for LLDP advertisements.
examples:
- 1500
- 9000
link-aggregation-support:
type: boolean
description: Indicates if LLDP supports link aggregation reporting on the switch.
examples:
- true
- false
vlan-tlv-support:
type: boolean
description: Indicates if the switch supports advertising VLAN-related TLVs (e.g., PVID, VLAN name).
examples:
- true
- false
power-over-ethernet-support:
type: boolean
description: Specifies if the switch can advertise PoE capabilities through LLDP.
examples:
- true
- false
supported-features:
type: array
description:
@@ -148,9 +312,11 @@ properties:
enum:
# L2
- VLAN
- VLAN-Voice
- Jumbo-Frames
- Link-Aggregation-LACP
- Link-Aggregation-Static
- Link-Aggregation-MCLAG
- Port-Isolation
- Spanning-Tree
- Spanning-Tree-Rapid
@@ -184,6 +350,7 @@ properties:
# .1X
- Port-Access-Control
- PAC-Dynamic-Auth
- mac-address-bypass
# System
- System-PasswordChange
- System-SwUpdate
@@ -191,6 +358,7 @@ properties:
- Port-Mirroring
# Security
- MAC-ACL
- IP-ACL
- Guest-VLAN
# Services
- Service-SSH

View File

@@ -168,6 +168,14 @@ properties:
type: integer
minimum: 1
maximum: 4094
mac-address-bypass:
description: Trigger mac-auth when a new ARP is learned.
type: boolean
mac-address-bypass-timout:
description: Trigger mac-auth when a new ARP is learned.
type: integer
minimum: 0
maximum: 30
trunk-group:
description: Associates this port to a trunk or a port-channel.
type: integer
@@ -234,3 +242,158 @@ properties:
- short
- long
default: long
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
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:
- receive
- transmit
- tx-rx
- disabled
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: arrray
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

View File

@@ -359,8 +359,9 @@ properties:
type: integer
minimum: 0
maximum: 7
# IP-ACL (IPv4/IPv6) Parameters
acl-ip-type:
description: Filters traffic based on the IP protocol type (none, IPv4, or IPv6)
description: Filters traffic based on the IP protocol type (IPv4, IPv6)
type: string
enum:
- none
@@ -382,15 +383,43 @@ properties:
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: 1
minimum: 0
maximum: 65535
acl-ip-source-port-bitmask:
description: The mask applied to the source port number
@@ -400,13 +429,33 @@ properties:
acl-ip-dest-port:
description: Specifies the destination port number for filtering
type: integer
minimum: 1
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
@@ -509,4 +558,166 @@ properties:
- mvr-group-name
- mvr-group-range-start
- mvr-group-range-end
- mvr-group-assoc-domain
- 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-enable:
description: "This option specifically enables or disables the Voice VLAN feature for the system. When enabled, the switch starts recognizing and assigning voice traffic to the designated Voice VLAN."
type: boolean
default: false
enum:
- true
- false
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"

View File

@@ -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 ports 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.

View File

@@ -182,6 +182,224 @@
}
}
},
"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"
},
"peer-link-bandwidth": {
"description": "Defines the required minimum bandwidth for the peer link that connects two MC-LAG switches.",
"type": "string",
"enum": [
"1G",
"10G",
"40G",
"100G"
]
},
"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": {
"description": "Specifies the time required for traffic to fail over to the secondary switch when there is a failure in the primary switch.",
"type": "integer",
"unit": "milliseconds"
},
"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": [
"management-ip-address",
"port-description",
"system-capabilities",
"system-description",
"system-name",
"proto-ident",
"proto-vid",
"pvid",
"vlan-name",
"link-agg",
"mac-phy",
"max-frame",
"poe",
"med-location",
"med-inventory",
"med-capabilities",
"med-network-policy"
]
}
},
"lldp-med-support": {
"type": "boolean",
"description": "Specifies whether LLDP-MED support is available on the switch.",
"examples": [
true,
false
]
},
"max-neighbors": {
"type": "integer",
"description": "Maximum number of LLDP neighbors a switch can discover and maintain.",
"examples": [
64,
128,
256
]
},
"refresh-interval": {
"type": "object",
"description": "Time interval (in seconds) for sending LLDP advertisements.",
"properties": {
"min": {
"type": "integer",
"examples": [
2,
5
]
},
"max": {
"type": "integer",
"examples": [
60,
120
]
}
}
},
"holdtime-multiplier-range": {
"type": "object",
"description": "Range of holdtime multiplier values for LLDP TTL calculation.",
"properties": {
"min": {
"type": "integer",
"examples": [
2,
4
]
},
"max": {
"type": "integer",
"examples": [
10,
20
]
}
}
},
"reinit-delay": {
"type": "object",
"description": "Time delay (in seconds) before reinitializing LLDP after a port/link down event.",
"properties": {
"min": {
"type": "integer",
"examples": [
1,
2
]
},
"max": {
"type": "integer",
"examples": [
5,
10
]
}
}
},
"notification-interval": {
"type": "object",
"description": "Interval for sending SNMP notifications upon LLDP changes (in seconds).",
"properties": {
"min": {
"type": "integer",
"examples": [
10,
30
]
},
"max": {
"type": "integer",
"examples": [
300,
600
]
}
}
},
"mac-phy-support": {
"type": "boolean",
"description": "Specifies whether LLDP advertisements include MAC and physical layer specifications.",
"examples": [
true,
false
]
},
"max-frame-size": {
"type": "integer",
"description": "Maximum frame size that the switch supports for LLDP advertisements.",
"examples": [
1500,
9000
]
},
"link-aggregation-support": {
"type": "boolean",
"description": "Indicates if LLDP supports link aggregation reporting on the switch.",
"examples": [
true,
false
]
},
"vlan-tlv-support": {
"type": "boolean",
"description": "Indicates if the switch supports advertising VLAN-related TLVs (e.g., PVID, VLAN name).",
"examples": [
true,
false
]
},
"power-over-ethernet-support": {
"type": "boolean",
"description": "Specifies if the switch can advertise PoE capabilities through LLDP.",
"examples": [
true,
false
]
}
}
},
"supported-features": {
"type": "array",
"description": "List of all features supported by the device",
@@ -189,9 +407,11 @@
"type": "string",
"enum": [
"VLAN",
"VLAN-Voice",
"Jumbo-Frames",
"Link-Aggregation-LACP",
"Link-Aggregation-Static",
"Link-Aggregation-MCLAG",
"Port-Isolation",
"Spanning-Tree",
"Spanning-Tree-Rapid",
@@ -222,11 +442,13 @@
"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",

View File

@@ -690,6 +690,16 @@
"type": "integer",
"minimum": 1,
"maximum": 4094
},
"mac-address-bypass": {
"description": "Trigger mac-auth when a new ARP is learned.",
"type": "boolean"
},
"mac-address-bypass-timout": {
"description": "Trigger mac-auth when a new ARP is learned.",
"type": "integer",
"minimum": 0,
"maximum": 30
}
}
},
@@ -763,6 +773,204 @@
"default": "long"
}
}
},
"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
}
}
},
"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": [
"receive",
"transmit",
"tx-rx",
"disabled"
]
},
"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": "arrray",
"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
}
}
}
}
}
@@ -1170,7 +1378,7 @@
"maximum": 7
},
"acl-ip-type": {
"description": "Filters traffic based on the IP protocol type (none, IPv4, or IPv6)",
"description": "Filters traffic based on the IP protocol type (IPv4, IPv6)",
"type": "string",
"enum": [
"none",
@@ -1198,16 +1406,50 @@
"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": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-source-port-bitmask": {
@@ -1219,7 +1461,7 @@
"acl-ip-dest-port": {
"description": "Specifies the destination port number for filtering",
"type": "integer",
"minimum": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-dest-port-bitmask": {
@@ -1227,6 +1469,30 @@
"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
}
}
}
@@ -1345,6 +1611,217 @@
"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-enable": {
"description": "This option specifically enables or disables the Voice VLAN feature for the system. When enabled, the switch starts recognizing and assigning voice traffic to the designated Voice VLAN.",
"type": "boolean",
"default": false,
"enum": [
true,
false
]
},
"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"
]
}
}
}
}
}
}
}
},

View File

@@ -481,6 +481,14 @@
"type": "integer",
"minimum": 1,
"maximum": 4094
},
"mac-address-bypass": {
"type": "boolean"
},
"mac-address-bypass-timout": {
"type": "integer",
"minimum": 0,
"maximum": 30
}
}
},
@@ -544,6 +552,169 @@
"default": "long"
}
}
},
"voice-vlan-intf-config": {
"type": "object",
"properties": {
"voice-vlan-intf-mode": {
"type": "string",
"default": "auto",
"enum": [
"none",
"manual",
"auto"
]
},
"voice-vlan-intf-priority": {
"type": "integer",
"default": 6,
"minimum": 0,
"maximum": 6
},
"voice-vlan-intf-detect-voice": {
"type": "string",
"default": "oui",
"enum": [
"oui",
"lldp"
]
},
"voice-vlan-intf-security": {
"type": "boolean",
"default": false
}
}
},
"lldp-interface-config": {
"type": "object",
"properties": {
"lldp-admin-status": {
"type": "string",
"enum": [
"receive",
"transmit",
"tx-rx",
"disabled"
]
},
"lldp-basic-tlv-mgmt-ip-v4": {
"type": "boolean",
"default": true
},
"lldp-basic-tlv-mgmt-ip-v6": {
"type": "boolean",
"default": false
},
"lldp-basic-tlv-port-descr": {
"type": "boolean",
"default": true
},
"lldp-basic-tlv-sys-capab": {
"type": "boolean",
"default": true
},
"lldp-basic-tlv-sys-descr": {
"type": "boolean",
"default": true
},
"lldp-basic-tlv-sys-name": {
"type": "boolean",
"default": true
},
"lldp-dot1-tlv-proto-ident": {
"type": "boolean",
"default": true
},
"lldp-dot1-tlv-proto-vid": {
"type": "boolean",
"default": true
},
"lldp-dot1-tlv-pvid": {
"type": "boolean",
"default": true
},
"lldp-dot1-tlv-vlan-name": {
"type": "boolean",
"default": true
},
"lldp-dot3-tlv-link-agg": {
"type": "boolean",
"default": true
},
"lldp-dot3-tlv-mac-phy": {
"type": "boolean",
"default": true
},
"lldp-dot3-tlv-max-frame": {
"type": "boolean",
"default": true
},
"lldp-dot3-tlv-poe": {
"type": "boolean",
"default": true
},
"lldp-med-location-civic-addr": {
"type": "object",
"properties": {
"lldp-med-location-civic-addr-admin-status": {
"type": "boolean",
"default": false
},
"lldp-med-location-civic-country-code": {
"type": "string"
},
"lldp-med-location-civic-device-type": {
"type": "integer"
},
"lldp-med-location-civic-ca": {
"type": "arrray",
"items": {
"type": "object",
"properties": {
"lldp-med-location-civic-ca-type": {
"type": "integer",
"maximum": 255,
"minimum": 0
},
"lldp-med-location-civic-ca-value": {
"type": "string",
"maxLength": 32,
"minLength": 1
}
}
}
}
}
},
"lldp-med-notification": {
"type": "boolean",
"default": false
},
"lldp-med-tlv-ext-poe": {
"type": "boolean",
"default": true
},
"lldp-med-tlv-inventory": {
"type": "boolean",
"default": true
},
"lldp-med-tlv-location": {
"type": "boolean",
"default": true
},
"lldp-med-tlv-med-cap": {
"type": "boolean",
"default": true
},
"lldp-med-tlv-network-policy": {
"type": "boolean",
"default": true
},
"lldp-notification": {
"type": "boolean",
"default": false
}
}
}
}
},
@@ -910,14 +1081,42 @@
"type": "string",
"format": "ipv4"
},
"acl-ipv6-source-address": {
"type": "string",
"format": "ipv6"
},
"acl-ipv6-source-prefix-length": {
"type": "integer",
"minimum": 0,
"maximum": 128
},
"acl-ipv6-dest-address": {
"type": "string",
"format": "ipv6"
},
"acl-ipv6-dest-prefix-length": {
"type": "integer",
"minimum": 0,
"maximum": 128
},
"acl-ip-proto": {
"type": "integer",
"minimum": 0,
"maximum": 255
},
"acl-ipv6-next-header": {
"type": "integer",
"minimum": 0,
"maximum": 255
},
"acl-ipv6-flow-label": {
"type": "integer",
"minimum": 0,
"maximum": 1048575
},
"acl-ip-source-port": {
"type": "integer",
"minimum": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-source-port-bitmask": {
@@ -927,13 +1126,33 @@
},
"acl-ip-dest-port": {
"type": "integer",
"minimum": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-dest-port-bitmask": {
"type": "integer",
"minimum": 0,
"maximum": 65535
},
"acl-ipv4-fragment-offset": {
"type": "integer",
"minimum": 0,
"maximum": 8191
},
"acl-ipv6-fragment-offset": {
"type": "integer",
"minimum": 0,
"maximum": 8191
},
"acl-ip-ttl": {
"type": "integer",
"minimum": 0,
"maximum": 255
},
"acl-ipv6-hop-limit": {
"type": "integer",
"minimum": 0,
"maximum": 255
}
}
}
@@ -1037,6 +1256,184 @@
"mvr-group-assoc-domain"
]
}
},
"lldp-global-config": {
"type": "object",
"properties": {
"lldp-enable": {
"type": "boolean",
"default": true
},
"lldp-holdtime-multiplier": {
"type": "integer",
"default": 4
},
"lldp-med-fast-start-count": {
"type": "integer",
"default": 4
},
"lldp-refresh-interval": {
"type": "integer",
"default": 30
},
"lldp-reinit-delay": {
"type": "integer",
"default": 2
},
"lldp-tx-delay": {
"type": "integer",
"maximum": 8192,
"minimum": 1
},
"lldp-notification-interval": {
"type": "integer",
"default": 5
}
}
},
"mc-lag": {
"type": "boolean",
"default": false
},
"mclag-config": {
"type": "object",
"properties": {
"mclag-domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"mclag-domain": {
"type": "integer",
"minimum": 1,
"maximum": 1024,
"default": 1
},
"peer-link": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"port",
"trunk-group"
],
"default": "trunk-group"
},
"value": {
"type": "integer",
"minimum": 1,
"maximum": 64
}
}
},
"mclag-group": {
"type": "object",
"properties": {
"group-id": {
"type": "integer",
"minimum": 1,
"maximum": 128
},
"members": {
"type": "array",
"items": {
"type": "string",
"examples": [
"eth0",
"eth1"
]
}
},
"lacp-config": {
"type": "object",
"properties": {
"lacp-enable": {
"type": "boolean",
"default": true
},
"lacp-role": {
"type": "string",
"enum": [
"actor",
"partner"
],
"default": "actor"
},
"lacp-timeout": {
"type": "string",
"enum": [
"short",
"long"
],
"default": "long"
}
}
}
}
},
"system-priority": {
"type": "integer",
"minimum": 1,
"maximum": 65535,
"default": 32768
},
"dual-active-detection": {
"type": "boolean",
"default": true
}
}
}
}
}
},
"voice-vlan-config": {
"type": "object",
"properties": {
"voice-vlan-enable": {
"type": "boolean",
"default": false,
"enum": [
true,
false
]
},
"voice-vlan-id": {
"type": "integer",
"minimum": 1,
"maximum": 4094
},
"voice-vlan-ageing-time": {
"type": "integer",
"minimum": 5,
"maximum": 43200,
"default": 1440
},
"voice-vlan-oui-config": {
"type": "array",
"items": {
"type": "object",
"properties": {
"voice-vlan-oui-mac": {
"type": "string",
"format": "uc-mac"
},
"voice-vlan-oui-mask": {
"type": "string",
"format": "uc-mac"
},
"voice-vlan-oui-description": {
"type": "string",
"maxLength": 32,
"minLength": 1,
"examples": [
"A VoIP Phone"
]
}
}
}
}
}
}
}
},

View File

@@ -542,6 +542,16 @@
"type": "integer",
"minimum": 1,
"maximum": 4094
},
"mac-address-bypass": {
"description": "Trigger mac-auth when a new ARP is learned.",
"type": "boolean"
},
"mac-address-bypass-timout": {
"description": "Trigger mac-auth when a new ARP is learned.",
"type": "integer",
"minimum": 0,
"maximum": 30
}
}
},
@@ -615,6 +625,204 @@
"default": "long"
}
}
},
"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
}
}
},
"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": [
"receive",
"transmit",
"tx-rx",
"disabled"
]
},
"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": "arrray",
"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
}
}
}
}
},
@@ -1021,7 +1229,7 @@
"maximum": 7
},
"acl-ip-type": {
"description": "Filters traffic based on the IP protocol type (none, IPv4, or IPv6)",
"description": "Filters traffic based on the IP protocol type (IPv4, IPv6)",
"type": "string",
"enum": [
"none",
@@ -1049,16 +1257,50 @@
"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": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-source-port-bitmask": {
@@ -1070,7 +1312,7 @@
"acl-ip-dest-port": {
"description": "Specifies the destination port number for filtering",
"type": "integer",
"minimum": 1,
"minimum": 0,
"maximum": 65535
},
"acl-ip-dest-port-bitmask": {
@@ -1078,6 +1320,30 @@
"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
}
}
}
@@ -1196,6 +1462,217 @@
"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-enable": {
"description": "This option specifically enables or disables the Voice VLAN feature for the system. When enabled, the switch starts recognizing and assigning voice traffic to the designated Voice VLAN.",
"type": "boolean",
"default": false,
"enum": [
true,
false
]
},
"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"
]
}
}
}
}
}
}
}
},

View File

@@ -1001,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."
}
}
}
}
}
}
}