Patents by Inventor David Allen Dion
David Allen Dion 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).
-
Publication number: 20250045088Abstract: Described are examples for recommending increase in worker instance count for an availability zone in a cloud-based computing platform. A machine learning (ML) model can be used to predict a time series forecast of a workload for the availability zone in a future time period. A predicted number of worker instances to handle the predicted workload can be computed, and if the number of worker instances in the availability zone is less than the predicted number of worker instances, a recommendation to increase the number of worker instances in the availability zone can be generated.Type: ApplicationFiled: August 4, 2023Publication date: February 6, 2025Inventors: Neha KESHARI, Abhisek PAN, David Allen DION, Brendon MACHADO, Karthik Subramaniam HARIHARAN, Karthikeyan SUBRAMANIAN, Thomas MOSCIBRODA, Karel Trueba NOBREGAS
-
Publication number: 20240419472Abstract: A search space for allocating a virtual machine is pruned. An allocation request for allocating a virtual machine to a plurality of clusters is received. A valid set of clusters is generated. The valid set of clusters includes clusters of the plurality of clusters that satisfy the allocation request. An attribute associated with the allocation request is identified. A truncation parameter is determined, by a trained search space classification model, based on the identified attribute. The valid set of clusters is filtered based on the truncation parameter. A server is selected from the filtered valid set of clusters. The virtual machine is allocated to the selected server. In an aspect of the disclosure, a search space pruner generates an analysis summary based on an analysis of received telemetry data. The search space pruner trains the search space classification model to determine truncation parameters based on the analysis summary.Type: ApplicationFiled: June 19, 2023Publication date: December 19, 2024Inventors: Saurabh AGARWAL, Abhisek PAN, Brendon MACHADO, David Allen DION, Ishai MENACHE, Karthikeyan SUBRAMANIAN, Luke Jonathon MARSHALL, Neha KESHARI, Thomas MOSCIBRODA, Yiran WEI
-
Publication number: 20240419428Abstract: Updates are managed across partitions in a distributed cloud allocation system. Updates are managed in a variety of dimensions, e.g., by partition, time, or upgrade domain, to maintain a sufficient number of allocator instances to maintain service. An update service may receive, organize, schedule, and deliver updates to VM allocator instances to limit service disruptions. Updates may be aggregated based on partition scope. Updates to one or more partitions may be batched in a single update. Delivery and timing of updates may be configurable on a per partition basis. Allocator instances may receive batched updates at the same or different times. An update service may dynamically adapt to prevailing service conditions if an essential update is in progress and/or request demand is above a threshold.Type: ApplicationFiled: June 13, 2023Publication date: December 19, 2024Inventors: Kyung Hoon SEO, Abhisek PAN, Robert Warren GRUEN, Yaswanth MALLEEDI, Ishai MENACHE, David Allen DION, Thomas MOSCIBRODA
-
Patent number: 11290524Abstract: Embodiments are directed to communicating between computing nodes in a cluster of nodes. In one scenario, a computer system receives a data packet from a worker node including the worker node's current workload identifiers and health status, where the data packet includes an associated version number. The computer system determines that the version number in the received data packet is different than a previously received data packet and evaluates the worker node's current workload configuration to determine whether workload changes are to be made on the worker node. Then, upon determining that workload changes are to be made on the worker node, the computer system selects a subset of workload changes to apply to the worker node, generates an indication of the selected subset of workload changes to the worker node and sends the generated indication of workload changes to the worker node.Type: GrantFiled: August 13, 2014Date of Patent: March 29, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Abhinit Kumar, Andrea D'Amato, David Allen Dion, Gor Nishanov, Lokesh Srinivas Koppolu, Nicholas Maliwacki
-
Patent number: 10656868Abstract: Technologies for cluster systems that are natively geo-site-aware. Such a cluster system makes use of this awareness to determine the subsets of nodes located at various geo-sites at physical configuration, to optimize workload placement based on the geo-sites, to make failover and failback decisions based on the geo-sites, and to assign voting and prune nodes for quorum management based on the geo-sites. Such capabilities result in cluster systems that are more resilient and more efficient in terms of resource usage than cluster systems without such native geo-site awareness.Type: GrantFiled: March 8, 2018Date of Patent: May 19, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Lokesh Srinivas Koppolu, David Allen Dion, Abhinit Kumar, Suresh Chandra Pippari, Amitabh Tamhane, Elden Christensen
-
Patent number: 10503419Abstract: Embodiments provide a method and system for enabling access to a storage device. Specifically, a node may request admittance to a cluster that has read and write access to a storage device. The node seeking access to the storage device must be first be approved by other nodes in the cluster. As part of the request, the node seeking access to the storage device sends a registration key to a storage device. Upon expiration of a registration timer, the node seeking access to the storage device receives a registration table from the storage device and determines whether its registration key is stored in the registration table. If the registration key is stored in the registration table the node has been accepted in the cluster and as a result, has been granted read and write access to the storage device.Type: GrantFiled: April 28, 2017Date of Patent: December 10, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
-
Patent number: 10437506Abstract: Technologies for cluster systems that are natively geo-site-aware. Such a cluster system makes use of this awareness to determine the subsets of nodes located at various geo-sites at physical configuration, to optimize workload placement based on the geo-sites, to make failover and failback decisions based on the geo-sites, and to assign voting and prune nodes for quorum management based on the geo-sites. Such capabilities result in cluster systems that are more resilient and more efficient in terms of resource usage than cluster systems without such native geo-site awareness.Type: GrantFiled: December 14, 2015Date of Patent: October 8, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING LLCInventors: Lokesh Srinivas Koppolu, David Allen Dion, Abhinit Kumar, Suresh Chandra Pippari, Amitabh Tamhane, Elden Christensen
-
Patent number: 10177994Abstract: Embodiments are directed to organizing computing nodes in a cluster federation and to reassigning roles in a cluster federation. In one scenario, a computer system identifies computing nodes that are to be part of a cluster federation which includes a master cluster and worker clusters. The computer system assigns a director role to a master node in the master cluster which governs decisions that affect consistency within the federation, and further assigns a leader role to at least one master node which monitors and controls other master nodes in the master cluster. The computer system assigns a worker agent role to a worker node which receives workload assignments from the master cluster, and further assigns a worker role to a worker node which processes the assigned workload. The organized cluster federation provides fault tolerance by allowing roles to be dynamically reassigned to computing nodes in different master and worker clusters.Type: GrantFiled: August 13, 2014Date of Patent: January 8, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Gor Nishanov, Andrea D'Amato, David Allen Dion, Amitabh Prakash Tamhane, Lokesh Srinivas Koppolu, Nicholas Maliwacki
-
Publication number: 20180239536Abstract: Technologies for cluster systems that are natively geo-site-aware. Such a cluster system makes use of this awareness to determine the subsets of nodes located at various geo-sites at physical configuration, to optimize workload placement based on the geo-sites, to make failover and failback decisions based on the geo-sites, and to assign voting and prune nodes for quorum management based on the geo-sites. Such capabilities result in cluster systems that are more resilient and more efficient in terms of resource usage than cluster systems without such native geo-site awareness.Type: ApplicationFiled: March 8, 2018Publication date: August 23, 2018Inventors: Lokesh Srinivas Koppolu, David Allen Dion, Abhinit Kumar, Suresh Chandra Pippari, Amitabh Tamhane, Elden Christensen
-
Publication number: 20170228184Abstract: Embodiments provide a method and system for enabling access to a storage device. Specifically, a node may request admittance to a cluster that has read and write access to a storage device. The node seeking access to the storage device must be first be approved by other nodes in the cluster. As part of the request, the node seeking access to the storage device sends a registration key to a storage device. Upon expiration of a registration timer, the node seeking access to the storage device receives a registration table from the storage device and determines whether its registration key is stored in the registration table. If the registration key is stored in the registration table the node has been accepted in the cluster and as a result, has been granted read and write access to the storage device.Type: ApplicationFiled: April 28, 2017Publication date: August 10, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
-
Patent number: 9641614Abstract: Embodiments provide a method and system for enabling access to a storage device. Specifically, a node may request admittance to a cluster that has read and write access to a storage device. The node seeking access to the storage device must be first be approved by other nodes in the cluster. As part of the request, the node seeking access to the storage device sends a registration key to a storage device. Upon expiration of a registration timer, the node seeking access to the storage device receives a registration table from the storage device and determines whether its registration key is stored in the registration table. If the registration key is stored in the registration table the node has been accepted in the cluster and as a result, has been granted read and write access to the storage device.Type: GrantFiled: May 29, 2013Date of Patent: May 2, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
-
Publication number: 20170052707Abstract: Technologies for cluster systems that are natively geo-site-aware. Such a cluster system makes use of this awareness to determine the subsets of nodes located at various geo-sites at physical configuration, to optimize workload placement based on the geo-sites, to make failover and failback decisions based on the geo-sites, and to assign voting and prune nodes for quorum management based on the geo-sites. Such capabilities result in cluster systems that are more resilient and more efficient in terms of resource usage than cluster systems without such native geo-site awareness.Type: ApplicationFiled: December 14, 2015Publication date: February 23, 2017Inventors: Lokesh Srinivas Koppolu, David Allen Dion, Abhinit Kumar, Suresh Chandra Pippari, Amitabh Tamhane, Elden Christensen
-
Patent number: 9438520Abstract: The present invention extends to methods, systems, and computer program products for synchronizing state among load balancer components. Embodiments of the invention include load balancers using a consistent hashing algorithm to decide how new connections should be load balanced. Use of consistent hashing algorithm permits load balancers to work in a stateless manner in steady state. Load balancers start keeping flow state information (destination address for a given flow) about incoming packets when it is needed, i.e. such as, for example, when a change in destination host configuration is detected. State information is shared across load balancers in a deterministic way, which allows knowing which load balancer is authoritative (e.g., is the owner) for a given flow. Each load balancer can reach the authoritative load balancer to learn about a flow that cannot be determined locally.Type: GrantFiled: November 18, 2014Date of Patent: September 6, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Publication number: 20160142289Abstract: A method for providing fault-tolerant network communications between a plurality of nodes for an application, including providing a plurality of initial communications pathways over a plurality of networks coupled between the plurality of nodes, receiving a data packet on a sending node from the application, the sending node being one of the plurality of nodes, the data packet being addressed by the application to an address on one of the plurality of nodes, and selecting a first selected pathway for the data packet from among the plurality of initial communications pathways where the first selected pathway is a preferred pathway.Type: ApplicationFiled: January 21, 2016Publication date: May 19, 2016Inventors: Michael T. Massa, Rudolf Opavsky, David Allen Dion
-
Publication number: 20160050262Abstract: Embodiments are directed to communicating between computing nodes in a cluster of nodes. In one scenario, a computer system receives a data packet from a worker node including the worker node's current workload identifiers and health status, where the data packet includes an associated version number. The computer system determines that the version number in the received data packet is different than a previously received data packet and evaluates the worker node's current workload configuration to determine whether workload changes are to be made on the worker node. Then, upon determining that workload changes are to be made on the worker node, the computer system selects a subset of workload changes to apply to the worker node, generates an indication of the selected subset of workload changes to the worker node and sends the generated indication of workload changes to the worker node.Type: ApplicationFiled: August 13, 2014Publication date: February 18, 2016Inventors: Abhinit Kumar, Andrea D'Amato, David Allen Dion, Gor Nishanov, Lokesh Srinivas Koppolu, Nicholas Maliwacki
-
Publication number: 20160050123Abstract: Embodiments are directed to organizing computing nodes in a cluster federation and to reassigning roles in a cluster federation. In one scenario, a computer system identifies computing nodes that are to be part of a cluster federation which includes a master cluster and worker clusters. The computer system assigns a director role to a master node in the master cluster which governs decisions that affect consistency within the federation, and further assigns a leader role to at least one master node which monitors and controls other master nodes in the master cluster. The computer system assigns a worker agent role to a worker node which receives workload assignments from the master cluster, and further assigns a worker role to a worker node which processes the assigned workload. The organized cluster federation provides fault tolerance by allowing roles to be dynamically reassigned to computing nodes in different master and worker clusters.Type: ApplicationFiled: August 13, 2014Publication date: February 18, 2016Inventors: Gor Nishanov, Andrea D'Amato, David Allen Dion, Amitabh Prakash Tamhane, Lokesh Srinivas Koppolu, Nicholas Maliwacki
-
Patent number: 9253293Abstract: A method for providing fault-tolerant network communications between a plurality of nodes for an application, including providing a plurality of initial communications pathways over a plurality of networks coupled between the plurality of nodes, receiving a data packet on a sending node from the application, the sending node being one of the plurality of nodes, the data packet being addressed by the application to an address on one of the plurality of nodes, and selecting a first selected pathway for the data packet from among the plurality of initial communications pathways where the first selected pathway is a preferred pathway.Type: GrantFiled: December 30, 2014Date of Patent: February 2, 2016Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Michael T. Massa, Rudolf Opavsky, David Allen Dion
-
Publication number: 20150113165Abstract: A method for providing fault-tolerant network communications between a plurality of nodes for an application, including providing a plurality of initial communications pathways over a plurality of networks coupled between the plurality of nodes, receiving a data packet on a sending node from the application, the sending node being one of the plurality of nodes, the data packet being addressed by the application to an address on one of the plurality of nodes, and selecting a first selected pathway for the data packet from among the plurality of initial communications pathways where the first selected pathway is a preferred pathway.Type: ApplicationFiled: December 30, 2014Publication date: April 23, 2015Inventors: Michael T. Massa, Rudolf Opavsky, David Allen Dion
-
Publication number: 20150063115Abstract: The present invention extends to methods, systems, and computer program products for synchronizing state among load balancer components. Embodiments of the invention include load balancers using a consistent hashing algorithm to decide how new connections should be load balanced. Use of consistent hashing algorithm permits load balancers to work in a stateless manner in steady state. Load balancers start keeping flow state information (destination address for a given flow) about incoming packets when it is needed, i.e. such as, for example, when a change in destination host configuration is detected. State information is shared across load balancers in a deterministic way, which allows knowing which load balancer is authoritative (e.g., is the owner) for a given flow. Each load balancer can reach the authoritative load balancer to learn about a flow that cannot be determined locally.Type: ApplicationFiled: November 18, 2014Publication date: March 5, 2015Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Patent number: 8958325Abstract: A method for providing fault-tolerant network communications between a plurality of nodes for an application, including providing a plurality of initial communications pathways over a plurality of networks coupled between the plurality of nodes, receiving a data packet on a sending node from the application, the sending node being one of the plurality of nodes, the data packet being addressed by the application to an address on one of the plurality of nodes, and selecting a first selected pathway for the data packet from among the plurality of initial communications pathways where the first selected pathway is a preferred pathway.Type: GrantFiled: July 2, 2012Date of Patent: February 17, 2015Assignee: Microsoft CorporationInventors: Rudolf Opavsky, David Allen Dion, Michael T. Massa