IP Library Granted Patent US 8,583,769
Granted Patent B1
US 8,583,769 · App. 13/222,598 · Granted Nov 12, 2013

Configuration management repository for a distributed platform

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 8,583,769
App. No.
13/222,598
Granted
Nov 12, 2013
Kind
B1
Abstract

Some embodiments provide a repository that manages configurations for a distributed platform and that automatedly configures servers of the distributed platform with different hierarchical sets of configurations while ensuring integrity and consistency across the servers and in the repository. In some embodiment, the repository includes a data store that stores configurations for a first set of servers that are operated by a first service provider and a second set of servers that are operated by a second service provider. The data store also identifies different sets of configurations to deploy to different sets of servers from the first and second sets of servers. The repository also includes a function processor to automatedly deploy the different sets of configurations to the different sets of servers and to perform functions for updating the configurations in a manner that ensures integrity and consistency.

Claims (32)

1. For a configuration management repository of a distributed platform, the distributed platform operating a plurality of servers that provide content caching and content delivery on behalf of a plurality of distributed platform customers, a method performed by the configuration management repository, the method comprising:

storing a plurality of configurations and a plurality of mappings identifying different sets of the plurality of servers to which each configuration of the plurality of the configurations is deployed, each configuration specifying different customized content caching and delivery operation for a set of servers that is deployed with that configuration;

receiving a modification to a particular configuration of the plurality of configurations;

retrieving a particular mapping for the particular configuration from the plurality of mappings, the particular mapping identifying a set of servers from the plurality of servers to which said particular configuration is deployed; and

automatedly deploying the particular configuration comprising the received modification to the set of servers identified from the particular mapping, said deploying comprising modifying the particular configuration already deployed to the set of servers to alter content caching and delivery functions of the set of servers according to the received modification.

2. The method of claim 1 further comprising storing an unmodified version of the particular configuration and a modified version of the particular configuration to the repository, wherein the modified version of the particular configuration comprises the received modification and the unmodified version of the particular configuration does not comprise the received modification.

3. The method of claim 2 further comprising assigning a first version number to the unmodified version of the particular configuration and assigning a second unique version number to the modified version of the particular configuration.

4. The method of claim 3 , wherein a user specifies a custom value for the second unique version number.

5. The method of claim 2 further comprising monitoring content caching and content delivery performance of the set of servers when configured with the unmodified version of the particular configuration and storing said content caching and content delivery performance in conjunction with the unmodified version of the particular configuration in the repository.

6. The method of claim 5 further comprising monitoring content caching and content delivery performance of the set of servers when configured with the modified version of the particular configuration.

7. The method of claim 6 further comprising automatically reverting to the unmodified version of the particular configuration by deploying the unmodified version of the particular configuration to the set of servers when the content caching and content delivery performance of the set of servers is better when configured with the unmodified version of the particular configuration than when configured with the modified version of the particular configuration.

8. The method of claim 1 further comprising obtaining from each of the identified set of servers at least one timestamp indicating status of the deployment of the particular configuration to the identified set of servers.

9. The method of claim 1 further comprising performing a syntax check of the particular configuration prior to deploying the particular configuration to the identified set of servers.

10. The method of claim 1 further comprising simulating the particular configuration prior to deploying the particular configuration to the identified set of servers.

11. For a configuration management repository of a distributed platform, the distributed platform operating a plurality of servers that provide content caching and content delivery on behalf of a plurality of distributed platform customers, a method performed by the configuration management repository, the method comprising:

tracking a plurality of mappings via the configuration management repository, each mapping identifying a different set of the plurality of servers to which a configuration from a plurality of configurations stored to the configuration management repository is deployed, each configuration specifying different customized content caching and delivery operation for a set of servers that is deployed with that configuration;

providing a first function for checking out a particular configuration of the plurality of configurations that is stored to the repository, wherein invocation of the first function produces a copy of said particular configuration for modification from a master instance of the particular configuration that is stored to the repository;

providing a second function to commit at least one modification made to said copy to the particular configuration, wherein invocation of the second function merges the at least one modification from the copy of the particular configuration to the master instance of the particular configuration that is stored to the repository; and

providing a third function to deploy the at least one modification to a particular set of servers that is identified from a mapping that tracks which set of servers is deployed with the particular configuration, wherein invocation of the third function modifies content caching and delivery operation of the particular set of servers according to the at least one modification.

12. The method of claim 11 further comprising providing a fourth function to revert to a previous version of said particular configuration that does not include the at least one modification.

13. The method of claim 11 further comprising providing a fourth function to specify a custom version for the modification that is committed using the second function.

14. For a configuration management repository of a distributed platform, the distributed platform operating a plurality of servers to provide content caching and delivery on behalf of a plurality of distributed platform customers, a method performed by the configuration management repository, the method comprising:

obtaining a first set of performance parameters measuring performance of a set of the plurality of servers that are configured with a first version of a particular configuration of the plurality of configurations, the first version of the particular configuration specifying first content caching and content delivery operation for the set of servers;

modifying the first version of the particular configuration according to at least one user modification, wherein modifying the first version produces a second version of the particular configuration, the second version of the particular configuration specifying second content caching and content delivery operation for the set of servers;

modifying the set of servers from the first content caching and content delivery operation to the second content caching and content delivery operation by deploying the second version of the particular configuration to the set of servers;

comparing the first set of performance parameters with a second set of performance parameters, the second set of performance parameters measuring performance of the set of servers when configured with the second version of the particular configuration; and

redeploying the first version of the particular configuration to the set of servers when the first set of performance parameters indicate improved content caching and content delivery performance than the second set of performance parameters, said redeploying modifying the set of servers from the second content caching and content delivery operation to the first content caching and content delivery operation.

15. The method of claim 14 further comprising storing to the repository, the first set of performance parameters in connection with the first version of the particular configuration and the second set of performance parameters in connection with the second version of the particular configuration.

16. The method of claim 14 further comprising requesting the second set of performance parameters from the set of servers and receiving the second set of performance parameters from the set of servers.

17. The method of claim 16 further comprising retrieving the first set of performance parameters from the repository for use in said comparing.

18. The method of claim 14 , wherein the distributed platform is a Content Delivery Network (CDN) and the plurality of servers are distributed caching servers of the CDN.

19. The method of claim 14 , wherein the particular configuration specifies an operating system, a set of applications, and a configuration customizing the set of applications for caching and delivery of a particular customer's content.

Assignments (11)
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 →
CHANGE OF NAME Recorded Apr 25, 2016
From: EDGECAST NETWORKS, INC
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 038511/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2011
From: PETERS, ROBERT J.; ELAZARY, LIOR; SAKATA, JAYSON G.
To: EDGECAST NETWORKS, INC.
Reel/Frame 027014/0871 →