SCSI Enclosure Services

Last updated

SCSI Enclosure Services (SES) is a protocol for more modern SCSI enclosure products. An initiator can communicate with the enclosure using a specialized set of SCSI commands to access power, cooling, and other non-data characteristics. [1]

Contents

SES devices

There are two major classes of SES devices:

SES commands

The SCSI initiator communicates with an SES device using two SCSI commands: Send Diagnostic and Receive Diagnostic Results. Some universal SCSI commands such as Inquiry are also used with standalone enclosure services to perform basic functions such as initial discovery of the devices.

SES elements

The SCSI Send Diagnostic and Receive Diagnostic Results commands can be addressed to a specific SES element in the enclosure. There are many different element codes defined to cover a wide range of devices. The most common SES elements are power supply, cooling fan, temperature sensor, and UPS. The SCSI command protocols assume that there may be more than one of each device type so they must be each given an 8-bit address.

When an SES controller is interrogated for the status of an SES element, the response includes a 4-bit element status code. The most common element status codes are: 1h=OK, 2h=critical, 3h=warning, 5h=not installed.

SES element thresholds

Some SES elements, such as voltage sensors, current sensors, and temperature sensors, have a thresholding function. This allows an enclosure to detect and report unacceptable environmental conditions. The SCSI standard allows for two different threshold levels, noncritical (warning) and critical. Also, each threshold has a minimum and maximum value. So for example the threshold values for the 12 volt power-supply could be set as follows:

Threshold values are set by a Send Diagnostic command to the Threshold Out diagnostic page (05h). Threshold values can be interrogated by a Receive Diagnostic Results command to the Threshold In diagnostic page (05h) with the PCV bit set to one.

Subenclosures

A larger SCSI storage enclosure may contain multiple subenclosures. The subenclosure with address 00h is designated the primary subenclosure and can return information about the other subenclosures.

SCSI attached enclosure services

SCSI attached enclosure services is a computer protocol used mainly with disk storage enclosures. It allows a host computer to communicate with the enclosure to access its power, cooling, and other non-data characteristics.

The host computer communicates with the disks in the enclosure via a SCSI interface which may be Parallel SCSI, FC-AL, SAS, or SSA. One of the disk devices located in the enclosure is set up to allow SCSI Enclosure Services (SES) communication through a logical unit. The disk-drive then communicates with the SES processor in the enclosure, usually via Enclosure Services Interface (ESI), or a protocol called DSI for SSA enclosures. The data sent over the ESI or DSI interface is simply the contents of a SCSI command and the response to that command.

Implemented commands

Only two SCSI commands are implemented by attached enclosure services devices:

SCSI commandOperation codeComment
RECEIVE DIAGNOSTIC RESULTS 1ChMandatory
SEND DIAGNOSTIC 1DhMandatory

SCSI standalone enclosure services

SCSI standalone enclosure services is a computer protocol used mainly with disk storage enclosures. It allows a host computer to communicate with the enclosure to access its power, cooling, and other non-data characteristics.

The host computer communicates with one or more SCSI Enclosure Services (SES) controllers in the enclosure via a SCSI interface which may be Parallel SCSI, FC-AL, SAS, or SSA. Each SES controller has a SCSI identity (address) and so can accept direct SCSI commands.

Implemented commands

The following SCSI commands are implemented by standalone enclosure services devices:

SCSI commandOperation codeComment
ACCESS CONTROL IN86hOptional
ACCESS CONTROL OUT87hOptional
CHANGE ALIASESA4hOptional
INQUIRY 12hMandatory
LOG SELECT 4ChOptional
LOG SENSE 4DhOptional
MAINTENANCE INA3hSee note 1
MAINTENANCE OUTA4hSee note 1
MODE SELECT 15h/55hOptional
MODE SENSE 1Ah/5AhOptional
PERSISTENT RESERVE IN5EhOptional
PERSISTENT RESERVE OUT5FhOptional
READ BUFFER3ChOptional
RECEIVE DIAGNOSTIC RESULTS 1ChMandatory
REDUNDANCY GROUP INBAhSee note 1
REDUNDANCY GROUP OUTBBhSee note 1
REPORT ALIASESA3hOptional
REPORT DEVICE IDENTIFIERA3hOptional
REPORT LUNS A0hMandatory
REPORT PRIORITYA3hOptional
REPORT SUPPORTED OPERATION CODESA3hOptional
REPORT SUPPORTED TASK MANAGEMENT FUNCTIONSA3hOptional
REPORT TARGET PORT GROUPSA3hOptional
REPORT TIMESTAMPA3hOptional
REQUEST SENSE 03hMandatory
SEND DIAGNOSTIC 1DhMandatory
SET DEVICE IDENTIFIERA4hOptional
SET PRIORITYA4hOptional
SET TARGET PORT GROUPSA4hOptional
SET TIMESTAMPA4hOptional
SPARE INBChSee note 1
SPARE OUTBDhSee note 1
TEST UNIT READY 00hMandatory
VOLUME SET INBEhSee note 1
VOLUME SET OUTBFhSee note 1
WRITE BUFFER3BhOptional

