IP Library Granted Patent US 11,330,071
Granted Patent B2
US 11,330,071 · App. 16/935,560 · Granted May 10, 2022

Inter-process communication fault detection and recovery system

Inventors: Michael Emery Brown (Austin, TX); Santosh Kumar Bidaralli (Cedar Park, TX)
Assignee: Dell Products L.P.
H04L67/2809G06F9/547G06F11/0703G06F11/0709G06F11/0757G06F11/0793H04L43/10H04L67/10
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 11,330,071
App. No.
16/935,560
Granted
May 10, 2022
Kind
B2
Abstract

An inter-process communication (IPC) system, includes a first client engine, a first server engine, and a broker engine that is coupled to the first client engine. The broker engine initiates a first timer that is configured to reset when traffic is received from the first server engine while the first server engine is registered with the broker engine and coupled to the broker engine via a communication channel. The traffic that causes the first timer to reset includes at least one of: traffic generated by the first client engine to complete a request, and a first server-to-broker heartbeat message generated by the first server engine. The broker engine determines that the first timer has reached a predefined time amount, and in response, removes the registration of the first server engine and removes the communication channel between the broker engine and the first server engine.

Claims (52)

1. A broker/server communication channel management system, comprising:

a server computing device; and

a broker device that is coupled to the server computing device and that is configured to:

establish a communication channel with the server computing device;

transmit broker data traffic to the server computing device via the communication channel;

monitor for server data traffic transmitted by the server computing device via the communication channel;

maintain the communication channel with the server computing device in response to receiving the server data traffic from the server computing device within a first time period; and

remove the communication channel with the server computing device in response to not receiving the server data traffic from the server computing device within the first time period,

wherein the server computing device is configured to:

monitor for the broker data traffic transmitted by the broker device via the communication channel; and

transmit a communication channel re-establishment request to the broker device in response to not receiving the broker data traffic from the broker device within a second time period.

2. The system of claim 1 , wherein the broker data traffic includes a broker-to-server heartbeat message.

3. The system of claim 2 , wherein the broker-to-server heartbeat message includes a sequence number that is configured for use by the server computing device to determine whether the broker device has become unavailable.

4. The system of claim 1 , wherein the broker engine device is configured to:

re-establish the communication channel with the server computing device in response to receiving the communication channel re-establishment request.

5. The system of claim 1 , wherein the server data traffic includes a server-to-broker heartbeat message.

6. The system of claim 5 , wherein the server-to-broker heartbeat message includes a sequence number that is configured for use by the broker device to determine whether the server computing device has become unavailable.

7. The system of claim 1 , further comprising:

a client computing device, wherein the broker device is configured to:

provide, in response to not receiving the server data traffic from the server computing device within the first time period, a notification to the client computing device that the server computing device is unavailable.

8. An information handling system (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a broker engine that is configured to:

establish a communication channel with a server engine;

transmit broker data traffic to the server engine via the communication channel;

receive a communication channel re-establishment request that was transmitted by the server engine in response to not receiving the broker data traffic from the broker engine within a first time period;

re-establish the communication channel with the server engine in response to receiving the communication channel re-establishment request;

monitor for server data traffic transmitted by the server engine via the communication channel;

maintain the communication channel with the server engine in response to receiving the server data traffic from the server engine within a second time period;

remove the communication channel with the server engine in response to not receiving the server data traffic from the server engine within the second time period.

9. The IHS of claim 8 , wherein the broker data traffic includes a broker-to-server heartbeat message.

10. The IHS of claim 9 , wherein the broker-to-server heartbeat message includes a sequence number that is configured for use by the server engine to determine whether the broker engine has become unavailable.

11. The IHS of claim 8 , wherein the server data traffic includes a server-to-broker heartbeat message.

12. The IHS of claim 11 , wherein the server-to-broker heartbeat message includes a sequence number that is configured for use by the broker engine to determine whether the server engine has become unavailable.

13. The IHS of claim 8 , wherein the broker engine is configured to:

provide, in response to not receiving the server data traffic from the server engine within the first time period, a notification to a client engine that the server engine is unavailable.

14. A method of managing a broker/server communication channel, comprising:

establishing, by a broker device, a communication channel with the server engine;

transmitting, by the broker device, broker data traffic to the server engine via the communication channel;

receiving, by the broker device, a communication channel re-establishment request that was transmitted by the server engine in response to not receiving the broker data traffic from the broker device within a first time period;

re-establishing, by the broker device, the communication channel with the server engine in response to receiving the communication channel re-establishment request;

monitoring, by the device, for server dai traffic transmitted by the server engine via the communication channel;

maintaining, by the broker device, the communication channel with the server engine in response to receiving the server data traffic from the server engine within a second time period; and

removing, by the broker device, the communication channel with the server engine in response to not receiving the server data traffic from the server engine within the second time period.

15. The method of claim 14 , wherein the broker data traffic includes a broker-to-server heartbeat message.

16. The method of claim 15 , wherein the broker-to-server heartbeat message includes a sequence number that is configured for use by the server engine to determine whether the broker engine has become unavailable.

17. The method of claim 16 , further comprising:

re-establishing, by the broker device, the communication channel with the server engine in response to receiving the communication channel re-establishment request.

18. The method of claim 14 , wherein the server data traffic includes a server-to-broker heartbeat message.

19. The method of claim 18 , wherein the server-to-broker heartbeat message includes a sequence number that is configured for use by the broker device to determine whether the server engine has become unavailable.

20. The method of claim 14 , further comprising:

providing, by the broker device in response to not receiving the server data traffic from the server engine within the first time period, a notification to a client engine that the server engine is unavailable.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2020
From: BROWN, MICHAEL EMERY; BIDARALLI, SANTOSH KUMAR
To: DELL PRODUCTS L.P.
Reel/Frame 053279/0763 →