IP Library Granted Patent US 10,579,407
Granted Patent B2
US 10,579,407 · App. 15/338,001 · Granted Mar 3, 2020

Systems and methods for deploying microservices in a networked microservices system

Inventors: Ratinder Paul Singh Ahuja (Saratoga, CA); Manuel Nedbal (Santa Clara, CA); Rajiv Sreedhar (Sunnyvale, CA)
Assignee: SHIELDX NETWORKS, INC.
G06F9/45558H04L63/02H04L63/166G06F2009/4557G06F2009/45587
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,579,407
App. No.
15/338,001
Granted
Mar 3, 2020
Kind
B2
Abstract

Systems and methods are described herein generally relating to network security, and in particular, embodiments described relate to systems and methods for deploying microservices in a networked microservices system. For example, a method is disclosed, which calls for receiving a request to instantiate a microservice, selecting a suitable virtual machine (VM), wherein the selecting comprises calculating the suitability of the virtual machine based on a property load and a property weight, deploying the microservice on the selected virtual machine, configuring the microservice to communicate with an interface microservice, and configuring the microservice to perform security processing on packets processed within a security service.

Claims (41)

1. A method performed by a plurality of networked servers each having a memory, a hypervisor, and a plurality of virtual machines (VMs), the method comprising:

measuring central processing unit (CPU), network, and memory utilization of each of the servers;

generating, for each of the VMs, a suitability value comprising a sum of a plurality of weighted server properties each multiplying one of the measured CPU, network, and memory utilization by a weight, and a plurality of weighted VM properties each multiplying a second weight by one of the same properties as the weighted server properties, as seen by the VM;

receiving a request to instantiate microservices of a security service;

selecting the most suitable VM based on the generated suitability values;

deploying the microservices on the selected VM to perform security processing on packets within the security service comprising an interface microservice, a transmission control protocol/Internet protocol (TCP/IP) security microservice, a deep packet inspection (DPI) security microservice, and a secure sockets layer (SSL) security microservice; and

receiving packets and performing security processing by the deployed microservices.

2. The method of claim 1 , wherein the interface microservice is to capture network traffic from a physical server.

3. The method of claim 1 , wherein when one of the plurality of weighted VM properties is zero, the corresponding weighted server property is to be treated as zero.

4. The method of claim 1 , wherein the deploying the microservice includes creating a new microservice.

5. The method of claim 1 , wherein the selected virtual machine has been instantiated before the receiving the request.

6. The method of claim 1 , wherein the selected virtual machine is a newly instantiated virtual machine.

7. A system comprising:

a plurality of networked servers each having a memory and a plurality of VMs;

a plurality of microservices of a security service running on the plurality of VMs, each microservice to periodically obtain CPU, network, and memory utilization measurements from one or more of: an operating system, a hypervisor, or its own counters and statistics; and

measuring CPU, network, and memory utilization of each of the servers,

wherein the system is to:

generate and maintain CPU, network, and memory utilization statistics;

generate, for each VM, a suitability value comprising a sum of a plurality of weighted server properties each multiplying one of the measured CPU, network, and memory utilization by a weight, and a plurality of weighted VM properties each multiplying a second weight by one of the same properties as the weighted server properties, as seen by the VM;

receive a request to instantiate microservices of the security service;

select the most suitable VM based on the generated suitability values;

deploy the microservices on the selected VM to perform security processing on packets within a security service comprising an interface microservice, a transmission control protocol/Internet protocol (TCP/IP) security microservice, a deep packet inspection (DPI) security microservice, and a secure sockets layer (SSL) security microservice; and

receive packets and perform security processing by the deployed microservices.

8. The system of claim 7 , wherein the interface microservice is to capture network traffic from a physical server.

9. The system of claim 7 , wherein when one of the plurality of weighted VM properties is zero, the corresponding weighted server property is to be treated as zero.

10. The system of claim 7 , wherein the deploying the microservice includes creating a new microservice.

11. The system of claim 7 , wherein the selected virtual machine has been instantiated before the receiving the request.

12. The system of claim 7 , wherein the selected virtual machine is a newly instantiated virtual machine.

13. A non-transitory computer-readable medium containing instructions that, when performed by a system comprising a plurality of networked servers each having a memory, a hypervisor, and a plurality of virtual machines (VMs), cause the system to respond by:

measuring CPU, memory, and input/output (I/O) utilization of each of the servers;

generating and maintaining CPU, network, and memory utilization statistics;

generating, for each of the VMs, a suitability value comprising a sum of a plurality of weighted server properties each multiplying one of the measured CPU, network, and memory utilization by a weight, and a plurality of weighted VM properties each multiplying a second weight by one of the same properties as the weighted server properties, as seen by the VM;

receiving a request to instantiate microservices of a security service;

selecting the most suitable VM based on the generated suitability values;

deploying the microservices on the selected VM to perform security processing on packets within the security service comprising an interface microservice, a transmission control protocol/Internet protocol (TCP/IP) security microservice, a deep packet inspection (DPI) security microservice, and a secure sockets layer (SSL) security microservice; and

receiving packets and performing security processing by the deployed microservices.

14. The non-transitory computer-readable medium of claim 13 , wherein the most suitable VM is not necessarily the least loaded VM.

15. The non-transitory computer-readable medium of claim 13 , wherein the interface microservice is to capture network traffic from a physical server.

16. The non-transitory computer-readable medium of claim 13 , wherein when one of the plurality of weighted VM properties is zero, the corresponding weighted server property is to be treated as zero.

17. The non-transitory computer-readable medium of claim 13 , wherein the deploying the microservice includes creating a new microservice.

18. The non-transitory computer-readable medium of claim 13 , wherein the selected virtual machine has been instantiated before the receiving the request.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2021
From: SHIELDX NETWORKS, INC.
To: FORTINET, INC.
Reel/Frame 055661/0470 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2021
From: COMERICA BANK
To: SHIELDX NETWORKS, INC.
Reel/Frame 055585/0847 →
SECURITY INTEREST Recorded Jul 27, 2020
From: SHIELDX NETWORKS, INC.
To: COMERICA BANK
Reel/Frame 053313/0544 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: AHUJA, RATINDER PAUL SINGH; NEDBAL, MANUEL; SREEDHAR, RAJIV
To: SHIELDX NETWORKS, INC.
Reel/Frame 040950/0306 →
Continuity (1)
Related Publication 20180121221A1 · May 3, 2018
Cited By (4)
US 12,261,875 US 12,549,571 US 12,627,667 US 12,645,922