System and method for providing remote direct memory access over a transport medium that does not natively support remote direct memory access operations
First Claim
Patent Images
1. A storage system for use in a storage system cluster with a partner storage system, comprising:
- a processor and a memory;
a network adapter of the storage system configured to be coupled to a transport medium that does not support remote direct memory access operations;
a network driver of the storage system configured to control the network adapter; and
an emulated protocol module, stored in the memory, operatively interconnected with the network driver configured to emulate a protocol supporting remote direct memory access operations, the emulated protocol module further configured to generate a protocol packet that is supported by the network adapter and the transport medium, wherein the protocol packet comprises the remote direct memory access operations, the emulated protocol module further configured to implement reliable reception of the packets over the transport medium.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method provides a remote direct memory access over a transport medium that does not natively support remote direct memory access operations. An emulated VI module of a storage operating system emulates RDMA operations over such a medium, e.g., conventional Ethernet, thereby enabling storage. Storage appliances in a cluster configuration utilize the non-RDMA compatible transport medium as a cluster interconnect.
-
Citations
35 Claims
-
1. A storage system for use in a storage system cluster with a partner storage system, comprising:
-
a processor and a memory; a network adapter of the storage system configured to be coupled to a transport medium that does not support remote direct memory access operations; a network driver of the storage system configured to control the network adapter; and an emulated protocol module, stored in the memory, operatively interconnected with the network driver configured to emulate a protocol supporting remote direct memory access operations, the emulated protocol module further configured to generate a protocol packet that is supported by the network adapter and the transport medium, wherein the protocol packet comprises the remote direct memory access operations, the emulated protocol module further configured to implement reliable reception of the packets over the transport medium. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A storage system cluster, comprising:
-
a processor and a memory; a first storage system comprising a network adapter operatively connected to a transport medium that does not support remote direct memory access operations; a second storage system operatively connected to the first storage system via the transport medium, wherein the second storage system is a partner to the first storage system; and the first storage system comprising an emulated protocol module configured to emulate a protocol supporting remote direct memory access operations, the emulated protocol module further configured to generate a protocol packet that is supported by the network adapter and the transport medium, wherein the protocol packet comprises the remote direct memory access operations and wherein the emulated protocol module is further configured to implement reliable reception of the packets over the transport medium. - View Dependent Claims (14, 15, 16, 17, 32)
-
-
18. A method, comprising:
-
receiving an operation at a protocol emulation module of a first storage system; emulating a protocol that supports a remote direct memory access operation at the protocol emulation module; generating, by the protocol emulation module, a packet that is supported by a network adapter of the first storage system and a transport medium operatively connected to the network adapter that does not support remote direct memory access operations, the packet comprising the remote direct memory access operation; sending the packet from the first storage system to a second storage system over the transport medium; and implementing reliable reception of the packets over the transport medium. - View Dependent Claims (19, 20, 21, 22, 33)
-
-
23. A computer readable storage device containing executable program instructions executed by a processor, comprising:
-
program instructions that receive an operation at a protocol emulation module of a first storage system; program instructions that emulate a protocol that supports a remote direct memory access operation at the protocol emulation module and further configured to implement reliable reception of the packets over the transport medium; program instructions that generate a packet that is supported by a network adapter of the first storage system and a transport medium operatively connected to the network adapter that does not support remote direct memory access operations, the packet comprising the remote direct memory access operation; and program instructions that send the packets from the first storage system to a second storage system over the transport medium, wherein the second storage system comprises a partner storage system.
-
-
24. An apparatus, comprising:
-
a memory including instructions for receiving an operation at a protocol emulation module of a first storage system; emulating a protocol that supports a remote direct memory access operation at the protocol emulation module; generating, by the protocol emulation module, a packet that is supported by a network adapter of the first storage system and a transport medium operatively connected to the network adapter that does not support remote direct memory access operations, the packet comprising the remote direct memory access operation; sending the packets from the first storage system to a second storage system over the transport medium; and implementing reliable reception of the packets over the transport medium. - View Dependent Claims (25, 26, 34)
-
-
27. A method, comprising:
-
emulating a protocol that supports a remote direct memory access operation over a transport medium operatively connected to the first storage system that does not support remote direct memory access operations, the protocol emulated by a module configured to execute on a storage operating system of a first storage system; generating by the module the remote direct memory access operation within packets that are supported by a network adapter of the first storage system and the transport medium; connecting the first storage system to a second storage system using the transport medium; receiving the packets from the first storage system by the second storage system using the transport medium; performing the remote direct memory access operation within the received packets in response to a take over operation received by the first storage system; is implementing reliable reception of the packets over the transport medium; and generate a protocol packet that is supported by the network adapter and the transport medium. - View Dependent Claims (28, 29, 30, 31, 35)
-
Specification