summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRatan Gupta <ratagupt@in.ibm.com>2017-03-28 17:14:49 +0530
committerPatrick Williams <patrick@stwcx.xyz>2017-04-25 16:18:24 +0000
commit66bc4eb537a9bf22ea674ecd78879c35c0d824de (patch)
tree9cb98e76398b3c20fd5eae24c9cc6a9254bfb580
parent7e175e12b1b0bf6e40914682656ea60e7cf72168 (diff)
downloadphosphor-dbus-interfaces-66bc4eb537a9bf22ea674ecd78879c35c0d824de.tar.gz
phosphor-dbus-interfaces-66bc4eb537a9bf22ea674ecd78879c35c0d824de.zip
Network: define interface for network bonding parameters
Change-Id: Ib94e7ab515834b2c73eccddc783ccea0c3026092 Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
-rw-r--r--xyz/openbmc_project/Network/Experimental/Bond.interface.yaml85
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.
OpenPOWER on IntegriCloud