IP Library Granted Patent US 11,595,306
Granted Patent B2
US 11,595,306 · App. 17/380,729 · Granted Feb 28, 2023

Executing workloads across multiple cloud service providers

Inventors: Saulius Ma{hacek over (s)}nauskas (Vilnius, LT); Rokas Bilevi{hacek over (c)}ius (Vilnius, LT); Tadeu{hacek over (s)} Varnas (Vilnius, LT); Augustinas Stirbis (Vilnius, LT); Leonid Kuperman (Tarzana, CA)
Assignee: CAST AI Group, Inc.
H04L45/741H04L12/4633H04L12/4641H04L63/029H04L67/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,595,306
App. No.
17/380,729
Granted
Feb 28, 2023
Kind
B2
Abstract

A multi-cloud service system establishes tunnels and network overlays across multiple CSPs while meeting a criterion for a latency threshold. The system conducts a latency benchmarking evaluation across each cloud region for multiple CSPs and based on the latency bench marking evaluation results, the system may identify a group of cloud regions that satisfy a criterion such as predetermined maximum latency threshold or geographical restriction. The system may provision the group of cloud regions by provisioning a tunnel between nodes of the multiple CSPs. The system further establishes an overlay network on top of the tunnel by encapsulating packets using encapsulation end point such as VTEP (VXLAN tunnel end point) over VXLAN (Virtual Extension Local Area Network), which may help to ensure reliable transmission of packets from pod to pod. The system may inject user data into each node to initiate operations across the provisioned nodes using injected user data.

Claims (40)

1. A non-transitory machine-readable medium comprising memory with instructions encoded thereon for provisioning network connectivity between disparate cloud service providers (CSPs), the network connectivity enabling network communication between nodes on the disparate CSPs where network communication between the nodes was not previously enabled, the instructions causing one or more processors to perform operations when executed, the instructions comprising instructions to:

receive, from a user, credentials for two or more CSPs;

identify CSP regions for each of the two or more CSPs that satisfy a criterion;

provision a tunnel between nodes of the two or more CSPs;

provision an overlay network on top of the tunnel, the provisioning of the overlay network comprising:

generating a routing table comprising static IP ranges of pods of the nodes on each of the CSPs;

applying an encapsulation scheme to the overlay network that enables pod-to-pod communication across the disparate CSPs notwithstanding the pods comprising applications that each have their own addressing scheme based on internal domain names; and

establishing a network infrastructure of the overlay network for compute resources to be communicated between the two or more CSPs over a virtual private network (VPN), wherein provisioning the overlay network comprises installing a software module of the overlay network to each node and opening a firewall port on each node;

inject user data into each node, wherein injecting the user data into each node comprises injecting tokens, certificates, and Internet Protocol (IP) addresses into each node based on the credentials; and

initiate operations across the provisioned nodes using the injected user data.

2. The non-transitory machine-readable medium of claim 1 , wherein the criterion is a maximum latency criterion for network communications travelling between the CSP regions, and wherein the instructions further comprise instructions to select the nodes of the two or more CSPs based on the nodes being within the identified CSP regions.

3. The non-transitory machine-readable medium of claim 1 , wherein the pods of the nodes comprise applications operating on a given node, each application having a respective addressing scheme based on internal domain names.

4. The non-transitory machine-readable medium of claim 3 , wherein provisioning the overlay network comprises generating an encapsulation scheme that enables pod-to-pod communications across the two or more CSPs notwithstanding each of the applications having a respective network naming scheme.

5. A method for provisioning network connectivity between disparate cloud service providers (CSPs), the network connectivity enabling network communication between nodes on the disparate CSPs where network communication between the nodes was not previously enabled, the method comprising:

receiving, from a user, credentials for two or more CSPs;

identifying CSP regions for each of the two or more CSPs that satisfy a criterion;

provisioning a tunnel between nodes of the two or more CSPs;

provisioning an overlay network on top of the tunnel, the provisioning of the overlay network comprising:

generating a routing table comprising static IP ranges of pods of the nodes on each of the CSPs;

applying an encapsulation scheme to the overlay network that enables pod-to-pod communication across the disparate CSPs notwithstanding the pods comprising applications that each have their own addressing scheme based on internal domain names; and

establishing a network infrastructure of the overlay network for compute resources to be communicated between the two or more CSPs over a virtual private network (VPN), wherein provisioning the overlay network comprises installing a software module of the overlay network to each node and opening a firewall port on each node;

injecting user data into each node, wherein injecting the user data into each node comprises injecting tokens, certificates, and Internet Protocol (IP) addresses into each node based on the credentials; and

initiating operations across the provisioned nodes using the injected user data.

6. The method of claim 5 , wherein the criterion is a maximum latency criterion for network communications travelling between the CSP regions, and wherein the method further comprises selecting the nodes of the two or more CSPs based on the nodes being within the identified CSP regions.

7. The method of claim 5 , wherein the pods of the nodes comprise applications operating on a given node, each application of the applications having a respective addressing scheme based on internal domain names.

8. The method of claim 7 , wherein provisioning the overlay network comprises generating an encapsulation scheme that enables pod-to-pod communications across the two or more CSPs notwithstanding each of the applications having a respective network naming scheme.

9. A system comprising:

a processor; and a non-transitory computer-readable storage medium storing instructions for provisioning network connectivity between disparate cloud service providers (CSPs), the network connectivity enabling network communication between nodes on the disparate CSPs where network communication between the nodes was not previously enabled, the instructions when executed by the processor cause the processor to perform steps comprising:

receiving, from a user, credentials for two or more CSPs;

identifying CSP regions for each of the two or more CSPs that satisfy a criterion;

provisioning a tunnel between nodes of the two or more CSPs;

provisioning an overlay network on top of the tunnel, the provisioning of the overlay network comprising:

generating a routing table comprising static IP ranges of pods of the nodes on each of the CSPs;

applying an encapsulation scheme to the overlay network that enables pod-to-pod communication across the disparate CSPs notwithstanding the pods comprising applications that each have their own addressing scheme based on internal domain names; and

establishing a network infrastructure of the overlay network for compute resources to be communicated between the two or more CSPs over a virtual private network (VPN), wherein provisioning the overlay network comprises installing a software module of the overlay network to each node and opening a firewall port on each node;

injecting user data into each node, wherein injecting the user data into each node comprises injecting tokens, certificates, and Internet Protocol (IP) addresses into each node based on the credentials; and

initiating operations across the provisioned nodes using the injected user data.

10. The system of claim 9 , wherein the criterion is a maximum latency criterion for network communications travelling between the CSP regions, and wherein the steps further comprise selecting the nodes of the two or more CSPs based on the nodes being within the identified CSP regions.

11. The system of claim 9 , wherein the pods of the nodes comprise applications operating on a given node, each application of the applications having a respective addressing scheme based on internal domain names.

12. The system of claim 11 , wherein provisioning the overlay network comprises generating an encapsulation scheme that enables pod-to-pod communications across the two or more CSPs notwithstanding each of the applications having a respective network naming scheme.

Assignments (2)
SECURITY INTEREST Recorded Sep 26, 2025
From: CAST AI GROUP, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 072393/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2021
From: MASNAUSKAS, SAULIUS; BILEVICIUS, ROKAS; VARNAS, TADEUS; STIRBIS, AUGUSTINAS; KUPERMAN, LEONID
To: CAST AI GROUP, INC.
Reel/Frame 056979/0340 →
Continuity (2)
Provisional Application 63054978 · Jul 22, 2020
Related Publication 20220030051A1 · Jan 27, 2022
Cited By (3)
US 12,299,500 US 12,591,466 US 12,613,729