IP Library › Granted Patent US 9,917,912
Granted Patent B2
US 9,917,912 · App. 14/874,948 · Granted Mar 13, 2018

Efficient communication within hybrid cloud system

Inventors: Michael Almond (Boulder Creek, CA); Dongwei Feng (Mountain View, CA); Abhishek Soni (San Jose, CA); Jagjit Singh Sethi (Sunnyvale, CA); Balamurugan Kannan (Cupertino, CA)
Assignee: VMware, Inc.
H04L67/26H04L63/08H04L67/1002H04L67/141
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,917,912
App. No.
14/874,948
Granted
Mar 13, 2018
Kind
B2
Abstract

Techniques for communicating between service nodes within a hybrid cloud computing system. These techniques include utilizing a messaging provider within an off-premise computing system to pass messages between off-premise servers holding a connection to an on-premise computer system and off-premise servers holding a connection to an end user computer system.

Claims (76)

1. A method for communicating using a hybrid cloud computing system that includes at least one on-premise computer system and at least one off-premise computer system, the method comprising:

selecting, to receive a request, a first off-premise computer system of the hybrid cloud computing system, based on load balancing parameters managed by a load balancer;

transmitting the request from the load balancer to the selected off-premise computer system;

identifying an on-premise computer system of the hybrid cloud computing system to process the request;

transmitting a message constructed based on the request to a request queue associated with the on-premise computer system;

pushing the message to a second off-premise computer system of the hybrid cloud computing system that has an open connection to the on-premise computer system; and

transmitting the message to the on-premise computer system,

wherein the on-premise computer system is configured to not accept incoming connections, and

wherein the first off-premise computer system and the second off-premise computer system are either the same or different off-premise computer systems.

2. The method of claim 1 , further comprising:

constructing the message by including the request and a response unique identifier identifying an external computer system from which the request was received.

3. The method of claim 1 , further comprising:

receiving a response message from the on-premise computer system;

transmitting the response message to a response queue associated with an external computer system from which the request was received; and

pushing the response message to the first off-premise computer system.

4. The method of claim 1 , further comprising:

establishing a connection from the on-premise computer system to the first off-premise computer system.

5. The method of claim 4 , further comprising:

responsive to establishing the connection, creating a message subscriber for the first off-premise computer system that is subscribed to a request queue associated with the on-premise computer system.

6. The method of claim 4 , further comprising:

responsive to establishing the connection, transmitting an authentication token from the on-premise computer system to the first off-premise computer system, the authentication token securely identifying the on-premise computer system to the first off-premise computer system.

7. The method of claim 1 , further comprising:

creating a message subscriber for the first off-premise computer system that is subscribed to a response queue associated with an external computer system from which the request originates.

8. The method of claim 1 , further comprising:

processing, by a local service of the on-premise computer system, the message, to generate a response.

9. The method of claim 8 , further comprising:

transmitting, via a communication facade, the response to the first off-premise computer system.

10. The method of claim 1 , wherein:

constructing the message further comprises including an authentication token in the message, the authentication token being associated with a user that initiated the request, the authentication token securely identifying the user to the on-premise computer system; and

the method further comprises:

signing the message to generate a message signature, by the second off-premise computer system to securely identify the second off-premise computer system as originator of the message, and

prior to processing the message by the on-premise computer system, validating the message signature by the on-premise computer system.

11. A hybrid cloud system, comprising:

a first off-premise computer system;

a second off-premise computer system that has an open connection to an on-premise computer system of the hybrid cloud system;

a messaging service coupled to the first off-premise computer system; and

a load balancer coupled between the off-premise computer system and the on-premise computer system, wherein the load balancer:

selects the first off-premise computer system to receive a request based on load balancing parameters, and

responsive to selecting the first off-premise computer system, transmits the request to the first off-premise computer system,

wherein the first off-premise computer system:

identifies the on-premise computer system of the hybrid cloud system to process the request, and

transmits a message constructed based on the request to a request queue associated with the on-premise computer system and included in the messaging service.

wherein the messaging service is configured to push the message to the second off-premise computer system,

wherein the second off-premise computer system transmits the message to the on-premise computer system,

wherein the on-premise computer system rejects incoming connections, and

wherein the first off-premise computer system and the second off-premise computer system are either the same or different off-premise computer systems.

12. The system of claim 11 , wherein the first off-premise computer system

constructs the message by including the request and a response unique identifier identifying an external computer system from which the request was received.

13. The system of claim 11 , wherein:

the second off-premise computer system:

receives a response message from the on-premise computer system;

transmits the response message to a response queue of the messaging service, the response queue being associated with an external computer system from which the request was received; and

the messaging service is further configured to push the response message to the first off-premise computer system.

14. The system of claim 11 , wherein the on-premise computer system

establishes a connection from the on-premise computer system to the first off-premise computer system.

15. The system of claim 14 , wherein the first off-premise computer system

creates, in response to establishing the connection, a message subscriber for the first off-premise computer system that is subscribed to a request queue associated with the on-premise computer system.

16. The system of claim 14 , wherein the on-premise computer system

transmits, in response to establishing the connection, an authentication token to the first off-premise computer system, the authentication token securely identifying the on-premise computer system to the first off-premise computer system.

17. The system of claim 11 , wherein the first off-premise computer system

creates a message subscriber for the first off-premise computer system that is subscribed to a response queue associated with an external computer system from which the request originates.

18. The system of claim 11 , wherein

a local service of the on-premise computer system, processes the message, to generate a response.

19. The system of claim 11 , wherein:

the first off-premise computer system constructs the message by including an authentication token in the message, the authentication token being associated with a user that initiated the request, the authentication token securely identifying the user to the on-premise computer system;

the second off-premise computer system signs the message to generate a message signature, to securely identify the second off-premise computer system as originator of the message, and

the on-premise computer system validates the message signature by the on-premise computer system prior to processing the message.

20. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, causes the one or more processors to perform a method, the method comprising:

selecting, to receive a request, a first off-premise computer system of the hybrid cloud computing system, based on load balancing parameters managed by a load balancer;

transmitting the request from the load balancer to the selected off-premise computer system;

identifying an on-premise computer system of the hybrid cloud computing system to process the request;

transmitting a message constructed based on the request to a request queue associated with the on-premise computer syste

pushing the message to a second off-premise computer system of the hybrid cloud computing system that has an open connection to the on-premise computer system; and

transmitting the message to the on-premise computer system,

wherein the on-premise computer system is configured to not accept incoming connections, and

wherein the first off-premise computer system and the second off-premise computer system are either the same or different off-premise computer systems.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2015
From: ALMOND, MICHAEL; FENG, DONGWEI; SONI, ABHISHEK; SETHI, JAGJIT SINGH; KANNAN, BALAMURUGAN
To: VMWARE, INC.
Reel/Frame 036736/0554 →
Continuity (1)
Related Publication 20170099362A1 · Apr 6, 2017