Claims
- 1. A method for providing flexibility in configuring a Fibre Channel device in a network, the device having a plurality of Fibre Channel ports, a buffer memory, and a flow control module,
the method comprising: assigning an identifier for a flow path associated with a first logical port on the device and a second logical port on the device and wherein frames flow from the first logical port to the second logical port; receiving a frame in the flow path based on the identifier; and transmitting a frame in the flow path based on the identifier.
- 2. The method as in claim 1, wherein within the flow path, frames flow from the second logical port to the first logical port.
- 3. The method as in claim 1, further comprising:
assigning a second identifier for a second flow path, the second flow path associated with the first logical port and the second logical port on the device, and wherein frames flow from the second logical port to the first logical port.
- 4. The method as in claim 1,
wherein the first logical port is a physical Fibre Channel port.
- 5. The method as in claim 1,
wherein the first logical port is a group of trunked physical Fibre Channel ports.
- 6. The method as in claim 1,
wherein the first logical port is one of a plurality of logical ports that share one physical Fibre Channel port.
- 7. The method as in claim 1,
wherein the second logical port is a physical Fibre Channel port.
- 8. The method as in claim 7,
wherein the first logical port is a group of trunked physical Fibre Channel ports; and wherein each port in the group of trunked physical Fibre Channel ports is slower than the physical Fibre Channel port that constitutes the second logical port.
- 9. The method as in claim 1,
wherein the second logical port is a group of trunked physical Fibre Channel ports.
- 10. The method as in claim 1,
wherein the second logical port is one of a plurality of logical ports that share one physical Fibre Channel port.
- 11. The method as in claim 1, further comprising:
allocating one or more parts of the buffer memory to the flow path identified by the identifier.
- 12. The method as in claim 11, wherein the first logical port includes a plurality of virtual channels;
wherein one or more virtual channels are associated with the flow path, and wherein one or more virtual channels are assigned to one part of the buffer memory.
- 13. The method as in claim 1, further comprising:
setting the identifier for the flow path at the initial ports connection configuration.
- 14. The method as in claim 13, wherein the identifier for the flow path does not change, unless a port associated with the flow path is taken off-line.
- 15. A device for Fibre Channel network, comprising:
a plurality of logical ports; circuitry connecting the plurality of logical ports, the circuitry including at least one flow path between two of logical ports; and a control module coupled to the plurality of logical ports and the circuitry, wherein the control module is operable to assign an identifier for a flow path, in the circuitry wherein the control module is operable to receive frames into and transmit frames out of the flow path identified by the identifier and wherein the circuitry transfers frames in the flow path identified by the identifier.
- 16. The device in claim 15, wherein the plurality of logical ports include a first logical port and a second logical port, wherein the flow path is associated with the first logical port and the second logical port, and wherein frames flow from the first logical port to the second logical port.
- 17. The device in claim 16, wherein frames flow from the second logical port to the first logical port.
- 18. The device in claim 15, wherein the control module is operable to assign a second identifier for a second flow path,
wherein the second flow path is associated with the first logical port and the second logical port, and wherein frames flow from the second logical port to the first logical port.
- 19. The device in claim 15, wherein one of the plurality of logical ports is selected from a group consisting of:
a physical port, a group of trunked physical ports, and a part of a physical port which is shared by a plurality of logical ports.
- 20. The device in claim 15, wherein the control module is operable to assign the identifier for the flow path at the initial ports connection configuration.
- 21. A Fibre Channel switch, comprising:
a plurality of logical ports; circuitry connecting the plurality of logical ports, the circuitry including a buffer memory coupled to the plurality of logical ports and at least one flow path between two logical ports; and a control module coupled to the plurality of logical ports and the circuitry, where the control module is operable to assign an identifier for a flow path in the circuitry, wherein the control module is operable to receive frames into and transmit frames out of the flow path identified by the identifier and wherein the circuitry transfers frames in the flow path identified by the identifier.
- 22. The switch in claim 21, wherein the plurality of logical ports include a first logical port and a second logical port, wherein the flow path is associated with the first logical port and the second logical port, and wherein frames flow from the first logical port to the second logical port.
- 23. The switch in claim 22, wherein frames flow from the second logical port to the first logical port.
- 24. The switch in claim 21, wherein the control module is operable to assign a second identifier for a second flow path,
wherein the second flow path is associated with the first logical port and the second logical port, and wherein frames flow from the second logical port to the first logical port.
- 25. The switch in claim 22, wherein one of the plurality of logical ports is selected from a group of:
a physical port, a group of trunked physical ports, and a part of a physical port which is shared by a plurality of logical ports.
- 26. The switch in claim 21, wherein the control module is operable to allocate a part of the buffer memory to the flow path identified by the identifier.
- 27. The switch in claim 26, wherein the first logical port includes a plurality of virtual channels and wherein the control module is further operable to divide the part of buffer memory allocated to the flow path into segments of various sizes where each segment is either dedicated to a virtual channel within the flow path, or shared by multiple virtual channels within the flow path.
- 28. A Fibre Channel network comprising:
a first switch having:
at least one fast port; a plurality of slow ports; circuitry connecting all of the ports, the circuitry including a first buffer memory and at least one flow path between all of the ports; and a first control module coupled to all the ports and the circuitry; a second switch having: at least one fast port; a plurality of slow ports; circuitry connecting all of the ports, the circuitry including a second buffer memory and at least one flow path between all of the ports; and a second control module coupled to all the ports and the circuitry; and a link connecting the first ports of the first and second switches; wherein the first control module is operable to assign an identifier to a flow path which passes through the fast port link, and wherein the second control module is operable to accept the assigned identifier for the flow path by the first control module.
- 29. The Fibre Channel network as in claim 28,
wherein the second control module is operable to allocate a part of the second buffer memory to the flow path.
- 30. The Fibre Channel network as in claim 29,
wherein the flow path is from a slow port to the first fast port on the first switch, passing through the fast port link, to the second fast port to a slow port on the second switch, wherein frames flow from the slow port on the first switch to the slow port on the second switch forward and backward.
- 31. The Fibre Channel network as in claim 29,
wherein the flow path is from a group of trunked slow ports to the first fast port on the first switch, passing through the fast port link, to the second fast port to a group of trunked slow ports on the second switch, wherein frames flow from the group of trunked slow ports on the first switch to the group of trunked slow ports on the second switch, forward and backward.
- 32. The Fibre Channel network as in claim 29,
wherein the first control module is operable to assign the identifier to the flow path at the initial port connection and configuration.
- 33. A Fibre Channel network, comprising:
a first device having:
one or more logical ports, including a first logical port; a second switch having:
a plurality of logical ports, including a second logical port and a third logical port, wherein the second switch is connected to the first device; circuitry connecting the plurality of logical ports, the circuitry including a buffer memory and at least one flow path between two logical ports; and a control module coupled to all the logical ports and the buffer memory; and a third device having:
one or more logical ports, including a fourth logical port, wherein the third device is connected to the second switch; wherein the control module is operable to assign a first identifier to a flow path which passes through the second switch.
- 34. The Fibre Channel network as in claim 33,
wherein the first device and the second switch are connected through the first logical port and the second logical port; wherein the third device and the second switch are connected through the fourth logical port and the third logical port; wherein within the flow path, frames flow from the second logical port to the third logical port.
- 35. The Fibre Channel network as in claim 34, wherein the control module is operable to assign a second identifier to a second flow path which passes through the second switch between the second logical port and the third logical port,
wherein within the second flow path, frames flow from the third logical port to the second logical port.
- 36. The Fibre Channel network as in claim 33,
wherein the control module is operable to assign a part of the buffer memory to the flow path.
- 37. The Fibre Channel network as in claim 33, wherein the first device is a device selected from the group consisting of:
a switch, a storage device and a host.
- 38. The Fibre Channel network as in claim 33, wherein the third device is a device selected from the group consisting of:
a switch, a storage device and a host.
- 39. The Fibre Channel network as in claim 33, wherein each logical port is a port selected from the group consisting of:
a physical port, a group of trunked physical ports, and a part of a physical port which are shared by a plurality of logical ports.
- 40. The Fibre Channel network as in claim 39,
wherein the second logical port and the third logical ports are groups of trunked physical ports, and wherein the frames in the flow path flow from the second logical port to the third logical port.
- 41. The Fibre Channel network as in claim 40, wherein the control module is operable to assign a second identifier to a second flow path which passes through the second switch between the second logical port and the third logical port and wherein within the second flow path, frames flow from the third logical port to the second logical port.
- 42. The Fibre Channel network as in claim 41,
wherein the control module is operable to assign a part of the buffer memory to the second flow path.
- 43. The Fibre Channel network as in claim 33, wherein the second switch and third device are connected by a link, the second switch and the first device are connected by a link, and the length of the link between the second switch and the third device is longer than the length of the link between the second switch and the first device.
- 44. The Fibre Channel network as in claim 33,
wherein the first device further comprises a fifth logical port; wherein the second switch further comprises sixth and seventh logical ports; wherein the third device further comprises an eighth logical port; wherein the fifth logical port connects to the sixth logical port; wherein the seventh logical port connects to the eighth logical port; and wherein the control module is operable to assign a second identifier to a flow path which passes through the second switch between the sixth logical port and the seventh logical port.
- 45. A Fibre Channel network system comprising: a first switch having:
a plurality of logical ports, including a first logical port; first circuitry connecting the plurality of logical ports, the circuitry including a first buffer memory and at least one flow path between two logical ports; and a first control module coupled to the plurality of logical ports and the circuitry, a second switch having: a plurality of logical ports, including a second logical port and a third logical port, wherein the second logical port is connected to the first logical port on the first switch by a link; second circuitry connecting the plurality of logical ports, the circuitry including a second buffer memory and a plurality of flow paths between the plurality of logical ports; and a second control module coupled to the logical ports and the second circuitry; a third device having a plurality of logical ports; and a fourth device having a plurality of logical ports; wherein the first control module is operable to assign an identifier to a flow path which passes through the link between the first logical port and the second logical port, and wherein the second control module is operable to accept the assigned identifier for the flow path given by the first control module, wherein the third device is connected to the first switch, and wherein the fourth device is connected to the second switch.
- 46. The Fibre Channel network system as in claim 45,
wherein each logical port is selected from the group consisting of a physical port, a group of trunked physical ports, and a part of a physical port which are shared by a plurality of logical ports.
- 47. The Fibre Channel network system as in claim 46,
wherein for the connection between the third device and the first switch, the logical ports are untrunked physical ports; and wherein for the connection between the fourth device and the second switch, the logical ports are untrunked physical ports.
- 48. The Fibre Channel network system as in claim 46,
wherein for the connection between the third device and the first switch, the logical ports are groups of trunked physical ports.; and wherein for the connection between the fourth device and the second switch, the logical ports are groups of trunked physical ports.
- 49. The Fibre Channel network system as in claim 45, wherein the third device is a device selected from a group consisting of a switch, a host and a storage device.
- 50. The Fibre Channel network system as in claim 45, wherein the fourth device is a device selected from a group consisting of a switch, a host and a storage device.
- 51. The Fibre Channel network system as in claim 45,
wherein the second control module is operable to allocate a part of the second buffer memory to the flow path.
- 52. The Fibre Channel network system as in claim 51,
wherein the flow path is from the third device, to the first switch, to the second switch and to the fourth device, and wherein frames flow from the third device, to the first switch, to the second switch and to the fourth device, forward and backward.
- 53. The Fibre Channel network system as in claim 52,
wherein the first and second logical ports connecting the first and second switches are untrunked physical ports; wherein the logical ports connecting the third device and the first switch are trunked physical ports; and wherein the logical ports connecting the fourth device and the second switch are trunked physical ports.
- 54. The Fibre Channel network system as in claim 53,
wherein the first control module is operable to assign the identifier to the flow path at the initial port connection and configuration.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to and incorporates by reference, U.S. patent application, Ser. No. 09/872,412, entitled “Link Trunking And Measuring Link Latency In Fibre Channel Fabric,” by David C. Banks, Kreg A. Martin, Shunja Yu, Jieming Zhu and Kevan K. Kwong, filed Jun. 1, 2000; Ser. No. 10/062,861 entitled “Methods and Devices for Converting Between Trunked and Single-Link Data Transmission in a Fibre Channel Network,” by Kreg A. Martin, filed Jan. 31, 2002 and Ser. No. 10/348,067 entitled “Cascade Credit Sharing For Fibre Channel Links” by Kreg A. Martin and Shahe Krakirian, filed Jul. 29, 2002.