Whamcloud - gitweb
FIX: refactor part
[doc/manual.git] / SettingUpBonding.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <chapter version="5.0" xml:lang="en-US" xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" xml:id='settingupbonding'>
3   <info>
4     <title xml:id='settingupbonding.title'>Setting Up Network Interface Bonding</title>
5   </info>
6
7   <para><anchor xml:id="dbdoclet.50438258_pgfId-1301676" xreflabel=""/>This chapter describes how to use multiple network interfaces in parallel to increase bandwidth and/or redundancy. Topics include:</para>
8
9   <itemizedlist>
10       <listitem>
11           <para>
12               <xref linkend='dbdoclet.50438258_95824'/>
13           </para>
14       </listitem>
15       <listitem>
16           <para>
17               <xref linkend='dbdoclet.50438258_29107'/>
18           </para>
19       </listitem>
20       <listitem>
21           <para>
22               <xref linkend='dbdoclet.50438258_25353'/>
23           </para>
24       </listitem>
25       <listitem>
26           <para>
27               <xref linkend='dbdoclet.50438258_26899'/>
28           </para>
29       </listitem>
30       <listitem>
31           <para>
32               <xref linkend='dbdoclet.50438258_54769'/>
33           </para>
34       </listitem>
35       <listitem>
36           <para>
37               <xref linkend='dbdoclet.50438258_92244'/>
38           </para>
39       </listitem>
40   </itemizedlist>
41
42   <note><para>Using network interface bonding is optional.</para></note>
43
44
45     <section xml:id="dbdoclet.50438258_95824">
46       <title>7.1 Network Interface Bonding Overview</title>
47       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301680" xreflabel=""/>Bonding, also known as link aggregation, trunking and port trunking, is a method of aggregating multiple physical network links into a single logical link for increased bandwidth.</para>
48       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301681" xreflabel=""/>Several different types of bonding are available in Linux. All these types are referred to as 'modes', and use the bonding kernel module.</para>
49       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301682" xreflabel=""/>Modes 0 to 3 allow load balancing and fault tolerance by using multiple interfaces. Mode 4 aggregates a group of interfaces into a single virtual interface where all members of the group share the same speed and duplex settings. This mode is described under IEEE spec 802.3ad, and it is referred to as either 'mode 4' or '802.3ad.'</para>
50     </section>
51     <section xml:id="dbdoclet.50438258_29107">
52       <title>7.2 Requirements</title>
53       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301686" xreflabel=""/>The most basic requirement for successful bonding is that both endpoints of the connection must be capable of bonding. In a normal case, the non-server endpoint is a switch. (Two systems connected via crossover cables can also use bonding.) Any switch used must explicitly handle 802.3ad Dynamic Link Aggregation.</para>
54       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301687" xreflabel=""/>The kernel must also be configured with bonding. All supported Lustre kernels have bonding functionality. The network driver for the interfaces to be bonded must have the ethtool functionality to determine slave speed and duplex settings. All recent network drivers implement it.</para>
55       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301688" xreflabel=""/>To verify that your interface works with ethtool, run:</para>
56       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301689" xreflabel=""/># which ethtool
57 <anchor xml:id="dbdoclet.50438258_pgfId-1301690" xreflabel=""/>/sbin/ethtool
58 <anchor xml:id="dbdoclet.50438258_pgfId-1301691" xreflabel=""/> 
59 <anchor xml:id="dbdoclet.50438258_pgfId-1301692" xreflabel=""/># ethtool eth0
60 <anchor xml:id="dbdoclet.50438258_pgfId-1301693" xreflabel=""/>Settings for eth0:
61 <anchor xml:id="dbdoclet.50438258_pgfId-1301694" xreflabel=""/>           Supported ports: [ TP MII ]
62 <anchor xml:id="dbdoclet.50438258_pgfId-1301695" xreflabel=""/>           Supported link modes:   10baseT/Half 10baseT/Full/ 
63 <anchor xml:id="dbdoclet.50438258_pgfId-1301696" xreflabel=""/>                                   100baseT/Half 100baseT/Full
64 <anchor xml:id="dbdoclet.50438258_pgfId-1301697" xreflabel=""/>           Supports auto-negotiation: Yes
65 <anchor xml:id="dbdoclet.50438258_pgfId-1301698" xreflabel=""/>           Advertised link modes:  10baseT/Half 10baseT/Full
66 <anchor xml:id="dbdoclet.50438258_pgfId-1301699" xreflabel=""/>                                   100baseT/Half 100baseT/Full
67 <anchor xml:id="dbdoclet.50438258_pgfId-1301700" xreflabel=""/>           Advertised auto-negotiation: Yes
68 <anchor xml:id="dbdoclet.50438258_pgfId-1301701" xreflabel=""/>           Speed: 100Mb/s
69 <anchor xml:id="dbdoclet.50438258_pgfId-1301702" xreflabel=""/>           Duplex: Full
70 <anchor xml:id="dbdoclet.50438258_pgfId-1301703" xreflabel=""/>           Port: MII
71 <anchor xml:id="dbdoclet.50438258_pgfId-1301704" xreflabel=""/>           PHYAD: 1
72 <anchor xml:id="dbdoclet.50438258_pgfId-1301705" xreflabel=""/>           Transceiver: internal
73 <anchor xml:id="dbdoclet.50438258_pgfId-1301706" xreflabel=""/>           Auto-negotiation: on
74 <anchor xml:id="dbdoclet.50438258_pgfId-1301707" xreflabel=""/>           Supports Wake-on: pumbg
75 <anchor xml:id="dbdoclet.50438258_pgfId-1301708" xreflabel=""/>           Wake-on: d
76 <anchor xml:id="dbdoclet.50438258_pgfId-1301709" xreflabel=""/>           Current message level: 0x00000001 (1)
77 <anchor xml:id="dbdoclet.50438258_pgfId-1301710" xreflabel=""/>           Link detected: yes
78 <anchor xml:id="dbdoclet.50438258_pgfId-1301711" xreflabel=""/> 
79 <anchor xml:id="dbdoclet.50438258_pgfId-1301712" xreflabel=""/># ethtool eth1
80 <anchor xml:id="dbdoclet.50438258_pgfId-1301713" xreflabel=""/> 
81 <anchor xml:id="dbdoclet.50438258_pgfId-1301714" xreflabel=""/>Settings for eth1:
82 <anchor xml:id="dbdoclet.50438258_pgfId-1301715" xreflabel=""/>   Supported ports: [ TP MII ]
83 <anchor xml:id="dbdoclet.50438258_pgfId-1301716" xreflabel=""/>   Supported link modes:   10baseT/Half 10baseT/Full
84 <anchor xml:id="dbdoclet.50438258_pgfId-1301717" xreflabel=""/>                           100baseT/Half 100baseT/Full
85 <anchor xml:id="dbdoclet.50438258_pgfId-1301718" xreflabel=""/>   Supports auto-negotiation: Yes
86 <anchor xml:id="dbdoclet.50438258_pgfId-1301719" xreflabel=""/>   Advertised link modes:  10baseT/Half 10baseT/Full
87 <anchor xml:id="dbdoclet.50438258_pgfId-1301720" xreflabel=""/>   100baseT/Half 100baseT/Full
88 <anchor xml:id="dbdoclet.50438258_pgfId-1301721" xreflabel=""/>   Advertised auto-negotiation: Yes
89 <anchor xml:id="dbdoclet.50438258_pgfId-1301722" xreflabel=""/>   Speed: 100Mb/s
90 <anchor xml:id="dbdoclet.50438258_pgfId-1301723" xreflabel=""/>   Duplex: Full
91 <anchor xml:id="dbdoclet.50438258_pgfId-1301724" xreflabel=""/>   Port: MII
92 <anchor xml:id="dbdoclet.50438258_pgfId-1301725" xreflabel=""/>   PHYAD: 32
93 <anchor xml:id="dbdoclet.50438258_pgfId-1301726" xreflabel=""/>   Transceiver: internal
94 <anchor xml:id="dbdoclet.50438258_pgfId-1301727" xreflabel=""/>   Auto-negotiation: on
95 <anchor xml:id="dbdoclet.50438258_pgfId-1301728" xreflabel=""/>   Supports Wake-on: pumbg
96 <anchor xml:id="dbdoclet.50438258_pgfId-1301729" xreflabel=""/>   Wake-on: d
97 <anchor xml:id="dbdoclet.50438258_pgfId-1301730" xreflabel=""/>   Current message level: 0x00000007 (7)
98 <anchor xml:id="dbdoclet.50438258_pgfId-1301731" xreflabel=""/>   Link detected: yes
99 <anchor xml:id="dbdoclet.50438258_pgfId-1301732" xreflabel=""/>   To quickly check whether your kernel supports bonding, run:     
100 <anchor xml:id="dbdoclet.50438258_pgfId-1301733" xreflabel=""/>   # grep ifenslave /sbin/ifup
101 <anchor xml:id="dbdoclet.50438258_pgfId-1301734" xreflabel=""/>   # which ifenslave
102 <anchor xml:id="dbdoclet.50438258_pgfId-1301735" xreflabel=""/>   /sbin/ifenslave
103 </screen>
104     </section>
105     <section xml:id="dbdoclet.50438258_25353">
106       <title>7.3 Bonding Module Parameters</title>
107       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301749" xreflabel=""/>Bonding module parameters control various aspects of bonding.</para>
108       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301750" xreflabel=""/>Outgoing traffic is mapped across the slave interfaces according to the transmit hash policy. For Lustre, we recommend that you set the xmit_hash_policy option to the layer3+4 option for bonding. This policy uses upper layer protocol information if available to generate the hash. This allows traffic to a particular network peer to span multiple slaves, although a single connection does not span multiple slaves.</para>
109       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301751" xreflabel=""/>$ xmit_hash_policy=layer3+4
110 </screen>
111       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301752" xreflabel=""/>The miimon option enables users to monitor the link status. (The parameter is a time interval in milliseconds.) It makes an interface failure transparent to avoid serious network degradation during link failures. A reasonable default setting is 100 milliseconds; run:</para>
112       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301753" xreflabel=""/>$ miimon=100
113 </screen>
114       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301754" xreflabel=""/>For a busy network, increase the timeout.</para>
115     </section>
116     <section xml:id="dbdoclet.50438258_26899">
117       <title>7.4 Setting Up Bonding</title>
118       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301759" xreflabel=""/>To set up bonding:</para>
119
120       <orderedlist>
121           <listitem>
122       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301760" xreflabel=""/>Create a virtual &apos;bond&apos; interface by creating a configuration file in:</para>
123       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301761" xreflabel=""/>/etc/sysconfig/network-scripts/ # vi /etc/sysconfig/ network-scripts/ifcfg-\
124 bond0
125 </screen>
126           </listitem>
127           <listitem>
128       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301762" xreflabel=""/>Append the following lines to the file.</para>
129       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301763" xreflabel=""/>DEVICE=bond0
130 <anchor xml:id="dbdoclet.50438258_pgfId-1301764" xreflabel=""/>IPADDR=192.168.10.79 # Use the free IP Address of your network
131 <anchor xml:id="dbdoclet.50438258_pgfId-1301765" xreflabel=""/>NETWORK=192.168.10.0
132 <anchor xml:id="dbdoclet.50438258_pgfId-1301766" xreflabel=""/>NETMASK=255.255.255.0
133 <anchor xml:id="dbdoclet.50438258_pgfId-1301767" xreflabel=""/>USERCTL=no
134 <anchor xml:id="dbdoclet.50438258_pgfId-1301768" xreflabel=""/>BOOTPROTO=none
135 <anchor xml:id="dbdoclet.50438258_pgfId-1301769" xreflabel=""/>ONBOOT=yes
136 </screen>
137           </listitem>
138           <listitem>
139       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301770" xreflabel=""/> Attach one or more slave interfaces to the bond interface. Modify the eth0 and eth1 configuration files (using a VI text editor).</para>
140       <orderedlist>
141           <listitem>
142       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301771" xreflabel=""/>Use the VI text editor to open the eth0 configuration file.</para>
143       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301772" xreflabel=""/># vi /etc/sysconfig/network-scripts/ifcfg-eth0
144 </screen>
145           </listitem>
146           <listitem>
147       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301773" xreflabel=""/>Modify/append the eth0 file as follows:</para>
148       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301774" xreflabel=""/>DEVICE=eth0
149 <anchor xml:id="dbdoclet.50438258_pgfId-1301775" xreflabel=""/>USERCTL=no
150 <anchor xml:id="dbdoclet.50438258_pgfId-1301776" xreflabel=""/>ONBOOT=yes
151 <anchor xml:id="dbdoclet.50438258_pgfId-1301777" xreflabel=""/>MASTER=bond0
152 <anchor xml:id="dbdoclet.50438258_pgfId-1301778" xreflabel=""/>SLAVE=yes
153 <anchor xml:id="dbdoclet.50438258_pgfId-1301779" xreflabel=""/>BOOTPROTO=none
154 </screen>
155           </listitem>
156           <listitem>
157       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301780" xreflabel=""/>Use the VI text editor to open the eth1 configuration file.</para>
158       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301781" xreflabel=""/># vi /etc/sysconfig/network-scripts/ifcfg-eth1
159 </screen>
160           </listitem>
161           <listitem>
162       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301782" xreflabel=""/>Modify/append the eth1 file as follows:</para>
163       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301783" xreflabel=""/>DEVICE=eth1
164 <anchor xml:id="dbdoclet.50438258_pgfId-1301784" xreflabel=""/>USERCTL=no
165 <anchor xml:id="dbdoclet.50438258_pgfId-1301785" xreflabel=""/>ONBOOT=yes
166 <anchor xml:id="dbdoclet.50438258_pgfId-1301786" xreflabel=""/>MASTER=bond0
167 <anchor xml:id="dbdoclet.50438258_pgfId-1301787" xreflabel=""/>SLAVE=yes
168 <anchor xml:id="dbdoclet.50438258_pgfId-1301788" xreflabel=""/>BOOTPROTO=none
169 </screen>
170           </listitem>
171           </orderedlist>
172           </listitem>
173           <listitem>
174       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301789" xreflabel=""/>Set up the bond interface and its options in /etc/modprobe.conf. Start the slave interfaces by your normal network method.</para>
175       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301790" xreflabel=""/># vi /etc/modprobe.conf
176 </screen>
177       <orderedlist>
178           <listitem>
179       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301791" xreflabel=""/>Append the following lines to the file.</para>
180       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301792" xreflabel=""/>alias bond0 bonding
181 <anchor xml:id="dbdoclet.50438258_pgfId-1301793" xreflabel=""/>options bond0 mode=balance-alb miimon=100
182 </screen>
183           </listitem>
184           <listitem>
185       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301794" xreflabel=""/>Load the bonding module.</para>
186       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301795" xreflabel=""/># modprobe bonding
187 <anchor xml:id="dbdoclet.50438258_pgfId-1301796" xreflabel=""/># ifconfig bond0 up
188 <anchor xml:id="dbdoclet.50438258_pgfId-1301797" xreflabel=""/># ifenslave bond0 eth0 eth1
189 </screen>
190           </listitem>
191           </orderedlist>
192           </listitem>
193           <listitem>
194       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301798" xreflabel=""/>Start/restart the slave interfaces (using your normal network method).</para>
195
196       <note>
197           <para>You must modprobe the bonding module for each bonded interface. If you wish to create bond0 and bond1, two entries in modprobe.conf are required.</para></note>
198
199       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301800" xreflabel=""/>The examples below are from RedHat systems. For setup use: /etc/sysconfig/networking-scripts/ifcfg-* The website referenced below includes detailed instructions for other configuration methods, instructions to use DHCP with bonding, and other setup details. We strongly recommend you use this website.</para>
200       <para><anchor xml:id="dbdoclet.50438258_pgfId-1302123" xreflabel=""/><link xl:href="http://www.linuxfoundation.org/collaborate/workgroups/networking/bonding">http://www.linuxfoundation.org/collaborate/workgroups/networking/bonding</link></para>
201           </listitem>
202           <listitem>
203       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301803" xreflabel=""/>Check /proc/net/bonding to determine status on bonding. There should be a file there for each bond interface.</para>
204       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301804" xreflabel=""/># cat /proc/net/bonding/bond0
205 <anchor xml:id="dbdoclet.50438258_pgfId-1301805" xreflabel=""/>Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
206 <anchor xml:id="dbdoclet.50438258_pgfId-1301806" xreflabel=""/> 
207 <anchor xml:id="dbdoclet.50438258_pgfId-1301807" xreflabel=""/>Bonding Mode: load balancing (round-robin)
208 <anchor xml:id="dbdoclet.50438258_pgfId-1301808" xreflabel=""/>MII Status: up
209 <anchor xml:id="dbdoclet.50438258_pgfId-1301809" xreflabel=""/>MII Polling Interval (ms): 0
210 <anchor xml:id="dbdoclet.50438258_pgfId-1301810" xreflabel=""/>Up Delay (ms): 0
211 <anchor xml:id="dbdoclet.50438258_pgfId-1301811" xreflabel=""/>Down Delay (ms): 0
212 <anchor xml:id="dbdoclet.50438258_pgfId-1301812" xreflabel=""/> 
213 <anchor xml:id="dbdoclet.50438258_pgfId-1301813" xreflabel=""/>Slave Interface: eth0
214 <anchor xml:id="dbdoclet.50438258_pgfId-1301814" xreflabel=""/>MII Status: up
215 <anchor xml:id="dbdoclet.50438258_pgfId-1301815" xreflabel=""/>Link Failure Count: 0
216 <anchor xml:id="dbdoclet.50438258_pgfId-1301816" xreflabel=""/>Permanent HW addr: 4c:00:10:ac:61:e0
217 <anchor xml:id="dbdoclet.50438258_pgfId-1301817" xreflabel=""/> 
218 <anchor xml:id="dbdoclet.50438258_pgfId-1301818" xreflabel=""/>Slave Interface: eth1
219 <anchor xml:id="dbdoclet.50438258_pgfId-1301819" xreflabel=""/>MII Status: up
220 <anchor xml:id="dbdoclet.50438258_pgfId-1301820" xreflabel=""/>Link Failure Count: 0
221 <anchor xml:id="dbdoclet.50438258_pgfId-1301821" xreflabel=""/>Permanent HW addr: 00:14:2a:7c:40:1d
222 </screen>
223           </listitem>
224           <listitem>
225       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301822" xreflabel=""/>Use ethtool or ifconfig to check the interface state. ifconfig lists the first bonded interface as 'bond0.'</para>
226       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301823" xreflabel=""/>ifconfig
227 <anchor xml:id="dbdoclet.50438258_pgfId-1301824" xreflabel=""/>bond0      Link encap:Ethernet  HWaddr 4C:00:10:AC:61:E0
228 <anchor xml:id="dbdoclet.50438258_pgfId-1301825" xreflabel=""/>   inet addr:192.168.10.79  Bcast:192.168.10.255 \     Mask:255.255.255.0
229 <anchor xml:id="dbdoclet.50438258_pgfId-1301826" xreflabel=""/>   inet6 addr: fe80::4e00:10ff:feac:61e0/64 Scope:Link
230 <anchor xml:id="dbdoclet.50438258_pgfId-1301827" xreflabel=""/>   UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500 Metric:1
231 <anchor xml:id="dbdoclet.50438258_pgfId-1301828" xreflabel=""/>   RX packets:3091 errors:0 dropped:0 overruns:0 frame:0
232 <anchor xml:id="dbdoclet.50438258_pgfId-1301829" xreflabel=""/>   TX packets:880 errors:0 dropped:0 overruns:0 carrier:0
233 <anchor xml:id="dbdoclet.50438258_pgfId-1301830" xreflabel=""/>   collisions:0 txqueuelen:0
234 <anchor xml:id="dbdoclet.50438258_pgfId-1301831" xreflabel=""/>   RX bytes:314203 (306.8 KiB)  TX bytes:129834 (126.7 KiB)
235 <anchor xml:id="dbdoclet.50438258_pgfId-1301832" xreflabel=""/> 
236 <anchor xml:id="dbdoclet.50438258_pgfId-1301833" xreflabel=""/>eth0       Link encap:Ethernet  HWaddr 4C:00:10:AC:61:E0
237 <anchor xml:id="dbdoclet.50438258_pgfId-1301834" xreflabel=""/>   inet6 addr: fe80::4e00:10ff:feac:61e0/64 Scope:Link
238 <anchor xml:id="dbdoclet.50438258_pgfId-1301835" xreflabel=""/>   UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500 Metric:1
239 <anchor xml:id="dbdoclet.50438258_pgfId-1301836" xreflabel=""/>   RX packets:1581 errors:0 dropped:0 overruns:0 frame:0
240 <anchor xml:id="dbdoclet.50438258_pgfId-1301837" xreflabel=""/>   TX packets:448 errors:0 dropped:0 overruns:0 carrier:0
241 <anchor xml:id="dbdoclet.50438258_pgfId-1301838" xreflabel=""/>   collisions:0 txqueuelen:1000
242 <anchor xml:id="dbdoclet.50438258_pgfId-1301839" xreflabel=""/>   RX bytes:162084 (158.2 KiB)  TX bytes:67245 (65.6 KiB)
243 <anchor xml:id="dbdoclet.50438258_pgfId-1301840" xreflabel=""/>   Interrupt:193 Base address:0x8c00
244 <anchor xml:id="dbdoclet.50438258_pgfId-1301841" xreflabel=""/> 
245 <anchor xml:id="dbdoclet.50438258_pgfId-1301842" xreflabel=""/>eth1       Link encap:Ethernet  HWaddr 4C:00:10:AC:61:E0
246 <anchor xml:id="dbdoclet.50438258_pgfId-1301843" xreflabel=""/>   inet6 addr: fe80::4e00:10ff:feac:61e0/64 Scope:Link
247 <anchor xml:id="dbdoclet.50438258_pgfId-1301844" xreflabel=""/>   UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500 Metric:1
248 <anchor xml:id="dbdoclet.50438258_pgfId-1301845" xreflabel=""/>   RX packets:1513 errors:0 dropped:0 overruns:0 frame:0
249 <anchor xml:id="dbdoclet.50438258_pgfId-1301846" xreflabel=""/>   TX packets:444 errors:0 dropped:0 overruns:0 carrier:0
250 <anchor xml:id="dbdoclet.50438258_pgfId-1301847" xreflabel=""/>   collisions:0 txqueuelen:1000
251 <anchor xml:id="dbdoclet.50438258_pgfId-1301848" xreflabel=""/>   RX bytes:152299 (148.7 KiB)  TX bytes:64517 (63.0 KiB)
252 <anchor xml:id="dbdoclet.50438258_pgfId-1301849" xreflabel=""/>   Interrupt:185 Base address:0x6000
253 </screen>
254           </listitem>
255       </orderedlist>
256
257
258       <section remap="h3">
259         <title><anchor xml:id="dbdoclet.50438258_pgfId-1301850" xreflabel=""/>7.4.1 Examples</title>
260         <para><anchor xml:id="dbdoclet.50438258_pgfId-1301851" xreflabel=""/>This is an example showing modprobe.conf entries for bonding Ethernet interfaces eth1 and eth2 to bond0:</para>
261         <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301852" xreflabel=""/># cat /etc/modprobe.conf
262 <anchor xml:id="dbdoclet.50438258_pgfId-1301853" xreflabel=""/>alias eth0 8139too
263 <anchor xml:id="dbdoclet.50438258_pgfId-1301854" xreflabel=""/>alias scsi_hostadapter sata_via
264 <anchor xml:id="dbdoclet.50438258_pgfId-1301855" xreflabel=""/>alias scsi_hostadapter1 usb-storage
265 <anchor xml:id="dbdoclet.50438258_pgfId-1301856" xreflabel=""/>alias snd-card-0 snd-via82xx
266 <anchor xml:id="dbdoclet.50438258_pgfId-1301857" xreflabel=""/>options snd-card-0 index=0
267 <anchor xml:id="dbdoclet.50438258_pgfId-1301858" xreflabel=""/>options snd-via82xx index=0
268 <anchor xml:id="dbdoclet.50438258_pgfId-1301859" xreflabel=""/>alias bond0 bonding
269 <anchor xml:id="dbdoclet.50438258_pgfId-1301860" xreflabel=""/>options bond0 mode=balance-alb miimon=100
270 <anchor xml:id="dbdoclet.50438258_pgfId-1301861" xreflabel=""/>options lnet networks=tcp
271 <anchor xml:id="dbdoclet.50438258_pgfId-1301862" xreflabel=""/>alias eth1 via-rhine
272 <anchor xml:id="dbdoclet.50438258_pgfId-1301863" xreflabel=""/> 
273 <anchor xml:id="dbdoclet.50438258_pgfId-1301864" xreflabel=""/># cat /etc/sysconfig/network-scripts/ifcfg-bond0
274 <anchor xml:id="dbdoclet.50438258_pgfId-1301865" xreflabel=""/>DEVICE=bond0
275 <anchor xml:id="dbdoclet.50438258_pgfId-1301866" xreflabel=""/>BOOTPROTO=none
276 <anchor xml:id="dbdoclet.50438258_pgfId-1301867" xreflabel=""/>NETMASK=255.255.255.0
277 <anchor xml:id="dbdoclet.50438258_pgfId-1301868" xreflabel=""/>IPADDR=192.168.10.79 # (Assign here the IP of the bonded interface.)
278 <anchor xml:id="dbdoclet.50438258_pgfId-1301869" xreflabel=""/>ONBOOT=yes
279 <anchor xml:id="dbdoclet.50438258_pgfId-1301870" xreflabel=""/>USERCTL=no
280 <anchor xml:id="dbdoclet.50438258_pgfId-1301871" xreflabel=""/> 
281 <anchor xml:id="dbdoclet.50438258_pgfId-1301872" xreflabel=""/>ifcfg-ethx 
282 <anchor xml:id="dbdoclet.50438258_pgfId-1301873" xreflabel=""/># cat /etc/sysconfig/network-scripts/ifcfg-eth0
283 <anchor xml:id="dbdoclet.50438258_pgfId-1301874" xreflabel=""/>TYPE=Ethernet
284 <anchor xml:id="dbdoclet.50438258_pgfId-1301875" xreflabel=""/>DEVICE=eth0
285 <anchor xml:id="dbdoclet.50438258_pgfId-1301876" xreflabel=""/>HWADDR=4c:00:10:ac:61:e0
286 <anchor xml:id="dbdoclet.50438258_pgfId-1301877" xreflabel=""/>BOOTPROTO=none
287 <anchor xml:id="dbdoclet.50438258_pgfId-1301878" xreflabel=""/>ONBOOT=yes
288 <anchor xml:id="dbdoclet.50438258_pgfId-1301879" xreflabel=""/>USERCTL=no
289 <anchor xml:id="dbdoclet.50438258_pgfId-1301880" xreflabel=""/>IPV6INIT=no
290 <anchor xml:id="dbdoclet.50438258_pgfId-1301881" xreflabel=""/>PEERDNS=yes
291 <anchor xml:id="dbdoclet.50438258_pgfId-1301882" xreflabel=""/>MASTER=bond0
292 <anchor xml:id="dbdoclet.50438258_pgfId-1301883" xreflabel=""/>SLAVE=yes
293 </screen>
294         <para><anchor xml:id="dbdoclet.50438258_pgfId-1301884" xreflabel=""/>In the following example, the bond0 interface is the master (MASTER) while eth0 and eth1 are slaves (SLAVE).</para>
295         <informaltable frame="none">
296           <tgroup cols="1">
297             <colspec colname="c1" colwidth="100*"/>
298             <tbody>
299               <row>
300                 <entry><para><emphasis role="bold">Note -</emphasis><anchor xml:id="dbdoclet.50438258_pgfId-1301885" xreflabel=""/>All slaves of bond0 have the same MAC address (Hwaddr) - bond0. All modes, except TLB and ALB, have this MAC address. TLB and ALB require a unique MAC address for each slave.</para></entry>
301               </row>
302             </tbody>
303           </tgroup>
304         </informaltable>
305         <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301886" xreflabel=""/>$ /sbin/ifconfig
306 <anchor xml:id="dbdoclet.50438258_pgfId-1301887" xreflabel=""/> 
307 <anchor xml:id="dbdoclet.50438258_pgfId-1301888" xreflabel=""/>bond0Link encap:EthernetHwaddr 00:C0:F0:1F:37:B4
308 <anchor xml:id="dbdoclet.50438258_pgfId-1301889" xreflabel=""/>inet addr:XXX.XXX.XXX.YYY Bcast:XXX.XXX.XXX.255 Mask:255.255.252.0
309 <anchor xml:id="dbdoclet.50438258_pgfId-1301890" xreflabel=""/>UP BROADCAST RUNNING MASTER MULTICAST MTU:1500  Metric:1
310 <anchor xml:id="dbdoclet.50438258_pgfId-1301891" xreflabel=""/>RX packets:7224794 errors:0 dropped:0 overruns:0 frame:0
311 <anchor xml:id="dbdoclet.50438258_pgfId-1301892" xreflabel=""/>TX packets:3286647 errors:1 dropped:0 overruns:1 carrier:0
312 <anchor xml:id="dbdoclet.50438258_pgfId-1301893" xreflabel=""/>collisions:0 txqueuelen:0
313 <anchor xml:id="dbdoclet.50438258_pgfId-1301894" xreflabel=""/> 
314 <anchor xml:id="dbdoclet.50438258_pgfId-1301895" xreflabel=""/>eth0Link encap:EthernetHwaddr 00:C0:F0:1F:37:B4
315 <anchor xml:id="dbdoclet.50438258_pgfId-1301896" xreflabel=""/>inet addr:XXX.XXX.XXX.YYY Bcast:XXX.XXX.XXX.255 Mask:255.255.252.0
316 <anchor xml:id="dbdoclet.50438258_pgfId-1301897" xreflabel=""/>UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500  Metric:1
317 <anchor xml:id="dbdoclet.50438258_pgfId-1301898" xreflabel=""/>RX packets:3573025 errors:0 dropped:0 overruns:0 frame:0
318 <anchor xml:id="dbdoclet.50438258_pgfId-1301899" xreflabel=""/>TX packets:1643167 errors:1 dropped:0 overruns:1 carrier:0
319 <anchor xml:id="dbdoclet.50438258_pgfId-1301900" xreflabel=""/>collisions:0 txqueuelen:100
320 <anchor xml:id="dbdoclet.50438258_pgfId-1301901" xreflabel=""/>Interrupt:10 Base address:0x1080
321 <anchor xml:id="dbdoclet.50438258_pgfId-1301902" xreflabel=""/> 
322 <anchor xml:id="dbdoclet.50438258_pgfId-1301903" xreflabel=""/>eth1Link encap:EthernetHwaddr 00:C0:F0:1F:37:B4
323 <anchor xml:id="dbdoclet.50438258_pgfId-1301904" xreflabel=""/>inet addr:XXX.XXX.XXX.YYY Bcast:XXX.XXX.XXX.255 Mask:255.255.252.0
324 <anchor xml:id="dbdoclet.50438258_pgfId-1301905" xreflabel=""/>UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500  Metric:1
325 <anchor xml:id="dbdoclet.50438258_pgfId-1301906" xreflabel=""/>RX packets:3651769 errors:0 dropped:0 overruns:0 frame:0
326 <anchor xml:id="dbdoclet.50438258_pgfId-1301907" xreflabel=""/>TX packets:1643480 errors:0 dropped:0 overruns:0 carrier:0
327 <anchor xml:id="dbdoclet.50438258_pgfId-1301908" xreflabel=""/>collisions:0 txqueuelen:100
328 <anchor xml:id="dbdoclet.50438258_pgfId-1301909" xreflabel=""/>Interrupt:9 Base address:0x1400
329 </screen>
330       </section>
331     </section>
332     <section xml:id="dbdoclet.50438258_54769">
333       <title>7.5 Configuring Lustre with Bonding</title>
334       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301913" xreflabel=""/>Lustre uses the IP address of the bonded interfaces and requires no special configuration. It treats the bonded interface as a regular TCP/IP interface. If needed, specify bond0 using the Lustre networks parameter in /etc/modprobe.</para>
335       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301914" xreflabel=""/>options lnet networks=tcp(bond0)
336 </screen>
337     </section>
338     <section xml:id="dbdoclet.50438258_92244">
339       <title>7.6 Bonding References</title>
340       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301917" xreflabel=""/>We recommend the following bonding references:</para>
341       <itemizedlist><listitem>
342           <para><anchor xml:id="dbdoclet.50438258_pgfId-1301918" xreflabel=""/> In the Linux kernel source tree, see documentation/networking/bonding.txt</para>
343         </listitem>
344 <listitem>
345           <para><anchor xml:id="dbdoclet.50438258_pgfId-1301920" xreflabel=""/><link xl:href="http://linux-ip.net/html/ether-bonding.html">http://linux-ip.net/html/ether-bonding.html</link></para>
346         </listitem>
347 <listitem>
348           <para><anchor xml:id="dbdoclet.50438258_pgfId-1301922" xreflabel=""/><link xl:href="http://www.sourceforge.net/projects/bonding">http://www.sourceforge.net/projects/bonding</link></para>
349         </listitem>
350 <listitem>
351           <para><anchor xml:id="dbdoclet.50438258_pgfId-1301923" xreflabel=""/> Linux Foundation bonding website: <link xl:href="http://www.linuxfoundation.org/collaborate/workgroups/networking/bonding">http://www.linuxfoundation.org/collaborate/workgroups/networking/bonding</link></para>
352         </listitem>
353 </itemizedlist>
354       <para><anchor xml:id="dbdoclet.50438258_pgfId-1301924" xreflabel=""/>This is the most extensive reference and we highly recommend it. This website includes explanations of more complicated setups, including the use of DHCP with bonding.</para>
355       <screen><anchor xml:id="dbdoclet.50438258_pgfId-1301673" xreflabel=""/> 
356 </screen>
357     </section>
358 </chapter>