IP Library Granted Patent US 10,686,758
Granted Patent B2
US 10,686,758 · App. 15/636,692 · Granted Jun 16, 2020

Elastic outbound gateway

Inventor: Vincent Maurice Landgraf (Keltern, DE)
Assignee: Sophos Limited
H04L63/0218H04L12/66H04L41/0806H04L41/0893H04L63/0263H04L63/145H04L67/1036H04L43/16H04L63/0272
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,686,758
App. No.
15/636,692
Granted
Jun 16, 2020
Kind
B2
Abstract

In general, in an aspect, a method for providing an outbound gateway protection includes provisioning one or more worker gateways located in a first gateway virtual private cloud, the one or more worker gateways sharing configuration data with the controller gateway, provisioning one or more load balancer gateways in one or more client virtual clouds, the one or more client virtual clouds each comprising one or more clients, the one or more load balancer gateways distributing client requests among the worker gateways, assigning groups of the one or more clients to one of the one or more load balancer gateways based on requests from a majority of the worker gateways, and communicating outbound network traffic from the clients via the assigned load balancer gateways.

Claims (24)

1. A method for providing an outbound gateway system, comprising:

provisioning one or more worker gateways located in a first gateway virtual private cloud;

provisioning one or more load balancer gateways in one or more client virtual clouds, the one or more client virtual clouds each comprising one or more clients, the one or more load balancer gateways communicating with an external network through the one or more worker gateways to distribute client requests among the worker gateways;

receiving, from a controller gateway, configuration data for the one or more worker gateways and the one or more load balancer gateways;

receiving a respective routing request as a vote from each of the one or more worker gateways, wherein each worker gateway votes when the respective worker gateway determines that changes to assignment of the one or more load balancer gateways are needed;

assigning groups of the one or more clients to one of the one or more load balancer gateways based on votes for the one of the one or more load balancer gateways from a majority of the worker gateways; and

communicating outbound network traffic from the clients to the external network via the one of the one or more load balancer gateways.

2. A network protection system, comprising:

one or more worker gateways provisioned in a first gateway virtual private cloud, each worker gateway including a first memory having stored thereon computer executable code that, when executing on one or more computing devices, causes the respective worker gateway to request new routing as a vote;

one or more client virtual clouds comprising one or more clients and one or more load balancer gateways, wherein each load balancer gateway includes a second memory having stored thereon computer executable code that, when executing on the one or more computing devices, cause the one or more load balancer gateways to communicate with an external network through the one or more worker gateways to distribute client requests among the worker gateways; and

a controller gateway including a third memory having stored thereon computer executable code that, when executing on one or more computing devices, cause the one or more computing devices to provide configuration data for the one or more worker gateways and the one or more load balancer gateways, wherein the first memory of each of the one or more worker gateways has stored thereon computer executable code that, when executing on the one or more computing devices causes the respective worker gateway to vote when the respective worker gateway determines that changes to assignment of the one or more load balancer gateways are needed, and the third memory of the controller gateway has stored thereon computer executable code that, when executing on the one or more computing devices, causes the controller gateway to assign the one or more clients to one of the load balancer gateways based on votes for the one of the one or more load balancer gateways from a majority of the worker gateways, and and the second memory having stored thereon computer executable code that, when executing on the one or more computing devices, causes the respective load balancer gateway to communicate outbound network traffic to the external network from the one or more clients assigned to the respective load balancer gateway.

3. The network protection system of claim 2 , wherein the one or more worker gateways provide network protection for outbound traffic.

4. The network protection system of claim 2 , wherein the one or more worker gateways are located in the first gateway virtual private cloud and a second gateway virtual private cloud.

5. The network protection system of claim 2 , wherein each load balancer gateway reports status information to the controller gateway.

6. The network protection system of claim 2 , wherein each routing request included in the vote from the worker gateways meets a threshold age.

7. The network protection system of claim 6 , wherein the first memory has stored thereon computer executable code that, when executing on the one or more computing devices, causes the respective worker gateway to send a respective routing request upon a failure of one of the load balancer gateways to report.

8. The network protection system of claim 6 , wherein each routing request in the vote from the worker gateways is counted by each load balancer gateway.

9. A system for cloud network protection, comprising:

a first non-transitory computer-readable medium having stored thereon computer executable code including a first template for a worker gateway deployable in a first virtual private cloud, the computer executable code of the first template for the worker gateway including instructions that, when executing on one or more computing devices, cause the worker gateway to receive outbound network traffic; and

a second non-transitory computer-readable medium further having stored thereon computer executable code including a second template for a load balancer gateway deployable in a second virtual private cloud different from the first virtual private cloud, the computer executable code of the first template for the worker gateway further including instructions that, when executing on the one or more computing devices, cause the worker gateway to control network traffic between the second virtual private cloud and an external network, to request new routing as a vote, and to vote when the worker gateway determines that changes to assignment of the load balancer gateway are needed, and the second template for the load balancer gateway further including instructions that, when executing on the one or more computing devices, cause the load balancer gateway to be assigned to one or more clients in the second virtual private cloud based on votes for the load balancer gateway from a majority of worker gateways in the first virtual private cloud, and to communicate the outbound network traffic from the one or more clients to the external network via the load balancer gateway assigned to the one or more clients.

10. The system of claim 9 , wherein the computer executable code for the first template for the worker gateway further includes instructions that, when executing on the one or more computing devices, causes the worker gateway to provide network protection for outbound traffic.

11. The system of claim 9 , wherein the computer executable code for the second template for the load balancer gateway further includes instructions that, when executing on the one or more computing devices, causes the load balancer gateway to report status information to a controller gateway.

12. The system of claim 9 , wherein each routing request from each worker gateway meets a threshold age.

13. The system of claim 12 , wherein the computer executable code for the first template for the worker gateway further includes instructions that, when executing on the one or more computing devices causes the worker gateway to send a request the load balancer gateway upon a failure of the load balancer gateway to report status information to a controller gateway.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 053476/0681 Recorded Mar 9, 2021
From: OWL ROCK CAPITAL CORPORATION, AS COLLATERAL AGENT
To: SOPHOS LIMITED
Reel/Frame 056469/0815 →
PATENT SECURITY AGREEMENT FIRST LIEN Recorded Jul 6, 2020
From: SOPHOS LIMITED
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 053124/0350 →
PATENT SECURITY AGREEMENT SECOND LIEN Recorded Jul 6, 2020
From: SOPHOS LIMITED
To: OWL ROCK CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 053476/0681 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2017
From: LANDGRAF, VINCENT MAURICE
To: SOPHOS LIMITED
Reel/Frame 043714/0220 →
Cited By (1)
US 12,363,073