ATTO Technology V-Class Network Card User Manual


 
19
ATTO Technology Inc. Diamond Storage Array Installation and Operation Manual
4.1 In-band CLI Over Fibre Channel
In-band Command Line Interface (CLI) configures and manages the Diamond Storage Array using
SCSI-based CLI commands over a Fibre Channel port connection.
In-band CLI allows a programmer to configure
the Diamond Storage Array while it is moving
data. Using a programmer’s interface, CLI
commands as described previously in this manual
may be implemented.
In-band CLI is implemented as part of LUN 0. It
uses a different LUN than the array, and reports as
a Storage Enclosure Services (SES) device
(device type 0x0D).
LUN 0 is visible on all Fibre ports but is actually
a single unit. The default value for LUN 0 is 0x00.
LUN 0 must be reserved for each Write
Buffer/Read Buffer pair, using the SCSI Reserve
command to insure integrity of the in-band CLI
session.
1 An initiator (host) sends a SCSI Reserve
command to LUN 0.
If LUN 0 is not reserved by another initiator,
LUN 0 is now reserved and available to begin
a new CLI session.
If the array configuration is reserved by a
different CLI session (i.e. serial or Telnet),
the in-band session does not allow
modifications of the array configuration. If
you try, the results buffer of LUN 0 returns:
Process X has the configuration
reserved.
ID of this session = Y
Ready.
2 The initiator issues a SCSI Write Buffer
command to LUN 0. A
Write Buffe
r command
must be accompanied by an ASCII buffer
representing the CLI command string such as
set DiamondName Omega1
LUN 0 executes the command line and create
feedback in the form of ASCII characters into a
buffer. This buffer is 8 KB and circular. Retrieve
the results by issuing a
Read Buffer
command
before issuing another
Write Buffer
command.
3 A subsequent
Write Buffer
command executes
the new command line and overwrite the
previous results in the buffer with new results.
4 LUN 0 can be released by issuing a SCSI
Release
command to the LUN after each
Write/Read Buffer pair, or multiple Write/Read
Buffer pairs.
I/O details
The buffer sent to the Services LUN during the
data out phase of a Write Buffer command must
be:
• ASCII data
maximum 80 bytes length
terminated with either a carriage return
character (0x0D), line feed character (0x0A) or
NULL character (0x00)
Characters following the first carriage return
character, line feed character or NULL character
are ignored.
The buffer retrieved from the Services LUN
during the data-in phase of a
Read Buffer
command:
• ASCII data
8 KBytes (8192 bytes) in length
terminated with a NULL character (0x00)
Characters following the NULL character are
meaningless.
Initiator (Host) Diamond Storage Array
Reserve LUN 0 return: “ok”
Write Buffer
LUN 0
bid ‘AA’
“get Temperature”
executes the CLI command,
stores output in buffer
Read Buffer
LUN 0
bid ‘AA’
return:”Temperature=28C\r\n\
Ready.\r\n\0”
Release LUN 0 return: “ok”