Compare commits

...

9 Commits

Author SHA1 Message Date
Mike Hansen
5aba2c37f3 Merge pull request #60 from Telecominfraproject/staging-release-5.0.0-pki-2.0
Release 5.0.0 - Update schema version

No other changes

This will be the schema for the release/v5.0.0
2026-02-26 12:51:58 -05:00
Mike Hansen
3fda75b7db Release 5.0.0 - Update schema version 2026-02-26 09:45:08 -05:00
Binny
f2a9d622e9 Merge pull request #56 from Telecominfraproject/ols-969-priority-mapping-schema
ols-969-Schema for Priority Mapping-firstdraft
2026-02-03 13:36:54 +05:30
Binny
f172a3630e ols-969-rev1-push 2026-01-30 19:03:48 +00:00
Binny
2c2a8810c8 ols-969-prio-mapping-rev1 2026-01-30 18:59:11 +00:00
Binny
ab89f53750 ols-969-Schema for Priority Mapping-firstdraft 2026-01-28 13:59:27 +00:00
Binny
a109852c33 Merge pull request #55 from Telecominfraproject/extend_mclag-group_schema_to_support_static_trunk
MCLAG: extend mclag-group schema to support static trunk
2026-01-21 10:56:53 +05:30
Binny
23bc815936 Merge pull request #54 from Telecominfraproject/ols-909-add-port-autoneg-schema
ols-909-autoneg-port-draft
2026-01-21 10:55:59 +05:30
Binny
c7a8f2e727 ols-909-autoneg-port-draft 2025-12-03 12:56:52 +00:00
6 changed files with 679 additions and 3 deletions

View File

@@ -1,5 +1,5 @@
{
"major": 4,
"minor": 1,
"patch": 0
"major": 5,
"minor": 0,
"patch": 0
}

View File

@@ -25,6 +25,13 @@ properties:
type: string
examples:
- cloud_uplink_port
autoneg:
description:
Controls whether link autonegotiation is enabled.
When set to true, the switch negotiates speed and duplex with the link partner.
When set to false, the configured speed and duplex values are forced.
type: boolean
default: true
speed:
description:
The link speed that shall be forced.
@@ -537,3 +544,113 @@ properties:
minimum: 0
default: 0
description: Maximum allowed unknown unicast packets per second. 0 disables unknown unicast storm control.
qos-priority-mapping:
type: object
description: Interface-level QoS priority mapping configuration. Defines how ingress packet
markings (IP Precedence, CoS, DSCP) are interpreted and mapped to internal
per-hop behavior (PHB), drop precedence, and egress queue selection.
properties:
priority-untagged:
type: integer
description: Sets the default priority for incoming untagged Ethernet frames.
minimum: 0
maximum: 7
qos-map-trust-mode:
type: string
description: Determines which packet header field is trusted for ingress classification.
enum:
- cos
- dscp
- ip-precedence
qos-map-ipprec2dscp:
type: array
description: Maps IP Precedence values (07) in ingress packets to per-hop behavior (PHB)
and drop precedence. Used when trust mode is set to ip-precedence.
items:
type: object
properties:
preced:
type: integer
description: IP Precedence value in the incoming packet.
minimum: 0
maximum: 7
phb:
type: integer
description: Per-hop behavior (PHB) assigned to this IP Precedence.
minimum: 0
maximum: 63
drop-preced:
type: string
description: Drop precedence assigned for congestion control.
enum:
- green
- yellow
- red
qos-map-cos2dscp:
type: array
description: Maps CoS/CFI values in ingress packets to PHB and drop precedence.
Applied when trust mode is set to cos.
items:
type: object
properties:
cos:
type: integer
description: CoS value extracted from ingress frames.
minimum: 0
maximum: 7
cfi:
type: integer
description: Canonical Format Indicator (0 or 1).
minimum: 0
maximum: 1
phb:
type: integer
description: PHB assigned to this CoS/CFI mapping.
minimum: 0
maximum: 63
drop-preced:
type: string
description: Drop precedence for congestion handling.
enum:
- green
- yellow
- red
qos-map-dscpmutate:
type: array
description: Maps DSCP values (063) in ingress packets to custom PHB and drop precedence.
Used when trust mode is set to dscp.
items:
type: object
properties:
dscp:
type: integer
description: DSCP value from the IP header.
minimum: 0
maximum: 63
phb:
type: integer
description: PHB derived from DSCP-to-internal-priority mapping.
minimum: 0
maximum: 63
drop-preced:
type: string
description: Drop precedence classification for congestion.
enum:
- green
- yellow
- red
qos-map-phb2queue:
type: array
description: Maps PHB to output hardware queues for traffic scheduling.
items:
type: object
properties:
phb:
type: integer
description: Per-hop behavior value (internal priority).
minimum: 0
maximum: 63
queue-id:
type: integer
description: Hardware queue ID chosen for this PHB.
minimum: 0

