diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2021-03-01 20:10:44 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2021-03-02 08:59:52 +0100 |
commit | 07ac5d43e50cb2039f37b4e9447c4e52789c9fb2 (patch) | |
tree | 9b2ebc687d19203f8b4ebe1ab2a0b6c485454a3b /source/n/network-scripts/README.bonding | |
parent | fa458b65d9d4c5e933622574d999915ecda37a25 (diff) | |
download | current-07ac5d43e50cb2039f37b4e9447c4e52789c9fb2.tar.gz current-07ac5d43e50cb2039f37b4e9447c4e52789c9fb2.tar.xz |
Mon Mar 1 20:10:44 UTC 202120210301201044
a/e2fsprogs-1.46.2-x86_64-1.txz: Upgraded.
a/etc-15.0-x86_64-14.txz: Rebuilt.
/etc/hosts: added IPv6 loopback addresses.
a/hwdata-0.345-noarch-1.txz: Upgraded.
ap/hplip-3.20.6-x86_64-7.txz: Rebuilt.
Fixed desktop file to show category and icon properly.
Thanks to upnort and ArTourter.
d/git-2.30.1-x86_64-3.txz: Rebuilt.
Make sure the bash-completion file is installed in the proper location.
Thanks to Robby Workman.
d/python-setuptools-54.0.0-x86_64-1.txz: Upgraded.
d/vala-0.50.4-x86_64-1.txz: Upgraded.
l/imagemagick-7.0.11_2-x86_64-1.txz: Upgraded.
l/python-pillow-8.1.1-x86_64-1.txz: Upgraded.
n/network-scripts-15.0-noarch-13.txz: Rebuilt.
Well, apparently there was a newer branch of this than the one that was
sitting in my usual pending queue, so here it is. This also includes some
additional documentation on the new features. NOTE: In order to use SLAAC
to configure IPv6, you'll need to have USE_SLAAC[x]="yes" for the interface
in rc.inet1.conf. This is to ensure that nobody is surprised to find their
machine fully exposed to the internet - better safe than sorry.
Thanks to Darren "Tadgy" Austin and Robby Workman.
n/wireless_tools-30.pre9-x86_64-4.txz: Rebuilt.
This package contains some updates to rc.wireless and rc.wireless.conf.
Thanks to Darren "Tadgy" Austin.
xfce/mousepad-0.5.3-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/n/network-scripts/README.bonding')
-rw-r--r-- | source/n/network-scripts/README.bonding | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/source/n/network-scripts/README.bonding b/source/n/network-scripts/README.bonding new file mode 100644 index 000000000..5f14e50c2 --- /dev/null +++ b/source/n/network-scripts/README.bonding @@ -0,0 +1,129 @@ +Bonding (link aggregation) +========================== + +Features +-------- +* Full support of features offered by the bonding kernel module. +* Selectable bonding mode using a single parameter in rc.inet1.conf. +* Easy addition of interfaces to the bond using a parameter in rc.inet1.conf. +* Custom bonding module options can be provided using the generic parameter + IFOPTS[x] in the configuration file. + +Configuration +------------- +Bonding interfaces can be configured via two new bond specific parameters in +rc.inet1.conf, plus use of the generic IFOPTS[x] parameter. New parameters +are: + BONDNICS[x]="" The space delimited list of interfaces to add to this + bond. The interfaces will be brought up and configured + while bringing up the interface, so do not need to be + previously defined in rc.inet1.conf. A bond can be + created with only 1 interface, but does not become + useful until at least 2 interfaces are configured. + + BONDMODE[x]="" This parameter sets the bonding mode for this + interface. If not specified when BONDNICS[x] has been + used, the default is 'balance-rr'. See below for a + list of all bonding modes available. + +The following bond modes are available: + balance-rr This mode is also known as round-robin mode. Packets + are sequentially transmitted and received through each + interface one by one. This mode provides load + balancing functionality along with fault tolerance. + active-backup When in this mode only one interface set to active, + while all other interfaces are in the backup state. If + the active interface fails, a backup interface replaces + it as the only active interface in the bond. This mode + only provides fault tolerance, no load balancing. + This mode requires that the 'primary <interface>' + option be configured with the IFOPTS[x] parameter. + balance-xor The source MAC address uses exclusive or (XOR) logic + with the destination MAC address. This calculation + ensures that the same slave interface is selected for + each destination MAC address. This mode provides fault + tolerance and load balancing. + broadcast All packets are sent to all the slaved interfaces. This + mode provides fault tolerance, but may result in + duplicate packets arriving at the destination. + 802.3ad Also known as LACP. This mode creates aggregation + groups that share the same speed and duplex settings, + and it requires a switch that supports an IEEE 802.3ad. + This mode uses all interfaces to form the aggregation + group and provides fault tolerance and load balancing. + balance-tlb This mode ensures that the outgoing traffic + distribution is set according to the load on each + interface and that the current interface receives all + the incoming traffic. If the assigned interface fails + to receive traffic, another interface is assigned to + the receiving role. This provides fault tolerance and + load balancing. + balance-alb The receiving packets are load balanced through Address + Resolution Protocol (ARP) negotiation. This mode + provides fault tolerance and load balancing. + +Module specific interface options can be set using the the IFOPTS[x] paramter, +which takes a pipe (|) delimited list of options for the interface. The +following are the most useful options which can be set with IFOPTS[x]: + miimon Specifies the MII link monitoring frequency in milliseconds. + This determines how often the link state of each slaved + interface is checked for link failures. A value of zero + disables MII link monitoring, but this is NOT advised. A value + of 100 is a good starting point. The default value is 0, so be + sure to set this option with ALL modes. + lacp_rate This option specifies the rate at which the host will ask the + link partner to transmit LACPDU packets in 802.3ad mode. + Possible values are: + slow Transmit LACPDUs every 30 seconds. + fast Transmit LACPDUs every 1 second. + The default is slow, but fast is recommended. + primary The interface (eth0, eth2, ...) selecting which slave is the + primary device. The specified interface will always be the + active slave while it is available. Only when the primary is + off-line will alternate interfaces be used. This is useful + when one interface is preferred over another (e.g. when one + interface has higher throughput than another). This option + is only valid for active-backup, balance-tlb, and balance-alb + modes. + xmit_hash_policy + Selects the transmit hash policy to use for interface selection + in balance-xor, 802.3ad, and balance-tlb modes. Possible + values are: + layer2 Use XOR of source/dest hardware MAC addresses + and packet type ID fields to generate the hash. + This algorithm will place all traffic to a + particular network peer on the same slave. + layer2+3 Use a combination of layer2 and layer3 protocol + information (hardware MAC addresses and IP + addresses) to generate the hash. + This algorithm will place all traffic to a + particular network peer on the same slave. + This policy is intended to provide a more + balanced distribution of traffic than layer2 + alone, especially in environments where a + layer3 gateway device is required to reach most + destinations. + layer3+4 This policy uses upper layer protocol + information, when available, to generate the + hash. This allows for traffic to a particular + network peer to span multiple slave interfaces, + although a single connection will not span + multiple slaves. + The default value is layer2. Additional (lesser used) policies + are available, and documented in kernel source documentation: + /usr/src/linux/Documentation/networking/bonding.txt + +The IFOPTS[x] option should always include the 'miimon' option - not using this +option will result in network degradation. +In 'active-backup' mode, the 'primary' option should also be supplied. +When using '802.3ad mode', set "lacp_rate fast" for faster recovery from an +interface failure. +In other modes, the 'xmit_hash_policy' should be set. + +Full documentation of the bonding layer is available in the kernel source +documentation: /usr/src/linux/Documentation/networking/bonding.txt. + + +-- +Darren 'Tadgy' Austin. +<darren (at) afterdark.org.uk> |