Patents by Inventor Vyacheslav Kuznetsov

Vyacheslav Kuznetsov 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: 10678578
    Abstract: Systems and methods for live migration of VMs between different nodes are provided. The system and methods utilize a heat map and an access pattern to determine the fetching order of files and/or blocks from the cache of a host node for rebuilding the cache on a destination node. The systems and methods are able to persist the cache of a host node across a crash, allowing a destination node to fetch blocks and/or files from the cache on the host node after a crash instead of having to access the VM files and/or blocks from an original source. Accordingly, the systems and methods decrease migration latency of the VM and free up network bandwidth during the live migration when compared to prior systems and methods that utilize just the heat map to determine the fetching order and/or that are not able to persist the cache across a crash.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: June 9, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Vinod R. Shankar, Vladimir Petter, Vyacheslav Kuznetsov
  • Patent number: 10592172
    Abstract: Disclosed herein is a system and method for automatically moving an application from one site to another site in the event of a disaster. Prior to coming back online the application is configured with information to allow it to run on the new site without having to perform the configuration actions after the application has come online. This enables a seamless experience to the user of the application while also reducing the associated downtime for the application.
    Type: Grant
    Filed: October 27, 2017
    Date of Patent: March 17, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ganesh Prasad, Roopesh Battepati, Vyacheslav Kuznetsov
  • Patent number: 10503419
    Abstract: 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: Grant
    Filed: April 28, 2017
    Date of Patent: December 10, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
  • Patent number: 10275302
    Abstract: 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: Grant
    Filed: December 18, 2015
    Date of Patent: April 30, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrea D'Amato, Vyacheslav Kuznetsov, Vinod Shankar, Karan Mehra
  • Publication number: 20180067698
    Abstract: Disclosed herein is a system and method for automatically moving an application from one site to another site in the event of a disaster. Prior to coming back online the application is configured with information to allow it to run on the new site without having to perform the configuration actions after the application has come online. This enables a seamless experience to the user of the application while also reducing the associated downtime for the application.
    Type: Application
    Filed: October 27, 2017
    Publication date: March 8, 2018
    Inventors: Ganesh Prasad, Roopesh Battepati, Vyacheslav Kuznetsov
  • Publication number: 20180004560
    Abstract: Systems and methods for live migration of VMs between different nodes are provided. More specifically, the system and methods utilize a heat map and an access pattern to determine the fetching order of files and/or blocks from the cache of a host node for rebuilding the cache on a destination node. Additionally, the systems and methods are able to persist the cache of a host node across a crash, allowing a destination node to fetch blocks and/or files from the cache on the host node after a crash instead of having to access the VM files and/or blocks from an original source. Accordingly, the systems and methods decrease migration latency of the VM during live migration and free up network bandwidth during the live migration when compared to prior systems and methods that utilize just the heat map to determine the fetching order and/or that are not able to persist the cache across a crash.
    Type: Application
    Filed: June 30, 2016
    Publication date: January 4, 2018
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Vinod R. Shankar, Vladimir Petter, Vyacheslav Kuznetsov
  • Patent number: 9804802
    Abstract: Disclosed herein is a system and method for automatically moving an application from one site to another site in the event of a disaster. Prior to coming back online the application is configured with information to allow it to run on the new site without having to perform the configuration actions after the application has come online. This enables a seamless experience to the user of the application while also reducing the associated downtime for the application.
    Type: Grant
    Filed: September 8, 2015
    Date of Patent: October 31, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ganesh Prasad, Roopesh Battepati, Vyacheslav Kuznetsov
  • Publication number: 20170228184
    Abstract: 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: Application
    Filed: April 28, 2017
    Publication date: August 10, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
  • Publication number: 20170177427
    Abstract: 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: Application
    Filed: December 18, 2015
    Publication date: June 22, 2017
    Inventors: Andrea D'Amato, Vyacheslav Kuznetsov, Vinod Shankar, Karan Mehra
  • Patent number: 9652469
    Abstract: 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: Grant
    Filed: June 4, 2011
    Date of Patent: May 16, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Vyacheslav Kuznetsov, Andrea D'Amato, Alan Warwick, Vladimir Petter, Henry Aloysius
  • Patent number: 9641614
    Abstract: 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: Grant
    Filed: May 29, 2013
    Date of Patent: May 2, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
  • Patent number: 9438520
    Abstract: 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: Grant
    Filed: November 18, 2014
    Date of Patent: September 6, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
  • Patent number: 9330161
    Abstract: 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: Grant
    Filed: April 12, 2013
    Date of Patent: May 3, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrea D'Amato, Shiv Rajpal, Gregory Robert Domzalski, Vyacheslav Kuznetsov, Sarosh Cyrus Havewala, Ankur Kasturiya, Karan Mehra
  • Publication number: 20160070624
    Abstract: Disclosed herein is a system and method for automatically moving an application from one site to another site in the event of a disaster. Prior to coming back online the application is configured with information to allow it to run on the new site without having to perform the configuration actions after the application has come online. This enables a seamless experience to the user of the application while also reducing the associated downtime for the application.
    Type: Application
    Filed: September 8, 2015
    Publication date: March 10, 2016
    Inventors: Ganesh Prasad, Roopesh Battepati, Vyacheslav Kuznetsov
  • Publication number: 20150063115
    Abstract: 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: Application
    Filed: November 18, 2014
    Publication date: March 5, 2015
    Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
  • Publication number: 20140359054
    Abstract: 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: Application
    Filed: May 29, 2013
    Publication date: December 4, 2014
    Applicant: Microsoft Corporation
    Inventors: Vyacheslav Kuznetsov, Vinod R. Shankar, Andrea D'Amato, David Allen Dion
  • Patent number: 8886910
    Abstract: The representation of storage devices on computers (e.g., as logical volumes) may be complicated by the pooling of multiple storage devices in order to apply redundancy plans such as mirroring and checksumming. Presented herein is a storage device driver configured to operate as a storage device interface generating representations of the storage regions of the storage devices; to claim those regions as a storage controller; and to expose pooled storage regions as logical disks. Additionally, the storage device driver may support the inclusion of storage devices in a cluster, comprising nodes that may be appointed as managers of the storage pool configuration; as managers of the storage devices; as owners having exclusive read/write access to the storage pool or cluster resources; and as cluster resource writers having exclusive write access to a cluster resource. The nodes of the cluster may interoperate to share the storage devices while avoiding write conflicts.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: November 11, 2014
    Assignee: Microsoft Corporation
    Inventors: Karan Mehra, Rajeev Nagar, Shiv Rajpal, Darren Moss, Andrea D'Amato, Alan Warwick, Vyacheslav Kuznetsov
  • Publication number: 20140310278
    Abstract: 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: Application
    Filed: April 12, 2013
    Publication date: October 16, 2014
    Applicant: Microsoft Corporation
    Inventors: Andrea D'Amato, Shiv Rajpal, Gregory Robert Domzalski, Vyacheslav Kuznetsov, Sarosh Cyrus Havewala, Ankur Kasturiya, Karan Mehra
  • Publication number: 20140185446
    Abstract: 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: Application
    Filed: March 5, 2014
    Publication date: July 3, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
  • Patent number: 8755283
    Abstract: 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: Grant
    Filed: December 17, 2010
    Date of Patent: June 17, 2014
    Assignee: Microsoft Corporation
    Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion