IP Library Granted Patent US 9,122,406
Granted Patent B2
US 9,122,406 · App. 12/579,335 · Granted Sep 1, 2015

System and method for selectively transferring block data over a network

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 9,122,406
App. No.
12/579,335
Granted
Sep 1, 2015
Kind
B2
Abstract

A system for sharing block data includes a non-removable device for storing block data (e.g. a hard drive) that is networked with a plurality of computers. Each computer can initiate discovery commands and read/write commands, and transmit these commands over the network to the non-removable storage device. Computer commands are intercepted and processed by a logical algorithm program at the storage device. One function of the logical algorithm program is to instruct each computer to treat the non-removable block storage device as a removable block device. Because the computers treat the storage device as a removable block device, they relinquish control of the device (after use) to other computers on the network. The logical algorithm program also functions to allocate temporary ownership of the block storage device to one of the computers on the network and passes temporary ownership from computer to computer on the network.

Claims (34)

1. An appliance for sharing block level data among a plurality of computers with each said computer being equipped for initiating discovery commands, transferring data with removable block devices and transferring data with non-removable block devices, said appliance comprising:

a non-removable device for storing the block level data;

processing circuitry coupled with said non-removable device for receiving a discovery command from a said computer and forwarding said discovery command to said non-removable device, said discovery command including an inquiry as to the removability of said non-removable device;

processing circuitry coupled with said non-removable device for receiving a response from the non-removable device, the received response including a value identifying said non-removable device as a non-removable device, and modifying the value included in the response, the modified value identifying said non-removable device as a removable device;

processing circuitry for sending the modified response including said value identifying said non-removable device as a removable device to the said computer; and

processing circuitry coupled with said non-removable device for receiving read/write commands from each said computer and controlling access to said non-removable device among said plurality of computers to allow sequential processing of said received read/write commands by said non-removable device, said read/write commands identifying data to be accessed via said non-removable device.

2. An appliance as recited in claim 1 wherein said non-removable block level storage device is a hard drive.

3. An appliance as recited in claim 1 wherein said non-removable block level storage device is a RAID.

4. An appliance as recited in claim 1 wherein said discovery commands and said read/write commands are iSCSI protocol commands.

5. An appliance as recited in claim 1 wherein said discovery commands and said read/write commands are Fibre Channel protocol commands.

6. An appliance as recited in claim 1 wherein a Mutex program object is used to control access to said non-removable device.

7. An apparatus for sharing block data over a network, wherein the apparatus comprises:

a non-removable device for storing the block data;

processing circuitry for receiving a discovery command initiated by one or more of a plurality of computers, said plurality of computers comprising at least one application server and at least one backup server, said discovery command including an inquiry as to the removability of said non-removable device;

processing circuitry for forwarding the discovery command to the non-removable device;

processing circuitry for receiving a response to the discovery command from the non-removable device, the response including a value identifying said non-removable device as a non-removable device;

processing circuitry for modifying the value included in the response, the modified value identifying said non-removable device as a removable device;

processing circuitry for sending the response including the modified value to the one or more of the plurality of computers, said modified value identifying said non-removable device as a removable device;

processing circuitry for transferring block data stored on said at least one application server to said apparatus, wherein said at least one application server acts as owner of said non-removable media device during said transfer;

processing circuitry for transferring said block data stored on said apparatus to said at least one backup server, wherein said at least one backup server acts as owner of said non-removable media device during said transfer.

8. The apparatus as recited in claim 7 wherein said non-removable block level storage device comprises a hard drive.

9. The apparatus as recited in claim 7 wherein said non-removable block level storage device comprises a RAID.

10. The apparatus as recited in claim 7 wherein said discovery command comprises an iSCSI protocol command.

11. The apparatus as recited in claim 7 wherein said discovery command comprises a Fibre Channel protocol command.

12. The apparatus as recited in claim 7 wherein said transferring of block data uses a Mutex program object.

13. A method for sharing block data over a network, wherein the method comprises:

receiving, at an apparatus, a discovery command initiated by one or more of a plurality of computers, said plurality of computers comprising at least one application server and at least one backup server, said discovery command including an inquiry as to the removability of said non-removable device;

forwarding the discovery command to a non-removable media device;

receiving a response to the discovery command from the non-removable media device, the response including a value identifying said non-removable media device as a non-removable media device;

modifying, with said apparatus, the value included in the response to identify said non-removable media device as a removable media device;

sending the modified response to the one or more of the plurality of computers, said response modified identifying said non-removable media device as a removable media device;

allowing said at least one application server to act as owner of said non-removable media device during a transfer of block data stored on at least one application server for storage on said non-removable media device; and

allowing said at least one backup server to act as owner of said non-removable media device during a transfer of said block data stored on said non-removable media device to said at least one backup server.

14. The appliance of claim 1 , wherein modifying the value included in the response comprises setting a bit included in the response indicating said non-removable device is a removable device.

Assignments (6)
SECURITY INTEREST Recorded Nov 2, 2020
From: OVERLAND STORAGE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 054237/0284 →
SECURITY INTEREST Recorded Oct 10, 2019
From: OVERLAND STORAGE, INC.; OVERLAND TECHNOLOGIES LUXEMBOURG S.À R.L.; TANDBERG DATA HOLDINGS S.À R.L.
To: JMB CAPITAL PARTNERS LENDING, LLC
Reel/Frame 050681/0213 →
SECURITY INTEREST Recorded Jun 20, 2017
From: OVERLAND STORAGE, INC.; SPHERE 3D CORP.; SPHERE 3D INC.; V3 SYSTEMS HOLDINGS, INC.
To: OPUS BANK
Reel/Frame 042921/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2015
From: MATZE, JOHN E. G.; REIDER, MICHAEL H.
To: OKAPI SOFTWARE, INC.
Reel/Frame 036146/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2015
From: OKAPI ACQUISITION CO., INC.
To: OVERLAND STORAGE, INC.
Reel/Frame 036146/0868 →
MERGER Recorded Jul 21, 2015
From: OKAPI SOFTWARE, INC.
To: OKAPI ACQUISITION CO., INC.
Reel/Frame 036149/0081 →