IP Library Granted Patent US 10,601,768
Granted Patent B2
US 10,601,768 · App. 15/483,154 · Granted Mar 24, 2020

Automated steady state traffic management

Inventors: Marcel Eric Schechner Flores (Los Angeles, CA); Colin Rasor (Santa Monica, CA)
Assignee: Verizon Digital Media Services Inc.
H04L61/1511H04L41/5025H04L41/147H04L41/509H04L41/5009H04L43/0817H04L43/0882
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,601,768
App. No.
15/483,154
Granted
Mar 24, 2020
Kind
B2
Abstract

Automated steady state traffic management is provided for a distributed platform through immediate or real-time simulation of the capacity and performance impacts associated with shifting different load increments to different Points-of-presence (PoPs) of the distributed platform and by automatic and dynamic traffic management reconfiguration in response to an optimal set of changes identified from the simulation. A system produces data models to track the current distributed platform state and detect deviates from the steady state. Using the data models and scoring functions, the system scores the impact that different shifts of load to different destinations have on the overall distributed platform. The scoring reveals the optimal set of traffic management configuration changes that restore the steady state with the least capacity and performance impact.

Claims (32)

1. A computer-implemented method for maintaining a steady state across a plurality of points-of-presence (PoPs) of a distributed platform, the method comprising:

monitoring at least one state metric relating to performance or resource utilization at each of the plurality of PoPs, wherein each PoP of the plurality of PoPs comprises a plurality of servers operating to serve content to a different geographic region than other PoPs;

detecting deviation from the steady state in response to identifying, from said monitoring, that the at least one state metric at a first PoP of the plurality of PoPs corresponds to a particular amount of load that is in excess of a threshold;

simulating state metric impact and performance impact across the plurality of PoPs resulting from restoring the steady state with different traffic shifting combinations defined in each of a plurality of perturbations, wherein each perturbation of the plurality of perturbations specifies shifting a different amount of load, that is placed on the first PoP by a different subset of domains or customers, to one or more other PoPs;

determining an optimal perturbation from the plurality of perturbations based on said simulating, wherein said determining comprises selecting a perturbation, that minimizes one or more of the state metric impact and the performance impact, as a result of shifting away from the first PoP, one or more specific domains or customers that place a total load on the first PoP equal to the particular amount of load; and

modifying traffic management operation according to the optimal perturbation identified from said determining, wherein the optimal perturbation minimizes the state metric impact and the performance impact relative to other perturbations from the plurality of perturbations, and wherein said modifying comprises shifting requests directed to the one or more domains or customers from the first PoP to at least one other PoP of the plurality of PoPs as identified in the optimal perturbation.

2. The computer-implemented method of claim 1 , wherein the optimal perturbation comprises at least a different second PoP of the plurality of PoPs with available capacity to absorb the particular amount of load, and wherein the traffic shifting combinations defined by other perturbations of the plurality of perturbations change at least one of a load amount to shift or one or more PoPs from the plurality of PoPs to absorb shifted load.

3. The computer-implemented method of claim 1 further comprising scoring each perturbation of the plurality of perturbations based on (i) an amount of load shifted away from the first PoP to one or more other PoPs and (ii) performance across the plurality of PoPs resulting from the load shifted away from the first PoP.

4. The computer-implemented method of claim 1 further comprising generating a plurality of data models, each data model of the plurality of data models tracking total load at a particular PoP of the plurality of PoPs, and a load contribution from each of a plurality of domains to the total load, wherein each domain of the plurality of domains is accessible from the first PoP.

5. The computer-implemented method of claim 4 , wherein modifying the traffic management operation comprises changing at least one Domain Name System (DNS) record at a DNS server, wherein said DNS record resolves requests directed to at least one domain of the plurality of domains with a load contribution at least equal to an excess amount of load at the first PoP exceeding the threshold, and wherein the load contribution of the at least one domain is defined in the plurality of data models.

6. The computer-implemented method of claim 1 , wherein modifying the traffic management operation comprises changing at least one Domain Name System (DNS) record from resolving requests directed to at least a particular domain from an address of the first PoP to an address of the at least one other PoP.

7. The computer-implemented method of claim 1 further comprising setting a time-to-live (TTL) parameter with said modifying.

8. The computer-implemented method of claim 7 further comprising reverting said requests from the at least one other PoP back to the first PoP at expiration of the TTL parameter.

9. The computer-implemented method of claim 1 , wherein modifying the traffic management operation comprises resolving a subset of requests that produce at least the particular amount of load from the first PoP to the at least one other PoP, wherein the at least one other PoP serves a particular geographic region served by the first PoP with faster performance than other PoPs of the plurality of PoPs with available capacity to absorb the particular amount of load.

10. The computer-implemented method of claim 1 , wherein modifying the traffic management operation comprises removing a particular address from Border Gateway Protocol (BGP) route advertisements issued by the first PoP and adding the particular address in BGP route advertisements issued by the at least one other PoP.

11. A method for maintaining a steady state across different points-of-presence (PoPs) of a distributed platform, the method comprising:

generating a plurality of data models based on metrics aggregated from the plurality of PoPs, each of the plurality of data models tracking total load at a different PoP of the plurality of PoPs and further tracking load contributions from each of a plurality of content served from the respective PoP;

detecting deviation from a steady state in response to the plurality of data models tracking the total load at a first PoP of the plurality of PoPs being in excess of a steady state threshold;

computing a capacity score and a performance score for each of a plurality of perturbations, wherein each perturbation of the plurality of perturbations corresponds to a different shift of a different load amount, that is sufficient to restore the steady state, from the first PoP to a different set of the plurality of PoPs, and wherein said computing comprises scoring each shift based on simulated resulting capacity and performance across the plurality of PoPs;

selecting an optimal perturbation from the plurality of perturbations with a highest total capacity score and performance score; and

modifying Domain Name System (DNS) operation based on the optimal perturbation, wherein the optimal perturbation shifts a particular load amount away from the first PoP to at least a different second PoP from the plurality of PoPs, and wherein modifying the DNS operation comprises resolving requests directed to a subset of the plurality of content served from the first PoP to the at least second PoP, and wherein load contributions of the subset of content as provided in the data model for the first PoP match the particular load amount of the optimal perturbation.

12. The method of claim 11 , wherein modifying the DNS operation comprises changing at least one DNS record controlling resolution of a set of domains associated with the subset of content.

13. The method of claim 11 further comprising serving the subset of content from the first PoP in response to a first set of requests for said subset of content originating, before said modifying, from clients operating in a particular geographic region serviced by the first PoP, and serving the subset of content from the second PoP in response to a subsequent second set of requests for said subset of content originating, after said modifying, from said clients operating in the particular geographic region.

14. The method of claim 11 further comprising resolving a first set of DNS queries, that originate from clients operating in a particular geographic region serviced by the first PoP before said modifying, with a first address of the first PoP, and resolving a subsequent second set of DNS queries, that originate from the clients operating in the particular geographic region after said modifying, with a different second address of the second PoP.

15. The method of claim 11 further comprising aggregating said metrics from different sets of distribution servers forming each of the plurality of PoPs.

16. The method of claim 11 , wherein computing the performance score comprises lowering said performance score of each particular perturbation of the plurality of perturbations in response to each additional network hop traversed in delivering said subset of content from a set of PoPs of the particular perturbation to a particular geographic region than traversed in delivering said subset of content from the first PoP to the particular geographic region.

17. The method of claim 16 , wherein computing the capacity score comprises lowering said capacity score of each particular perturbation of the plurality of perturbations in response to additional amounts of load the particular perturbation shifts away from the first PoP in excess of load to restore said steady state.

18. A system for maintaining a steady state across different points-of-presence (PoPs) of a distributed platform, the system comprising:

a state engine generating an alert based on monitoring content delivery performance and available capacity at each PoP of the plurality of PoPs, and the content delivery performance or the available capacity at the first PoP of the plurality of PoPs deviating from a steady state;

a policy engine simulating, in response to said alert, expected content delivery performance and expected available capacity at each PoP of the plurality of PoPs resulting from shifting each of a plurality of traffic increments away from the first PoP to each of different sets of the plurality of PoPs; and

at least one Domain Name Server (DNS) shifting an optimal amount of traffic from the first PoP to at least a second PoP from the plurality of PoPs based on at least one DNS record change, wherein said optimal amount of traffic and the at least second PoP are identified as providing expected content delivery performance and expected available capacity across the plurality of PoPs that is better than expected content delivery performance and expected available capacity resulting from shifting other traffic increments to other sets of PoPs based on said simulating of the policy engine, and wherein the at least one DNS record change results in the at least one DNS server resolving requests directed to a subset of the plurality of content served from the first PoP to the at least one second PoP.

19. The system of claim 18 further comprising different sets of distribution servers forming the plurality of PoPs, wherein the subset of content is served from a first set of distribution servers forming the first PoP before said shifting, and wherein the subset of content is served from a different second set of distribution servers forming the at least one second PoP after said shifting.

Assignments (10)
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0406] Recorded Jul 9, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: UPLYNK, INC. (F/K/A EDGIO, INC.)
Reel/Frame 071875/0105 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0212] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071817/0877 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 068763/0276] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071818/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2025
From: EDGIO, INC.
To: DRNC HOLDINGS, INC.
Reel/Frame 070071/0327 →
PATENT SECURITY AGREEMENT Recorded Aug 23, 2024
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 068763/0276 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 065597/0212 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 065597/0406 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2022
From: EDGECAST INC.
To: EDGIO, INC.
Reel/Frame 061738/0972 →
CHANGE OF NAME Recorded Mar 15, 2022
From: VERIZON DIGITAL MEDIA SERVICES INC.
To: EDGECAST INC.
Reel/Frame 059367/0990 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2017
From: FLORES, MARCEL ERIC SCHECHNER; RASOR, COLIN
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 041939/0161 →
Continuity (1)
Related Publication 20180295063A1 · Oct 11, 2018