IP Library Granted Patent US 9,811,463
Granted Patent B2
US 9,811,463 · App. 15/440,277 · Granted Nov 7, 2017

Apparatus including an I/O interface and a network interface and related method of use

Inventor: Ilya Gertner (Long Beach, CA)
Assignee: LS CLOUD STORAGE TECHNOLOGIES, LLC
G06F12/0808G06F3/065G06F3/067G06F3/0619G06F3/0635G06F12/128G06F2212/621G06F2212/69H04L67/1097
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,811,463
App. No.
15/440,277
Granted
Nov 7, 2017
Kind
B2
Abstract

An apparatus includes interface configured to receive input/output (I/O) traffic from a host computer via a dedicated I/O channel. The I/O traffic includes one or more I/O requests. The apparatus includes a network interface configured to receive network traffic from a second device via a network. The apparatus includes a cache memory configured to store data and a storage device configured to store second data. The apparatus further includes a processor coupled via a communication path to the storage device. The processor is configured to access the cache memory during processing of the I/O traffic or the network traffic. The processor is further configured to perform one or more access operations at the storage device based on the I/O traffic or the network traffic. The communication path is distinct from the I/O channel.

Claims (62)

1. An apparatus comprising:

an interface configured to receive input/output (I/O) traffic from a host computer via a dedicated I/O channel, the I/O traffic comprising one or more read commands, one or more write commands, or a combination thereof;

a network interface configured to receive network traffic from a second device via a network;

a cache memory configured to store data;

a storage device configured to store second data; and

a processor coupled via a communication path to the storage device, the processor configured to access the cache memory during processing of the I/O traffic, the processor further configured to perform one or more access operations at the storage device based on the I/O traffic, wherein the communication path is distinct from the dedicated I/O channel.

2. The apparatus of claim 1 , wherein the dedicated I/O channel is associated with dedicated throughput that corresponds to the I/O traffic.

3. The apparatus of claim 1 , wherein the I/O traffic is distinct from the network traffic.

4. The apparatus of claim 1 , wherein the dedicated I/O channel comprises a small computer system interface (SCSI) channel.

5. The apparatus of claim 1 , wherein the network interface comprises an Ethernet interface.

6. The apparatus of claim 1 , wherein the network interface comprises an asynchronous transfer mode (ATM) interface.

7. The apparatus of claim 1 , wherein the network traffic comprises one or more read requests, one or more write requests, or a combination thereof.

8. The apparatus of claim 1 , wherein the network comprises a plurality of interconnected computing devices that includes the second device.

9. The apparatus of claim 1 , wherein the storage device and the dedicated I/O channel are independently accessible.

10. The apparatus of claim 1 , wherein the processor is further configured to store first data associated with a write request at the cache memory.

11. The apparatus of claim 10 , wherein the processor is configured to read second data from the cache memory and to initiate transmission of the second data to the second device.

12. The apparatus of claim 1 , wherein the processor is further configured, based on an I/O request included in the I/O traffic, to route the I/O request to the cache memory or to the storage device.

13. The apparatus of claim 1 , further comprising:

configuration manager circuitry configured to route an I/O request included in the I/O traffic to the cache memory, to route the I/O request to the storage device, or to deny the I/O request;

front-end circuitry configured to process the I/O request; and

back-end circuitry configured to perform a read operation or a write operation at the storage device based on the I/O request.

14. A method comprising:

receiving input/output (I/O) traffic from a host computer via a dedicated I/O channel at an interface, the I/O traffic comprising one or more read commands, one or more write commands, or a combination thereof;

receiving network traffic from a second device via a network at a network interface;

storing data at a cache memory;

storing second data at a storage device;

accessing the cache memory during processing of the I/O traffic; and

performing one or more access operations at the storage device via a communication path between a processor and the storage device, the communication path distinct from the dedicated I/O channel, wherein the one or more access operations are based on the I/O traffic.

15. The method of claim 14 , further comprising providing concurrent data access to the host computer and to the second device.

16. The method of claim 14 , wherein the I/O traffic is distinct from the network traffic.

