diff options
Diffstat (limited to 'xyz/openbmc_project/Network')
-rw-r--r-- | xyz/openbmc_project/Network/Experimental/Bond.interface.yaml | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/xyz/openbmc_project/Network/Experimental/Bond.interface.yaml b/xyz/openbmc_project/Network/Experimental/Bond.interface.yaml new file mode 100644 index 0000000..2120875 --- /dev/null +++ b/xyz/openbmc_project/Network/Experimental/Bond.interface.yaml @@ -0,0 +1,85 @@ +description: > + This defines network bonding parameters. + +# TODO Fix it through https://github.com/openbmc/openbmc/issues/1438 +# creatable: true + +properties: + - name: InterfaceName + type: string + description: > + Name of the interface. + - name: BondedInterfaces + type: array[string] + description: > + Interfaces which needs to be bonded. + - name: Mode + type: enum[self.BondingMode] + description: > + Network interface bonding modes. + default: RoundRobin + - name: TransmitHashPolicy + type: enum[self.HashPolicy] + description: + Selects the transmit hash policy to use for slave selection in + balance-xor, 802.3ad, and tlb modes. + default: Layer2 + +enumerations: + - name: BondingMode + description: > + Possible bonding mode types. + values: + - name: RoundRobin + description: > + It is the default mode,in this mode system transmits packets in + sequential order from the first available slave through the last. + - name: ActiveBackup + description: > + In this mode, only one slave in the bond is active. + The other one will become active, only when the active slave fails. + - name: XOR + description: > + Transmit based on selectable hashing algorithm. + The default policy is a simple source+destination MAC address algorithm. + - name: Broadcast + description: > + Transmits everything on all slave interfaces. + - name: Dynamic + description: > + IEEE 802.3ad Dynamic link aggregation. + - name: TLB + description: > + The outgoing traffic is distributed according to the current load on each slave. + - name: ALB + description: > + Incoming/outgoing traffic is distributed according to the current load on each slave. + + - name: HashPolicy + description: > + Possible policy types. + values: + - name: Layer2 + description: > + This policy uses XOR of hardware MAC addresses and packet type ID + field to generate the hash. + - name: Layer2Plus3 + description: > + This policy uses a combination of layer2 and layer3 + protocol information to generate the hash. + - name: Layer3Plus4 + description: > + This policy uses upper layer protocol information, + when available, to generate the hash. + - name: Encap2Plus3 + description: > + This policy uses the same formula as layer2+3 but it + relies on skb_flow_dissect to obtain the header fields + which might result in the use of inner headers if an + encapsulation protocol is used. + - name: Encap3Plus4 + description: > + This policy uses the same formula as layer3+4 but it + relies on skb_flow_dissect to obtain the header fields + which might result in the use of inner headers if an + encapsulation protocol is used. |