Patents by Inventor Andrea D'Amato
Andrea D'Amato 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: 10270760Abstract: Services from domainless machines are made available in a security domain under a virtual name. Each machine is not joined to the domain but can reach a security domain controller. The controller controls at least one security domain using an authentication protocol, such as a modified Kerberos protocol. One obtains a set of security domain credentials, generates a cluster name secret, gives the cluster a virtual name, and authenticates the machines to the domain controller using these items. In some cases, authentication uses a ticket-based protocol which accepts the cluster name secret in place of a proof of valid security domain membership. In some, the domain controller uses a directory service which is compatible with an active directory service; the cluster virtual name is provisioned as an account in the directory service. The cluster virtual name may concurrently serve clients on different security domains of the directory service.Type: GrantFiled: October 5, 2017Date of Patent: April 23, 2019Assignee: Microsoft Tehnology Licensing, LLCInventors: Sai Sudhir Anantha Padmanaban, Lokesh Srinivas Koppolu, Andrea D'Amato, Yi Zeng
-
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
-
Patent number: 10169097Abstract: Managing a distributed system. Embodiments may allow for a quorum to dynamically change the quorum vote. One example is illustrated in a method. The method includes determining a change to a voter's level of participation in a cluster. A quorum of voters changes the voter's voting privileges, based on the change in the voter's level of participation.Type: GrantFiled: January 23, 2012Date of Patent: January 1, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Gor Nishanov, Andrea D'Amato, Amitabh Prakash Tamhane, David A. Dion
-
Publication number: 20180205665Abstract: A system is configured to use a de-randomizer and budget data structure to economize I/O operations for a shared storage device while still allowing access to the device to a number of different entities.Type: ApplicationFiled: March 12, 2018Publication date: July 19, 2018Inventors: Slava KUZNETSOV, Vinod R. SHANKAR, Andrea D'AMATO, Vladimir PETTER
-
Patent number: 9917790Abstract: A system is configured to use a de-randomizer and budget data structure to economize I/O operations for a shared storage device while still allowing access to the device to a number of different entities. Embodiments can identify a comparatively low cost next operation as compared to other I/O operations, including a cost for seek time, for a first entity to dispatch to the storage device when the first entity has sufficient budget to have the I/O operation performed on its behalf and to identify an I/O operation for a second entity to dispatch to the storage device when there is insufficient budget for the first entity.Type: GrantFiled: July 31, 2014Date of Patent: March 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Slava Kuznetsov, Vinod R. Shankar, Andrea D'Amato, Vladimir Petter
-
Publication number: 20180048636Abstract: Services from domainless machines are made available in a security domain under a virtual name. Each machine is not joined to the domain but can reach a security domain controller. The controller controls at least one security domain using an authentication protocol, such as a modified Kerberos protocol. One obtains a set of security domain credentials, generates a cluster name secret, gives the cluster a virtual name, and authenticates the machines to the domain controller using these items. In some cases, authentication uses a ticket-based protocol which accepts the cluster name secret in place of a proof of valid security domain membership. In some, the domain controller uses a directory service which is compatible with an active directory service; the cluster virtual name is provisioned as an account in the directory service. The cluster virtual name may concurrently serve clients on different security domains of the directory service.Type: ApplicationFiled: October 5, 2017Publication date: February 15, 2018Inventors: Sai Sudhir ANANTHA PADMANABAN, Lokesh Srinivas KOPPOLU, Andrea D'AMATO, Yi ZENG
-
Patent number: 9813413Abstract: Services from domainless machines are made available in a security domain under a virtual name. Each machine is not joined to the domain but can reach a security domain controller. The controller controls at least one security domain using an authentication protocol, such as a modified Kerberos protocol. One obtains a set of security domain credentials, generates a cluster name secret, gives the cluster a virtual name, and authenticates the machines to the domain controller using these items. In some cases, authentication uses a ticket-based protocol which accepts the cluster name secret in place of a proof of valid security domain membership. In some, the domain controller uses a directory service which is compatible with an active directory service; the cluster virtual name is provisioned as an account in the directory service. The cluster virtual name may concurrently serve clients on different security domains of the directory service.Type: GrantFiled: September 20, 2015Date of Patent: November 7, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Sai Sudhir Anantha Padmanaban, Lokesh Srinivas Koppolu, Andrea D'Amato, Yi Zeng
-
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
-
Publication number: 20170177427Abstract: Recovery requests are scheduled and prioritized according to priority valuations of the minimum time to next failure relative to the minimum time to next recovery for corresponding storage data sets. The prioritization can be performed by an upper layer recovery scheduler that dispatches requests to different storage units and/or by lower layers and individual storage unit schedulers. Prioritizations can be reflected in tagging on recovery requests, as determined by a first entity, and/or determined dynamically at the point of dispatch and processing.Type: ApplicationFiled: December 18, 2015Publication date: June 22, 2017Inventors: Andrea D'Amato, Vyacheslav Kuznetsov, Vinod Shankar, Karan Mehra
-
Patent number: 9652469Abstract: A cluster based file service may operate on a cluster of two or more independent devices that have access to a common data storage. The file service may have a namespace definition with each device in the cluster, but may be modified by any device operating the file service. Each instance of the file service may identify and capture a command that changes the namespace structure and cause the change to be propagated to the other members of cluster. If one of the devices in the cluster does not successfully perform an update to the namespace structure, that device may be brought offline. The cluster based file service may permit adding or removing devices from the cluster while the file service is operating, and may provide a high throughput and high availability file service.Type: GrantFiled: June 4, 2011Date of Patent: May 16, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Vyacheslav Kuznetsov, Andrea D'Amato, Alan Warwick, Vladimir Petter, Henry Aloysius
-
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: 20170048223Abstract: Services from domainless machines are made available in a security domain under a virtual name. Each machine is not joined to the domain but can reach a security domain controller. The controller controls at least one security domain using an authentication protocol, such as a modified Kerberos protocol. One obtains a set of security domain credentials, generates a cluster name secret, gives the cluster a virtual name, and authenticates the machines to the domain controller using these items. In some cases, authentication uses a ticket-based protocol which accepts the cluster name secret in place of a proof of valid security domain membership. In some, the domain controller uses a directory service which is compatible with an active directory service; the cluster virtual name is provisioned as an account in the directory service. The cluster virtual name may concurrently serve clients on different security domains of the directory service.Type: ApplicationFiled: September 20, 2015Publication date: February 16, 2017Inventors: Sai Sudhir ANANTHA PADMANABAN, Lokesh Srinivas KOPPOLU, Andrea D'AMATO, Yi ZENG
-
Patent number: 9430333Abstract: The targeted recovery of application-specific data corresponding to an application without performing recovery of the entire volume. The recovery is initiated by beginning to copy the prior state of the content of an application-specific data container from a prior snapshot to the application-specific data container in an operation volume accessible by the application. However, while the content of the application-specific data container is still being copied from the snapshot to the application-specific data container, the application is still permitted to perform read and write operations on the application-specific data container. Thus, the application-specific data container appears to the application to be fully accessible even though recovery of the content of the application-specific data container is still continuing in the background.Type: GrantFiled: March 14, 2013Date of Patent: August 30, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Andrea D'Amato, Vinod R. Shankar
-
Patent number: 9330161Abstract: Embodiments are directed to creating global, aggregated namespaces for storage management and to providing consistent namespaces in a distributed storage system. In one scenario, a computer system defines data storage objects for each data storage node. The data storage objects uniquely identify storage elements of the data storage nodes, where each data storage object includes various associated attributes. The computer system replicates the defined data storage objects and any associated attributes from a first data storage node to a second, different data storage node among the data storage nodes. As such, the defined data storage objects are visible from any node in the data storage nodes. The computer system also aggregates the defined data storage objects for each of the data storage nodes and creates a global, aggregated namespace that includes the aggregated data storage objects for each of the data storage nodes.Type: GrantFiled: April 12, 2013Date of Patent: May 3, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Andrea D'Amato, Shiv Rajpal, Gregory Robert Domzalski, Vyacheslav Kuznetsov, Sarosh Cyrus Havewala, Ankur Kasturiya, Karan Mehra
-
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
-
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: 20160036720Abstract: A system is configured to use a de-randomizer and budget data structure to economize I/O operations for a shared storage device while still allowing access to the device to a number of different entities.Type: ApplicationFiled: July 31, 2014Publication date: February 4, 2016Inventors: Slava Kuznetsov, Vinod R. Shankar, Andrea D'Amato, Vladimir Petter
-
Publication number: 20160036924Abstract: Embodiments provide workload processing for clustered systems. In an illustrative, non-limiting embodiment, a computer-implemented method may include identifying a server as an active node of a cluster; assigning a workload to the server in response to the identification; determining, after the assignment, that the server is no longer an active node of the cluster; calculating, in response to the determination, a probability that the server is capable of continuing to execute the workload; and deciding, based upon the probability, whether to allow the workload to remain assigned to the server.Type: ApplicationFiled: November 24, 2014Publication date: February 4, 2016Applicant: Microsoft Technology Licensing, LLC.Inventors: Lokesh Srinivas Koppolu, David A. Dion, Abhinit Kumar, Amitabh P. Tamhane, Andrea D'Amato, Daniel Upton, Elden T. Christensen, Nicholas Maliwacki
-
Publication number: 20150331873Abstract: Embodiments provide a method and system for sharing storage among a plurality of virtual machines. Specifically, one or more embodiments are directed to sharing a virtual hard disk with various virtual machines in a virtual machine cluster. In embodiments, a command is sent from a virtual machine to a local parser. The parser prepares the command for transport over a file system protocol. The command is sent to a remote file server using the file system protocol. When the command is received by the file server, the file server unpacks the command, determines features about the command and converts the command to a format that executes the command on the virtual shared storage.Type: ApplicationFiled: July 27, 2015Publication date: November 19, 2015Applicant: Microsoft Technology Licensing, LLCInventors: Andrea D'Amato, Vinod R. Shankar, Jake Oshins, Matthew David Kurjanowicz, Vladimir Petters, John A. Starks
-
Patent number: 9026837Abstract: Placing an application on a node in a cluster. A method includes detecting an unexpected event indicating that an application should be placed on a node in the cluster. Real time information about resource utilization on one or more nodes in the cluster is received. Based on the real time information, a determination of a node to place the application is made. The application is placed on the determined node.Type: GrantFiled: September 9, 2011Date of Patent: May 5, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Amitabh Prakash Tamhane, Mykyta Synytskyy, Lokesh S Koppolu, David A. Dion, Andrea D'Amato