Skip to content

MACsec/ MKA config and metric support in OTG model #408

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 144 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
144 commits
Select commit Hold shift + click to select a range
4b20750
Add OTG MACsec model
sasubrata Dec 20, 2024
8af52f3
Add OTG MACsec model
sasubrata Dec 20, 2024
3ec23a2
Merge branch 'master' into macsec
sasubrata Dec 20, 2024
3fd7c48
Fix artifact build by removing reserved token from MACsec enum names
sasubrata Dec 20, 2024
969df60
Update auto generated content
actions-user Dec 20, 2024
1ca1b30
Fixed key geneneration, HW acceleration and some formatting
sasubrata Jan 13, 2025
4ecb166
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 13, 2025
d71380b
Update auto generated content
actions-user Jan 13, 2025
6020161
Fixed Tx PN config
sasubrata Jan 13, 2025
e19f254
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 13, 2025
ed9acb0
Update auto generated content
actions-user Jan 13, 2025
327764c
Modified rekey mode in case of static key
sasubrata Jan 13, 2025
000d3f6
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 13, 2025
a413c7f
Update auto generated content
actions-user Jan 13, 2025
9a39c19
Renamed Tx, Rx to Tx, Rx SC. Moved SAK pools to Tx, Rx SC.
sasubrata Jan 15, 2025
67ea4ea
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 15, 2025
36ee718
Update auto generated content
actions-user Jan 15, 2025
da773a7
Change tx, rx field names to txsc, rxsc
sasubrata Jan 16, 2025
c30ed27
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 16, 2025
88176bc
Fix build error
sasubrata Jan 16, 2025
53db31b
Update auto generated content
actions-user Jan 16, 2025
fef8e24
Allow more than one TxSCs and RxSCs in model
sasubrata Jan 16, 2025
7b63176
Update auto generated content
actions-user Jan 16, 2025
e8108da
Make txscs, rxscs fields optional as the fields are not set by user i…
sasubrata Jan 16, 2025
dca3c14
Update auto generated content
actions-user Jan 16, 2025
c0365c2
Add a SecY container object to group all SecY properties
sasubrata Jan 18, 2025
fc190d3
Fix build error
sasubrata Jan 18, 2025
0890e5d
Update auto generated content
actions-user Jan 18, 2025
e9d7ec0
Corrected integer enum in confidentiality offset. Also made crypto_en…
sasubrata Jan 19, 2025
6733259
Update auto generated content
actions-user Jan 19, 2025
0024884
Correct confidentiality offset field name. Also set format for intege…
sasubrata Jan 20, 2025
67c50dc
Update auto generated content
actions-user Jan 20, 2025
e30bdb7
Change confidentiality offset type to string so that all enum values …
sasubrata Jan 20, 2025
2e21f36
Update auto generated content
actions-user Jan 20, 2025
c682612
Rename SecY class to Macsec for better understanding in device model …
sasubrata Jan 22, 2025
a5a2479
Update auto generated content
actions-user Jan 22, 2025
a204124
Rename MacsecDevice class to Macsec as it is already contained in Dev…
sasubrata Jan 22, 2025
48618c7
Update auto generated content
actions-user Jan 22, 2025
7cb2bd8
Changed RxSC fields. Also changed SAK pool
sasubrata Jan 23, 2025
b6a4544
Update auto generated content
actions-user Jan 23, 2025
e1ee4fc
Change SAK field name to plural
sasubrata Jan 23, 2025
c02214a
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Jan 23, 2025
a100888
Update auto generated content
actions-user Jan 23, 2025
9038f0b
Add Macsec endpoint as flow tx/ rx names
sasubrata Jan 23, 2025
4a1cec9
Update auto generated content
actions-user Jan 23, 2025
6901507
Add MACsec metric model
sasubrata Jan 30, 2025
9691c0d
Update auto generated content
actions-user Jan 30, 2025
77184da
Add MKA configuration model supporting required parameters
sasubrata Feb 6, 2025
06e35f2
Update auto generated content
actions-user Feb 6, 2025
26c52eb
Fix model build warning due to missing integer format
sasubrata Feb 6, 2025
1c28032
Update auto generated content
actions-user Feb 6, 2025
f77b401
Modify timer based rekey mode properties
sasubrata Feb 6, 2025
2b8e2a0
Update auto generated content
actions-user Feb 6, 2025
f943b27
Modify key server properties
sasubrata Feb 6, 2025
e3965fa
Update auto generated content
actions-user Feb 6, 2025
bffc9f5
Modify basic properties
sasubrata Feb 6, 2025
b368302
Update auto generated content
actions-user Feb 6, 2025
c9ee3df
Fix basic properties
sasubrata Feb 6, 2025
13b199c
Update auto generated content
actions-user Feb 6, 2025
cd1fec1
Set required properties
sasubrata Feb 6, 2025
06e6b08
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 6, 2025
f66d227
Update auto generated content
actions-user Feb 6, 2025
7e5167a
Make key server properties optional
sasubrata Feb 6, 2025
2f48722
Update auto generated content
actions-user Feb 6, 2025
6b6f35c
Add optional parameters. Also simplyfy references.
sasubrata Feb 6, 2025
e2cf5a9
Update auto generated content
actions-user Feb 6, 2025
aa80c6f
Correct references
sasubrata Feb 6, 2025
bc44f82
Set default values for supported cipher suites
sasubrata Feb 6, 2025
d9c6248
Update auto generated content
actions-user Feb 6, 2025
da33063
Update rekey mode properties
sasubrata Feb 6, 2025
0b57649
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 6, 2025
64f32d5
Update auto generated content
actions-user Feb 6, 2025
b28f43b
Add rekey threshold value for XPN
sasubrata Feb 8, 2025
39d324f
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 8, 2025
a69e292
Update auto generated content
actions-user Feb 8, 2025
9fedae5
Add name to TX SC
sasubrata Feb 8, 2025
db520d7
Update auto generated content
actions-user Feb 8, 2025
f5db90e
Make name required in TX SC
sasubrata Feb 8, 2025
a8bee5b
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 8, 2025
8023020
Update auto generated content
actions-user Feb 8, 2025
59851eb
Add support for fixed/ incrementing Tx XPN
sasubrata Feb 9, 2025
33e5de8
Update auto generated content
actions-user Feb 9, 2025
b2e8778
Change Tx XPN enums. Also add DUT MSB XPN for static key.
sasubrata Feb 9, 2025
fc08673
Update auto generated content
actions-user Feb 9, 2025
d33b458
Complete static key rekey mode settings
sasubrata Feb 9, 2025
69056f1
Update auto generated content
actions-user Feb 9, 2025
a0a1b4f
Complete rekey mode settings
sasubrata Feb 9, 2025
7f82ad2
Update auto generated content
actions-user Feb 9, 2025
0f27500
Make end_station and include_sci setting common to both static key an…
sasubrata Feb 10, 2025
780b3d7
Update auto generated content
actions-user Feb 10, 2025
1b41dc4
Make end_station and include_sci setting common to both static key an…
sasubrata Feb 10, 2025
02ee19e
Update auto generated content
actions-user Feb 10, 2025
c0ba31d
Make fixed/ incrementng PN choice and PN count common for both PN and…
sasubrata Feb 10, 2025
f1c2e80
Update auto generated content
actions-user Feb 10, 2025
25415fe
Some description change as dummy push.
sasubrata Feb 10, 2025
2955f9f
Update auto generated content
actions-user Feb 10, 2025
5d65901
Add name to PSK chain
sasubrata Feb 10, 2025
e0166c7
Update auto generated content
actions-user Feb 10, 2025
8e71436
Fix PSK chain
sasubrata Feb 10, 2025
5d8bfcf
Update auto generated content
actions-user Feb 10, 2025
2a12cfd
Add MKA metric
sasubrata Feb 11, 2025
b5ac0e0
Update auto generated content
actions-user Feb 11, 2025
04f0cfb
Dummy submit
sasubrata Feb 11, 2025
e6e5f2a
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 11, 2025
03425e2
Revert dummy submit
sasubrata Feb 11, 2025
8ee499f
Update auto generated content
actions-user Feb 11, 2025
5baf6cc
Merge branch 'mka' of https://github.com/open-traffic-generator/model…
sasubrata Feb 11, 2025
cf26444
Update auto generated content
actions-user Feb 11, 2025
2aa3a31
Merge branch 'mka' into macsec
sasubrata Feb 11, 2025
69cc3ce
Update auto generated content
actions-user Feb 11, 2025
b284c0e
Add missing MKA metrics in result
sasubrata Feb 11, 2025
48d4214
Update auto generated content
actions-user Feb 11, 2025
97e9f36
Remove sub type from crypto engine
sasubrata Feb 12, 2025
65f7aaa
Merge branch 'macsec' of https://github.com/open-traffic-generator/mo…
sasubrata Feb 12, 2025
c3d0e5b
Update auto generated content
actions-user Feb 12, 2025
a69b928
Key generation choice is not to be exposed. Some RxSC parameters are …
sasubrata Feb 12, 2025
96d55d5
Update auto generated content
actions-user Feb 12, 2025
3a106d4
Changes in model
sasubrata Feb 12, 2025
03321c2
Update auto generated content
actions-user Feb 12, 2025
5a14561
Change order of TxSC fields
sasubrata Feb 12, 2025
126ddd8
Update auto generated content
actions-user Feb 12, 2025
efe91cd
Rearrange model at high level by introducing Tx/ Rx properties.
sasubrata Feb 13, 2025
f2467b4
Push missing files in previous commit.
sasubrata Feb 13, 2025
c0a25e1
Update auto generated content
actions-user Feb 13, 2025
7223c61
Change names and remove array.
sasubrata Feb 13, 2025
cdb1903
Update auto generated content
actions-user Feb 13, 2025
2c0a98d
Merge branch 'master' into macsec
sasubrata Feb 14, 2025
841689b
Update auto generated content
actions-user Feb 14, 2025
3f62b11
Mainly remove key chain or pool name as this configuration has no imp…
sasubrata Feb 18, 2025
c7e7002
Update auto generated content
actions-user Feb 18, 2025
9b510eb
Add SSCI and salt in SAK structure for XPN ciphers.
sasubrata Feb 19, 2025
3c8f3c5
Update auto generated content
actions-user Feb 19, 2025
419101f
Rework based on review comments in pull request #408
sasubrata Feb 21, 2025
dc462a8
Update auto generated content
actions-user Feb 21, 2025
6fe78aa
Add details to Tx PN choices
sasubrata Feb 21, 2025
90ab155
Update auto generated content
actions-user Feb 21, 2025
c7f349c
Correct minimum/ maximum values of some fields
sasubrata Feb 21, 2025
2f0706f
Update auto generated content
actions-user Feb 21, 2025
61c2c21
Correct maximum values of a field
sasubrata Feb 21, 2025
fd682c4
Update auto generated content
actions-user Feb 21, 2025
f1f8ac0
Rework model with more review comments
sasubrata Feb 25, 2025
12d37c6
Update auto generated content
actions-user Feb 25, 2025
ddff1fb
Merge branch 'master' into macsec
sasubrata Mar 3, 2025
93cb804
Update auto generated content
actions-user Mar 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions artifacts/openapi.html

