Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for sending Fibre Channel data frames through a Fibre Channel switch, the Fibre Channel switch comprising a plurality of small switches, the Fibre Channel data frames having a source and a destination, the destination being used for routing the Fibre Channel data frame, comprising: receiving the Fibre Channel data frame from the source at a first small switch; choosing a first virtual channel from a set of possible virtual channels, each virtual channel of the set of possible virtual channels being available for use with general data flow; providing information in addition to the Fibre Channel data frame to identify the first virtual channel; and sending the Fibre Channel data frame and the additional information identifying the first virtual channel from the first small switch to a second small switch, wherein: the additional information identifying the first virtual channel is included in an inter-frame fill word; and the inter-frame fill word is sent from the first small switch to the second small switch prior to the Fibre Channel data frame.
2. A method for sending Fibre Channel data frames through a Fibre Channel switch, the Fibre Channel switch comprising a plurality of small switches, the Fibre Channel data frames having a source and a destination, the destination being used for routing the Fibre Channel data frame, comprising: receiving the Fibre Channel data frame from the source at a first small switch; choosing a first virtual channel from a set of possible virtual channels, each virtual channel of the set of possible virtual channels being available for use with general data flow; providing information in addition to the Fibre Channel data frame to identify the first virtual channel; and sending the Fibre Channel data frame and the additional information identifying the first virtual channel from the first small switch to a second small switch, wherein: the first small switch has a set of source ports capable of connecting to external devices; the Fibre Channel data frame is received at the first small switch from the source through a first source port of the set of external ports; and the first virtual channel is chosen from the set of possible virtual channels based on the identity of the first source port.
3. The method of claim 2 , wherein: the number of virtual channels in the set of possible virtual channels is equal to or greater than the number of source ports in the set of source ports; each source port is associated with at least one virtual channel from the set of possible virtual channels; and the first virtual channel is associated with the first source port.
4. The method of claim 3 , wherein each virtual channel is associated with no more than one source port.
5. The method of claim 2 , wherein: the number of virtual channels in the set of possible virtual channels is equal to the number of source ports in the set of source ports; each source port is associated with one virtual channel from the set of possible virtual channels; and the first virtual channel is associated with the first source port.
6. The method of claim 2 , further comprising storing the received Fibre Channel data frame in a buffer associated with the first source port.
7. A method for sending Fibre Channel data frames through a Fibre Channel switch, the Fibre Channel switch comprising a plurality of small switches, the Fibre Channel data frames having a source and a destination, the destination being used for routing the Fibre Channel data frame, comprising: receiving the Fibre Channel data frame from the source at a first small switch; choosing a first virtual channel from a set of possible virtual channels, each virtual channel of the set of possible virtual channels being available for use with general data flow; providing information in addition to the Fibre Channel data frame to identify the first virtual channel; sending the Fibre Channel data frame and the additional information identifying the first virtual channel from the first small switch to a second small switch determining the destination of the Fibre Channel data frame; and retrieving an identity of a port from a routing table, the port identity being associated with the destination in the routing table, wherein: the Fibre Channel data frame and the additional information identifying the first virtual channel are sent from the first small switch to the second small switch through the port; the Fibre Channel switch further comprises a processor connected to each of the plurality of small switches; and the processor sends at least one routing table entry to each of the plurality of small switches, each of the small switches storing the entry in the routing table, the entry comprising a destination and a port identity associated with the destination.
8. A method for sending Fibre Channel data frames through a Fibre Channel switch, the Fibre Channel switch comprising a plurality of small switches, the Fibre Channel data frames having a source and a destination, the destination being used for routing the Fibre Channel data frame, comprising: receiving the Fibre Channel data frame from the source at a first small switch; choosing a first virtual channel from a set of possible virtual channels, each virtual channel of the set of possible virtual channels being available for use with general data flow; providing information in addition to the Fibre Channel data frame to identify the first virtual channel; sending the Fibre Channel data frame and the additional information identifying the first virtual channel from the first small switch to a second small switch receiving the Fibre Channel data frame from the first small switch at the second small switch; choosing a second virtual channel from a set of possible virtual channels; providing information in addition to the original Fibre Channel data frame to identify the second virtual channel; and sending the Fibre Channel data frame and the additional information identifying the second virtual channel from the second small switch to a third small switch, wherein: the Fibre Channel switch further comprises a processor connected to each of the plurality of small switches; and the processor sends at least one routing table entry to each of the plurality of small switches, each of the small switches storing the entry in the routing table, the entry comprising a destination and a virtual channel associated with the destination.
9. A Fibre Channel small switch operable to receive and output Fibre Channel data frames using virtual channels, comprising: a plurality of ports including a plurality of source ports capable of connecting to external devices; a plurality of buffers, each buffer being associated with a respective virtual channel; a memory storing an identity of a virtual channel associated with each source port and available for general data flow; and logic operable to determine an identification of a destination of the Fibre Channel data frame and to determine an identification of a virtual channel available for general data flow on which to output received data; and in response to the small switch receiving the Fibre Channel data frame through a first source port of the plurality of source ports, to retrieve a first virtual channel identifier identifying a first virtual channel associated with the first source port from the memory, to provide information in addition to the Fibre Channel data frame to identify the first virtual channel, and to output the Fibre Channel data frame and the additional information identifying the first virtual channel.
10. The small switch of claim 9 , wherein the identification of the virtual channel available for general data flow on which to output received data is determined based on the source of the data.
11. The small switch of claim 9 , wherein the identification of the virtual channel available for general data flow on which to output received Fibre Channel data frames is determined based on the destination of the Fibre Channel data frame.
12. The small switch of claim 9 , wherein the first virtual channel is associated with the first source port.
13. The small switch of claim 9 , wherein the first virtual channel identifier is obtained from a routing table.
14. The small switch of claim 13 , wherein the first virtual channel is associated with a destination of the Fibre Channel data frame.
15. The small switch of claim 13 , wherein: the additional information identifying the first virtual channel is included in an inter-frame fill word; and the inter-frame fill word is output preceding the output of the Fibre Channel data frame.
16. The small switch of claim 13 , the logic further being operable to, in response to receiving the Fibre Channel data frame and determining the identification of a virtual channel used with the received Fibre Channel data frame, storing the Fibre Channel data frame in a buffer associated with the virtual channel.
17. A method for processing a Fibre Channel data frame at a small Fibre Channel switch, the small Fibre Channel switch having a plurality of ports, comprising: receiving the Fibre Channel data frame through a first one of the plurality of ports; determining a virtual channel of a plurality of virtual channels available for general data flow on which the Fibre Channel data frame was received; storing the Fibre Channel data frame in one of a plurality of buffers, the buffer being associated with the virtual channel on which the Fibre Channel data frame was received; determining an identity of a destination of the Fibre Channel data frame; determining which port to output the Fibre Channel data frame through; determining an identity of a virtual channel to output the Fibre Channel data frame on; providing information in addition to the original Fibre Channel data frame that identifies the virtual channel on which the Fibre Channel data frame is output; and outputting the Fibre Channel data frame and the additional information through the determined port.
18. The method of claim 17 , wherein the small Fibre Channel switch is within a larger Fibre Channel switch, the larger Fibre Channel switch comprising a plurality of small Fibre Channel switches.
19. The method of claim 18 , wherein the larger Fibre Channel switch further comprises a processor connected to each of the plurality of small Fibre Channel switches.
20. The method of claim 17 , wherein the buffer is further associated with the port through which the Fibre Channel data frame was received.
21. The method of claim 17 , wherein determining the identity of the virtual channel used to output the Fibre Channel data frame comprises retrieving the identity of the virtual channel from an inter-frame fill word received by the small Fibre Channel switch prior to receiving the Fibre Channel data frame.
22. The method of claim 17 , wherein the identity of the virtual channel to output the Fibre Channel data frame on is determined based on the source of the Fibre Channel data frame.
23. The method of claim 17 , wherein the identity of the virtual channel to output the Fibre Channel data frame on is determined based on the destination of the Fibre Channel data frame.
24. The method of claim 17 , wherein determining through which port to output the Fibre Channel data frame comprises retrieving the identity of the port associated with the identity of the destination of the Fibre Channel data frame from a routing table stored in a memory of the small switch.
25. The method of claim 17 , wherein determining the identity of the virtual channel to output the Fibre Channel data frame on comprises retrieving the identity of the virtual channel associated with the identity of the destination of the Fibre Channel data frame from a routing table stored in a memory of the small switch.
26. The method of claim 25 , wherein the small Fibre Channel switch is within a larger Fibre Channel switch, the larger Fibre Channel switch comprising a plurality of small Fibre Channel switches.
27. The method of claim 26 , wherein the larger Fibre Channel switch further comprises a processor connected to each of the plurality of small Fibre Channel switches.
28. The method of claim 27 , further comprising: sending a routing table entry from the processor to the small Fibre Channel switch, the entry comprising the destination and a virtual channel identity associated with the destination; and storing the routing table entry in the routing table stored in the memory of the small Fibre Channel switch.
29. The method of claim 17 , wherein: the additional information that identifies the virtual channel on which the Fibre Channel data frame is output comprises including the identity of the virtual channel to an inter-frame fill word associated with the Fibre Channel data frame; and outputting the Fibre Channel data frame and the additional information through the determined port comprises outputting the inter-frame fill word and then outputting the Fibre Channel data frame.
30. A Fibre Channel switch operable to receive and output Fibre Channel data frames using virtual channels, comprising: a plurality of small switches, each small switch comprising: a memory; and a plurality of ports including a plurality of external ports for connection to external devices and a plurality of internal ports for connection to other small switches; a plurality of buffers, each buffer being associated with a respective virtual channel; a memory storing an identity of a virtual channel associated with each external port and available for general data flow; and logic operable to determine an identification of a destination of the Fibre Channel data frame and to determine an identification of a virtual channel on which to output received Fibre Channel data frame; and a processor connected to each of the plurality of small switches; wherein each small switch is connected to a subset of the plurality of small switches via internal ports.
31. The small switch of claim 30 , wherein the processor sends at least one routing table entry to each of the plurality of small switches, each of the small switches storing the entry in the routing table, the entry comprising a destination and a virtual channel associated with the destination.
32. The method of claim 30 , wherein the identification of the virtual channel available for general data flow on which to output received Fibre Channel data frame is determined based on the source of the Fibre Channel data frame.
33. The method of claim 30 , wherein the identification of the virtual channel available for general data flow on which to output received Fibre Channel data frame is determined based on the destination of the Fibre Channel data frame.
34. A Fibre Channel switch operable to receive and output Fibre Channel data frames using virtual channels, the switch comprising: a plurality of ports including a plurality of source ports for coupling to external devices to receive Fibre Channel data frames from the external devices; a plurality of buffers, each buffer being associated with a respective virtual channel; and logic operable to determine an identification of a destination of the Fibre Channel data frames for routing purposes based on the destination address of the Fibre Channel data frame, to determine an identification of a virtual channel available for general data flow on which to output received Fibre Channel data frames, the determination of the virtual channel based on the source port receiving the Fibre Channel data frames, and to direct the received Fibre Channel data frame to the buffer associated with the identified virtual channel.
35. The switch of claim 34 , further comprising: a memory storing an identity of the virtual channel associated with each source port and available for general data flows.
36. The switch of claim 34 , wherein the plurality of ports further includes a plurality of output ports for outputting Fibre Channel data frames, wherein each buffer is further associated with an output port so that the plurality of buffers is organized with buffers for each virtual channel being associated with each output port, and wherein the logic directs the received Fibre Channel data frame to a buffer associated with the identified virtual channel and with the output port, which is determined based on an output port routing determination from the identified destination of the Fibre Channel data frame.
37. The switch of claim 36 , wherein the logic includes a routing table for each source port and wherein the routing table indicates the virtual channel and output port for the Fibre Channel data frame.
38. A Fibre Channel switch for switching Fibre Channel data frames, the switch comprising: a first small Fibre Channel switch; and a second small Fibre Channel switch coupled to the first small Fibre Channel switch, wherein each small Fibre Channel switch includes: a plurality of ports including a plurality of external ports for coupling to external devices and a plurality of internal ports for connection to a small Fibre Channel switch; a plurality of buffers, each buffer associated with a respective virtual channel; and logic operable to determine an identification of a destination of a Fibre Channel data frame for routing purposes based on the destination address of the Fibre Channel data frame and to determine an identification of a virtual channel available for general data flow to apply to received Fibre Channel data frames, wherein the identification of the virtual channel can be done by one of at least two bases, wherein the first small Fibre Channel switch uses a first basis to identify the virtual channel and the second small Fibre Channel switch uses a second, different basis to identify the virtual channel, wherein the first basis to identify the virtual channel utilizes the external port which receives the Fibre Channel data frame; and wherein the second basis to identify the virtual channel utilizes the external port which transmits the Fibre Channel data frame.
39. A Fibre Channel switch for switching Fibre Channel data frames, the switch comprising: a first small Fibre Channel switch; and a second small Fibre Channel switch coupled to the first small Fibre Channel switch, wherein each small Fibre Channel switch includes: a plurality of ports including a plurality of external ports for coupling to external devices and a plurality of internal ports for connection to a small Fibre Channel switch; a plurality of buffers, each buffer associated with a respective virtual channel; and logic operable to determine an identification of a destination of a Fibre Channel data frame for routing purposes based on the destination address of the Fibre Channel data frame and to determine an identification of a virtual channel available for general data flow to apply to received Fibre Channel data frames, wherein the identification of the virtual channel can be done by one of at least two bases, wherein the first small Fibre Channel switch uses a first basis to identify the virtual channel and the second small Fibre Channel switch uses a second, different basis to identify the virtual channel, wherein each buffer is further associated with an external port so that the plurality of buffers is organized with buffers for each virtual channel being associated with each external port, and wherein the logic directs the received Fibre Channel data frame to a buffer associated with the identified virtual channel and with the output external port, which is determined based on an output port routing determination from the identified destination of the Fibre Channel data frame.
40. The switch of claim 39 , wherein the logic includes a routing table for each external port and wherein the routing table indicates the virtual channel and output port for the Fibre Channel data frame.
Unknown
July 3, 2007
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.