Lines Matching +full:single +full:- +full:link
1 .. SPDX-License-Identifier: GPL-2.0
11 Corrections, HA extensions: 2000/10/03-15:
13 - Willy Tarreau <willy at meta-x.org>
14 - Constantine Gavrilov <const-g at xpert.com>
15 - Chad N. Tindel <ctindel at ieee dot org>
16 - Janice Girouard <girouard at us dot ibm dot com>
17 - Jay Vosburgh <fubar at us dot ibm dot com>
22 - Mitch Williams <mitch.a.williams at intel.com>
28 multiple network interfaces into a single logical "bonded" interface.
31 Additionally, link integrity monitoring may be performed.
35 the original tools from extreme-linux and beowulf sites will not work
69 7. Link Monitoring
77 8.3 Painfully Slow Or No Failed Link Detection By Miimon
84 11.1 High Availability in a Single Switch Topology
87 11.2.2 HA Link Monitoring for Multiple Switch Topology
90 12.1 Maximum Throughput in a Single Switch Topology
91 12.1.1 MT Bonding Mode Selection for Single Switch Topology
92 12.1.2 MT Link Monitoring for Single Switch Topology
95 12.2.2 MT Link Monitoring for Multiple Switch Topology
98 13.1 Link Establishment and Failover Delays
119 -----------------------------------------------
135 ---------------------------
148 ``/etc/modprobe.d/*.conf`` configuration files, or in a distro-specific
156 configuring a bond, it is recommended "tail -f /var/log/messages" be
161 degradation will occur during link failures. Very few devices do not
173 (active-backup, balance-alb and balance-tlb). Possible values
175 string. If a name is given, the slave and its link must be up in order
190 is 1 - 65535. If the value is not specified, it takes 65535 as the
198 In an AD system, this specifies the mac-address for the actor in
200 address. If the all-zeroes MAC is specified, bonding will internally
202 local-admin bit set for this mac but driver does not enforce it. If
230 - A slave is added to or removed from the bond
232 - Any slave's link state changes
234 - Any slave's 802.3ad association state changes
236 - The bond's administrative state changes to up
253 In an AD system, the port-key has three parts as shown below -
259 01-05 Speed
260 06-15 User-defined
264 from 0 - 1023. If not given, the system defaults to 0.
283 Specifies the ARP link monitoring frequency in milliseconds.
300 the same link which could cause the other team members to
309 sent to determine the health of the link to the targets.
320 sent to determine the health of the link to the targets.
331 non-ARP traffic should be filtered (disregarded) for link
389 beyond a common switch. Should the link between the switch and
400 packets for link availability purposes. Arriving packets that are
406 determining if a slave has received traffic for link availability
413 link availability purposes.
421 This option affects only active-backup mode for slaves with
445 The default value is 2, and the allowable range is 1 - 255.
453 IEEE 802.1AX-2008 5.4.15 in addition to the existing coupled control
462 a slave after a link failure has been detected. This option
463 is only valid for the miimon link monitor. The downdelay
470 Specifies whether active-backup mode should set all slaves to
480 bonding to set all slaves of an active-backup bond to
507 monitor, devices which assert link up prior to being
553 Option specifying the rate in which we'll ask our link partner
575 Specifies the MII link monitoring frequency in milliseconds.
576 This determines how often the link state of each slave is
577 inspected for link failures. A value of zero disables MII
578 link monitoring. A value of 100 is a good starting point.
579 The use_carrier option, below, affects how the link state is
587 asserting carrier. It is similar to the Cisco EtherChannel min-links
589 must be up (link-up state) before marking the bond device as up
598 aggregator cannot be active without at least one available link,
604 balance-rr (round robin). Possible values are:
606 balance-rr or 0
608 Round-robin policy: Transmit packets in sequential
613 active-backup or 1
615 Active-backup policy: Only one slave in the bond is
622 occurs in active-backup mode, bonding will issue one
634 balance-xor or 2
652 IEEE 802.3ad Dynamic link aggregation. Creates
662 regards to the packet mis-ordering requirements of
672 2. A switch that supports IEEE 802.3ad Dynamic link
678 balance-tlb or 5
700 balance-alb or 6
702 Adaptive load balancing: includes balance-tlb plus
730 and when an inactive slave is re-activated. The
734 When a link is reconnected or a new slave joins the
763 failover event. As soon as the link is up on the new slave
765 bonding device and each VLAN sub-device. This is repeated at
769 The valid range is 0 - 255; the default value is 1. These options
770 affect only the active-backup mode. These options were added for
783 The valid range is 0 - 65535; the default value is 1. This option
784 has effect only in balance-rr mode.
791 This delay should be a multiple of the MII link monitor interval
794 The valid range is 0 - 300000. The default value is 0, which means
795 to match the value of the MII link monitor interval.
803 for active-backup(1), balance-tlb (5) and balance-alb (6) mode.
813 off-line will alternate devices be used. This is useful when
817 The primary option is only valid for active-backup(1),
818 balance-tlb (5) and balance-alb (6) mode.
825 occurs. This option is designed to prevent flip-flopping between
867 characteristics but can cause packet reordering. If re-ordering is
870 xmit-hash-policy can be used to select the appropriate hashing for
885 slave after a link recovery has been detected. This option is
886 only valid for the miimon link monitor. The updelay value
893 ioctls vs. netif_carrier_ok() to determine the link
900 If bonding insists that the link is up when it should not be,
904 it will appear as if the link is always up. In this case,
906 MII / ETHTOOL ioctl method to determine the link state.
915 balance-xor, 802.3ad, and tlb modes. Possible values are:
948 network peer on the same slave. For non-IP traffic,
964 slaves, although a single connection will not span
981 information is omitted. For non-IP traffic, the
986 single TCP or UDP conversation containing both
1018 hash to load-balance traffic per-vlan, with failover
1021 use their own vlan, to give lacp-like functionality
1022 without requiring lacp-capable switching hardware.
1039 The valid range is 0 - 255; the default value is 1. A value of 0
1043 This option is useful for bonding modes balance-rr (0), active-backup
1044 (1), balance-tlb (5) and balance-alb (6), in which a failover can
1056 The valid range is 1 - 0x7fffffff; the default value is 1. This Option
1057 has effect only in balance-tlb and balance-alb modes.
1085 $ rpm -qf /sbin/ifup
1100 ----------------------------------------
1113 ifcfg-id file for each slave device. The simplest way to accomplish
1115 file ifcfg-id file created; see below for some issues with DHCP). The
1118 ifcfg-id-xx:xx:xx:xx:xx:xx
1123 Once the set of ifcfg-id-xx:xx:xx:xx:xx:xx files has been
1133 _nm_name='bus-pci-0001:61:01.0'
1143 Once the ifcfg-id-xx:xx:xx:xx:xx:xx files have been modified,
1145 itself. This file is named ifcfg-bondX, where X is the number of the
1147 ifcfg-bond0, the second is ifcfg-bond1, and so on. The sysconfig
1151 The contents of the ifcfg-bondX file is as follows::
1161 BONDING_MODULE_OPTS="mode=active-backup miimon=100"
1163 BONDING_SLAVE1="bus-pci-0000:06:08.1"
1192 for the bonding mode, link monitoring, and so on here. Do not include
1202 (bus-pci-0000:06:08.1 in the example above) specify the physical
1233 -------------------------------
1243 -----------------------------------------------
1247 bonding instance to have an appropriately configured ifcfg-bondX file
1251 ifcfg-bondX files.
1254 options in the ifcfg-bondX file, it is not necessary to add them to
1258 ------------------------------------------
1271 network-script file for all physical adapters that will be members of
1272 a bondX link. Network script files are located in the directory:
1274 /etc/sysconfig/network-scripts
1276 The file name must be prefixed with "ifcfg-eth" and suffixed
1278 for eth0 would be named /etc/sysconfig/network-scripts/ifcfg-eth0.
1289 must correspond with the name of the file, i.e., ifcfg-eth1 must have
1297 script will be /etc/sysconfig/network-scripts/ifcfg-bondX where X is
1298 the number of the bond. For bond0 the file is named "ifcfg-bond0",
1299 for bond1 it is named "ifcfg-bond1", and so on. Within that file,
1316 and, indeed, preferable, to specify the bonding options in the ifcfg-bond0
1319 BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=192.168.1.254"
1342 options bond0 mode=balance-alb miimon=100
1348 will restart the networking subsystem and your bond link should be now
1352 ---------------------------------
1365 -------------------------------------------------
1369 specifying the appropriate BONDING_OPTS= in ifcfg-bondX where X is the
1377 -----------------------------------------------
1387 `ip link` commands to the system's global init script. The name of
1396 modprobe bonding mode=balance-alb miimon=100
1399 ip link set eth0 master bond0
1400 ip link set eth1 master bond0
1419 enabled without re-running the entire global init script.
1435 -----------------------------------------
1464 options bond0 -o bond0 mode=balance-rr miimon=100
1467 options bond1 -o bond1 mode=balance-alb miimon=50
1470 named "bond0" and creates the bond0 device in balance-rr mode with an
1472 bond1 device in balance-alb mode with an miimon of 50.
1479 install bond1 /sbin/modprobe --ignore-install bonding -o bond1 \
1480 mode=balance-alb miimon=50
1486 to rename modules at load time (the "-o bond1" part). Attempts to pass
1494 ------------------------------------------
1514 -----------------------------
1521 # echo -bar > /sys/class/net/bonding_masters
1534 --------------------------
1546 # echo -eth0 > /sys/class/net/bond0/bonding/slaves
1555 # echo -eth0 > /sys/class/net/eth0/master/bonding/slaves
1560 -------------------------------
1564 The names of these files correspond directly with the command-
1573 To configure bond0 for balance-alb mode::
1577 - or -
1578 # echo balance-alb > /sys/class/net/bond0/bonding/mode
1591 monitoring is enabled, and vice-versa.
1604 # echo -192.168.0.100 > /sys/class/net/bond0/bonding/arp_ip_target
1617 ---------------------
1628 echo balance-alb > /sys/class/net/bond0/bonding/mode
1635 active-backup mode, using ARP monitoring, add the following lines to
1640 echo active-backup > /sys/class/net/bond1/bonding/mode
1648 -----------------------------------------
1655 the box. The ifenslave-2.6 package should be installed to provide bonding
1656 support. Once installed, this package will provide ``bond-*`` options
1659 Note that ifenslave-2.6 package will load the bonding module and use
1663 ----------------------
1666 active-backup mode, with eth0 and eth1 as slaves::
1670 bond-slaves eth0 eth1
1671 bond-mode active-backup
1672 bond-miimon 100
1673 bond-primary eth0 eth1
1682 bond-slaves none
1683 bond-mode active-backup
1684 bond-miimon 100
1688 bond-master bond0
1689 bond-primary eth0 eth1
1693 bond-master bond0
1694 bond-primary eth0 eth1
1696 For a full list of ``bond-*`` supported options in /etc/network/interfaces and
1698 /usr/share/doc/ifenslave-2.6.
1701 ----------------------------------------------
1724 Bonding Mode: fault-tolerance (active-backup)
1734 Link Failure Count: 0
1740 Link Failure Count: 0
1775 a pass-through for selecting output queues on the slave device rather than
1779 output slave selection was limited to round-robin and active-backup modes.
1782 ----------------------------------------------------------
1786 destined to link local mac addresses (which switches/bridges are not
1798 (a) ad_actor_system : You can set a random mac-address that can be used for
1800 Also it's preferable to set the local-admin bit. Following shell code
1801 generates a random mac-address as described above::
1813 is 65535, but system can take the value from 1 - 65535. Following shell
1819 (c) ad_user_port_key : Use the user portion of the port-key. The default
1820 keeps this empty. These are the upper 10 bits of the port-key and value
1821 ranges from 0 - 1023. Following shell code generates these 10 bits and
1832 -------------------------
1834 Each bonding device has a read-only file residing in the
1843 Bonding Mode: load balancing (round-robin)
1852 Link Failure Count: 1
1856 Link Failure Count: 1
1862 -------------------------
1875 bond0 Link encap:Ethernet HWaddr 00:C0:F0:1F:37:B4
1882 eth0 Link encap:Ethernet HWaddr 00:C0:F0:1F:37:B4
1889 eth1 Link encap:Ethernet HWaddr 00:C0:F0:1F:37:B4
1905 The active-backup, balance-tlb and balance-alb modes do not
1912 grouped together in a single etherchannel instance, then that
1916 The balance-rr, balance-xor and broadcast modes generally
1948 "un-accelerated" by the bonding driver so the VLAN tag sits in the
1955 would pick up the all-zeroes hardware address. Once the first slave
1976 underlying device -- i.e. the bonding interface -- to promiscuous
1980 7. Link Monitoring
1984 monitoring a slave device's link state: the ARP monitor and the MII
1992 -------------------------
1996 uses the response as an indication that the link is operating. This
2001 ------------------------------------
2016 For just a single target the options would resemble::
2024 -------------------------
2041 device's (via ioctl) MII registers and check the link state. If that
2046 and ethtool requests), then the MII monitor will assume the link is
2053 -------------------------
2088 ----------------------------
2099 options bond0 mode=some-mode miimon=50
2131 8.3. Painfully Slow Or No Failed Link Detection By Miimon
2132 ---------------------------------------------------------
2138 not support the netif_carrier_on/_off link state tracking system.
2143 not maintain it in real time, e.g., only polling the link state at
2146 miimon is very slow in detecting link failures, try specifying
2217 For the balance-rr, balance-xor, broadcast, and 802.3ad modes,
2220 For the active-backup, balance-tlb and balance-alb modes, the
2223 For balance-tlb mode, the active slave is the slave currently
2226 For balance-alb mode, the active slave is the slave used as a
2227 "primary." This slave is used for mode-specific control traffic, for
2230 For the active-backup, balance-tlb and balance-alb modes, when
2231 the active slave changes (e.g., due to a link failure), the
2244 11.1 High Availability in a Single Switch Topology
2245 --------------------------------------------------
2247 If two hosts (or a host and a single switch) are directly
2252 support link monitoring of their members, so if individual links fail,
2259 ----------------------------------------------------
2270 +-----+----+ +-----+----+
2272 | switch A +--------------------------+ switch B |
2274 +-----+----+ +-----++---+
2276 | +-------+ |
2277 +-------------+ host1 +---------------+
2278 eth0 +-------+ eth1
2280 In this configuration, there is a link between the two
2281 switches (ISL, or inter switch link), and multiple ports connecting to
2286 -------------------------------------------------------------
2288 In a topology such as the example above, the active-backup and
2293 active-backup:
2299 preferred link is always used when it is available.
2306 necessary for some specific one-way traffic to reach both
2309 11.2.2 HA Link Monitoring Selection for Multiple Switch Topology
2310 ----------------------------------------------------------------
2312 The choice of link monitoring ultimately depends upon your
2315 example, in the above example, if the "port3" link fails at the remote
2331 switch that causes the link state of a particular switch port to be set
2333 Its purpose is to propagate link failures from logically "exterior" ports
2342 12.1 Maximizing Throughput in a Single Switch Topology
2343 ------------------------------------------------------
2345 In a single switch configuration, the best method to maximize
2359 +----------+ +----------+
2361 | Host A +---------------------+ router +------------------->
2362 | +---------------------+ | Hosts B and C are out
2364 +----------+ +----------+
2386 +----------+ +----------+ +--------+
2387 | |eth0 port1| +-------+ Host B |
2388 | Host A +------------+ switch |port3 +--------+
2389 | +------------+ | +--------+
2390 | |eth1 port2| +------------------+ Host C |
2391 +----------+ +----------+port4 +--------+
2413 12.1.1 MT Bonding Mode Selection for Single Switch Topology
2414 -----------------------------------------------------------
2420 balance-rr:
2421 This mode is the only mode that will permit a single
2424 single TCP/IP stream to utilize more than one interface's
2447 through the switch to a balance-rr bond will not utilize greater
2452 delivery, then this mode can allow for single stream datagram
2459 active-backup:
2461 the active-backup mode, as the inactive backup devices are all
2463 load balancing mode (with link monitoring) will provide the
2465 available bandwidth. On the plus side, active-backup mode
2470 balance-xor:
2477 if all your traffic is passed through a single router (i.e., a
2480 As with balance-rr, the switch ports need to be configured for
2484 Like active-backup, there is not much advantage to this
2496 in general single connections will not see misordering of
2500 balance modes other than balance-rr, no single connection will
2501 be able to utilize more than a single interface's worth of
2508 traffic may also end up on a single device, but that is
2516 balance-tlb:
2517 The balance-tlb mode balances outgoing traffic by peer.
2520 send all traffic across a single device. However, in a
2523 manner (not a simple XOR as in balance-xor or 802.3ad mode),
2525 XOR to the same value) will not all "bunch up" on a single
2530 in this mode all incoming traffic arrives over a single
2535 balance-alb:
2536 This mode is everything that balance-tlb is, and more.
2537 It has all of the features (and restrictions) of balance-tlb,
2546 12.1.2 MT Link Monitoring for Single Switch Topology
2547 ----------------------------------------------------
2549 The choice of link monitoring may largely depend upon which
2556 -----------------------------------------------------
2562 +-----------+
2564 +-+---+---+-+
2566 +--------+ | +---------+
2568 +------+---+ +-----+----+ +-----+----+
2570 +------+---+ +-----+----+ +-----+----+
2572 +--------+ | +---------+
2574 +-+---+---+-+
2576 +-----------+
2582 cost effective than a single larger switch, e.g., on a network with 24
2584 a single 72 port switch.
2591 -------------------------------------------------------------
2594 configurations of this type is balance-rr. Historically, in this
2599 packets has arrived). When employed in this fashion, the balance-rr
2603 12.2.2 MT Link Monitoring for Multiple Switch Topology
2604 ------------------------------------------------------
2616 13.1 Link Establishment and Failover Delays
2617 -------------------------------------------
2620 timing of link up and down reporting by the switch.
2622 First, when a link comes up, some switches may indicate that
2623 the link is up (carrier available), but not pass traffic over the
2631 Second, some switches may "bounce" the link state one or more
2632 times while a link is changing state. This occurs most commonly while
2637 driver will immediately reuse the first link that goes up, even if the
2648 to not activate a backup interface immediately after a link goes down.
2652 --------------------------------
2664 For example, on a bond in active-backup mode with five slaves
2667 # ping -n 10.0.4.2
2684 single switch, when the switch (temporarily) floods the traffic to all
2691 most Cisco switches, the privileged command "clear mac address-table
2702 --------------------
2707 balance-rr, active-backup, balance-tlb and balance-alb modes. This is
2712 --------------------------------
2715 integrated on the planar (that's "motherboard" in IBM-speak). In the
2718 An add-on Broadcom daughter card can be installed on a JS20 to provide
2727 Additional BladeCenter-specific networking information can be
2730 - "IBM eServer BladeCenter Networking Options"
2731 - "IBM eServer BladeCenter Layer 2-7 Network Switching"
2734 ------------------------------------
2752 appear to bonding as either a single switch topology (all PMs) or as a
2759 -------------------------------
2761 The balance-rr mode requires the use of passthrough modules
2764 appropriate ports, as is usual for balance-rr.
2766 The balance-alb and balance-tlb modes will function with
2773 The active-backup mode has no additional requirements.
2775 Link monitoring issues
2776 ----------------------
2779 monitor will reliably detect link loss to an external switch. This is
2784 only able to detect link failures between the ESM and the JS20 system.
2791 --------------
2793 The Serial Over LAN (SoL) link is established over the primary
2794 ethernet (eth0) only, therefore, any loss of link to eth0 will result
2801 avoid fail-over delay issues when using bonding.
2808 -------------------
2814 -----------------------------------------
2816 Any Ethernet type cards (you can even mix cards - a Intel
2821 slaves in active-backup mode.
2824 ----------------------------------------
2829 ----------------------------------------------
2835 5. What happens when a slave link dies?
2836 ----------------------------------------
2838 If link monitoring is enabled, then the failing device will be
2839 disabled. The active-backup mode will fail over to a backup link, and
2840 other modes will ignore the failed link. The link will continue to be
2846 Link monitoring can be enabled via either the miimon or
2852 If no link monitoring is configured, the bonding driver will
2853 be unable to detect link failures, and will assume that all links are
2859 ----------------------------------------------
2864 ---------------------------------------------
2868 In the basic balance modes (balance-rr and balance-xor), it
2873 The advanced balance modes (balance-tlb and balance-alb) do
2879 802.3ad Dynamic Link Aggregation. Most managed and many unmanaged
2882 The active-backup mode should work with any Layer-II switch.
2885 ---------------------------------------------------------
2892 ifconfig or ip link), the MAC address of the bonding device is taken from
2898 ifconfig or ip link::
2902 # ip link set bond0 address 66:77:88:99:aa:bb
2907 # ifconfig bond0 down ; modprobe -r bonding
2915 from the bond (``ifenslave -d bond0 eth0``). The bonding driver will
2920 ------------------------------------------
2922 * balance-rr (0)
2923 * active-backup (1)
2924 * balance-xor (2)
2948 http://vger.kernel.org/vger-lists.html#netdev