17. The method of claim 14 , further comprising performing a first access operation at the storage device independently of the dedicated I/O channel.

18. The method of claim 14 , wherein the data is written at the cache memory in response to a write request included in the I/O traffic or the network traffic.

19. The method of claim 14 , further comprising:

reading at least a portion of the data from the cache memory; and

transmitting the at least a portion of the data via the network interface to the second device.

20. The method of claim 14 , further comprising performing one or more actions to maintain consistency of the data stored at the cache memory with corresponding data stored at a second cache memory of a third device that is accessible via the network.

21. The method of claim 14 , further comprising:

receiving a read request via the network from a third device; and

transmitting at least a portion of the data from the cache memory via the network to the third device responsive to the read request being associated with a cache hit.

22. The method of claim 14 , further comprising:

storing third data at the cache memory, the third data indicated by a first write command received at the I/O interface from the host computer; and

storing fourth data at the cache memory, the fourth data indicated by a second write command received at the network interface from the second device.

23. The method of claim 14 , further comprising receiving an invalidation request at the network interface from a third device.

24. An apparatus comprising:

means for receiving input/output (I/O) traffic from a host computer via a dedicated I/O channel, the I/O traffic comprising one or more read commands, one or more write commands, or a combination thereof;

means for receiving network traffic from a second device via a network;

means for short-term data storage;

means for long-term data storage;

means for accessing the means for long-term data storage, the means for accessing distinct from the dedicated I/O channel; and

means for performing one or more access operations at the means for short-term data storage during processing of the I/O traffic and for performing one or more access operations at the means for long-term data storage via the means for accessing, wherein the one or more access operations are based on the I/O traffic.

25. The apparatus of claim 24 , wherein the dedicated I/O channel is associated with dedicated throughput that corresponds to the I/O traffic, and wherein the I/O traffic is distinct from the network traffic.

26. The apparatus of claim 24 , wherein the network comprises a plurality of interconnected computing devices, and wherein the network traffic comprises one or more read requests, one or more write requests, or a combination thereof.

27. The apparatus of claim 24 , wherein the means for receiving I/O traffic comprises an I/O interface, wherein the means for receiving network traffic comprises a network interface, wherein the means for short-term data storage comprises a cache memory, wherein the means for long-term data storage comprises a storage device, wherein the means for accessing comprises a communication channel, and wherein the means for performing one or more access operations comprises a processor.

28. A non-transitory, computer readable medium storing instructions that, when executed by a processor, cause the processor to perform operations comprising:

receiving input/output (I/O) traffic from a host computer via a dedicated I/O channel, the I/O traffic comprising one or more read commands, one or more write commands, or a combination thereof;

receiving network traffic from a second device via a network;

storing data at a cache memory;

storing second data at a storage device;

accessing the cache memory during processing of the I/O traffic; and

performing one or more access operations at the storage device via a communication path between a processor and the storage device, the communication path distinct from the dedicated I/O channel, wherein the one or more access operations are based on the I/O traffic.

29. The non-transitory, computer readable medium of claim 28 , wherein the operations further comprise providing concurrent data access to the host computer and to the second device, wherein the I/O traffic is received independently of the network traffic.

30. The non-transitory, computer readable medium of claim 28 , wherein at least a portion of the data stored at the cache memory is stored at a second cache memory of a third device that is accessible via the network.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2017
From: GERTNER, ILYA
To: NETWORK DISK, INC.
Reel/Frame 041357/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2017
From: NETWORK DISK, INC.
To: GERTNER, ILYA
Reel/Frame 041357/0698 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2017
From: GERTNER, ILYA
To: SPOT ON CORP.
Reel/Frame 041357/0849 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2017
From: SPOT ON CORP.
To: LS CLOUD STORAGE TECHNOLOGIES, LLC
Reel/Frame 041358/0551 →
Continuity (5)
Continuation 14997327 · Jan 15, 2016
Continuation 13527126 · Jun 19, 2012
Continuation 10382016 · Mar 5, 2003
Division 09236409 · Jan 22, 1999
Related Publication 20170161189A1 · Jun 8, 2017