Extend schema to support reporting of FDB table (wired clients)

Extend state/unit.yml to report triplet that states which mac
  has been learned on which port in which vlan.
Example of "mac-forwarding-table" in json format:
...
            "mac-forwarding-table": {
                "overflow": false,
                "Ethernet0":    {
                    "1":    ["90:3c:b3:6a:e3:59"]
                },
                "Ethernet1":    {
                    "1":    ["90:3c:b3:6a:e4:d5"]
                },
                "Ethernet47":   {
                    "1":    ["ac:1f:6b:65:a4:86"]
                },
                "Ethernet46":   {
                    "1":    ["ac:1f:6b:65:a4:89"]
                }
            },
...

Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
This commit is contained in:
Oleksandr Mazur
2024-01-08 11:58:19 +02:00
parent fec747ae43
commit d2042faf6b
3 changed files with 31 additions and 0 deletions

View File

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

View 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']

View File

@@ -52,3 +52,5 @@ 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/"