摘要:
The present invention relates generally to a method for efficient I/O handling in a cluster-based architecture. According to one aspect, the invention enables efficient scheduling of TCP connection migrations within a cluster. According to another aspect, the invention enables I/Os performed as TCP handoff operations to coexist on the same TCP/IP connection with I/Os performed as remote operations.
摘要:
A multi-tiered cache manager and methods for managing multi-tiered cache are described. Multi-tiered cache manager causes cached data to be initially stored in the RAM elements and selects portions of the cached data stored in the RAM elements to be moved to the flash elements. Each flash element is organized as a plurality of write blocks having a block size and wherein a predefined maximum number of writes is permitted to each write block. The portions of the cached data may be selected based on a maximum write rate calculated from the maximum number of writes allowed for the flash device and a specified lifetime of the cache system.
摘要:
A method for efficient communications with a cluster-based architecture preserves various aspects of integrity throughout one or more connections with a client, even in the midst of connection migration between nodes in the cluster. According to one aspect, the invention provides a mechanism for preventing the loss of packets arising from a TCP connection migration within the cluster. According to another aspect, the invention provides a mechanism for uniquely identifying conflicting TCP connections migrated to a common node. According to a still further aspect, the invention provides a distributed TCP timestamp mechanism so that the sender and receiver will have a consistent view of the timestamp even when each node has different local clock values and regardless of how many times the socket has been migrated.
摘要:
The present invention relates generally to a method for efficient I/O handling in a cluster-based architecture. According to one aspect, the invention enables efficient scheduling of TCP connection migrations within a cluster. According to another aspect, the invention enables I/Os performed as TCP handoff operations to coexist on the same TCP/IP connection with I/Os performed as remote operations.
摘要:
A cache layer leverages a logical address space and storage metadata of a storage layer (e.g., storage layer) to cache data of a backing store. The cache layer maintains access metadata to track data characteristics of logical identifiers in the logical address space, including accesses pertaining to data that is not in the cache. The access metadata may be separate and distinct from the storage metadata maintained by the storage layer. The cache layer determines whether to admit data into the cache using the access metadata. Data may be admitted into the cache when the data satisfies cache admission criteria, which may include an access threshold and/or a sequentiality metric. Time-ordered history of the access metadata is used to identify important/useful blocks in the logical address space of the backing store that would be beneficial to cache.
摘要:
A data storage system is disclosed in which a 3-party hand-off protocol is utilized to maintain a single coherent logical image. In particular, the functionality of the data storage system is separated into distinct processing modules. There are at least three types of processing modules. These three kinds of processing modules function cooperatively to perform data storage operations via the 3-party hand-off protocol. At least two types of processing modules are required to cooperate in a hand-off manner to fully execute each data storage operation.
摘要:
A system and related method are described for booting from one of multiple boot images that includes a processor coupled to a main memory, a number of boot devices and a selector. The boot devices are used to store multiple copies of a boot image and are in communication with the processor through a controller. The selector is used to select a different boot device each time the system is turned on or reset. A set of instructions executed by the processor loads the boot image from one of the boot devices selected by the selector into the main memory. In one embodiment, the selector is embodied in the form of software instructions incorporated into or linked to a system BIOS program. In another embodiment, the selector is embodied in the form of software instructions incorporated into or linked to a SCSI BIOS program. In yet another embodiment, the selector is embodied in the form of a selector switch coupled between a controller and the boot devices, wherein when a power switch of the system is actuated, the selector switch connects a different boot device to a port designated as a boot device port.
摘要:
A storage layer may over-provision physical storage resources of a storage medium by reserving a portion of the full physical storage capacity of the storage medium for use as reserve capacity. The reserve capacity may be used to prevent write stall conditions and/or for grooming operations, such as storage recovery, refresh, and the like. A reserve module may be configured to adapt the reserve capacity in accordance with, inter alia, operating conditions on the storage layer. The reserve module may be configured to dynamically modify the storage capacity available through the storage layer. A cache layer configured to cache data of a backing store on the storage layer, may be configured to add and/or remove cache entries in response to changes in the reserve capacity.
摘要:
An apparatus, system, and method are disclosed for managing a cache. A cache interface module provides access to a plurality of virtual storage units of a solid-state storage device over a cache interface. At least one of the virtual storage units comprises a cache unit. A cache command module exchanges cache management information for the at least one cache unit with one or more cache clients over the cache interface. A cache management module manages the at least one cache unit based on the cache management information exchanged with the one or more cache clients.
摘要:
Data of a vector storage request pertaining to one or more disjoint, non-adjacent, and/or non-contiguous logical identifier ranges are stored contiguously within a log on a non-volatile storage medium. A request consolidation module modifies one or more sub-requests of the vector storage request in response to other, cached storage requests. Data of an atomic vector storage request may comprise persistent indicators, such as persistent metadata flags, to identify data pertaining to incomplete atomic storage requests. A restart recovery module identifies and excludes data of incomplete atomic operations.