View File

@@ -590,6 +590,11 @@ properties:
- short
- long
default: long
trunk-id:
description: Specifies the trunk group ID used as the mclag-group.
type: integer
minimum: 1
maximum: 64
system-priority:
description: Specifies the system priority used by the switch for LACP negotiations.
type: integer
@@ -648,6 +653,37 @@ properties:
lockout-period-seconds:
description: Duration (in seconds) for which the user account remains locked after exceeding the failed attempt threshold.
type: integer
qos-queue-config:
type: object
description: Global configuration for QoS priority queue scheduling and processing on L2 switches.
properties:
queue-scheduler-mode:
type: string
description: Sets the scheduling mode used for processing each of the Class of Service (CoS) priority queues.
enum:
- strict
- wrr
- strict-wrr
- wfq
- dwrr
queue-config:
type: array
description: List of priority queue configurations applied at the global QoS layer.
items:
type: object
properties:
queue-id:
type: integer
description: Identifier of the priority queue under configuration.
minimum: 0
queue-weight:
type: integer
description: Assigns weights to the CoS priority queues when using WRR or hybrid scheduling modes.
minimum: 1
queue-strict-mode:
type: boolean
description: Ensures that the highest priority packets are always serviced first, ahead of all other traffic.
default: false
arp-inspect:
$ref: "https://ucentral.io/schema/v1/switch/arp-inspect/"
ip-source-guard:

View File

