IP Library Granted Patent US 11,962,635
Granted Patent B2
US 11,962,635 · App. 17/994,746 · Granted Apr 16, 2024

Dynamically switching between synchronous and asynchronous communication channels

Inventors: Raunak Ravindra Singwi (Pune, IN); Akeem Lamar Jenkins (Broomfield, CO); Marc Wayne Brotherson (Boulder, CO); Shivali Sharma (Pune, IN); Sean James Huntley (Sydney, AU)
Assignee: VMware, Inc.
H04L67/01H04L1/08H04L43/08H04L43/0823H04L43/0864H04L43/0894H04L43/10H04L67/141H04L67/145H04L67/146H04L69/164
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,962,635
App. No.
17/994,746
Granted
Apr 16, 2024
Kind
B2
Abstract

Disclosed herein are systems and methods for dynamically switching between synchronous and asynchronous communication channels. A communication request can be received from an application, and a request identifier can be generated for the communication request. The communication request can be transmitted to an edge server application via a first communication channel. The first communication channel can be selected from a plurality of communication channels based at least in part on a policy. In an instance in which a condition specified by the policy is detected in the transmission of the communication request, a second communication channel can be selected from the plurality of communication channels. The communication request can be transmitted to the edge server application using the second communication channel.

Claims (31)

1. A system, comprising:

at least one first computing device comprising a processor and memory; and

machine-readable instructions stored in the memory that, when executed by the processor, cause the at least one first computing device to at least:

receive a communication request from an application;

cause a transmission of the communication request to a second computing device using the first communication channel; and

in an instance in which a particular condition is detected in the transmission of the communication request, cause a transmission of the communication request to the second computing device using a second communication channel of the plurality of communication channels, the second communication channel and the particular condition being specified by the policy.

2. The system of claim 1 , wherein the communication request comprises a request identifier indicating an order in which the communication request is to be processed.

3. The system of claim 1 , wherein the machine-readable instructions, when executed by the processor, further cause the at least one first computing device to at least identify the first communication channel among the plurality of communication channels based at least in part on one or more performance metrics for the first communication channel and individual ones of the plurality of communication channels, the one or more performance metrics being specified by the policy.

4. The system of claim 1 , wherein the machine-readable instructions, wherein the machine-readable instructions further cause the at least one first computing device to at least detect the condition in the transmission of the communication request, the condition comprising a failure in the transmission of the communication request.

5. The system of claim 1 , wherein the machine-readable instructions, wherein the machine-readable instructions further cause the at least one first computing device to at least place the communication request in a transmission queue for transmission using the second communication channel.

6. The system of claim 1 , wherein the first communication channel comprises a synchronous communication channel.

7. The system of claim 1 , wherein the second communication channel comprises an asynchronous communication channel.

8. A method, comprising:

receiving a communication request from an application;

causing a transmission of the communication request to a second computing device using the first communication channel; and

in an instance in which a particular condition is detected in the transmission of the communication request, causing a transmission of the communication request to the second computing device using a second communication channel of the plurality of communication channels, the second communication channel and the particular condition being specified by the policy.

9. The method of claim 8 , wherein the communication request comprises a request identifier indicating an order in which the communication request is to be processed.

10. The method of claim 8 , further comprising identifying the first communication channel among the plurality of communication channels based at least in part on one or more performance metrics for the first communication channel and individual ones of the plurality of communication channels, the one or more performance metrics being specified by the policy.

11. The method of claim 8 , further comprising detecting the condition in the transmission of the communication request, the condition comprising a failure in the transmission of the communication request.

12. The method of claim 8 , further comprising place the communication request in a transmission queue for transmission using the second communication channel.

13. The method of claim 8 , wherein the first communication channel comprises a synchronous communication channel.

14. The method of claim 8 , wherein the second communication channel comprises an asynchronous communication channel.

15. A non-transitory computer-readable medium embodying program instructions that, when executed, cause at least one computing device to at least:

receive a communication request from an application;

cause a transmission of the communication request to a second computing device using the first communication channel; and

in an instance in which a particular condition is detected in the transmission of the communication request, cause a transmission of the communication request to the second computing device using a second communication channel of the plurality of communication channels, the second communication channel and the particular condition being specified by the policy.

16. The non-transitory computer-readable medium of claim 15 , wherein the communication request comprises a request identifier indicating an order in which the communication request is to be processed.

17. The non-transitory computer-readable medium of claim 15 , wherein the machine-readable instructions, when executed by the processor, further cause the at least one first computing device to at least identify the first communication channel among the plurality of communication channels based at least in part on one or more performance metrics for the first communication channel and individual ones of the plurality of communication channels, the one or more performance metrics being specified by the policy.

18. The non-transitory computer-readable medium of claim 15 , wherein the machine-readable instructions, wherein the machine-readable instructions further cause the at least one first computing device to at least detect the condition in the transmission of the communication request, the condition comprising a failure in the transmission of the communication request.

19. The non-transitory computer-readable medium of claim 15 , wherein the machine-readable instructions, wherein the machine-readable instructions further cause the at least one first computing device to at least place the communication request in a transmission queue for transmission using the second communication channel.

20. The non-transitory computer-readable medium of claim 15 , wherein the first communication channel comprises a synchronous communication channel and the second communication channel comprises an asynchronous communication channel.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
Priority Claims (1)
IN 202241000363 · Jan 4, 2022 · national
Continuity (2)
Continuation 17676860 · Feb 22, 2022
Related Publication 20230216939A1 · Jul 6, 2023