Provided by: aoetools_36-1ubuntu1_i386 bug

NAME

       aoeping - simple communication with AoE device

SYNOPSIS

       aoeping [options] {shelf} {slot} {netif}

DESCRIPTION

       The   aoeping(8)   program   performs   simple  one  or  two-round-trip
       communication with an ATA over Ethernet (AoE) device.  It  creates  and
       receives AoE packets directly, using raw network sockets.

       Running  aoeping(8)  without  command  line  arguments will result in a
       short usage summary being displayed.

       The aoeping(8) program will wait  forever  if  it  doesn't  receive  an
       expected  response.   The  caller  should  use a time out to catch this
       situation.

   Arguments
       shelf  This should be the shelf address (major AoE address) of the  AoE
              device to communicate with.

       slot   This  should  be the slot address (minor AoE address) of the AoE
              device to communicate with.

       netif  The name of the  ethernet  network  interface  to  use  for  AoE
              communications, e.g., eth1.

   Options
       -i     Issue  an  ATA "identify device" command after receiving the AoE
              device's Config Query response.  The "ident"  response  will  be
              printed on standard output as a hexidecimal dump.

       -I     Issue  an  ATA "identify device" command after receiving the AoE
              device's Config Query response.  The "ident"  response  will  be
              pretty-printed  on  standard  output  as selected human-readable
              fields.

       -v     Turn on more copious output, including a hexidecimal dump of the
              Config  Query  response from the AoE device (see AoE spec at URL
              below).

       -s     This option takes  an  argument.   The  argument  is  a  decimal
              integer  that  specifies  the  number of seconds that aoeping(8)
              will wait for a response before timing out and  exiting  with  a
              non-zero status.

       -S     This  option  takes  an argument.  The argument is the name of a
              SMART command to send to the disk.  The SMART  commands  in  the
              list   below  are  supported.   If  the  command  requires  data
              transfer, one sector (512 bytes) of data is  always  the  amount
              transferred.   If the command takes a parameter (for the Low LBA
              register), then the name of the  SMART  command  is  immediately
              followed  by  a  colon  and  then  a  number,  the  value of the
              parameter, e.g., "-S read_log:1".

                read_data
                offline_immediate
                read_log
                write_log
                enable
                disable
                return_status

              For write_log, aoeping(8) reads  from  standard  input  the  one
              sector of data to be written to the specified log.

              If  the  AoE  device  does  not support SMART commands or if the
              command is aborted, an error  message  is  printed  to  standard
              error  and  aoeping(8)  exits with a non-zero status.  A command
              may be aborted if SMART is disabled on the device.

              The aoeping(8) command just sends and receives  SMART  commands,
              without  interpreting  them.  See the ATA specification for more
              information on using SMART.

       -t     (This is an advanced feature.)  This  option  has  an  argument.
              The  argument  is  a decimal integer that is used as the initial
              tag, with the highest bit set, as the first tag in ATA commands.
              Tags for subsequent ATA commands will be incremented by one.

       -h     Show a usage summary.

EXAMPLE

       In  this  example,  the  root  user  uses  aoeping(8)  to check for the
       presence of aoe device e10.9 on network interface eth0.

              bash# aoeping -v 10 9 eth0 | head
              tag: 80000000
              eth: eth0
              shelf: 10
              slot: 9
              config query response:
              00 0d 87 aa c9 00 00 10 04 00 11 1f 88 a2 18 00
              00 0a 09 01 00 00 00 00 00 03 30 08 00 10 00 04
              66 6f 6f 0a 00 ff ff ff ff ff ff ff ff ff ff ff
              ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
              ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

       The next example shows root making sure the disk on the e10.9 is  still
       responsive  by  issuing an ATA device identify command with a 20-second
       timeout.

              bash# aoeping -i -s 20 \
                10 9 eth0 > /dev/null \
                && echo ok
              ok

       The next example uses SMART to determine  whether  the  disk  on  e10.9
       thinks it has exceeded its error threshold.  The ATA spec says that the
       LBA Mid register will be 0x4f when the disk has not exceeded its  error
       threshold.

              bash# aoeping -S return_status \
                10 9 eth0 | grep 'LBA Mid: 0x4f' \
                > /dev/null \
                && echo ok
              ok

       Note  that  in  a  script,  it would be prudent to specify and handle a
       timeout.  Also, a good script would make sure the Status register  does
       not have the error bit (bit zero) or the device fault bit (bit 5) set.

SEE ALSO

       aoe-discover(8), aoe-interfaces(8), aoe-mkdevs(8), aoe-mkshelf(8), aoe-
       stat(8),

       AoE                (ATA                 over                 Ethernet):
       http://support.coraid.com/documents/AoEr10.txt,

       ATA specification

AUTHOR

       Ed L. Cashin (ecashin@coraid.com)

                                                                    aoeping(8)