Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
First Claim
1. A switch for selectively, concurrently coupling the nodes on a plurality of a Fibre Channel Arbitrated Loops together comprising:
- a multiplexed bus;
a crossbar switch;
a plurality of switch control means, each for coupling to one local FCAL network, and each coupled to said multiplexed bus and coupled to said crossbar switch, each for receiving OPN primitives from a source node on the local FCAL network to which it is coupled and determining if the destination node identified in said OPN is on said local FCAL network, and, if so, routing the OPN to the destination node via the local FCAL network, but if the destination node is not on said local FCAL, transmitting a destination node location request and the destination address of the destination node identified in said OPN primitive to all said other switch control means via a channel on said multiplexed bus, and for scanning messages received back from said other switch control means via a channel on said multiplexed bus to determine which switch control means and local FCAL network to which flow control primitives and data are to be transferred to accomplish the desired data transfer, and when a grant message is received from another switch control means indicating said other switch control means is the place to send flow control primitives and data and indicating that the FCAL to which said other switch control means is coupled is available for a loop tenancy, for cooperating with said other switch control means to establish a data transfer path across said crossbar switch, and using said data transfer path to transfer flow control primitives between said source and destination nodes, and each switch control means also for receiving destination node location requests and destination addresses, and using said destination address to search a table of destination addresses of nodes on the local FCAL of said switch control means to determine if the destination node identified in said destination node location request is on the local FCAL to which said switch control means is coupled, and, if so, for arbitrating for control of said local FCAL and, when control is won, sending a grant message back to said switch control means which initiated said destination node location request identifying the switch control means coupled to the local FCAL on which said destination node is resident and for sending one or more messages to said switch control means which initiated said destination node location request for purposes of controlling establishment of said data transfer path across said crossbar switch.
6 Assignments
0 Petitions
Accused Products
Abstract
A switch, switched architecture and process for transferring data through an FCAL switch is disclosed. The switch uses multiple switch control circuits each coupled to one FCAL network and all connected to a crossbar switch. The switch control circuits are coupled together by a protocol bus for coordination purposes. Local conversations can occur on each FCAL loop and crossing conversations through the switch can occur concurrently. The OPN primitive is used to establish the connection before any data is transferred thereby eliminating the need for buffer memory in the switch control circuits. The destination address of each OPN is used to address a lookup table in each switch control circuit to determine if the destination node is local. If not, the destination is looked up and a connection request made on the protocol bus. If the remote port is not busy, it sends a reply which causes both ports to establish a data path through the backplane crossbar switch.
57 Citations
4 Claims
-
1. A switch for selectively, concurrently coupling the nodes on a plurality of a Fibre Channel Arbitrated Loops together comprising:
-
a multiplexed bus; a crossbar switch; a plurality of switch control means, each for coupling to one local FCAL network, and each coupled to said multiplexed bus and coupled to said crossbar switch, each for receiving OPN primitives from a source node on the local FCAL network to which it is coupled and determining if the destination node identified in said OPN is on said local FCAL network, and, if so, routing the OPN to the destination node via the local FCAL network, but if the destination node is not on said local FCAL, transmitting a destination node location request and the destination address of the destination node identified in said OPN primitive to all said other switch control means via a channel on said multiplexed bus, and for scanning messages received back from said other switch control means via a channel on said multiplexed bus to determine which switch control means and local FCAL network to which flow control primitives and data are to be transferred to accomplish the desired data transfer, and when a grant message is received from another switch control means indicating said other switch control means is the place to send flow control primitives and data and indicating that the FCAL to which said other switch control means is coupled is available for a loop tenancy, for cooperating with said other switch control means to establish a data transfer path across said crossbar switch, and using said data transfer path to transfer flow control primitives between said source and destination nodes, and each switch control means also for receiving destination node location requests and destination addresses, and using said destination address to search a table of destination addresses of nodes on the local FCAL of said switch control means to determine if the destination node identified in said destination node location request is on the local FCAL to which said switch control means is coupled, and, if so, for arbitrating for control of said local FCAL and, when control is won, sending a grant message back to said switch control means which initiated said destination node location request identifying the switch control means coupled to the local FCAL on which said destination node is resident and for sending one or more messages to said switch control means which initiated said destination node location request for purposes of controlling establishment of said data transfer path across said crossbar switch.
-
-
2. A switch for selectively, concurrently coupling the nodes on a plurality of a Fibre Channel Arbitrated Loops together comprising:
-
a multiplexed bus; a crossbar switch; a plurality of switch control units, configured to couple to one local FCAL network, and each coupled to said multiplexed bus, each for receiving OPN primitives from a source node on the local FCAL network to which it is coupled and determining if the destination node identified in said OPN is on said local FCAL network, and, if so, routing the OPN to the destination node via a local traffic data path in said switch control units and the local FCAL network, but if the destination node is not on said local FCAL, transmitting a destination node location request and the destination address of the destination node identified in said OPN primitive to all said other switch control units via a channel on said multiplexed bus, and for scanning messages received back from said other switch control units to determine which switch control units and local FCAL network to which flow control primitives and data are to be transferred to accomplish the desired data transfer, and when a grant message is received from another switch control units indicating said other switch control units is the place to send flow control primitives and data and indicating that the FCAL to which said other switch control units is coupled is available for a loop tenancy, for cooperating with said other switch control units to establish a data transfer path across said multiplexed bus, and using said data transfer path to transfer flow control primitives between said source and destination nodes, and each switch control unit is further configured to receive destination node location requests and destination addresses, and to use said destination address to search a table of destination addresses of nodes on the local FCAL of said switch control unit to determine if the destination node identified in said destination node location request is on the local FCAL to which said switch control means is coupled, and, if so, to arbitrate for control of said local FCAL and, when control is won, to send a grant message back to said switch control means which initiated destination node location request identifying the switch control means coupled to the local FCAL on which said destination node is resident and configured to send one or more messages to said switch control units which initiated said destination node location request to control establishment of said data transfer path.
-
-
3. A method for selectively, concurrently coupling the nodes on a plurality of a Fibre Channel Arbitrated Loops together, the method comprising:
-
providing a multiplexed bus; providing a plurality of switch control means, each for coupling to one local FCAL network, and each coupled to said multiplexed bus; receiving OPN primitives from a source node on the local FCAL network to which it is coupled; determining if the destination node identified in said OPN is on said local FCAL network, and, if so, routing the OPN to the destination node via a local traffic data path in said switch control means and the local FCAL network, transmitting a destination node location request and the destination address of the destination node identified in said OPN primitive to all said other switch control means via a channel on said multiplexed bus, if the destination node is not on said local FCAL; scanning messages received back from said other switch control means to determine which switch control means and local FCAL network to which flow control primitives and data are to be transferred to accomplish the desired data transfer; receiving a grant message from another switch control means indicating said other switch control means is the place to send flow control primitives and data and indicating that the FCAL to which said other switch control means is coupled is available for a loop tenancy, for cooperating with said other switch control means to establish a data transfer path across said multiplexed bus; and using said data transfer path to transfer flow control primitives between said source and destination nodes, wherein each switch control means also receives destination node location requests and destination addresses. - View Dependent Claims (4)
-
Specification