IP Library › Granted Patent US 12,450,088
Granted Patent B2
US 12,450,088 · App. 17/722,071 · Granted Oct 21, 2025

Method and system for processing a manifest to provision an application in a distributed multi- tiered computing environment

Inventors: William Jeffery White (Plano, TX); Said Tabet (Austin, TX)
Assignee: Dell Products L.P.
G06F9/4881
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 12,450,088
App. No.
17/722,071
Filed
Apr 15, 2022
Granted
Oct 21, 2025
Kind
B2
Art Unit
2194
USPC
718/107
Abstract

Techniques described herein relate to a method for managing a distributed multi-tiered computing (DMC) environment. The method includes obtaining, by a global controller, an DMC environment management request from a user, and the DMC environment management request is associated with scheduling an application in the DMC environment; and in response to obtaining the request: providing acknowledgment that the request is received to the user; obtaining an order identifier and a manifest from the user; providing a correlation identifier associated with the request to the user; parsing the manifest to extract application deployment information; scheduling the application to target domains of the DMC based on the application deployment information; and providing the user with the correlation identifier, a success indicator, and application information.

Claims (92)

1. A method for managing a distributed multi-tiered computing (DMC) environment, comprising:

obtaining, by a global controller executing on the DMC environment, a DMC environment management request from a user of a first computing device through an application service layer of a second computing device,

wherein the user generates the request and a manifest using a graphical user interface (GUI) of the application service layer,

wherein a domain of the DMC environment hosts the first computing device and a local controller,

wherein the request is associated with scheduling an application to the domain of the DMC environment; and

in response to obtaining the request and by the global controller:

providing acknowledgment that the request is received to the user using the GUI of the application service layer;

obtaining an order identifier and the manifest associated with the request from the user,

wherein the user sends the order identifier and the manifest using the GUI,

wherein the first computing device and the second computing device are operatively connected to each other over a wide area network;

providing a correlation identifier associated with the request to the user using the GUI,

wherein the correlation identifier is associated with the order identifier,

wherein the correlation identifier is used to associate the user and the order identifier with the application corresponding to the request,

wherein the correlation identifier is further used to identify the local controller;

parsing the manifest to extract application deployment information,

wherein the application deployment information specifies a first identifier of the user that submitted to the manifest, a second identifier of a previously provisioned application, and service level objective metrics associated with the application;

receiving capability information associated with the domain from the local controller,

wherein the capability information is stored to a physical graph database of the local controller;

scheduling, using the local controller, the application to the domain based on the application deployment information and the capability information,

wherein the local controller performs the scheduling of the application to the domain using reinforcement learning scheduling;

executing, by the local controller, the application based on the scheduling to provide computer implemented services to the user; and

providing the user with the correlation identifier, a success indicator, and application access information using the GUI,

wherein the user uses the correlation identifier and the application access information to access the application.

2. The method of claim 1 , wherein the manifest is parsed using a key-value database.

3. The method of claim 1 , wherein the manifest is parsed upon receipt of a portion of the manifest prior to receiving the entirety of the manifest.

4. The method of claim 1 , further comprising parsing other manifests and scheduling other applications in parallel to parsing the manifest and scheduling the application.

5. The method of claim 1 , wherein the application deployment information is used to generate a scheduling package associated with the target domain.

6. The method of claim 1 , wherein the scheduling package specifies:

a portion of tasks associated with the application to be scheduled within the target domain;

scheduling policies associated with the target domain; and

scheduling constraints associated with the target domain.

7. The method of claim 6 , wherein the target domain comprises a portion of a plurality of DMC domains.

8. The method of claim 7 , wherein the plurality of DMC domains comprises:

edge domains, wherein an edge domain of the edge domains comprises an edge domain device set;

core domains, wherein a core domain of the core domain comprises a core domain device set; and

cloud domains, wherein a cloud domain of the cloud domains comprises a cloud domain device set.

9. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing a distributed multi-tiered computing (DMC) environment, comprising:

obtaining, by a global controller executing on the DMC environment, a DMC environment management request from a user of a first computing device through an application service layer of a second computing device,

wherein the user generates the request and a manifest using a graphical user interface (GUI) of the application service layer,

wherein a domain of the DMC environment hosts the first computing device and a local controller,

wherein the request is associated with scheduling an application to the domain of the DMC environment; and

in response to obtaining the request and by the global controller:

providing acknowledgment that the request is received to the user using the GUI of the application service layer;

obtaining an order identifier and the manifest associated with the request from the user,

wherein the user sends the order identifier and the manifest using the GUI,

wherein the first computing device and the second computing device are operatively connected to each other over a wide area network;

providing a correlation identifier associated with the request to the user using the GUI,

wherein the correlation identifier is associated with the order identifier,

wherein the correlation identifier is used to associate the user and the order identifier with the application corresponding to the request,

wherein the correlation identifier is further used to identify the local controller;

parsing the manifest to extract application deployment information,

wherein the application deployment information specifies a first identifier of the user that submitted to the manifest, a second identifier of a previously provisioned application, and service level objective metrics associated with the application;

receiving capability information associated with the domain from the local controller,

wherein the capability information is stored to a physical graph database of the local controller;

scheduling, using the local controller, the application to the domain based on the application deployment information and the capability information,

wherein the local controller performs the scheduling of the application to the domain using reinforcement learning scheduling;

executing, by the local controller, the application based on the scheduling to provide computer implemented services to the user; and

providing the user with the correlation identifier, a success indicator, and application access information using the GUI,

wherein the user uses the correlation identifier and the application access information to access the application.

10. The non-transitory computer readable medium of claim 9 , wherein the manifest is parsed using a key-value database.

11. The non-transitory computer readable medium of claim 9 , wherein the manifest is parsed upon receipt of a portion of the manifest prior to receiving the entirety of the manifest.

12. The non-transitory computer readable medium of claim 9 , wherein the method further comprises parsing other manifests and scheduling other applications in parallel to parsing the manifest and scheduling the application.

13. The non-transitory computer readable medium of claim 9 , wherein the application deployment information is used to generate a scheduling package associated with the target domain.

14. A system for managing a distributed multi-tiered computing (DMC) environment, the system comprising:

a DMC environment; and

a global controller of the DMC environment, comprising a processor and memory, and configured to:

obtain a DMC environment management request from a user of a first computing device through an application service layer of a second computing device,

wherein the user generates the request and a manifest using a graphical user interface (GUI) of the application service layer,

wherein a domain of the DMC environment hosts the first computing device and a local controller,

wherein the request is associated with scheduling an application to the domain of the DMC environment; and

in response to obtaining the request:

provide acknowledgment that the request is received to the user using the GUI of the application service layer;

obtain an order identifier and the manifest associated with the request from the user,

wherein the user sends the order identifier and the manifest using the GUI,

wherein the first computing device and the second computing device are operatively connected to each other over a wide area network;

provide a correlation identifier associated with the request to the user using the GUI,

wherein the correlation identifier is associated with the order identifier,

wherein the correlation identifier is used to associate the user and the order identifier with the application corresponding to the request,

wherein the correlation identifier is further used to identify the local controller;

parse the manifest to extract application deployment information,

wherein the application deployment information specifies a first identifier of the user that submitted to the manifest, a second identifier of a previously provisioned application, and service level objective metrics associated with the application;

receive capability information associated with the domain from the local controller,

wherein the capability information is stored to a physical graph database of the local controller;

schedule, using the local controller, the application to the domain based on the application deployment information and the capability information,

wherein the local controller performs the scheduling of the application to the domain using reinforcement learning scheduling;

execute, by the local controller, the application based on the scheduling to provide computer implemented services to the user; and

provide the user with the correlation identifier, a success indicator, and application access information using the GUI,

