IP Library › Granted Patent US 9,876,739
Granted Patent B2
US 9,876,739 · App. 13/906,072 · Granted Jan 23, 2018

System and method for failure detection in rings

Inventors: Ravikumar Sivasankar (Chennai, IN); Purushothaman Nandakumaran (San Jose, CA); Joyas Joseph (Fremont, CA); William Zengli Yu (Los Gatos, CA)
Assignee: DELL PRODUCTS L.P.
H04L49/555H04L12/437H04L49/102H04L49/557
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 9,876,739
App. No.
13/906,072
Filed
May 30, 2013
Granted
Jan 23, 2018
Kind
B2
Art Unit
2464
USPC
370/241
Abstract

A system and method of failure detection in rings includes a switch including a control unit, one or more first ports coupled to the control unit and configured to couple the switch to a ring of switches in a first direction, and one or more second ports coupled to the control unit and configured to couple the switch to the ring of switches in a second direction opposite the first direction. The control unit is configured to detect a failure in the ring of switches in the second direction, transmit a request message in the first direction using one of the one or more first ports, receive a response message on one of the one or more first ports, extract reachability data from the response message, and determine one or more first switches in the ring of switches that are reachable in the first direction based on information associated with the reachability data.

Claims (75)

1. A switch in a ring of switches, the switch comprising:

a control unit;

one or more first ports coupled to the control unit, each of the one or more first ports being configured to directly couple the switch to a first neighboring switch in the ring of switches; and

one or more second ports coupled to the control unit, each of the one or more second ports being configured to directly couple the switch to a second neighboring switch in the ring of switches;

wherein the control unit is configured to:

transmit a first request message using one of the one or more first ports, the first request message including a first bitmap that includes a first plurality of bits representing each switch in the ring of switches, each of the first plurality of bits being initialized to an inactive state;

transmit a second request message using one of the one or more second ports, the second request message including a second bitmap that includes a second plurality of bits representing each switch in the ring of switches, each of the second plurality of bits being initialized to the inactive state;

receive a first response message on one of the one or more first ports, the first response message including the first bitmap, the first bitmap having been altered by switching one or more of the first plurality of bits to an active state to indicate each of one or more first switches in the ring of switches that received the first request message;

receive a second response message on one of the one or more second ports, the second response message including the second bitmap, the second bitmap having been altered by switching one or more of the second plurality of bits to the active state to indicate each of one or more second switches in the ring of switches that received the second request message;

detect a failure in the ring of switches in response to receiving the first response message and the second response message;

extract the first bitmap from the first response message;

determine a first reachability of each switch in the ring of switches via the one or more first ports by examining which of the first plurality of bits in the first bitmap are in the active state;

extract the second bitmap from the second response message;

determine a second reachability of each switch in the ring of switches via the one or more second ports by examining which of the second plurality of bits in the second bitmap are in the active state; and

determine whether all of the ring of switches is reachable based on the first reachability and the second reachability.

2. The switch of claim 1 wherein the first request message further includes a count of a number of the one or more first switches.

3. The switch of claim 1 wherein logic one corresponds to the active state.

4. The switch of claim 1 wherein the first request message further includes a route trace entry for each of the one or more first switches.

5. The switch of claim 1 , wherein the control unit is further configured to notify one or more devices selected from a group consisting of a master switch and a network controller of the failure.

6. The switch of claim 1 , wherein the control unit is further configured to transmit one or more error recovery messages to the ring of switches.

7. The switch of claim 1 , wherein the control unit is further configured to:

receive a third request message including a third bitmap on a third port, the third bitmap including a third plurality of bits representing each switch in the ring of switches, wherein a bit among the third plurality of bits that represents the switch is initialized to an inactive state;

alter the third request message to update the third bitmap by setting the bit that represents the switch to the active state;

determine whether the altered third request message can be forwarded around the ring of switches;

when the altered third request message can be forwarded around the ring of switches, forward the altered third request message; and

when the altered third request message cannot be forwarded around the ring of switches:

convert the altered third request message to a third response message; and

transmit the third response message on a fourth port.

8. The switch of claim 7 , wherein the third port and the fourth port are included in the one or more first ports.

9. The switch of claim 7 , wherein the third port and the fourth port are included in the one or more second ports.

10. The switch of claim 1 , wherein the control unit is further configured to:

receive a third response message; and

forward the third response message around the ring of switches.

11. A method of detecting a failure in a ring of switches, the method comprising:

transmitting a first request message using one of one or more first ports of a first switch, each of the one or more first ports being configured to directly couple the first switch to a first neighboring switch in the ring of switches, the first request message including a first bitmap that includes a first plurality of bits representing each switch in the ring of switches, each of the first plurality of bits being initialized to an inactive state;

