blob: f0b3472823c3d9fe7e237fe54734e069f8a7da15 [file] [log] [blame]
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.