Patents by Inventor Yunus Mohammed
Yunus Mohammed has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11972301Abstract: The present disclosure relates to systems, methods, and computer readable media for predicting surplus capacity on a set of server nodes and determining a quantity of deferrable virtual machines (VMs) that may be scheduled over an upcoming period of time. This determination of VM quantity may be determined while minimizing risks associated with allocation failures on the set of server nodes. This disclosure described systems that facilitate features and functionality related to improving utilization of surplus resource capacity on a plurality of server nodes by implementing VMs having some flexibility in timing of deployment while also avoiding significant risk caused as a result of over-allocated storage and computing resources. In one or more embodiments, the quantity of deferrable VMs is determined and scheduled in accordance with rules of a scheduling policy.Type: GrantFiled: April 13, 2021Date of Patent: April 30, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Yuwen Yang, Gurpreet Virdi, Bo Qiao, Hang Dong, Karthikeyan Subramanian, Marko Lalic, Shandan Zhou, Si Qin, Thomas Moscibroda, Yunus Mohammed
-
Patent number: 11900171Abstract: A cloud computing capacity management system can include a fine-grained admission control layer, a policy engine, and an enforcement layer. The fine-grained admission control layer can be configured to ingest capacity signals and create a capacity mitigation policy, based at least in part on the capacity signals, to protect available capacity of a cloud computing system for prioritized users. The capacity mitigation policy can be directed to users of the cloud computing system. The policy engine can be configured to control how the capacity mitigation policy is applied to the cloud computing system. The enforcement layer can be configured to handle incoming resource requests and to enforce resource limits based on the capacity mitigation policy as applied by the policy engine.Type: GrantFiled: February 2, 2021Date of Patent: February 13, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Gurpreet Virdi, Fernando Gonzalez Todisco, Karthikeyan Subramanian, Sanjay Ramanujan, Sorin Iftimie, Xing wen Wang, Thomas Moscibroda, Yunus Mohammed, Vi Lam Nguyen, Rostislav Sudakov
-
Publication number: 20230076488Abstract: Systems and methods are provided for scheduling a virtual machine (VM) to host a workload in a cloud system. In particular, the disclosed technology schedules an evicted VM for redeploying an interruptible workload. The scheduling is based on capacity prediction and inference data associated with a type of the evicted VM. Capacity signal predictor generates training data for training a machine learning model using capacity signal history data of the cloud system. The machine-learning model, once trained, predicts capacity including a rate of evictions for the types of the evicted VM. The predicted data is based on at least the current status of available computing resources. Upon receiving a notice associated with a workload interruption, the intelligent scheduler prioritizes the evicted VM for scheduling and determines whether to defer redeploying the evicted VM based on the rate of eviction for the type of the evicted VM.Type: ApplicationFiled: September 3, 2021Publication date: March 9, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Inigo GOIRI PRESA, Rakesh AKKERA, Eli CORTEZ CUSTODIO VILARINHO, Felipe VIEIRA FRUJERI, Yunus MOHAMMED, Thomas MOSCIBRODA, Gurpreet VIRDI, Sandeep Kumta VISHNU, Yandan WANG
-
Publication number: 20220327002Abstract: The present disclosure relates to systems, methods, and computer readable media for predicting surplus capacity on a set of server nodes and determining a quantity of deferrable virtual machines (VMs) that may be scheduled over an upcoming period of time. This determination of VM quantity may be determined while minimizing risks associated with allocation failures on the set of server nodes. This disclosure described systems that facilitate features and functionality related to improving utilization of surplus resource capacity on a plurality of server nodes by implementing VMs having some flexibility in timing of deployment while also avoiding significant risk caused as a result of over-allocated storage and computing resources. In one or more embodiments, the quantity of deferrable VMs is determined and scheduled in accordance with rules of a scheduling policy.Type: ApplicationFiled: April 13, 2021Publication date: October 13, 2022Inventors: Yuwen YANG, Gurpreet VIRDI, Bo QIAO, Hang DONG, Karthikeyan SUBRAMANIAN, Marko LALIC, Shandan ZHOU, Si QIN, Thomas MOSCIBRODA, Yunus MOHAMMED
-
Publication number: 20220245001Abstract: A cloud computing capacity management system can include a fine-grained admission control layer, a policy engine, and an enforcement layer. The fine-grained admission control layer can be configured to ingest capacity signals and create a capacity mitigation policy, based at least in part on the capacity signals, to protect available capacity of a cloud computing system for prioritized users. The capacity mitigation policy can be directed to users of the cloud computing system. The policy engine can be configured to control how the capacity mitigation policy is applied to the cloud computing system. The enforcement layer can be configured to handle incoming resource requests and to enforce resource limits based on the capacity mitigation policy as applied by the policy engine.Type: ApplicationFiled: February 2, 2021Publication date: August 4, 2022Inventors: Gurpreet VIRDI, Fernando GONZALEZ TODISCO, Karthikeyan SUBRAMANIAN, Sanjay RAMANUJAN, Sorin IFTIMIE, Xing wen WANG, Thomas MOSCIBRODA, Yunus MOHAMMED, Vi Lam NGUYEN, Rostislav SUDAKOV
-
Patent number: 10936576Abstract: A storage account is replicated across multiple data centers so as to withstand an outage of the storage account. A front end and applications use data stored in the storage accounts to manage resources of a cloud computing system. A client includes an interface used by the front end to access the storage accounts, in addition to an interface that is used by the applications to access the storage accounts. Other features, which ensure that a read operation survives even if a head replica or a tail replica is down, include reading from a head replica instead of from a tail replica, a two phase prepare-commit operation to propagate changes from head to tail replicas, and provisioning a back end repair service if a failure occurs in the middle of the prepare-commit operation.Type: GrantFiled: March 8, 2017Date of Patent: March 2, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Parveen Kumar Patel, Kamel Sbaia, Yunus Mohammed, Srinath Setty, Jun Wang
-
Patent number: 10915314Abstract: Various methods and systems for autonomously upgrading deployed resources in a distributed computing environment are provided. An autonomous upgrade system identifies updates such as operating system image updates and virtual machine extension updates for deployment in the distributed computing environment. The autonomous upgrade system identifies eligible tenants, identifies deployed resources that may be impacted by the identified update, batches the resources and upgrades the batched resources. The autonomous upgrade system performs a diagnostic test on upgraded resources to determine whether an upgrade was successful. In some embodiments, the diagnostic test is performed by executing a diagnostic script that can be provided by a tenant. The autonomous upgrade system can stop or pause the upgrade if various success metrics are not satisfied. In some embodiments, the autonomous upgrade system tests and certifies newly published updates for deployment to the distributed computing environment.Type: GrantFiled: April 25, 2019Date of Patent: February 9, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Yunus Mohammed, Pritesh Patwa, Gregory Marvin Door, Ravikiran Janardhan Reddy, Sean David Zimmerman, Xiaoxiong Tian, Phani Soma Shekar Burela, Mark Eugene Russinovich
-
Patent number: 10768920Abstract: Software updates within one or more regions of a multi-tenant cloud are coordinated. Tenant vs. tenant conflicts, tenant vs. infrastructure provider conflicts, and conflicts between security and another priority are identified and resolved using a shared update coordinator, update priority specifications, and availability specifications. An infrastructure update request may be presented to tenants for approval. Postponed infrastructure updates may be prioritized higher. Preventing exploits of zero-day vulnerabilities may be prioritized over meeting availability targets. Updates may be merged to reduce downtime, even when the updates originate from independently controlled entities. Maximum downtime, minimum fault domains, minimum virtual machines, permitted update start times, and other availability criteria may be specified. Updates may be preempted, or allowed to complete, based on their relative priorities.Type: GrantFiled: June 15, 2016Date of Patent: September 8, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Marcus Fontoura, Mark Russinovich, Yunus Mohammed, Pritesh Patwa, Avnish Kumar Chhabra, Ziv Rafalovich
-
Publication number: 20190250906Abstract: Various methods and systems for autonomously upgrading deployed resources in a distributed computing environment are provided. An autonomous upgrade system identifies updates such as operating system image updates and virtual machine extension updates for deployment in the distributed computing environment. The autonomous upgrade system identifies eligible tenants, identifies deployed resources that may be impacted by the identified update, batches the resources and upgrades the batched resources. The autonomous upgrade system performs a diagnostic test on upgraded resources to determine whether an upgrade was successful. In some embodiments, the diagnostic test is performed by executing a diagnostic script that can be provided by a tenant. The autonomous upgrade system can stop or pause the upgrade if various success metrics are not satisfied. In some embodiments, the autonomous upgrade system tests and certifies newly published updates for deployment to the distributed computing environment.Type: ApplicationFiled: April 25, 2019Publication date: August 15, 2019Inventors: Yunus MOHAMMED, Pritesh PATWA, Gregory Marvin DOOR, Ravikiran Janardhan REDDY, Sean David ZIMMERMAN, Xiaoxiong TIAN, Phani Soma Shekar BURELA, Mark Eugene RUSSINOVICH
-
Patent number: 10318279Abstract: Various methods and systems for autonomously upgrading deployed resources in a distributed computing environment are provided. An autonomous upgrade system identifies updates such as operating system image updates and virtual machine extension updates for deployment in the distributed computing environment. The autonomous upgrade system identifies eligible tenants, identifies deployed resources that may be impacted by the identified update, batches the resources and upgrades the batched resources. The autonomous upgrade system performs a diagnostic test on upgraded resources to determine whether an upgrade was successful. In some embodiments, the diagnostic test is performed by executing a diagnostic script that can be provided by a tenant. The autonomous upgrade system can stop or pause the upgrade if various success metrics are not satisfied. In some embodiments, the autonomous upgrade system tests and certifies newly published updates for deployment to the distributed computing environment.Type: GrantFiled: May 30, 2017Date of Patent: June 11, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Yunus Mohammed, Pritesh Patwa, Gregory Marvin Door, Ravikiran Janardhan Reddy, Sean David Zimmerman, Xiaoxiong Tian, Phani Soma Shekar Burela, Mark Eugene Russinovich
-
Patent number: 10235701Abstract: Methods and computer-readable media are provided herein for implementing custom application programming interfaces (API) for creating, managing, and provisioning packages of online applications. An offer management service API is implemented that provides methods for creating and modifying offers for packages of online applications. An offer provisioning API is implemented that provides methods enabling the provisioning of online applications for subscribers to offers. An application provider API is published and utilized to provision and maintain individual instances of online applications provided by application providers.Type: GrantFiled: June 2, 2016Date of Patent: March 19, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Yunus Mohammed, Apurva F. Dalia, Christopher Gariepy, Venugopala Rao Moram, Joydeep Bhattacharyya, Sandeep P. Karanth, Christopher J. Saam, Lizhong Huang, Rodrigo Junqueira Lode
-
Publication number: 20180349130Abstract: Various methods and systems for autonomously upgrading deployed resources in a distributed computing environment are provided. An autonomous upgrade system identifies updates such as operating system image updates and virtual machine extension updates for deployment in the distributed computing environment. The autonomous upgrade system identifies eligible tenants, identifies deployed resources that may be impacted by the identified update, batches the resources and upgrades the batched resources. The autonomous upgrade system performs a diagnostic test on upgraded resources to determine whether an upgrade was successful. In some embodiments, the diagnostic test is performed by executing a diagnostic script that can be provided by a tenant. The autonomous upgrade system can stop or pause the upgrade if various success metrics are not satisfied. In some embodiments, the autonomous upgrade system tests and certifies newly published updates for deployment to the distributed computing environment.Type: ApplicationFiled: May 30, 2017Publication date: December 6, 2018Inventors: Yunus MOHAMMED, Pritesh PATWA, Gregory Marvin DOOR, Ravikiran Janardhan REDDY, Sean David ZIMMERMAN, Xiaoxiong TIAN, Phani Soma Shekar BURELA, Mark Eugene RUSSINOVICH
-
Publication number: 20180262563Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability parameters are used to generate an availability profile. The availability manager is configured to, based on an availability profile, allocate the virtual machine sets based an allocation scheme. The availability manager specifically performs scaling-out, scaling-in and rebalancing operations for allocating and de-allocating the virtual machine sets.Type: ApplicationFiled: March 7, 2017Publication date: September 13, 2018Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
-
Publication number: 20180260261Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability manager is configured to: based on an availability profile, allocate the virtual machine sets across the availability zones using an allocation scheme.Type: ApplicationFiled: March 7, 2017Publication date: September 13, 2018Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
-
Publication number: 20180260262Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability configuration interface of the availability management system supports receiving availability parameters that are used to generate an availability profile.Type: ApplicationFiled: March 7, 2017Publication date: September 13, 2018Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
-
Publication number: 20180260428Abstract: A storage account is replicated across multiple data centers so as to withstand an outage of the storage account. A front end and applications use data stored in the storage accounts to manage resources of a cloud computing system. A client includes an interface used by the front end to access the storage accounts, in addition to an interface that is used by the applications to access the storage accounts. Other features, which ensure that a read operation survives even if a head replica or a tail replica is down, include reading from a head replica instead of from a tail replica, a two phase prepare-commit operation to propagate changes from head to tail replicas, and provisioning a back end repair service if a failure occurs in the middle of the prepare-commit operation.Type: ApplicationFiled: March 8, 2017Publication date: September 13, 2018Inventors: Parveen Kumar PATEL, Kamel Sbaia, Yunus Mohammed, Srinath Setty, Jun Wang
-
Publication number: 20170364345Abstract: Software updates within one or more regions of a multi-tenant cloud are coordinated. Tenant vs. tenant conflicts, tenant vs. infrastructure provider conflicts, and conflicts between security and another priority are identified and resolved using a shared update coordinator, update priority specifications, and availability specifications. An infrastructure update request may be presented to tenants for approval. Postponed infrastructure updates may be prioritized higher. Preventing exploits of zero-day vulnerabilities may be prioritized over meeting availability targets. Updates may be merged to reduce downtime, even when the updates originate from independently controlled entities. Maximum downtime, minimum fault domains, minimum virtual machines, permitted update start times, and other availability criteria may be specified. Updates may be preempted, or allowed to complete, based on their relative priorities.Type: ApplicationFiled: June 15, 2016Publication date: December 21, 2017Inventors: Marcus FONTOURA, Mark RUSSINOVICH, Yunus MOHAMMED, Pritesh PATWA, Avnish Kumar CHHABRA, Ziv RAFALOVICH
-
Publication number: 20160358237Abstract: Methods and computer-readable media are provided herein for implementing custom application programming interfaces (API) for creating, managing, and provisioning packages of online applications. An offer management service API is implemented that provides methods for creating and modifying offers for packages of online applications. An offer provisioning API is implemented that provides methods enabling the provisioning of online applications for subscribers to offers. An application provider API is published and utilized to provision and maintain individual instances of online applications provided by application providers.Type: ApplicationFiled: June 2, 2016Publication date: December 8, 2016Inventors: Yunus Mohammed, Apurva F. Dalia, Christopher Gariepy, Venugopala Rao Moram, Joydeep Bhattacharyya, Sandeep P. Karanth, Christopher J. Saam, Lizhong Huang, Rodrigo Junqueira Lode
-
Patent number: 9361636Abstract: Methods and computer-readable media are provided herein for implementing custom application programming interfaces (API) for creating, managing, and provisioning packages of online applications. An offer management service API is implemented that provides methods for creating and modifying offers for packages of online applications. An offer provisioning API is implemented that provides methods enabling the provisioning of online applications for subscribers to offers. An application provider API is published and utilized to provision and maintain individual instances of online applications provided by application providers.Type: GrantFiled: May 20, 2008Date of Patent: June 7, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Yunus Mohammed, Apurva F Dalia, Christopher Gariepy, Venugopala Rao Moram, Joydeep Bhattacharyya, Sandeep P Karanth, Christopher J Saam, Lizhong Huang, Rodrigo Junqueira Lode
-
Patent number: 8209220Abstract: Online services offer modeling is provided. A system for managing online offers for products and services includes a components module, an offer module, a subscription module, a billing module and a change management module. The component module defines the properties of components that may be included in an offer. The offer module defines the features of the offer, including one or more components. The components may be a base component or an add-on component. The subscription module processes the provisioning of an offer. The market module specifies countries or regions in which offers are made available. The billing module processes billing and payment actions for an offer. The change management module processes alterations to a provisioned offer, inserting the properties of an add-on component into the properties of a base component.Type: GrantFiled: June 27, 2008Date of Patent: June 26, 2012Assignee: Microsoft CorporationInventors: Yunus Mohammed, Christopher J. Gariepy, Apurva F. Dalia, Venugopala Rao Moram, Joydeep Bhattacharyya, Sandeep P. Karanth, Christopher J. Saam