Note 1: The initiator needs to send a SCSI inquiry to interrogate the SCCS bit which says whether the SES controller has this command.

See also

Related Research Articles

<span class="mw-page-title-main">Parallel ATA</span> Interface standard for the connection of storage devices

Parallel ATA (PATA), originally AT Attachment, also known as IDE, is a standard interface designed for IBM PC-compatible computers. It was first developed by Western Digital and Compaq in 1986 for compatible hard drives and CD or DVD drives. The connection is used for storage devices such as hard disk drives, floppy disk drives, optical disc drives, and tape drives in computers.

<span class="mw-page-title-main">SCSI</span> Set of computer and peripheral connection standards

Small Computer System Interface is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced in the 1980s and has seen widespread use on servers and high-end workstations, with new SCSI standards being published as recently as SAS-4 in 2017.

Internet Small Computer Systems Interface or iSCSI is an Internet Protocol-based storage networking standard for linking data storage facilities. iSCSI provides block-level access to storage devices by carrying SCSI commands over a TCP/IP network. iSCSI facilitates data transfers over intranets and to manage storage over long distances. It can be used to transmit data over local area networks (LANs), wide area networks (WANs), or the Internet and can enable location-independent data storage and retrieval.

<span class="mw-page-title-main">Host adapter</span> Computer hardware device

In computer hardware, a host controller, host adapter, or host bus adapter (HBA), connects a computer system bus, which acts as the host system, to other network and storage devices. The terms are primarily used to refer to devices for connecting SCSI, SAS, NVMe, Fibre Channel and SATA devices. Devices for connecting to FireWire, USB and other devices may also be called host controllers or host adapters.

A disk array controller is a device that manages the physical disk drives and presents them to the computer as logical units. It almost always implements hardware RAID, thus it is sometimes referred to as RAID controller. It also often provides additional disk cache.

Serial Storage Architecture (SSA) was a serial transport protocol used to attach disk drives to server computers.

<span class="mw-page-title-main">Self-Monitoring, Analysis and Reporting Technology</span> Monitoring system in computer drives

Self-Monitoring, Analysis, and Reporting Technology is a monitoring system included in computer hard disk drives (HDDs) and solid-state drives (SSDs). Its primary function is to detect and report various indicators of drive reliability with the intent of anticipating imminent hardware failures.

<span class="mw-page-title-main">Disk enclosure</span> Specialized casing

A disk enclosure is a specialized casing designed to hold and power hard disk drives or solid state drives while providing a mechanism to allow them to communicate to one or more separate computers.

<span class="mw-page-title-main">Serial Attached SCSI</span> Point-to-point serial protocol for enterprise storage

In computing, Serial Attached SCSI (SAS) is a point-to-point serial protocol that moves data to and from computer-storage devices such as hard disk drives and tape drives. SAS replaces the older Parallel SCSI bus technology that first appeared in the mid-1980s. SAS, like its predecessor, uses the standard SCSI command set. SAS offers optional compatibility with Serial ATA (SATA), versions 2 and later. This allows the connection of SATA drives to most SAS backplanes or controllers. The reverse, connecting SAS drives to SATA backplanes, is not possible.

<span class="mw-page-title-main">USB mass storage device class</span>

The USB mass storage device class is a set of computing communications protocols, specifically a USB Device Class, defined by the USB Implementers Forum that makes a USB device accessible to a host computing device and enables file transfers between the host and the USB device. To a host, the USB device acts as an external hard drive; the protocol set interfaces with a number of storage devices.

