Apparatus, system, and method for isolating a storage application from a network interface driver
First Claim
1. An apparatus comprising a non-transitory computer-readable storage medium for providing an independent interface to update a function of a storage application independent from the storage application, and to update a function of a network interface driver independent from the network interface driver, the apparatus comprising:
- an isolation module stored on a storage device, the isolation module to isolate the storage application from the network interface driver communicatively connecting a host computing device to a network interface device, the network interface device providing a physical connection to a storage area network (SAN) switch that connects the host computing device to a storage device, the isolation module configured to;
receive a storage application function call from the storage application;
translate the storage application function call to a corresponding network interface driver function call;
invoke the corresponding network interface driver function call of the network interface driver in response to receiving the storage application function call from the storage application; and
transfer data blocks between the storage application and the network interface driver through a data buffer.
0 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and system are provided for isolating a storage application from a network interface driver. The apparatus includes a definition module, an application interface, a translation module, and a data buffer. The definition module defines a set of storage application functions. The translation module translates each storage application function to one or more network interface driver functions. The data buffer transfers data blocks between the storage application and the network interface driver.
18 Citations
26 Claims
-
1. An apparatus comprising a non-transitory computer-readable storage medium for providing an independent interface to update a function of a storage application independent from the storage application, and to update a function of a network interface driver independent from the network interface driver, the apparatus comprising:
an isolation module stored on a storage device, the isolation module to isolate the storage application from the network interface driver communicatively connecting a host computing device to a network interface device, the network interface device providing a physical connection to a storage area network (SAN) switch that connects the host computing device to a storage device, the isolation module configured to; receive a storage application function call from the storage application; translate the storage application function call to a corresponding network interface driver function call; invoke the corresponding network interface driver function call of the network interface driver in response to receiving the storage application function call from the storage application; and transfer data blocks between the storage application and the network interface driver through a data buffer. - View Dependent Claims (2, 3, 4, 23)
-
5. A system comprising:
-
a processor configured to execute machine code; an Input/Output (I/O) module configured to couple the system to a network; a network interface driver communicatively connecting a host computing device to a network interface device, the network interface device providing a physical connection to a storage area network (SAN) switch that connects the host computing device to a storage device; a storage application executing on the host computing device that stores data on the storage device; an isolation module executing on the host computing device and configured to; receive a storage application function call from the storage application; translate the storage application function call to a corresponding network interface driver function call; invoke the corresponding network interface driver function call of the network interface driver in response to receiving the storage application function call from the storage application; and transfer data blocks between the storage application and the network interface driver through a data buffer. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 24)
-
-
13. A non-transitory computer-readable storage medium tangibly embodying a program of computer-readable instructions executable by a digital processing apparatus to perform operations, the operations comprising:
-
isolating the storage application from a network interface driver communicatively connecting a host computing device to a network interface device, the network interface device providing a physical connection to a switch that connects the host computing device to a storage device, thereby providing an isolation layer; receiving a storage application function call from the storage application to communicate a message to the network interface device; translating the storage application function call to a corresponding network interface driver function call; invoking the corresponding network interface driver function call of the network interface driver to communicate the message in response to receiving the storage application function call from the storage application; and transferring data blocks between the storage application and the network interface driver through a data buffer. - View Dependent Claims (14, 15, 16, 17, 18, 19, 25)
-
-
20. An apparatus comprising:
-
a processor configured to execute machine code; an isolation module comprising instructions for; defining a set of storage application functions; defining a set of network interface driver functions; receiving a storage application function call from a storage application executing on a host computing device; translating the storage application function call to a corresponding network interface driver function call; invoking the corresponding network interface driver function call of a network interface driver in response to receiving the storage application function call from the storage application, wherein the network interface driver communicatively connects the host computing device to a network interface device that provides a physical connection to a switch that connects the host computing device to a storage device; and transferring data blocks between the storage application and the network interface driver through a data buffer. - View Dependent Claims (21, 22, 26)
-
Specification