Warning: session_start() [function.session-start]: open(/home/content/77/5283477/tmp/sess_d52103dosjsjqg4ejujhrhm2b0, O_RDWR) failed: No such file or directory (2) in /home/content/77/5283477/html/fc_ping.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/content/77/5283477/html/fc_ping.php:2) in /home/content/77/5283477/html/fc_ping.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/content/77/5283477/html/fc_ping.php:2) in /home/content/77/5283477/html/fc_ping.php on line 2
Estorian: fc_ping
Estorian Portal Login| Contact| Careers
TSF Professional
io_profile logo

Technical and installation information on fcping

There are a number of useful fcping options, many of which work like those in ping. Version 1.5 of this utility adds the -D and -d options to help you determine which local and remote Fibre Channel ports are visible to the host.

C:\share\fcping\bin\win32>fcping -h Usage: fcping [OPTION]... WORLD_WIDE_PORT_NAME WORLD_WIDE_PORT_NAME in upper case hex XX:XX:XX:XX:XX:XX:XX:XX Options: -v print the version and exit -h print usage and exit -c count number of pings before exiting -i interval interval between pings in seconds -l lun FCP LUN to ping in decimal (default is LUN 0) -q quiet operation, no output to stdout -O WWPN specify the worldwide name of the outgoing port -D list discovered outgoing ports -d list discovered remote ports

There are no big cumbersome GUI nor platform or vendor-specific tools to learn, just a simple tool to do a simple but important job

Building fcping from source

The fcping utility is written in C and can be compiled on Solaris, Linux, and Win32 systems. Porting it to other flavors of UNIX should not be difficult, but as part of our commitment to open source tools, we plan to provide these versions in future. The code in this software kit is distributed under the GNU General Public License and the GNU Lesser General Public License, so fcping is guaranteed to remain a free open source tool.

Included in this kit are source and binary forms of the Storage Networking Industry Association (SNIA) Common HBA API library v2.1, which can also be obtained from http://www.sourceforge.net/projects/hbaapi. This library serves as an adaptor between fcping and the HBA driver, providing a uniform interface across HBA vendor's hardware. This API is the result of collaboration among various HBA and management software vendors. Version 1.0 was released and implemented last year; version 2.0 is being finalized, and HBA vendors should release implementations by mid-2003.

Version 2.0 of the SNIA HBAAPI library is backward-compatible with version 1.0 of the vendor-specific libraries. The Common HBA API Library is distributed under the SNIA Public License, which is included with source code in the kit. fcping is statically linked to the Common HBAAPI Libary on UNIX platforms. It is dynamically linked to HBAAPI.dll on Win32 platforms.

fcping also uses another Open Source library called timeout_action, which allows arbitrary functions to be executed in a thread that will timeout if the action takes longer than expected. This library uses the pthreads library on UNIX and uses Win32 threads on Windows.

To build the kit, unpack the zip file, cd to the src directory, copy the appropriate makefile to a file called "makefile", and type "make" ("nmake" on Win32). Explicitly:

%> unzip fcping1_5.zip %> cd fcping/src %> cp makefile.linux makefile %> make

We have built fcping on Linux and Solaris using gcc V2.9X and on Windows platforms using MS Visual C++ 6.0. Sun's Forte v6 compiler can also be used with some tweaks to the makefile. The build should take less than half a minute.

Installing fcping

Once you have compiled a binary image of fcping, logon with root access (Administrator), copy it to the directory of your choice, and place the Common HBA Library in your path to shared libraries or type "make install" ("nmake install" on Win32) to execute the copy commands in the install.sh (install.bat) scripts. These simple install scripts are provided for convenience but are not very sophisticated and may apply to only some environments. If in doubt, look at the source of these simple install scripts.

Next, make sure that you have a vendor-specific HBA library installed. These are provided by the HBA vendors. They sometimes install when you install your HBA device driver or may need to be installed separately. To tell whether the vendor library has been installed, check the /etc/hba.conf file on UNIX or the hkey_local_machine\software\snia\hba registry key on Win32 platforms. There you will find the mappings that the SNIA common library uses to find and load the vendor-specific libraries.

The most common reason for fcping to fail is that the vendor library has not been installed or has been incorrectly registered. If you do not find what you are looking for, a trip to your HBA vendor's Web site should do the trick. The HBA API FAQ at http://hbaapi.sourceforge.net/faq.htm contains a table showing which HBAs are supported and has further links to HBA vendor sites where the vendor-specific libraries can be downloaded.


If you don't want to build fcping yourself, the kit includes a bin directory containing precompiled binary forms of fcping and HBAAPI.dll for Win32 Linux, and 32-bit Solaris environments. fcping is statically linked to libHBAAPI on UNIX platforms. Copy these files into the correct places, as described.

Known bugs

Defect #1 Status: Open Logged: 9/5/02

With some HBAs, it does not matter which LUN you ping, you always get the same result, even for LUNs you should not be able to reach because of LUN masking or LUNs that do not exist. We have not yet understood whether this is an issue with fcping, the HBAAPI, or the vendor library/device-driver. This bug is still open as of fcping v1.5.

Reporting bugs

Please contact us to report any bugs.

New features in version 1.5

  • Separation into src, bin, include directories. This is cleaner and should also make it easier to support more platforms
  • A different makefile for each platform should make building the kit less error prone
  • Compatibility with SNIA HBA API 2.0, able to take advantage of both v1.0 and v2.0 vendor libraries
  • Addition of MIN and MAX statistics for pings
  • Ability to list local, rt interfaces (-D option)
  • Ability to list discovered port addresses (-O and -d options)
  • Ability to perform pings from any local port address to any discovered port address (-O option). As of February 2003, many HBA vendors still do not support this feature

Future Features

  • More statistics on pings collected (STDEV)
  • Support for other UNIX flavors
  • Ability to use Worldwide Node Names (WWN) when mapping is unique
  • Ability to ping all World Wide Port names listed in a text file
  • Ability to type only the last 4 bytes of the WWN as the address
  • More standard ping features

How to get involved

If you would like to contribute to fcping development, please contact us.

Download fc_ping

www.21stCenturySoftware.com ©2010 Estorian, Inc. All Rights Reserved.Legal|Privacy Policy

Warning: Unknown: open(/home/content/77/5283477/tmp/sess_d52103dosjsjqg4ejujhrhm2b0, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct () in Unknown on line 0