transmitting a second request message using one of one or more second ports of the first switch, each of the one or more second ports being configured to directly couple the first switch to a second neighboring switch in the ring of switches, the second request message including a second bitmap that includes a second plurality of bits representing each switch in the ring of switches, each of the second plurality of bits being initialized to the inactive state;

receiving a first response message on one of the one or more first ports, the first response message including the first bitmap, the first bitmap having been altered by switching one or more of the first plurality of bits to an active state to indicate each of one or more first switches in the ring of switches that received the first request message;

receiving a second response message on one of the one or more second ports, the second response message including the second bitmap, the second bitmap having been altered by switching one or more of the second plurality of bits to the active state to indicate each of one or more second switches in the ring of switches that received the second request message;

extracting the first bitmap from the first response message;

determining a first reachability of each switch in the ring of switches via the one or more first ports by examining which of the first plurality of bits in the first bitmap are in the active state;

extracting the second bitmap from the second response message;

determining a second reachability of each switch in the ring of switches via the one or more second ports by examining which of the second plurality of bits in the second bitmap are in the active state; and

determine whether all of the ring of switches is reachable based on the first reachability and the second reachability.

12. The method of claim 11 , further comprising notifying one or more devices selected from a group consisting of a master switch and a network controller of the failure.

13. The method of claim 11 , further comprising, transmitting one or more error recovery messages to the ring of switches.

14. An information handling system comprising:

a ring of switches comprising a first switch and a second switch;

the first switch comprising:

a first control unit;

one or more first ports coupled to the first control unit, each of the one or more first ports being configured to directly couple the first switch to a first neighboring switch in the ring of switches; and

one or more second ports coupled to the first control unit, each of the one or more second ports being configured to directly couple the first switch to a second neighboring switch in the ring of switches; the second switch comprising:

a second control unit;

one or more third ports coupled to the second control unit, each of the one or more third ports being configured to couple the second switch to the first switch via one or more switches in the ring of switches including the first neighboring switch; and

one or more fourth ports coupled to the second control unit, each of the one or more fourth ports being configured to couple the second switch to the first switch via one or more switches in the ring of switches including the second neighboring switch;

wherein the first control unit is configured to:

detect a failure in the ring of switches;

transmit a first request message using one of the one or more first ports, the first request message including a first bitmap that includes a first plurality of bits representing each switch in the ring of switches, each of the first plurality of bits being initialized to an inactive state;

transmit a second request message using one of the one or more second ports, the second request message including a second bitmap that includes a second plurality of bits representing each switch in the ring of switches, each of the second plurality of bits being initialized to the inactive state;

receive a first response message on one of the one or more first ports, the first response message including the first bitmap, the first bitmap having been altered by switching one or more of the first plurality of bits to an active state to indicate each of one or more first switches in the ring of switches that received the first request message;

receive a second response message on one of the one or more second ports, the second response message including the second bitmap, the second bitmap having been altered by switching one or more of the second plurality of bits to an active state to indicate each of one or more second switches in the ring of switches that received the second request message;

extract the first bitmap from the first response message;

determine a first reachability of each switch in the ring of switches via the one or more first ports by examining which of the first plurality of bits in the first bitmap are in the active state;

extract the second bitmap from the second response message;

determine a second reachability of each switch in the ring of switches via the one or more second ports by examining which of the second plurality of bits in the second bitmap are in the active state; and

determine whether all of the ring of switches is reachable based on the first reachability and the second reachability;

wherein the second control unit is configured to:

receive a third request message including a third bitmap on one of the one or more fourth ports, the third bitmap including a third plurality of bits representing each switch in the ring of switches, wherein a bit among the third plurality of bits that represents the second switch is initialized to an inactive state;

alter the third request message to update the third bitmap by setting the bit that represents the second switch to the active state;

determine whether the altered third request message can be forwarded on one of the one or more third ports;

when the altered third request message can be forwarded on one of the one or more third ports, forward the altered third request message on one of the one or more third ports;

when the altered third request message cannot be forwarded on one of the one or more third ports:

convert the altered third request message to the first response message; and

transmit the first response message on one of the one or more fourth ports;

receive a third response message on one of the one or more third ports; and

forward the third response message on one of the one or more fourth ports.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2013
From: SIVASANKAR, RAVIKUMAR; NANDAKUMARAN, PURUSHOTHAMAN; JOSEPH, JOYAS; YU, WILLIAM ZENGLI
To: DELL PRODUCTS L.P.
Reel/Frame 030517/0146 →
Continuity (1)
Related Publication 20140359364A1 · Dec 4, 2014