Large diffs are not rendered by default.

1,744 changes: 1,585 additions & 159 deletions artifacts/openapi.yaml

Large diffs are not rendered by default.

905 changes: 904 additions & 1 deletion artifacts/otg.proto

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions device/device.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,16 @@ components:
Configuration for OSPFv2 router.
$ref: './ospfv2/router.yaml#/components/schemas/Device.Ospfv2Router'
x-field-uid: 10
macsec:
description: >-
Configuration of MACsec device.
$ref: './macsec/macsec.yaml#/components/schemas/Device.Macsec'
x-field-uid: 11
mka:
description: >-
Configuration of MKA supplicant.
$ref: './mka/mka.yaml#/components/schemas/Device.Mka'
x-field-uid: 12
required: [name]
Protocol.Options:
description: >-
Expand Down
230 changes: 230 additions & 0 deletions device/macsec/cryptoengine.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
components:
schemas:
Macsec.CryptoEngine:
description: >-
A container of crypto engine properties of a SecY.
type: object
properties:
choice:
description: >-
Engine type based on encryption and/ or decryption capability. Supported types: 1) stateless_encryption_only - engine can only encrypt transmitted packets but such engine cannot decrypt packets upon arrival. As the packets cannot be decrypted on arrival, such packets cannot be delivered to the receiving device. Hence only stateless traffic can be sent. 2) stateful_encryption_decryption - engine can both encrypt transmitted packets and decrypt packets on arrival. Such engine can have hardware acceleration for faster encryption/ ddecryption. As both encryption and decryption are possible, stateful (e.g. TCP) traffic can be sent/ received.
type: string
default: stateless_encryption_only
x-field-uid: 1
x-enum:
stateless_encryption_only:
x-field-uid: 1
stateful_encryption_decryption:
x-field-uid: 2
stateless_encryption_only:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatelessEncryptionOnly'
x-field-uid: 2
stateful_encryption_decryption:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatefulEncryptionDecryption'
x-field-uid: 3
Macsec.CryptoEngine.StatelessEncryptionOnly:
description: >-
The container for stateless encryption only engine configuration.
type: object
properties:
tx_pn:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatelessEncryptionOnly.TxPn'
x-field-uid: 1
traffic:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatelessEncryptionOnly.Traffic'
x-field-uid: 3
Macsec.CryptoEngine.StatefulEncryptionDecryption:
description: >-
The container for stateful encryption and decryption engine configuration.
type: object
properties:
initial_pn:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatefulEncryptionDecryption.InitialPn'
x-field-uid: 1
hardware_acceleration:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatefulEncryptionDecryption.HardwareAcceleration'
x-field-uid: 2
Macsec.CryptoEngine.StatelessEncryptionOnly.TxPn:
description: >-
Tx packet number(PN) configuration.
type: object
properties:
choice:
description: >-
Types of Tx packet number(PN) series. Supported choices: 1) fixed PN - MACsec packets will be sent out with the configured fixed PN or lower half of configured fixed XPN. 2) incrementing PN - MACsec packets will be sent out by single device with an incrementing PN or XPN.
type: string
default: fixed_pn
x-field-uid: 1
x-enum:
fixed_pn:
x-field-uid: 1
incrementing_pn:
x-field-uid: 2
fixed:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatelessEncryptionOnly.FixedPn'
x-field-uid: 2
incrementing:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatelessEncryptionOnly.IncrementingPn'
x-field-uid: 3
Macsec.CryptoEngine.StatelessEncryptionOnly.FixedPn:
description: >-
Fixed packet number(PN) configuration.
type: object
properties:
pn:
description: >-
Fixed Tx packet number(PN). 4 bytes PN with which all packets will be sent out.
type: integer
format: uint32
minimum: 1
maximum: 4294967295
default: 6
x-field-uid: 1
xpn:
description: >-
Fixed Tx extended packet number(XPN). 8 bytes XPN with which all packets will be sent out.
type: string
format: hex
minLength: 1
maxLength: 8
minimum: 1
default: "0x0000000000000006"
x-field-uid: 2
Macsec.CryptoEngine.StatelessEncryptionOnly.IncrementingPn:
description: >-
Incrementing packet number(PN) configuration.
type: object
properties:
count:
description: >-
Count of packet numbers in series.
type: integer
format: uint32
minimum: 2
maximum: 1000000
default: 100
x-field-uid: 1
first_pn:
description: >-
The first packet number(PN).
type: integer
format: uint32
minimum: 1
default: 10000
x-field-uid: 2
first_xpn:
description: >-
The first extended packet number(XPN).
type: string
format: hex
minLength: 1
maxLength: 8
minimum: 1
default: "0x0000000000010000"
x-field-uid: 3
Macsec.CryptoEngine.StatelessEncryptionOnly.Traffic:
description: >-
Encryption only traffic configuration.
type: object
properties:
send_gratarp:
description: >-
Send gratuitous ARP or not.
type: boolean
default: true
x-field-uid: 1
Macsec.CryptoEngine.StatefulEncryptionDecryption.InitialPn:
description: >-
Initial packet number(PN) configuration.
type: object
properties:
pn:
description: >-
Initial Tx packet number(PN).
type: integer
format: uint32
minimum: 1
default: 1
x-field-uid: 1
Macsec.CryptoEngine.StatefulEncryptionDecryption.HardwareAcceleration:
description: >-
Hardware acceleration configuration for offloading MACsec processing to hardware.
type: object
properties:
choice:
description: >-
Hardware acceleration types.
type: string
default: none
x-field-uid: 1
x-enum:
none:
x-field-uid: 1
inline_crypto:
x-field-uid: 2
inline_crypto:
$ref: '#/components/schemas/Macsec.CryptoEngine.StatefulEncryptionDecryption.HardwareAcceleration.InlineCrypto'
x-field-uid: 2
Macsec.CryptoEngine.StatefulEncryptionDecryption.HardwareAcceleration.InlineCrypto:
description: >-
Inline cryto engine configuration. Encryption/ decryption are offloaded to hardware. Also dynamic fields e.g. packet number(PN) and integrity check value(ICV) are updated in MACsec header on transmit.
type: object
properties:
rx_sectag_offset:
description: >-
Offset of Rx secTAG from the first byte in packet.
type: integer
format: uint32
default: 12
x-field-uid: 1
type_of_ca:
description: >-
Type of connectivity association(CA).
type: string
x-field-uid: 2
x-enum:
pairwise_ca:
x-field-uid: 1
group_ca_single_dut:
x-field-uid: 2
group_ca_multipe_duts:
x-field-uid: 3
max_ca_count:
description: >-
The maximum number of CAs configured on the port. The maximum count supported per port is 256 for Pair-wise CA, each CA having one MACsec device.
type: integer
format: uint32
minimum: 1
maximum: 256
default: 256
x-field-uid: 3
max_dut_tx_sc_per_ca:
description: >-
The maximum number of DUT transmit SCs that can be supported per CA. The count should be number of Tx SCs supported by the DUT per CA, multiplied by number of DUTs in the CA in case of group CA with multiple DUTs scenario.
type: integer
format: uint32
minimum: 1
maximum: 256
default: 1
x-field-uid: 4
max_device_per_ca:
description: >-
The maximum number of MACsec devices at test port that can be supported on each CA. This number is calculated automatically based on the values configured for Max CA Count and Max DUT Tx SC Per CA. Number of MACsec devices at test port should be configured accordingly.
type: integer
format: uint32
minimum: 1
default: 256
x-field-uid: 5
rx_sc_identifying_field:
description: >-
The field based on which secure channel(SC) will be identified by the receiving port. Supported fields are:- - 1) source MAC - identify SC based on source MAC field. 2) SCI system ID - identify SC bbased on SCI system ID field. 3) SCI port ID - identify based on SCI port ID field.
type: string
default: source_mac
x-field-uid: 6
x-enum:
source_mac:
x-field-uid: 1
sci_sytem_id:
x-field-uid: 2
sci_port_id:
x-field-uid: 3
64 changes: 64 additions & 0 deletions device/macsec/macsec.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
components:
schemas:
Device.Macsec:
description: >-
A container of properties for a MACsec capable device.
type: object
required: [ethernet_interfaces]
properties:
ethernet_interfaces:
description: |-
Ethernet Interfaces
type: array
items:
$ref: '#/components/schemas/Device.Macsec.EthernetInterface'
x-field-uid: 1
Device.Macsec.EthernetInterface:
description: >-
Configuration for single MACsec interface.
type: object
required: [eth_name, secy]
properties:
eth_name:
description: >-
The unique name of the Ethernet interface on which MACsec
is enabled.
type: string
x-constraint:
- '/components/schemas/Device.Ethernet/properties/name'
x-field-uid: 1
secy:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we possible have a choice maybe at this level or for both tx/rx within secy to choose either static or mka , and depending on that take in the static or mka config ? At device level , we have single macsec protocol node and within that per interface ( or per interface tx and rx ) we have a choice of static or mka .
Advantage : No ambiguity e.g. if both static and mka are defined for same interface ; association with ethernet interface at single point instead of 2 places.

