ATTO Technology V-Class Benutzerhandbuch

Seite von 117
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”