1aoeping(8)                  System Manager's Manual                 aoeping(8)
2
3
4

NAME

6       aoeping - simple communication with AoE device
7

SYNOPSIS

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

DESCRIPTION

12       The aoeping(8) program performs simple one or two-round-trip communica‐
13       tion with an ATA over Ethernet (AoE) device.  It creates  and  receives
14       AoE packets directly, using raw network sockets.
15
16       Running  aoeping(8)  without  command  line  arguments will result in a
17       short usage summary being displayed.
18
19       The aoeping(8) program will wait  forever  if  it  doesn't  receive  an
20       expected response.  The caller should use a time out to catch this sit‐
21       uation.
22
23   Arguments
24       shelf  This should be the shelf address (major AoE address) of the  AoE
25              device to communicate with.
26
27       slot   This  should  be the slot address (minor AoE address) of the AoE
28              device to communicate with.
29
30       netif  The name of the ethernet network interface to use for AoE commu‐
31              nications, e.g., eth1.
32
33   Options
34       -i     Issue  an  ATA "identify device" command after receiving the AoE
35              device's Config Query response.  The "ident"  response  will  be
36              printed on standard output as a hexidecimal dump.
37
38       -I     Issue  an  ATA "identify device" command after receiving the AoE
39              device's Config Query response.  The "ident"  response  will  be
40              pretty-printed  on  standard  output  as selected human-readable
41              fields.
42
43       -v     Turn on more copious output, including a hexidecimal dump of the
44              Config  Query  response from the AoE device (see AoE spec at URL
45              below).
46
47       -s     This option takes an argument.  The argument is a decimal  inte‐
48              ger  that  specifies  the number of seconds that aoeping(8) will
49              wait for a response before timing out and exiting  with  a  non-
50              zero status.
51
52       -S     This  option  takes  an argument.  The argument is the name of a
53              SMART command to send to the disk.  The SMART  commands  in  the
54              list  below  are supported.  If the command requires data trans‐
55              fer, one sector (512 bytes) of data is always the amount  trans‐
56              fered.  If the command takes a parameter (for the Low LBA regis‐
57              ter), then the name of the SMART command is immediately followed
58              by  a colon and then a number, the value of the parameter, e.g.,
59              "-S read_log:1".
60
61                read_data
62                offline_immediate
63                read_log
64                write_log
65                enable
66                disable
67                return_status
68
69              For write_log, aoeping(8) reads from standard input the one sec‐
70              tor of data to be written to the specified log.
71
72              If the AoE device does not support SMART commands or if the com‐
73              mand is aborted, an error message is printed to  standard  error
74              and  aoeping(8)  exits with a non-zero status.  A command may be
75              aborted if SMART is disabled on the device.
76
77              The aoeping(8) command just sends and receives  SMART  commands,
78              without  interpreting  them.  See the ATA specification for more
79              information on using SMART.
80
81       -t     (This is an advanced feature.)  This  option  has  an  argument.
82              The  argument  is  a decimal integer that is used as the initial
83              tag, with the highest bit set, as the first tag in ATA commands.
84              Tags for subsequent ATA commands will be incremented by one.
85
86       -h     Show a usage summary.
87

EXAMPLE

89       In  this  example, the root user uses aoeping(8) to check for the pres‐
90       ence of aoe device e10.9 on network interface eth0.
91
92              bash# aoeping -v 10 9 eth0 | head
93              tag: 80000000
94              eth: eth0
95              shelf: 10
96              slot: 9
97              config query response:
98              00 0d 87 aa c9 00 00 10 04 00 11 1f 88 a2 18 00
99              00 0a 09 01 00 00 00 00 00 03 30 08 00 10 00 04
100              66 6f 6f 0a 00 ff ff ff ff ff ff ff ff ff ff ff
101              ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
102              ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
103
104       The next example shows root making sure the disk on the e10.9 is  still
105       responsive  by  issuing an ATA device identify command with a 20-second
106       timeout.
107
108              bash# aoeping -i -s 20 \
109                10 9 eth0 > /dev/null \
110                && echo ok
111              ok
112
113       The next example uses SMART to determine  whether  the  disk  on  e10.9
114       thinks it has exceeded its error threshold.  The ATA spec says that the
115       LBA Mid register will be 0x4f when the disk has not exceeded its  error
116       threshold.
117
118              bash# aoeping -S return_status \
119                10 9 eth0 | grep 'LBA Mid: 0x4f' \
120                > /dev/null \
121                && echo ok
122              ok
123
124       Note  that  in  a  script,  it would be prudent to specify and handle a
125       timeout.  Also, a good script would make sure the Status register  does
126       not have the error bit (bit zero) or the device fault bit (bit 5) set.
127

SEE ALSO

129       aoe-discover(8), aoe-interfaces(8), aoe-mkdevs(8), aoe-mkshelf(8), aoe-
130       stat(8),
131
132       AoE    (ATA     over     Ethernet):     http://support.coraid.com/docu
133       ments/AoEr10.txt,
134
135       ATA specification
136

AUTHOR

138       Ed L. Cashin (ecashin@coraid.com)
139
140
141
142                                                                    aoeping(8)
Impressum