Copy link
Contributor Author

@sasubrata sasubrata Feb 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently configuration is arranged this way:

  • Any static key specific configuration is kept under a static_key level. All such configurations are ignored in snappi-ixnetwork converter i.e. not taken into effect if MKA is configured in script - I have added this information in static key level.
  • Rest of the configuration is common i.e. applicable to both MKA and static key.

Currently configurations common to static key and MKA are not duplicated. These are set once only. If we have static key and MKA choices at secY or Tx/ Rx level - common configurations in Tx/ Rx will be repeated and any change in model/ test script in common config needs to be done twice.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would like to discuss this with some you and some other MacSec stakeholders if possible. Need to also discuss if external ( to Keysight ) is planned for this model or has been done. Ideally prefer validations to be built in into model where possible not allowing users to make mistakes at compile time itself. Not sure on this. Need to also see what are the number of common parameters you describe.

description: >-
This contains the properties of Secure Entity (SecY).
$ref: '#/components/schemas/Macsec'
x-field-uid: 2

Macsec:
description: >-
Configuration of a Secure Entity (SecY).
type: object
required: [name]
properties:
name:
x-include: ../../common/common.yaml#/components/schemas/Named.Object/properties/name
x-field-uid: 1
static_key:
description: >-
Static key properties properties of SecY. Static key is used in absence MKA.
$ref: './statickey.yaml#/components/schemas/Macsec.StaticKey'
x-field-uid: 2
tx:
description: >-
Tx properties of SecY.
$ref: './tx.yaml#/components/schemas/Macsec.Tx'
x-field-uid: 3
rx:
description: >-
Rx properties of SecY.
$ref: './rx.yaml#/components/schemas/Macsec.Rx'
x-field-uid: 4
crypto_engine:
description: >-
Crypto engine properties of SecY.
$ref: './cryptoengine.yaml#/components/schemas/Macsec.CryptoEngine'
x-field-uid: 5
38 changes: 38 additions & 0 deletions device/macsec/rx.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
components:
schemas:
Macsec.Rx:
description: >-
A container for Rx settings of SecY.
type: object
properties:
replay_protection:
description: |-
Enable replay protection on not.
type: boolean
default: false
x-field-uid: 1
replay_window:
description: |-
Replay window size.
type: integer
format: uint32
minimum: 1
default: 1
x-field-uid: 2
static_key:
description: |-
Rx settings for static key.
$ref: '#/components/schemas/Macsec.Rx.StaticKey'
x-field-uid: 3
Macsec.Rx.StaticKey:
description: >-
Container for Rx setting for static key.
type: object
properties:
scs:
description: >-
Rx secure channels.
type: array
items:
$ref: './rxsc.yaml#/components/schemas/Macsec.RxSc'
x-field-uid: 1
38 changes: 38 additions & 0 deletions device/macsec/rxsc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
components:
schemas:
Macsec.RxSc:
description: |-
Rx SC settings.
type: object
properties:
dut_system_id:
description: |-
System ID in DUT SCI.
type: string
format: mac
x-field-uid: 1
dut_port_id:
description: |-
Port ID in DUT SCI.
type: integer
format: uint32
minimum: 1
maximum: 65535
default: 1
x-field-uid: 2
dut_msb_xpn:
description: |-
DUT MSB of XPN. The 32 most significant bits of the XPN that DUT will be using to construct the 64 bits XPN value when test starts.
type: integer
format: uint32
minimum: 0
maximum: 4294967295
default: 0x00000000
x-field-uid: 3
saks:
description: |-
Rx SAK pool.
type: array
items:
$ref: './statickey.yaml#/components/schemas/Macsec.StaticKey.Sak'
x-field-uid: 4
Loading