IP Library Patent Application 17729776
Patent Application
App. No. 17/729,776

COLLECTIVE SCALING OF APPLICATIONS

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 None
App. No.
17/729,776
Abstract

Some embodiments provide a method for scaling a service chain that includes multiple services, each of which is provided by one or more instances of the service. The method identifies that a first service in the service chain has received a number of requests. For each service in the service chain, the method (i) identifies a scaling factor that estimates a portion of requests received at the first service that will be subsequently received at the service and (ii) deploys a number of additional instances of the service based on the identified scaling factor for the service and the number of requests received at the first service.

Claims (40)

1 . A method for scaling a service chain that comprises a plurality of services, each service provided by one or more instances of the service, the method comprising:

identifying that a first service in the service chain has received a number of requests;

for each service in the service chain:

identifying a scaling factor that estimates a portion of requests received at the first service that will be subsequently received at the service; and

deploying a number of additional instances of the service based on the identified scaling factor for the service and the number of requests received at the first service.

2 . The method of claim 1 further comprising, prior to identifying that the first service chain has received the number of requests, computing the scaling factor for each service in the service chain.

3 . The method of claim 2 , wherein:

computing the scaling factors comprises defining a graph of the service chain; and

each service in the service chain is represented as a node of the graph and each direct path from a particular service to another particular service in the service chain is represented as an edge of the graph from the node representing the particular service to the node representing the other particular service.

4 . The method of claim 3 , wherein each edge representing a direct path from a particular service to another particular service has an associated coefficient that specifies an estimate of a percentage of requests received at the particular service that are sent to the other particular service.

5 . The method of claim 4 , wherein computing the scaling factor for each respective service comprises:

identifying each path through the service chain from first service to the respective service;

for each identified path to the respective service, multiplying each coefficient along the identified path to compute a factor for the path; and

adding together the factors for all of the identified paths to the respective service to compute the scaling factor for the respective service.

6 . The method of claim 4 , wherein the associated coefficients are user-specified.

7 . The method of claim 4 , wherein the associated coefficients are calculated based on measurements from the services in the service chain.

8 . The method of claim 1 , wherein identifying that the first service has received the number of requests comprises receiving ingress metrics measured by a load balancer that processes incoming traffic and forwards the incoming traffic to the first service in the service chain.

9 . The method of claim 1 , wherein the scaling factors are based on percentages of the requests being dropped or blocked by the services in the service chain.

10 . The method of claim 1 , wherein the services in service chain are virtualized network functions (VNFs) in a telecommunications network.

11 . The method of claim 10 , wherein at least a subset of the requests are audio calls and video calls.

12 . The method of claim 10 , wherein the services comprise at least one of a firewall, an intrusion detection and prevention system, a load balancer, a forwarding element, and a virtual private network (VPN) edge.

13 . The method of claim 10 , wherein at least a subset of the VNFs are container network functions.

14 . A non-transitory machine-readable medium storing a program which when executed by at least one processing unit scales a service chain that comprises a plurality of services, each service provided by one or more instances of the service, the program comprising sets of instructions for:

identifying that a first service in the service chain has received a number of requests; and

for each service in the service chain:

identifying a scaling factor that estimates a portion of requests received at the first service that will be subsequently received at the service; and

deploying a number of additional instances of the service based on the identified scaling factor for the service and the number of requests received at the first service.

15 . The non-transitory machine-readable medium of claim 14 , wherein the program further comprises a set of instructions for computing the scaling factor for each service in the service chain prior to identifying that the first service chain has received the number of requests.

16 . The non-transitory machine-readable medium of claim 15 , wherein:

the set of instructions for computing the scaling factors comprises a set of instructions for defining a graph of the service chain;

each service in the service chain is represented as a node of the graph and each direct path from a particular service to another particular service in the service chain is represented as an edge of the graph from the node representing the particular service to the node representing the other particular service; and

each edge representing a direct path from a particular service to another particular service has an associated coefficient that specifies an estimate of a percentage of requests received at the particular service that are sent to the other particular service.

17 . The non-transitory machine-readable medium of claim 16 , wherein the set of instructions for computing the scaling factor for each respective service comprises sets of instructions for:

identifying each path through the service chain from first service to the respective service;

for each identified path to the respective service, multiplying each coefficient along the identified path to compute a factor for the path; and

adding together the factors for all of the identified paths to the respective service to compute the scaling factor for the respective service.

18 . The non-transitory machine-readable medium of claim 14 , wherein the set of instructions for identifying that the first service has received the number of requests comprises a set of instructions for receiving ingress metrics measured by a load balancer that processes incoming traffic and forwards the incoming traffic to the first service in the service chain.

19 . The non-transitory machine-readable medium of claim 14 , wherein the scaling factors are based on percentages of the requests being dropped or blocked by the services in the service chain.

20 . The non-transitory machine-readable medium of claim 14 , wherein the services in service chain are virtualized network functions (VNFs) in a telecommunications network.

21 . The non-transitory machine-readable medium of claim 20 , wherein at least a subset of the VNFs are container network functions.

Assignments (2)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2022
From: BISWAS, SUDIPTA; DAS, MONOTOSH; SHAW, HEMANT KUMAR; CHAUHAN, SHUBHAM
To: VMWARE, INC.
Reel/Frame 059731/0741 →