@@ -219,6 +219,11 @@
"cloud_uplink_port"
]
},
"autoneg": {
"description": "Controls whether link autonegotiation is enabled. When set to true, the switch negotiates speed and duplex with the link partner. When set to false, the configured speed and duplex values are forced.",
"type": "boolean",
"default": true
},
"speed": {
"description": "The link speed that shall be forced.",
"type": "integer",
@@ -797,6 +802,143 @@
"description": "Maximum allowed unknown unicast packets per second. 0 disables unknown unicast storm control."
}
}
},
"qos-priority-mapping": {
"type": "object",
"description": "Interface-level QoS priority mapping configuration. Defines how ingress packet markings (IP Precedence, CoS, DSCP) are interpreted and mapped to internal per-hop behavior (PHB), drop precedence, and egress queue selection.",
"properties": {
"priority-untagged": {
"type": "integer",
"description": "Sets the default priority for incoming untagged Ethernet frames.",
"minimum": 0,
"maximum": 7
},
"qos-map-trust-mode": {
"type": "string",
"description": "Determines which packet header field is trusted for ingress classification.",
"enum": [
"cos",
"dscp",
"ip-precedence"
]
},
"qos-map-ipprec2dscp": {
"type": "array",
"description": "Maps IP Precedence values (0\u20137) in ingress packets to per-hop behavior (PHB) and drop precedence. Used when trust mode is set to ip-precedence.",
"items": {
"type": "object",
"properties": {
"preced": {
"type": "integer",
"description": "IP Precedence value in the incoming packet.",
"minimum": 0,
"maximum": 7
},
"phb": {
"type": "integer",
"description": "Per-hop behavior (PHB) assigned to this IP Precedence.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence assigned for congestion control.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-cos2dscp": {
"type": "array",
"description": "Maps CoS/CFI values in ingress packets to PHB and drop precedence. Applied when trust mode is set to cos.",
"items": {
"type": "object",
"properties": {
"cos": {
"type": "integer",
"description": "CoS value extracted from ingress frames.",
"minimum": 0,
"maximum": 7
},
"cfi": {
"type": "integer",
"description": "Canonical Format Indicator (0 or 1).",
"minimum": 0,
"maximum": 1
},
"phb": {
"type": "integer",
"description": "PHB assigned to this CoS/CFI mapping.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence for congestion handling.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-dscpmutate": {
"type": "array",
"description": "Maps DSCP values (0\u201363) in ingress packets to custom PHB and drop precedence. Used when trust mode is set to dscp.",
"items": {
"type": "object",
"properties": {
"dscp": {
"type": "integer",
"description": "DSCP value from the IP header.",
"minimum": 0,
"maximum": 63
},
"phb": {
"type": "integer",
"description": "PHB derived from DSCP-to-internal-priority mapping.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence classification for congestion.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-phb2queue": {
"type": "array",
"description": "Maps PHB to output hardware queues for traffic scheduling.",
"items": {
"type": "object",
"properties": {
"phb": {
"type": "integer",
"description": "Per-hop behavior value (internal priority).",
"minimum": 0,
"maximum": 63
},
"queue-id": {
"type": "integer",
"description": "Hardware queue ID chosen for this PHB.",
"minimum": 0
}
}
}
}
}
}
}
}
@@ -1571,6 +1713,47 @@
}
}
},
"qos-queue-config": {
"type": "object",
"description": "Global configuration for QoS priority queue scheduling and processing on L2 switches.",
"properties": {
"queue-scheduler-mode": {
"type": "string",
"description": "Sets the scheduling mode used for processing each of the Class of Service (CoS) priority queues.",
"enum": [
"strict",
"wrr",
"strict-wrr",
"wfq",
"dwrr"
]
},
"queue-config": {
"type": "array",
"description": "List of priority queue configurations applied at the global QoS layer.",
"items": {
"type": "object",
"properties": {
"queue-id": {
"type": "integer",
"description": "Identifier of the priority queue under configuration.",
"minimum": 0
},
"queue-weight": {
"type": "integer",
"description": "Assigns weights to the CoS priority queues when using WRR or hybrid scheduling modes.",
"minimum": 1
},
"queue-strict-mode": {
"type": "boolean",
"description": "Ensures that the highest priority packets are always serviced first, ahead of all other traffic.",
"default": false
}
}
}
}
}
},
"arp-inspect": {
"type": "object",
"description": "Global configuration for ARP Inspection on the switch.",

View File

@@ -217,6 +217,10 @@
"cloud_uplink_port"
]
},
"autoneg": {
"type": "boolean",
"default": true
},
"speed": {
"type": "integer",
"enum": [
@@ -704,6 +708,124 @@
"default": 0
}
}
},
"qos-priority-mapping": {
"type": "object",
"properties": {
"priority-untagged": {
"type": "integer",
"minimum": 0,
"maximum": 7
},
"qos-map-trust-mode": {
"type": "string",
"enum": [
"cos",
"dscp",
"ip-precedence"
]
},
"qos-map-ipprec2dscp": {
"type": "array",
"items": {
"type": "object",
"properties": {
"preced": {
"type": "integer",
"minimum": 0,
"maximum": 7
},
"phb": {
"type": "integer",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-cos2dscp": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cos": {
"type": "integer",
"minimum": 0,
"maximum": 7
},
"cfi": {
"type": "integer",
"minimum": 0,
"maximum": 1
},
"phb": {
"type": "integer",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-dscpmutate": {
"type": "array",
"items": {
"type": "object",
"properties": {
"dscp": {
"type": "integer",
"minimum": 0,
"maximum": 63
},
"phb": {
"type": "integer",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-phb2queue": {
"type": "array",
"items": {
"type": "object",
"properties": {
"phb": {
"type": "integer",
"minimum": 0,
"maximum": 63
},
"queue-id": {
"type": "integer",
"minimum": 0
}
}
}
}
}
}
}
},
@@ -1711,6 +1833,41 @@
}
}
},
"qos-queue-config": {
"type": "object",
"properties": {
"queue-scheduler-mode": {
"type": "string",
"enum": [
"strict",
"wrr",
"strict-wrr",
"wfq",
"dwrr"
]
},
"queue-config": {
"type": "array",
"items": {
"type": "object",
"properties": {
"queue-id": {
"type": "integer",
"minimum": 0
},
"queue-weight": {
"type": "integer",
"minimum": 1
},
"queue-strict-mode": {
"type": "boolean",
"default": false
}
}
}
}
}
},
"arp-inspect": {
"$ref": "#/$defs/switch.arp-inspect"
},

View File

@@ -253,6 +253,11 @@
"cloud_uplink_port"
]
},
"autoneg": {
"description": "Controls whether link autonegotiation is enabled. When set to true, the switch negotiates speed and duplex with the link partner. When set to false, the configured speed and duplex values are forced.",
"type": "boolean",
"default": true
},
"speed": {
"description": "The link speed that shall be forced.",
"type": "integer",
@@ -831,6 +836,143 @@
"description": "Maximum allowed unknown unicast packets per second. 0 disables unknown unicast storm control."
}
}
},
"qos-priority-mapping": {
"type": "object",
"description": "Interface-level QoS priority mapping configuration. Defines how ingress packet markings (IP Precedence, CoS, DSCP) are interpreted and mapped to internal per-hop behavior (PHB), drop precedence, and egress queue selection.",
"properties": {
"priority-untagged": {
"type": "integer",
"description": "Sets the default priority for incoming untagged Ethernet frames.",
"minimum": 0,
"maximum": 7
},
"qos-map-trust-mode": {
"type": "string",
"description": "Determines which packet header field is trusted for ingress classification.",
"enum": [
"cos",
"dscp",
"ip-precedence"
]
},
"qos-map-ipprec2dscp": {
"type": "array",
"description": "Maps IP Precedence values (0\u20137) in ingress packets to per-hop behavior (PHB) and drop precedence. Used when trust mode is set to ip-precedence.",
"items": {
"type": "object",
"properties": {
"preced": {
"type": "integer",
"description": "IP Precedence value in the incoming packet.",
"minimum": 0,
"maximum": 7
},
"phb": {
"type": "integer",
"description": "Per-hop behavior (PHB) assigned to this IP Precedence.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence assigned for congestion control.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-cos2dscp": {
"type": "array",
"description": "Maps CoS/CFI values in ingress packets to PHB and drop precedence. Applied when trust mode is set to cos.",
"items": {
"type": "object",
"properties": {
"cos": {
"type": "integer",
"description": "CoS value extracted from ingress frames.",
"minimum": 0,
"maximum": 7
},
"cfi": {
"type": "integer",
"description": "Canonical Format Indicator (0 or 1).",
"minimum": 0,
"maximum": 1
},
"phb": {
"type": "integer",
"description": "PHB assigned to this CoS/CFI mapping.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence for congestion handling.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-dscpmutate": {
"type": "array",
"description": "Maps DSCP values (0\u201363) in ingress packets to custom PHB and drop precedence. Used when trust mode is set to dscp.",
"items": {
"type": "object",
"properties": {
"dscp": {
"type": "integer",
"description": "DSCP value from the IP header.",
"minimum": 0,
"maximum": 63
},
"phb": {
"type": "integer",
"description": "PHB derived from DSCP-to-internal-priority mapping.",
"minimum": 0,
"maximum": 63
},
"drop-preced": {
"type": "string",
"description": "Drop precedence classification for congestion.",
"enum": [
"green",
"yellow",
"red"
]
}
}
}
},
"qos-map-phb2queue": {
"type": "array",
"description": "Maps PHB to output hardware queues for traffic scheduling.",
"items": {
"type": "object",
"properties": {
"phb": {
"type": "integer",
"description": "Per-hop behavior value (internal priority).",
"minimum": 0,
"maximum": 63
},
"queue-id": {
"type": "integer",
"description": "Hardware queue ID chosen for this PHB.",
"minimum": 0
}
}
}
}
}
}
}
},
@@ -2029,6 +2171,47 @@
}
}
},
"qos-queue-config": {
"type": "object",
"description": "Global configuration for QoS priority queue scheduling and processing on L2 switches.",
"properties": {
"queue-scheduler-mode": {
"type": "string",
"description": "Sets the scheduling mode used for processing each of the Class of Service (CoS) priority queues.",
"enum": [
"strict",
"wrr",
"strict-wrr",
"wfq",
"dwrr"
]
},
"queue-config": {
"type": "array",
"description": "List of priority queue configurations applied at the global QoS layer.",
"items": {
"type": "object",
"properties": {
"queue-id": {
"type": "integer",
"description": "Identifier of the priority queue under configuration.",
"minimum": 0
},
"queue-weight": {
"type": "integer",
"description": "Assigns weights to the CoS priority queues when using WRR or hybrid scheduling modes.",
"minimum": 1
},
"queue-strict-mode": {
"type": "boolean",
"description": "Ensures that the highest priority packets are always serviced first, ahead of all other traffic.",
"default": false
}
}
}
}
}
},
"arp-inspect": {
"$ref": "#/$defs/switch.arp-inspect"
},