IP Library Granted Patent US 7,480,293
Granted Patent B2
US 7,480,293 · App. 10/798,527 · Granted Jan 20, 2009

Method and system for preventing deadlock in fibre channel fabrics using frame priorities

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,480,293
App. No.
10/798,527
Granted
Jan 20, 2009
Kind
B2
Abstract

A method and system for transmitting frames using a fibre channel switch is provided. The method includes, determining a frame's priority based on a hop count for the frame; placing a frame in a priority queue, where the priority queue is dedicated to frames having similar priorities; selecting a frame for transmission based on the frame's priority, if credit is available, where a frame with a higher priority is sent before a frame with a lower priority; and selecting a frame with a lower priority if enough higher priority frames have been sent. The system includes a switch with at least two priority queues for placing frames with different priorities; a counter that keeps track of frames that are transmitted from the two priority queues; and a credit control module that determines if credit is available before sending a particular frame.

Claims (25)

1. A method for transmitting frames between switches in a fibre chaimel network, comprising:

determining priority for a plurality of frames based on a hop count for each frame, where a frame with a lesser hop count has a higher priority than a frame with a greater hop count;

placing the frames in a plurality of priority queues, where each priority queue is dedicated to frames having similar priorities; and

selecting frames for transmission based on each frame's priority;

wherein higher priority frames are selected before lower priority frames until a threshold number of higher priority frames have been selected, after which at least one lower priority frame is selected if lower priority frames are pending.

2. The method of Claim 1 , where a counter in each priority queue maintains a count of frames selected from that queue, and lower priority frames may be selected after the counter reaches the threshold number.

3. A system for transmitting fibre channel frames, comprising:

a fibre channel switch with a transmit port the transmit port having at least two priority queues for placing frames with different priorities, where a frame's priority is based on a hop count that is in turn based upon the frame's destination;

a counter associated with each queue, each counter being configured to count frames transmitted from its associated priority queue; and

a credit control module configured to determine whether sufficient credit is available before sending a particular frame.

4. The system of Claim 3 , wherein frames with higher hop counts have lower priority than frames with lower hop counts.

5. A fibre channel switch having a transmit port for transmitting frames, comprising:

at least two priority queues for placing frames with different priorities, where a frame's priority is based on a hop count that is in turn based upon the frame's destination;

a counter associated with each queue, each counter being configured to count frames transmitted from its associated priority queue: and

a credit control module configured to determine if sufficient credit is available before sending a particular frame.

6. The fibre channel switch of claim 5 , wherein frames with higher hop counts have lower priority than frames with lower hop counts.

7. The method of claim 1 . further comprising the step of sending the selected frame if sufficient credit is available.

8. The method of claim 1 further comprising the step of sending the selected lower priority frame if a sum of empty receive buffers at a destination port and receive buffers at the destination port that are filled with higher priority frames is greater than or equal to the hop count for the selected lower priority frame.

9. The system of claim 3 , wherein for lower priority frames the credit control module is configured to determine that sufficient credit is available when a sum of empty receive buffers at a destination port and receive buffers at the destination port that are filled with higher priority frames is greater than or equal to the hop count for the selected lower priority frame.

10. The fibre channel switch of Claim 6 , wherein for lower priority frames the credit control module is configured to determine that sufficient credit is available when a sum of empty receive buffers at destination port and receive buffers at the destination port that are filled with higher priority frames is greater than or equal to the hop count for the selected lower priority frame.

11. A system for transmitting fibre channel frames, comprising:

means for placing frames in a plurality of priority queues, where each priority queue is dedicated to frames having similar priorities;

means for selecting frames for transmission based on each frame's priority;

means for determining whether a sum of empty receive buffers at a destination port and received buffers at the destination port that are filled with higher priority frames is greater than or equal to the hop count for the selected lower priority frame;

wherein higher priority frames are selected before lower priority frames until a threshold number of higher priority frames have been selected, after which at least one lower priority frames is selected if lower priority frames are pending.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2004
From: BETKER, STEVEN M.
To: QLOGIC CORPORATION
Reel/Frame 015087/0919 →