IP Library Granted Patent US 7,584,279
Granted Patent B1
US 7,584,279 · App. 10/188,250 · Granted Sep 1, 2009

System and method for mapping block-based file operations to file level protocols

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,584,279
App. No.
10/188,250
Granted
Sep 1, 2009
Kind
B1
Abstract

A system and method for mapping block-based file operations to file-level protocols is provided. The system and method enable applications on a networked computer designed to exclusively access only locally-attached storage to also access networked data storage. The mapping occurs transparently to higher levels of operating systems or applications so that applications which are designed to only access locally-attached storage may be enabled to access networked storage.

Claims (38)

1. A computer implemented method for performing data access operations to a file accessible by a file level protocol, the method comprising:

receiving, by a data access protocol module of a client, a Small Computer System Interface (SCSI) block based read command;

reading a SCSI logical block address from the SCSI read command;

computing a Network File System (NFS) offset from the SCSI logical block address;

creating a NFS read request using the NFS offset;

forwarding the NFS read request to a server;

reading, by the server, NFS file data from a data storage device connected to the server in response to the NFS read request;

forwarding, by the server, a NFS response to the client, wherein the response includes the NFS file data; and

translating, by the data access protocol module of the client the NFS response into a SCSI block based response.

2. The method of claim 1 , wherein the step of calculating the NFS offset further comprises multiplying a logical block address by a logical block size.

3. The method of claim 2 further comprising adding a header length to the calculated offset.

4. The method of claim 1 , further comprising:

calculating a length of the SCSI logical block address, wherein the length of the SCSI logical block address is calculated by multiplying a transfer length by a logical block size.

5. The method of claim 1 , wherein the client does not support operations in the file level protocol without using the data access protocol module.

6. The method of claim 1 , wherein the data access protocol module is a program within an operating system of the client, and the operating system is executed by a processor.

7. The method of claim 1 , wherein the data access protocol module is firmware.

8. The method of claim 1 , wherein the data access protocol module comprises a mapping function and a protocol translation function.

9. The method of claim 8 , wherein the mapping function maps units of storage storing the file on the client to a virtual logical disk stored on the server.

10. The method of claim 9 , wherein the protocol translation function translates the SCSI logical block address directed to the virtual logical disk into a file access requests directed to the server.

11. The method of claim 1 , wherein the data access protocol module is software executed by a processor.

12. The method of claim 1 , wherein the data access protocol module is a driver.

13. A system, comprising:

a client configured with a data access protocol module, the data access protocol module configured to receive a Small Computer System Interface (SCSI) block based read command,

to read a SCSI logical block address from the SCSI read command,

to compute a Network File System (NFS) offset from the SCSI logical block address,

to create a NFS read request using the NFS offset, and to forward the NFS read request to a server; and

a server configured to read NFS file data from a data storage device connected to the server in response to the NFS read request and to forward a NFS response to the client, wherein the response includes the NFS file data; and

the data access protocol module of the client further configured to translate the NFS response into a SCSI block based response.

14. The system of claim 13 , wherein the client does not fully support operations in the file level protocol.

15. A computer readable storage medium containing executable program instructions executed by a processor, comprising:

program instructions that receive, by a data access protocol module of a client, a Small Computer System Interface (SCSI) block based read command;

program instructions that read a SCSI logical block address from the SCSI read command;

program instructions that compute a Network File System (NFS) offset from the SCSI logical block address;

program instructions that create a NFS read request using the NFS offset;

program instructions that forward the NFS read request to a server;

program instructions that read, by the server, NFS file data from a data storage device connected to the server in response to the NFS read request;

program instructions that forward, by the server, a NFS response to the client, wherein the response includes the NFS file data; and

program instructions that translate, by the data access protocol module of the client the NFS response into a SCSI block based response.

Assignments (3)
CHANGE OF NAME Recorded Jul 14, 2024
From: NETWORK APPLIANCE, INC.
To: NETAPP, INC.
Reel/Frame 067983/0111 →
CHANGE OF NAME Recorded Sep 21, 2015
From: NETWORK APPLIANCE, INC.
To: NETAPP, INC.
Reel/Frame 036610/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2002
From: CHAPMAN, DENNIS E.
To: NETWORK APPLIANCE, INC.
Reel/Frame 013600/0987 →