Prevention of head of line blocking in a multi-rate switched Fibre Channel loop attached system
First Claim
1. A method for reducing head of line blocking in a first multi-port frame-based buffered storage switch having transmit buffers and receive buffers associated with each port when a high speed destination device attached to a first destination port and a low speed destination device attached to a second destination port both need to receive data from a high speed source device communicatively coupled to one or more source ports, the method comprising:
- maintaining a table of recent accesses at said ports;
receiving a request to transfer data at the one or more source ports;
determining a speed of a presumed destination device by reference to said table;
if the presumed destination device is a low speed destination device, transferring data to the receive buffers of a source port only after determining that the data can be subsequently transferred to the transmit buffers of the second destination port attached to the low speed destination device without impediment; and
if the presumed destination device is a high speed destination device, transferring data to the receive buffers of a source port only as long as the receive buffers have space to store the data.
7 Assignments
0 Petitions
Accused Products
Abstract
A method is disclosed for maintaining a table of recent accesses for each port for use in predicting whether a request for data from a source device is likely to be sent to a high speed or low speed destination device. The table of recent accesses lists every source device attached to that port and the speed of the destination device with the most recent access to each source device. When an OPN primitive is received at the source port, the source device is identified and used with the table of recent accesses to predict whether the destination device is likely to be high speed or low speed, and ultimately whether to send data from the source device or reject the request.
-
Citations
16 Claims
-
1. A method for reducing head of line blocking in a first multi-port frame-based buffered storage switch having transmit buffers and receive buffers associated with each port when a high speed destination device attached to a first destination port and a low speed destination device attached to a second destination port both need to receive data from a high speed source device communicatively coupled to one or more source ports, the method comprising:
-
maintaining a table of recent accesses at said ports; receiving a request to transfer data at the one or more source ports; determining a speed of a presumed destination device by reference to said table; if the presumed destination device is a low speed destination device, transferring data to the receive buffers of a source port only after determining that the data can be subsequently transferred to the transmit buffers of the second destination port attached to the low speed destination device without impediment; and if the presumed destination device is a high speed destination device, transferring data to the receive buffers of a source port only as long as the receive buffers have space to store the data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A first multi-port frame-based buffered storage switch for reducing head of line blocking, comprising:
-
one or more first ports couplable to a high speed source device for sending data; a second port couplable to a high speed destination device for receiving data from the high speed source device; a third port couplable to a low speed destination device for receiving data from the high speed source device; a table of recent accesses associated with each of the one or more first ports and containing a list of all devices connected to the respective port and, for each device in the list, a speed of the destination device having a most recent access to that device; and a state machine associated with each of the one or more first ports for receiving a request to transfer data, determining a speed of a presumed destination device by reference to the associated table of recent accesses, if the presumed destination device is a low speed destination device, transferring data to receive buffers in one of the one or more first ports only after determining that the data can be subsequently transferred to transmit buffers in the third port without impediment, and if the presumed destination device is a high speed destination device, transferring data to receive buffers in the second port only as long as the receive buffers have space to store the data. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification