Claims
- 1. A method of allocating resources associated with a storage system, the method comprising:
specifying a first set of network connections from the storage system to one or more networks; specifying a first set of storage resources within the storage system; and associating the first set of network connections and the first set of storage resources to define a first secure virtual storage domain (SVSD), the associating including:
configuring a network layer to forward requests from the specified first set of network connections only to the specified first set of storage resources; and configuring the first set of storage resources to accept requests only from the first set of specified network connections; so that the storage system is configured to restrict client users of the first SVSD to only the first set of network connections and first set of storage resources which have been allocated to the first SVSD, and prevent use of network connections and storage resources other than those allocated to the first SVSD.
- 2. The method of claim 1 further comprising:
specifying a second set of network connections from the storage system to one or more networks; specifying a second set of storage resources within the storage system; and associating the second set of network connections and the second set of storage resources to define a second SVSD, the associating including:
configuring a network layer to forward requests from the specified second set of network connections only to the specified second set of storage resources; and configuring the second set of storage resources to accept requests only from the second set of specified network connections; so that the storage system is configured to restrict client users of the second SVSD to only the second set of network connections and second set of storage resources which have been allocated to the second SVSD, and prevent use of network connections and storage resources other than those allocated to the second SVSD.
- 3. The method of claim 1 wherein access to the first SVSD can be specified at selected network levels including any of IP subnet and individual devices.
- 4. The method of claim 1, wherein network connection and storage network resources can be added to the first SVSD after configuration, without interruption of service.
- 5. In a network comprising at least first and second physical file system servers and a switch element operable to (1) communicate with the servers and (2) provide clients access to data stored on the servers, a method of defining secure virtual storage domains (SVSDs), the method comprising:
providing, within the switch element,
a first configurable set of processor elements to process storage resource connection requests, a second configurable set of processor elements capable of communications with the first configurable set of processor elements to receive, from the first configurable set of processor elements, storage resource connection requests representative of client requests, and to route the requests to external storage devices, and a configurable switching fabric interconnected between the first and second sets of processor elements, for
receiving at least a first storage resource connection request from one of the first set of processor elements, determining an appropriate one of the second set of processors for processing the storage resource connection request, automatically configuring the storage resource connection request in accordance with a protocol utilized by the selected one of the second set of processors, and forwarding the request for storage resource connection to the selected one of the second set of processors for routing to external storage devices, specifying, in the switch element, a first set of network connections from at least one server to one or more networks accessible by one or more clients; specifying a first set of storage resources within at least one server; and associating, in the switch element, the first set of network connections and the first set of storage resources to define a first secure virtual storage domain (SVSD), the associating including:
configuring a network layer to forward requests from the specified first set of network connections only to the specified first set of storage resources; and configuring the first set of storage resources to accept requests only from the first set of specified network connections; so that access to the storage servers is configured to restrict clients using the first SVSD to only the first set of network connections and first set of storage resources, which have been allocated to the first SVSD, and prevent use of network connections and storage resources other than those allocated to the first SVSD.
- 6. The method of claim 5 further comprising:
selectively grouping together storage resources on the first and second storage servers and presenting them to clients as a single virtual server.
- 7. The method of claim 6 further comprising:
configuring the virtual server for redundant data storage access.
- 8. The method of claim 7 further comprising:
providing, within the switch element, a load balancing function operable to (1) receive requests from clients to the virtual server and (2) transmit the requests to selected storage resources of the SVSD in accordance with information associated with the requests.
- 9. The method of claim 8 wherein the transmitting includes:
transmitting write requests to all servers in the SVSD; and transmitting read requests to selected servers in the SVSD based on a selected load balancing algorithm.
- 10. The method of claim 9 wherein the load balancing algorithm is any of least recently used, least heavily loaded, and round robin.
- 11. The method of claim 9 wherein:
if a storage server becomes unavailable, a copy of data stored thereon is accessible from at least one other storage servers in the virtual server group.
- 12. The method of claim 11 wherein:
if another or previously unavailable storage server becomes available, the switch element (1) updates file systems on the newly available server and (2) adds the server to the virtual server group.
- 13. The method of claim 5 wherein the configuring further comprises:
specifying at least one URL and at least one virtual IP address to be used by clients to address the SVSD; specifying a list of IP addresses of the physical servers that provide data for the SVSD; and configuring the switch element to load balance across the physical servers associated with the SVSD.
- 14. The method of claim 13 further comprising:
configuring IP subnet/mask pairs for devices included in the SVSD, thereby to create a route table for the SVSD.
- 15. The method of claim 13 further comprising:
assigning to the switch element an IP address from a subnet/mask pair; or, configuring received IP and ARP packets to contain a source IP address equal to one of the virtual IP addresses of the SVSD.
- 16. The method of claim 15 further comprising:
performing network address translation (NAT) on packets sent to a virtual IP address in the SVSD, the NAT resulting in any of a destination IP address of the packet, or a destination TCP/UDP port, being changed to that of the associated physical server.
- 17. The method of claim 16 wherein:
performing NAT includes configuring the load balancing function to select a physical server to which to transmit the packet.
- 18. The method of claim 17 further comprising:
performing NAT on a response packet from the associated physical server, to change any of a source IP address of the packet, or a source TCP/UDP port, to that of the SVSD.
- 19. The method of claim 18 further comprising:
configuring the SVSD to include a virtual LAN (VLAN).
- 20. The method of claim 19 wherein the VLAN includes a set of ports associated with the respective SVSD.
- 21. The method of claim 20 wherein at least one port is a server port operable to connect to a physical server that provides data for the SVSD.
- 22. The method of claim 21 wherein the server port is connected to a single physical server.
- 23. The method of claim 21 wherein the server port is connected to multiple servers.
- 24. The method of claim 21 further comprising:
classifying a packet received on a server port to a VLAN of an SVSD, the classifying including:
determining the VLAN of the port if the port is part of a single VLAN; matching the packet's destination IP address and TCP/UDP port number to the source of an associated data flow; and matching the destination IP address to one of the virtual IP addresses of the configured SVSD.
- 25. The method of claim 24 wherein different IP subnets are used for all devices on the VLANs to which the port connects.
- 26. The method of claim 21 further comprising:
determining a physical port connected to a given server by issuing an address resolution protocol (ARP) request to the IP address of the server.
- 27. The method of claim 26 wherein the determining further includes:
determining a MAC address of the port connected to the server by issuing an ARP request to the IP address of the server.
- 28. A system of allocating resources associated with a storage system, the method comprising:
means for specifying a first set of network connections from the storage system to one or more networks; means for specifying a first set of storage resources within the storage system; and means for associating the first set of network connections and the first set of storage resources to define a first secure virtual storage domain (SVSD), the associating including:
means for configuring a network layer to forward requests from the specified first set of network connections only to the specified first set of storage resources; and means for configuring the first set of storage resources to accept requests only from the first set of specified network connections; so that the storage system is configured to restrict client users of the first SVSD to only the first set of network connections and first set of storage resources which have been allocated to the first SVSD, and prevent use of network connections and storage resources other than those allocated to the first SVSD.
INCORPORATION BY REFERENCE/PRIORITY CLAIM
[0001] Commonly owned U.S. provisional application for patent Serial No. 60/245,295 filed Nov. 2, 2000, incorporated by reference herein; and
[0002] Commonly owned U.S. provisional application for patent Serial No. 60/301,378 filed Jun. 27, 2001, incorporated by reference herein.
[0003] Additional publications are incorporated by reference herein as set forth below.
PCT Information
Filing Document |
Filing Date |
Country |
Kind |
PCT/US01/46272 |
11/2/2001 |
WO |
|