Hardware-based translating virtualization switch
First Claim
1. A virtualization device for use with at least one host and at least one physical storage unit, the device comprising:
- receive port logic for receiving frames;
a lookup table containing physical storage unit addressing information related to virtualized storage units, frame information extraction logic coupled to said receive port logic to extract frame addressing information;
staging memory coupled to said receive port logic for temporarily holding a received frame;
lookup logic coupled to said lookup table and said frame information extraction logic and using said extracted frame addressing information to retrieve related physical storage unit addressing information;
substitution logic coupled to said lookup logic and said staging memory to retrieve said received frame and substitute said related physical storage unit addressing information into said received frame; and
transmit port logic coupled to said substitution logic to transmit said substituted frame.
7 Assignments
0 Petitions
Accused Products
Abstract
Placing virtualization agents in the switches which comprise the SAN fabric. Higher level virtualization management functions are provided in an external management server. Conventional HBAs can be utilized in the hosts and storage units. In a first embodiment, a series of HBAs are provided in the switch unit. The HBAs connect to bridge chips and memory controllers to place the frame information in dedicated memory. Routine translation of known destinations is done by the HBA, based on a virtualization table provided by a virtualization CPU. If a frame is not in the table, it is provided to the dedicated RAM. Analysis and manipulation of the frame headers is then done by the CPU, with a new entry being made in the HBA table and the modified frames then redirected by the HBA into the fabric. This can be done in either a standalone switch environment or in combination with other switching components located in a director level switch. In an alternative embodiment, specialized hardware scans incoming frames and detects the virtualized frames which need to be redirected. The redirection is then handled by translation of the frame header information by hardware table-based logic and the translated frames are then returned to the fabric. Handling of frames not in the table and setup of hardware tables is done by an onboard CPU.
-
Citations
43 Claims
-
1. A virtualization device for use with at least one host and at least one physical storage unit, the device comprising:
-
receive port logic for receiving frames;
a lookup table containing physical storage unit addressing information related to virtualized storage units, frame information extraction logic coupled to said receive port logic to extract frame addressing information;
staging memory coupled to said receive port logic for temporarily holding a received frame;
lookup logic coupled to said lookup table and said frame information extraction logic and using said extracted frame addressing information to retrieve related physical storage unit addressing information;
substitution logic coupled to said lookup logic and said staging memory to retrieve said received frame and substitute said related physical storage unit addressing information into said received frame; and
transmit port logic coupled to said substitution logic to transmit said substituted frame. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A switched fabric for use with at least one host and at least one physical storage unit, the fabric comprising:
-
a switch for coupling to the at least one host and the at least one physical storage unit; and
a virtualization device coupled to said switch and for coupling to the at least one host and the at least one physical storage unit, said device including;
receive port logic for receiving frames;
a lookup table containing physical storage unit addressing information related to virtualized storage units;
frame information extraction logic coupled to said receive port logic to extract frame addressing information;
staging memory coupled to said receive port logic for temporarily holding a received frame;
lookup logic coupled to said lookup table and said frame information extraction logic and using said extracted frame addressing information to retrieve related physical storage unit addressing information;
substitution logic coupled to said lookup logic and said staging memory to retrieve said received frame and substitute said related physical storage unit addressing information into said received frame; and
transmit port logic coupled to said substitution logic to transmit said substituted frame. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A network comprising:
-
at least one host;
at least one physical storage unit;
a switch coupled to said at least one host and said at least one physical storage unit; and
a virtualization device coupled to said switch, said at least one host and said at least one physical storage unit, said device including;
receive port logic for receiving frames;
a lookup table containing physical storage unit addressing information related to virtualized storage units;
frame information extraction logic coupled to said receive port logic to extract frame addressing information;
staging memory coupled to said receive port logic for temporarily holding a received frame;
lookup logic coupled to said lookup table and said frame information extraction logic and using said extracted frame addressing information to retrieve related physical storage unit addressing information;
substitution logic coupled to said lookup logic and said staging memory to retrieve said received frame and substitute said related physical storage unit addressing information into said received frame; and
transmit port logic coupled to said substitution logic to transmit said substituted frame. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A method for operating a virtualization device for use with at least one host and at least one physical storage unit, the method comprising the steps of:
-
receiving frames at a port;
providing a lookup table containing physical storage unit addressing information related to virtualized storage units, extracting frame addressing information from a received frame;
temporarily holding a received frame;
using said extracted frame addressing information to retrieve related physical storage unit addressing information from the lookup table;
retrieving said received frame and substituting said related physical storage unit addressing information into said received frame; and
transmitting said substituted frame from the port. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43)
-
Specification