Abstract:
A method and system are disclosed to quickly and inexpensively (in terms of computational overhead) detect when a data shift corruption event or a short read has occurred and to transparently retry the failed read operation. The method seeds the memory read buffer, into which read data will be written, by placing known values (a “seed pattern”) at the end of the buffer prior to initiating the read operation. If the seed pattern is still in the read buffer when the read operation completes, the read operation has encountered a data shift corruption event and should be retried. If the read operation completes correctly, the seed pattern will be overwritten by the data read from the disk. The particular seed pattern used and the size of the seed pattern are chosen to be discriminating (i.e., no false positives) and cheap to write and verify (i.e., no performance impact).
Abstract:
A system and method for disk ownership in a network storage system. Each disk has two ownership attributes set to show that a particular file server owns the disk. In a preferred embodiment the first ownership attribute is the serial number of the file server being written to a specific location on each disk and the second ownership attribute is setting a SCSI-3 persistent reservation. In a system utilizing this disk ownership method, multiple file servers can read data from a given disk, but only the file server that owns a particular disk can write data to the disk.
Abstract:
A system and method enables a file server, to support multi path input/output operations for Fibre Channel devices. Upon each Fibre Channel Arbitrated Loop initialization event generated, the system and method updates a path and device instance to track multiple paths to a given device. While the file server is attempting input/output operations, the failure of a given path can be corrected by the use of another path associated with a given device. The data structures generated by the low levels of the storage operating system are exposed for use by upper level services for routing a storage device identification purposes.
Abstract:
A computer server system and a method for operating the system are described. An address and a status of each computer device of a plurality of computer devices accessible to a switch is written into a memory in the switch. The status of a first computer device which is off line is set to indicate that the first computer device is off line. The status information is read from the memory in the switch by a second computer device so that the second computer device knows that the first computer device is off line. Embodiments are described where the status of a data storage device and the status of a server are written to the memory in the switch.
Abstract:
One or more techniques and/or systems are disclosed for enabling communication between a SAS communication port of a SAS communication component and multiple storage devices. In a first example, a first SAS to SATA bridge chip and a second SAS to SATA bridge chip may be configured to route data from a SAS communication component to multiple storage devices. In a second example, a SAS to SATA bridge chip and a port multiplier may be configured to route data from a SAS communication component to multiple storage devices. In a third example, a four port SAS to SATA bridge comprising two SAS ports and two SATA ports may be configured to route data from a SAS communication component to multiple storage devices. Supporting two or more storage devices with a single SAS communication port allows storage enclosures to increase storage capacity, while decreasing cost per slot.
Abstract:
The techniques introduced here include storage systems including a storage controller configured to access data and a storage subsystem including a storage device having n ports, where n is an integer greater than one, and where the storage device is configured to store the data and to make the data available to the storage controller via each of the n ports. The storage systems also include a communication fabric configured to couple the storage controller to each of the n ports of the storage device via m paths, where m is an integer greater than n, so that the storage system is configured to tolerate failure in up to m−1 paths through the communication fabric, such that the data in the storage device remains accessible to the storage controller even in the presence of failure in up to m−1 paths of the m paths.
Abstract:
A computer storage system includes multiple disk trays, each disk tray holding two or more physical disks. The disks on a single tray are virtualized into a single logical disk. The single logical disk reports to the RAID (redundant array of inexpensive disks) subsystem, creating the impression that there is one large capacity disk. In one implementation, each disk in the tray is allocated to a different RAID group. By allocating the disks in a tray to different RAID groups, if the tray is removed, only a portion of several different RAID groups are removed. This arrangement permits a simple reconstruction of the RAID groups if a disk tray is removed from the system.
Abstract:
A modular and highly available RAID system has a fiber channel arbitrated loop (FC-AL) interface coupled with a disk array. Fault-tolerant operation is assured. The system provides dual and isolated arbitrated host and storage device loop circuits for redundant, independent input/output (I/O) paths to local and/or remote host computers. Each loop includes bypass circuits which prevent the failure of any device (host computer or storage device) from affecting the operation of loop. Orthogonal data striping may be used to further assure data integrity.
Abstract:
A system and method of storing data for use by storage operating systems in memories associated with switch ports. The data is written to a switch port memory, which is readable by all devices connected to the switch, and by all devices connected to a switching fabric containing that switch. When a device connected to the switching fabric requires the information, the device retrieves the stored information from the switch-port memory, without the need for any interaction of the device that originally wrote the data.
Abstract:
A system and method for distributing enclosure services information is provided. A plurality of storage systems that are operatively interconnected with one or more intermediate networking devices and/or disk shelves are modified to include a target device driver module that is adapted to receive and process target commands from other storage systems to enable the sharing and retrieval of SES information from a storage shelf's master storage system.