Claims
- 1. A method for use in a storage network, the storage network including at least one initiator and at least one storage device, the method comprising:
providing quality of service to the initiator for accessing the storage device in the storage network.
- 2. The method of claim 1, wherein:
the storage network further includes a switch; the initiator and the storage device are both in communication with the switch; and the switch performs the step of providing quality of service in the storage network.
- 3. The method of claim 1, wherein the step of providing quality of service includes controlling the number of packets from the initiator to the storage device.
- 4. The method of claim 1, wherein the step of providing quality of service includes controlling the number of requests from the initiator to the storage device.
- 5. The method of claim 1, wherein the step of providing quality of service includes adjusting a number of concurrent requests allowed to be sent by the initiator.
- 6. The method of claim 1, wherein the step of providing quality of service includes adjusting the number of requests allowed the initiator to keep the bandwidth utilized by the initiator within a specified range.
- 7. The method of claim 1, wherein the step of providing quality of service includes:
guaranteeing a minimum bandwidth to the initiator to access the storage device; measuring an actual bandwidth utilized by the initiator, where the actual bandwidth is measured by a number of requests per second times an average size of requests from the initiator; and adjusting a number of concurrent requests allowed to be sent by the initiator.
- 8. The method of claim 7, further including:
guaranteeing up to a maximum bandwidth to the initiator to access the storage device; wherein adjusting the number of concurrent requests includes reducing the number of concurrent requests allowed by the initiator when the actual bandwidth exceeds the maximum bandwidth.
- 9. A method for use in a storage network, the storage network including at least one initiator, at least one storage device, and at least one switch, wherein the initiator and the storage device are both in communication with the switch, the method comprising:
guaranteeing, by the switch, a minimum bandwidth to the initiator to access the storage device in the storage network; measuring, by the switch, the actual bandwidth utilized by the initiator, where the actual bandwidth is measured by a number of requests per second times an average size of requests from the initiator.
- 10. The method of claim 9, further comprising:
adjusting a number of concurrent requests allowed to be sent by the initiator.
- 11. The method of claim 10, wherein the step of adjusting includes:
reducing the number of concurrent requests allowed to be sent by the initiator.
- 12. The method of claim 10, wherein the step of adjusting includes:
increasing the number of concurrent requests allowed to be sent by the initiator.
- 13. The method of claim 9, further including guaranteeing, by the switch up to a maximum bandwidth to the initiator to access the storage device.
- 14. The method of claim 13, further including:
reducing the number of concurrent requests allowed by the initiator when the actual bandwidth exceeds its maximum bandwidth.
- 15. The method of claim 9, wherein measuring the actual bandwidth includes determining if a buffer includes a number of packets beyond a specified threshold.
- 16. A method for use in a storage network, the storage network including a plurality of initiators, a plurality of targets, and at least one switch, the method comprising:
guaranteeing, by the switch, a respective minimum bandwidth for each of a plurality of connections, wherein each respective connection is a connection from a respective initiator to a respective target via the switch in the storage network; monitoring, by the switch, an actual bandwidth utilized by each initiator, where the actual bandwidth is measured by a number of requests per second from the initiator times an average size of the requests from the initiator; determining if the actual bandwidth used by one initiator is excessive, and, if excessive, adjusting, by the switch, a number of allowed concurrent requests for at least one initiator.
- 17. The method of claim 16, wherein monitoring the actual bandwidth includes determining if a buffer includes a number of packets beyond a specified threshold.
- 18. The method of claim 16, wherein adjusting a number of allowed concurrent requests includes reducing the number of allowed concurrent requests to the one initiator that is using excessive bandwidth.
- 19. The method of claim 18, wherein adjusting a number of allowed concurrent requests includes increasing the number of allowed concurrent requests to another initiator.
- 20. The method of claim 16, wherein the targets are virtual targets.
- 21. The method of claim 16, further including guaranteeing, by the switch, up to a respective maximum bandwidth for each of the plurality of connections, wherein determining if the actual bandwidth used by one initiator is excessive includes determining if the one initiator has exceeded its maximum bandwidth.
- 22. A method for use in a storage network, the storage network including at least one initiator, at least one storage device, and at least one switch, wherein the initiator and the storage device are both in communication with the switch, the method comprising:
providing a connection from the initiator to the storage device via the switch in the storage network; and adjusting, by the switch, the number of requests allowed the initiator to keep the bandwidth utilized by the initiator within a specified range.
- 23. The method of claim 22, wherein bandwidth is defined by a number of requests per second from the initiator times an average size of the requests from the initiator.
- 24. The method of claim 22, wherein the number of requests allowed the initiator is the number of concurrent requests allowed the initiator.
- 25. A switch for use in a storage network comprising:
a port to be coupled to an external device, wherein the external device includes at least one of an initiator and a storage device; a bandwidth controller.
- 26. The switch of claim 25, wherein the bandwidth controller includes:
a processor; a traffic manager; and a buffer.
- 27. The switch of claim 26, wherein the processor is a storage processor.
- 28. The switch of claim 25, wherein the port and the bandwidth controller are on one of a plurality of linecards in the switch, wherein each linecard includes a respective port and a respective bandwidth controller.
- 29. The switch of claim 25, wherein bandwidth is defined by a number of requests per second times an average size of the requests.
- 30. A switch, including:
a storage processor, including a request controller; a traffic manager in communication with the storage processor; a buffer in communication with the traffic manager; wherein if a specified threshold in the buffer is reached, the traffic manager is designed to activate the request controller.
- 31. The switch of claim 30, wherein the request controller is designed to adjust the number of requests allowed an initiator to keep the bandwidth utilized by the initiator within a specified range.
- 32. The switch of claim 31, wherein bandwidth is defined by a number of requests per second times an average size of the requests.
- 33. A switch for use in a storage network comprising:
a port to be coupled to an external device, wherein the external device includes at least one of an initiator and a storage device; means for providing quality of service for a connection from the initiator to the storage device in the storage network.
- 34. The switch of claim 33, wherein means for providing quality of service includes:
means for guaranteeing a minimum bandwidth to an initiator to access a storage device; means for measuring an actual bandwidth utilized by the initiator, where the actual bandwidth is measured by the number of requests per second times the average size of the requests from the initiator; and means for adjusting the number of concurrent requests allowed to be sent by the initiator to keep the bandwidth utilized by the initiator within a specified range having as a lower limit the minimum bandwidth.
- 35. The switch of claim 33, wherein means for providing quality of service includes:
a processor; a traffic manager; and a buffer.
- 36. The switch of claim 35, wherein the processor is a storage processor.
- 37. A storage network, including:
an initiator; a storage device; a switch in communication with the initiator and the storage device; wherein the switch includes a traffic manager in communication with a buffer; wherein when the buffer includes a number of packets from the initiator that exceeds a specified threshold, then the switch is designed to notify the initiator to reduce a number of concurrent requests.
- 38. A machine readable media which has instructions stored thereon, which when executed by a switch in a storage network causes the switch to perform the following steps:
guaranteeing, by the switch, a minimum bandwidth to an initiator to access a storage device in the storage network; measuring, by the switch, the actual bandwidth utilized by the initiator, where the actual bandwidth is measured by a number of requests per second times an average size of requests from the initiator.
- 39. The machine readable media of claim 38, further including instructions for performing the step of:
adjusting a number of concurrent requests allowed to be sent by the initiator.
- 40. The machine readable media of claim 39, wherein the step of adjusting includes:
reducing the number of concurrent requests allowed to be sent by the initiator.
- 41. The machine readable media of claim 39, wherein the step of adjusting includes:
increasing the number of concurrent requests allowed to be sent by the initiator.
- 42. The machine readable media of claim 38, further including instructions for performing the step of:
guaranteeing, by the switch, up to a maximum bandwidth to the initiator to access the storage device.
- 43. The machine readable media of claim 42, further including instructions for performing the step of:
reducing the number of concurrent requests allowed by the initiator when it exceeds its maximum bandwidth.
- 44. The machine readable media of claim 38, wherein measuring the actual bandwidth includes determining if a buffer includes a number of packets beyond a specified threshold.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to Provisional Application Serial No. 60/325,704, entitled STORAGE SWITCH FOR STORAGE AREA NETWORK, and filed Sep. 28, 2001, and incorporated by reference herein.
[0002] This application is also related to the following applications, all filed concurrently herewith and all incorporated herein by reference:
[0003] STORAGE SWITCH FOR STORAGE AREA NETWORK, Ser. No. ______ [atty. dkt. No. MARA-01000US1];
[0004] PROTOCOL TRANSLATION IN A STORAGE SYSTEM, Ser. No. ______ [atty. dkt. No. MARA-01001US0];
[0005] SERVERLESS STORAGE SERVICES, Ser. No. ______ [atty. dkt. No. MARA-01002US0];
[0006] PACKET CLASSIFICATION IN A STORAGE SYSTEM, Ser. No. ______ [atty. dkt. No. MARA-01003US0];
[0007] VIRTUALIZATION IN A STORAGE SYSTEM, Ser. No. ______ [atty. dkt. No. MARA-01005US0];
[0008] POOLING AND PROVISIONING STORAGE RESOURCES IN A STORAGE NETWORK, Ser. No. ______ [atty. dkt. No. MARA-01007US0]; and
[0009] LOAD BALANCING IN A STORAGE NETWORK, Ser. No. ______ [atty. dkt. No. MARA-01008US0].
Provisional Applications (1)
|
Number |
Date |
Country |
|
60325704 |
Sep 2001 |
US |