Multicasting Write Requests To Multiple Storage Controllers
OwnerPankaj Kumar, James A. Mitchellinventors
Life of this patent
Estimating the term…
Abstract
In one embodiment, the present invention includes a method for performing multicasting, including receiving a write request including write data and an address from a first server in a first canister, determining if the address is within a multicast region of a first system memory, and if so, sending the write request directly to the multicast region to store the write data and also to a mirror port of a second canister coupled to the first canister to mirror the write data to a second system memory of the second canister. Other embodiments are described and claimed.
Claims20
An apparatus comprising:
- a first canister to control storage of data in a storage system including a plurality of disks, the first canister having a first processor, a first system memory to cache data to be stored in the storage system, and a first mirror port;
- and
- a second canister to control storage of data in the storage system and coupled to the first canister via a point-to-point (PtP) interconnect, the second canister including a second processor, a second system memory to cache data to be stored in the storage system, and a second mirror port, wherein the first and second system memories are to store a mirrored copy of the data stored in the other system memory, wherein the mirrored copy is communicated by dualcast transactions via the PtP interconnect in which incoming data to the first canister is concurrently written to the first system memory and communicated to the second canister through the first and second mirror ports.
A method comprising:
- receiving a write request including write data and an address from a first server in a first canister of a storage system;
- determining if the address is within a multicast region of a system memory of the first canister;
- if so, sending the write request directly to the multicast region of the system memory of the first canister to store the write data in the system memory of the first canister and to a mirror port of a second canister coupled to the first canister via a point-to-point (PtP) link to mirror the write data to a system memory of the second canister;
- and
- receiving an acknowledgement of receipt of the write data in the first canister from the second canister via the PtP link, and communicating a second acknowledgement from the first canister to the first server.
A system comprising:
- a first canister including a first processor, a first system memory to cache data, a first input/output (I/O) controller to communicate with a first server, a first device controller to communicate with a disk storage system, and a first mirror port;
- a second canister coupled to the first canister via a point-to-point (PtP) interconnect, the second canister including a second processor, a second system memory to cache data, a second I/O controller to communicate with a second server, a second device controller to communicate with the disk storage system, and a second mirror port, wherein the first and second system memories are to store a mirrored copy of the data stored in the other system memory, wherein the mirrored copy is communicated by dualcast transactions via the PtP interconnect in which incoming data of a write request to the first canister is concurrently written to the first system memory and communicated to the second canister through the first and second mirror ports;
- and
- the disk drive system including a plurality of disk drives.
Dependencies are inferred from the claim text.