1 This document is a quickstart guide for a user connected to a Fibre Channel
2 Forwarder (FCF) and not a SW target. It covers the configuration of the kernel
3 and installation and configuration of Data Center Bridging (DCB), the HBA API
4 wrapper library, libhbalinux and fcoe-utils.
6 This document was written using Fedora 11 as the installed operating system.
7 The instructions may need adjustments for them to work on other
14 git://open-fcoe.org/libHBAAPI.git
15 git://open-fcoe.org/libhbalinux.git
16 git://open-fcoe.org/fcoe-utils.git
19 # Kernel Configuration and Compilation
20 ######################################
22 1) Download kernel source
23 There are a number of good choices regarding the most appropriate
24 kernel source for your needs. fcoe-next.git is a repository that may be
25 unstable, but will have the latest code. Downloading a released kernel
26 from kernel.org will give you the most stable kernel, but you'll need to
27 get user space code that matches the kernel version you've chosen. You can
28 get user space code that matches stable kernels on the Open-FCoE.org
29 "Downloads" page or you can pull directly from the git repositories using
32 2) Configure the kernel
37 Networking Support -> Networking Options
40 GVRP (GARP VLAN Registration Protocol) support
42 Networking Support -> Networking Options -> QoS and/or fair queuing
43 Multi Band Priority Queueing (PRIO)
44 Hardware Multiqueue-aware Multi Band Queuing (MULTIQ)
45 Elementary classification (BASIC)
46 Universal 32bit comparisons w/ hashing (U32)
52 Device Drivers -> SCSI Device Support -> SCSI Low-level drivers
57 Enable the block layer
58 Block layer SG support v4
60 Device Drivers -> Network Device Support -> Ethernet (10000 Mbit)
61 Intel(R) 10GbE PCI Express adapters support
62 Data Center Bridging (DCB) Support
64 [ Replace with desired driver if not using Intel adapter. ]
69 # make && make modules_install && make install
71 If you're going to build fcoe-utils, you can run 'make headers_install'
72 at this stage to skip a later step.
75 Change the default kernel so that this new kernel is used when booting
100 1) Obtain the latest source
102 git clone git://open-lldp.org/open-lldp
104 (note: fcoe-utils versions >= 1.0.20 require an lldpad version >= 0.9.43)
106 2) Obtain libconfig version 1.3.2 or greater included in distribution
107 devel packages source can be obtained directly from
108 http://www.hyperrealm.com/libconfig/
110 3) Build and install libconfig -- see libconfig documentation
112 4) Obtain and install devel netlink library (libnl) version 1.1 or greater
113 included in distribution devel packages source can be obtained directly
114 from http://www.infradead.org/~tgr/libnl/
116 5) Bootstrap, configure, make and make install
119 # rpm --eval "%configure" | sh
125 # HBA API Wrapper Library
126 ##########################
138 1) Obtain the latest source
140 git clone git://open-fcoe.org/libHBAAPI.git
142 2) Bootstrap, configure, make and make install
145 # rpm --eval "%configure" | sh
167 1) Obtain the latest source
169 git clone git://open-fcoe.org/libhbalinux.git
171 2) Bootstrap, configure, make and make install
174 # rpm --eval "%configure" | sh
185 * libnl (see DCB section)
187 * lldpad v0.9.26 or greater (optional configure flag to build without)
197 1) Obtain the latest source
199 git clone git://open-fcoe.org/fcoe-utils.git
201 2) Bootstrap, configure, make and make install
204 # rpm --eval "%configure" | sh
209 # Example Configuration
210 #######################
212 This example configures interface eth3 to automatically connect to storage over
215 1) Configure FCoE on the interface
217 # cp cfg-ethx cfg-eth3
219 2) Start lldpad and configure the interface for DCB.
220 # service lldpad start
221 # dcbtool sc eth3 dcb on
222 # dcbtool sc eth3 pfc e:1
223 # dcbtool sc eth3 app:fcoe e:1
225 As a convenience there is a script that will confirm if DCB has been
226 configured correctly for FCoE. The script is run as follows,
228 <fcoe-utils source>/debug/dcbcheck.sh eth3
229 (note: this is on the root device, not the VLAN)
231 Follow the suggestions and repeatedly run the script until it states that
232 DCB is configured correctly.
236 After a few moments your storage should appear (assuming everything is
237 configured correctly on the fabric)
239 4) Setup lldpad and fcoe to start when booting
240 # chkconfig lldpad on
248 Most steps cannot be skipped. Resolve issues before moving forward.
250 Please run '<fcoe-utils-src>/debug/fcoedump.sh eth3.<VID>-fcoe &>dump.out'
251 and provide the dump.out file with the bug report. Defects can be filed
252 against the distribution used, reported to the Ethernet vendor of the
253 card in use, or mailed to fcoe-devel@open-fcoe.org.
260 1) Discover VLANs manually
262 Fibre Channel Forwarders Discovered
263 interface | VLAN | FCF MAC
264 ------------------------------------
265 eth3 | 101 | 00:0d:ec:a3:3a:80
267 VLANs should be automatically discovered by the FCoE start up process which
268 adds a VLAN to the real device. The VLAN can be identified by the name
271 2) fcping can be used to ping targets to verify connectivity.
273 # fcping -h eth3.<VID>-fcoe -F E10AEF -c 3
274 sending echo to 0xE10AEF
275 echo 1 REJECT received 0.116 ms
276 echo 2 REJECT received 0.222 ms
277 echo 3 REJECT received 0.226 ms
278 3 frames sent, 3 received 3 errors, 0.000% loss, avg. rt time 0.188 ms