IP Library › Granted Patent US 10,742,359
Granted Patent B2
US 10,742,359 · App. 16/117,274 · Granted Aug 11, 2020

Apparatus and method for improving messaging system reliability

Inventors: Wenyu Tang (Shanghai, CN); Han Gao (Shanghai, CN); Don Mace (Hopkinton, MA); Yongjun Shi (Shanghai, CN); Jim L. Ji (Shanghai, CN); Charlie Chen (Shanghai, CN); Kai Chen (Shanghai, CN)
Assignee: Dell Products, L.P.
H04L1/08G06F16/27
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 10,742,359
App. No.
16/117,274
Granted
Aug 11, 2020
Kind
B2
Abstract

A message system includes a first node that may send a message to a second node, provide metadata associated with the message, and send the metadata to a database. The database may determine that the message was not received by the second node based upon the metadata and a current time, and direct the first node to resend the message to the second node in response to determining that the message was not received. The first node further may resend the message.

Claims (69)

1. A message system for managing messages between nodes of the message system, the message system comprising:

a database; and

a first one of the nodes configured to:

send a message to a second one of the nodes of the message system;

provide metadata associated with the message; and

send the metadata to the database;

wherein the database is configured to:

determine that the message was not received by the second node based upon the metadata and a current time;

direct the first node to resend the message to the second node in response to determining that the message was not received

determine that the message was received by the second node based upon the metadata and the current time and was not processed in accordance with the metadata; and

direct the first node to resend the message to the second node in response to determining that the message was received and was not processed; and

wherein the first node is further configured to resend the message in response to the direction from the database.

2. The message system of claim 1 , wherein the metadata includes a timestamp that identifies a time when the message was sent to the second node, and a maximum processing time for the message.

3. The message system of claim 2 , wherein in determining that the message was not received by the second node the database is further configured to:

determine that the current time is later than the sum of the timestamp and the maximum processing time.

4. The message system of claim 1 , wherein the database is further configured to:

determine that the message was not processed by the second node based upon the metadata and the current time; and

direct the first node to resend the message to the second node in response to determining that the message was not processed.

5. The message system of claim 4 , wherein the second node is configured to:

determine that the message was processed; and

direct the database to update the metadata in response to determining that the message was processed.

6. The message system of claim 5 , wherein the database is further configured to determine that the message was processed based upon the updated metadata.

7. The message system of claim 6 , wherein the database is further configured to:

determine that the message was satisfactorily processed by the second node based upon the updated metadata; and

delete an entry of the database associated with the message in response to determining that the message was satisfactorily processed.

8. The message system of claim 7 , wherein the database is further configured to:

determine that the message was not satisfactorily processed by the second node based upon the updated metadata; and

set a time for retrying the message in response to determining that the message was not satisfactorily processed.

9. The message system of claim 8 , wherein the database is further configured to:

determine that the time for retrying the message has passed; and

direct the first node to resend the message to the second node in response to determining that the time for retrying the message has passed.

10. A method for managing messages between nodes of a message system, the method comprising:

sending, by a first node of the message system, a message to a second node of the message system;

providing, by the first node, metadata associated with the message;

sending, by the first node, the metadata to a database;

determining that the message was not received by the second node based upon the metadata and a current time;

directing the first node to resend the message to the second node in response to determining that the message was not received;

determining that the message was received by the second node based upon the metadata and the current time and was not processed in accordance with the metadata;

directing the first node to resend the message to the second node in response to determining that the message was received and was not processed; and

resending, by the first node, the message.

11. The method of claim 10 , wherein the metadata includes a timestamp that identifies a time when the message was sent to the second node, and a maximum processing time for the message.

12. The method of claim 11 , wherein in determining that the message was not received by the second node, the method further comprises:

determining that the current time is later than the sum of the timestamp and the maximum processing time.

13. The method of claim 10 , further comprising:

determining that the message was not processed by the second node based upon the metadata and the current time; and

directing the first node to resend the message to the second node in response to determining that the message was not processed.

14. The method of claim 13 , further comprising:

determining, by the second node, that the message was processed; and

directing, by the second node, the database to update the metadata in response to determining that the message was processed.

15. The method of claim 14 , further comprising:

determining that the message was processed based upon the updated metadata.

16. The method of claim 15 , further comprising:

determining that the message was satisfactorily processed by the second node based upon the updated metadata; and

deleting an entry of the database associated with the message in response to determining that the message was satisfactorily processed.

17. The method of claim 16 , further comprising:

determining that the message was not satisfactorily processed by the second node based upon the updated metadata; and

setting a time for retrying the message in response to determining that the message was not satisfactorily processed.

18. The method of claim 17 , further comprising:

determining that the time for retrying the message has passed; and

directing the first node to resend the message to the second node in response to determining that the time for retrying the message has passed.

19. An information handling system for managing messages, the information handling system comprising:

a memory storing code; and

a processor to execute the code to:

receive metadata from a first node of a message system, the metadata associated with a message sent from the first node to a second node of the message system;

determine that the message was not received by the second node based upon the metadata and a current time;

direct the first node to resend the message to the second node in response to determining that the message was not received;

determine that the message was received by the second node based upon the metadata and the current time and was not processed in accordance with the metadata: and

direct the first node to resend the message to the second node in response to determining that the message was received and was not processed.

20. The information handling system of claim 19 , wherein the metadata includes a timestamp that identifies a time when the message was sent to the second node, and a maximum processing time for the message.

Assignments (4)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2019
From: TANG, WENYU; GAO, HAN; MACE, DON; SHI, YONGJUN; JI, JIM L.; CHEN, CHARLIE; CHEN, KAI
To: DELL PRODUCTS, LP
Reel/Frame 049267/0559 →
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 →
Continuity (1)
Related Publication 20200076539A1 · Mar 5, 2020