wherein the user uses the correlation identifier and the application access information to access the application.

15. The system of claim 14 , wherein the manifest is parsed using a key-value database.

16. The system of claim 14 , wherein the manifest is parsed upon receipt of a portion of the manifest prior to receiving the entirety of the manifest.

17. The system of claim 14 , wherein the global controller is further configured to parse other manifests and schedule other applications in parallel to parsing the manifest and scheduling the application.

18. The system of claim 14 , wherein the application deployment information is used to generate a scheduling package associated with the domain.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2022
From: WHITE, WILLIAM JEFFERY; TABET, SAID
To: DELL PRODUCTS L.P.
Reel/Frame 059701/0245 →
Continuity (1)
Related Publication 20230333886A1 · Oct 19, 2023
References Cited (61)
US 5408663A · Miller · 1995 [cited by applicant]
US 8056079B1 · Martin · 2011 [cited by applicant]
US 10120669B2 · Karagiannis · 2018 [cited by applicant]
US 10439957B1 · Krottapalli · 2019 [cited by examiner]
US 10540202B1 · Smaldone · 2020 [cited by examiner]
US 10693872B1 · Larson et al. · 2020 [cited by applicant]
US 11089092B1 · Seibel · 2021 [cited by applicant]
US 20020016729A1 · Breitenbach · 2002 [cited by applicant]
US 20070283351A1 · Degenaro · 2007 [cited by applicant]
US 20110154320A1 · Verma · 2011 [cited by applicant]
US 20120066759A1 · Chen · 2012 [cited by applicant]
US 20120179824A1 · Jackson · 2012 [cited by applicant]
US 20120284408A1 · Dutta · 2012 [cited by applicant]
US 20130346993A1 · Chen et al. · 2013 [cited by applicant]
US 20140343999A1 · Kim · 2014 [cited by applicant]
US 20160011912A1 · Rangaraju · 2016 [cited by applicant]
US 20160085587A1 · Dube · 2016 [cited by applicant]
US 20160212007A1 · Alatorre · 2016 [cited by applicant]
US 20170149681A1 · Chen et al. · 2017 [cited by applicant]
US 20170201550A1 · Benson et al. · 2017 [cited by applicant]
US 20170257257A1 · Dawes · 2017 [cited by applicant]
US 20170339070A1 · Chang · 2017 [cited by applicant]
US 20180159745A1 · Byers · 2018 [cited by applicant]
US 20180287902A1 · Chitalia · 2018 [cited by applicant]
US 20180349183A1 · Popovic et al. · 2018 [cited by applicant]
US 20190324828A1 · Young · 2019 [cited by applicant]
US 20200021537A1 · Oliveira · 2020 [cited by applicant]
US 20200159573A1 · Dobrev · 2020 [cited by examiner]
US 20200192714A1 · Clow · 2020 [cited by applicant]
US 20200351337A1 · Calmon · 2020 [cited by applicant]
US 20200401452A1 · Piercey · 2020 [cited by applicant]
US 20210064492A1 · Myers · 2021 [cited by applicant]
US 20210294661A1 · Turner · 2021 [cited by applicant]
US 20220094690A1 · Tarkhanyan · 2022 [cited by applicant]
US 20220114033A1 · Arvinte · 2022 [cited by applicant]
US 20220116456A1 · Higuchi · 2022 [cited by applicant]
US 20220171653A1 · R J · 2022 [cited by examiner]
US 20220291952A1 · Milojicic · 2022 [cited by applicant]
US 20220318052A1 · Sivathanu · 2022 [cited by applicant]
US 20230096811A1 · Meghani · 2023 [cited by applicant]
US 20230168875A1 · Carter · 2023 [cited by examiner]
Tong, Z., Deng, X., Chen, H et al. QL-HEFT: a novel machine learning scheduling scheme base on cloud computing environment. Neural Comput & Applic 32, 5553-5570 (2020). https://doi.org/10.1007/s00521-019-04118-8. [cited by applicant]
Alexandru Iulian Orheana, Florin Pop* [cited by applicant]
Basel Magableh, School of Computer Science, Dublin Institute of Technology, Technological University Dublin, Ireland. A Deep Recurrent Q Network towards Self-adapting Distributed Microservices architecture. arXiv:1901.0… [cited by applicant]
Debeer and Strobl BMC Bioinformatics. Conditional Permutation Importance Revisited. (2020) 21:307 https://doi.brg/10.1186/s12859-020-03622-2. [cited by applicant]
Haoran Qiu, Subho S. Banerjee, Saurabh Jha, Zbigniew T. Kalbarczyk, and Ravishankar K. Iyer, University of Illinois at Urbana-Champaign. FIRM: An Intelligent Fine-grained Resource Management Framework for SLO-Oriented M… [cited by applicant]
Huang, Huang, Chen, Wang, IEEE: Simulated Annealing for Sequential Pattern Detection and Seismic Applications, Dec. 2014 doi.org/10.1109/JSTARS.2014.2344756. [cited by applicant]
Lin, Li, Liao, Franke, Capacity Optimization for Resource Pooling in Virtualized Data Centers with Composable Systems, DOI 10.1109/TPDS.2017.2757479 (2017). [cited by applicant]
Muhammad Tirmazi, Adam Barker, Nan Deng, Md E. Haque, Zhi- jing Gene Qin, Steven Hand, MorHarchol-Balter, and John Wilkes. 2020. Borg: the Next Generation. In Fifteenth European Conference on Computer Systems (EuroSys 2… [cited by applicant]
Oren Ben-Kiki et al. “YAML Aint Markup Language (YAML) version 1.2”; Revision 1.2.2 (Oct. 1, 2021); <https://yaml.org> 66 pages. [cited by applicant]
Stoica, INRA-Biometrie, Gregori, University Jaume I, Mateu, University Jaume I: Simulated Annealing and Object Point Processes: Tools for Analysis of Spatial Patterns, Jul. 2005. [cited by applicant]
Mhui Feng, Alibaba Group; Zhi Liu, Yunjian Zhao, Tatiana Jin, and Yidi Wu, The Chinese University of Hong Kong; Yang Zhang, Alibaba Group; James Cheng, The Chinese University of Hong Kong; Chao Li and Tao Guan, Alibaba … [cited by applicant]
Elarbi Badidi et al., An Architecture for QoS-Aware Fog Service Provisioning, Year: 2020 (8 pages). [cited by applicant]
Farah Ait Salaht et al., An Overview of Service Placement Problem in Fog and Edge Computing, Year: 2020 (35 pages). [cited by applicant]
Abdulaziz Alhubaishy et al., The Best-Worst Method for Resource Allocation and Task Scheduling in Cloud Computing, 6 pages, Year: 2020. [cited by applicant]
Aref Abdullah et al., A reliable, TOPSIS-based multi-criteria, and hierarchical load balancing method for computational grid, 21 pages, Year: 2019. [cited by applicant]
Dang Minh Quan et al., On Architecture for SLA-aware Workflows in Grid Environments, 19 Pages, Year: 2005. [cited by applicant]
Dheeraj Rane et al., Cloud Brokering Architecture for Dynamic Placement of Virtual Machines, 8 pages, 2015. [cited by applicant]
Ivan Roderoa et al., Grid broker selection strategies using aggregated resource information, pp. 72-86, Year: 2009. [cited by applicant]
S. M. Jaybhaye et al., Heterogeneous Resource Provisioning for Workflow-Based Applications Using AHP in Cloud Computing, Chapter 41, 15 pages, Year : 2021. [cited by applicant]
Seyed Hossein Mortazavi Etc, Cloud Path: A Multi-Tier Cloud Computing Framework, Cloud Path: A Multi-Tier Cloud Computing Framework, Unknown, 13 pages, 2017. [cited by applicant]