SCSI target devices provide a number of SCSI diagnostic pages. These can be used by a Send Diagnostic command to tell a target device to run a specialised self-test. The Receive Diagnostic Results command is used where the results from the self-test operation are non-trivial.

SCSI Enclosure Services (SES) devices contains a number of elements, each of which is defined by a one byte SCSI element code. There are many different element codes defined to cover various devices as shown in the list below.

A SCSI connector is used to connect computer parts that use a system called SCSI to communicate with each other. Generally, two connectors, designated male and female, plug together to form a connection which allows two components, such as a computer and a disk drive, to communicate with each other. SCSI connectors can be electrical connectors or optical connectors. There have been a large variety of SCSI connectors in use at one time or another in the computer industry. Twenty-five years of evolution and three major revisions of the standards resulted in requirements for Parallel SCSI connectors that could handle an 8, 16 or 32 bit wide bus running at 5, 10 or 20 megatransfer/s, with conventional or differential signaling. Serial SCSI added another three transport types, each with one or more connector types. Manufacturers have frequently chosen connectors based on factors of size, cost, or convenience at the expense of compatibility.

<span class="mw-page-title-main">Parallel SCSI</span> Original SCSI storage interface

Parallel SCSI is the earliest of the interface implementations in the SCSI family. SPI is a parallel bus; there is one set of electrical connections stretching from one end of the SCSI bus to the other. A SCSI device attaches to the bus but does not interrupt it. Both ends of the bus must be terminated.

The Enclosure Services Interface (ESI) is a computer protocol used in SCSI enclosures. This is part of a chain of connections that allows a host computer to communicate with the enclosure to access its power, cooling, and other non-data characteristics. This overall approach is called SCSI attached enclosure services:

The introduction of Serial Attached SCSI (SAS) as the most recent evolution of SCSI required redefining the related standard for enclosure management, called SCSI Enclosure Services. SES-2, or SCSI Enclosure Management 2 first revision, was introduced in 2002 and is now at revision 20. SES-2 SCSI Enclosure Services (SES) permit the management and sense the state of power supplies, cooling devices, LED displays, indicators, individual drives, and other non-SCSI elements installed in an enclosure. SES2 alerts users about drive, temperature and fan failures with an audible alarm and a fan failure LED.

In computer storage, SAF-TE is an industry standard to interface an enclosure in-band to a (parallel) SCSI subsystem in order to gain access to information or control for various elements and parameters. These include temperature, fan status, slot status (populated/empty), door status, power supplies, alarms, and indicators. Practically, any given SAF-TE device will only support a subset of all possible sensors or controls.

SCSI / ATA Translation (SAT) is a set of standards developed by the T10 subcommittee, defining how to communicate with ATA devices through a SCSI application layer. The standard attempts to be consistent with the SCSI architectural model, the SCSI Primary Commands, and the SCSI Block Commands standards.

Hard disk drives are accessed over one of a number of bus types, including parallel ATA, Serial ATA (SATA), SCSI, Serial Attached SCSI (SAS), and Fibre Channel. Bridge circuitry is sometimes used to connect hard disk drives to buses with which they cannot communicate natively, such as IEEE 1394, USB, SCSI, NVMe and Thunderbolt.

The bio(4) pseudo-device driver and the bioctl(8) utility implement a generic RAID volume management interface in OpenBSD and NetBSD. The idea behind this software is similar to ifconfig, where a single utility from the operating system can be used to control any RAID controller using a generic interface, instead of having to rely on many proprietary and custom RAID management utilities specific for each given hardware RAID manufacturer. Features include monitoring of the health status of the arrays, controlling identification through blinking the LEDs and managing of sound alarms, and specifying hot spare disks. Additionally, the softraid configuration in OpenBSD is delegated to bioctl as well; whereas the initial creation of volumes and configuration of hardware RAID is left to card BIOS as non-essential after the operating system has already been booted. Interfacing between the kernel and userland is performed through the ioctl system call through the /dev/bio pseudo-device.

References

  1. "INCITS 518-2017 - Information Technology - SCSI Enclosure Services - 3 (SES-3)". webstore.ansi.org. Retrieved 2023-12-20.