Patents by Inventor Gregory I. Thiel

Gregory I. Thiel 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: 10713279
    Abstract: Systems, methods, and software are disclosed that provide enhanced replication for message services. In one implementation, updates to a replication source are replicated to replication targets. The replication is monitored to identify an individual health of the replication for each of the replication targets. A composite health of the replication is determined based on the individual health of the replication for each of the replication targets. The updates to the replication source are then controlled based on the composite health of the replication.
    Type: Grant
    Filed: July 19, 2018
    Date of Patent: July 14, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gregory I. Thiel, David Sterling, Sabitha Abraham, Yogesh Bansal, Nikita Kozhekin
  • Publication number: 20180322182
    Abstract: Systems, methods, and software are disclosed that provide enhanced replication for message services. In one implementation, updates to a replication source are replicated to replication targets. The replication is monitored to identify an individual health of the replication for each of the replication targets. A composite health of the replication is determined based on the individual health of the replication for each of the replication targets. The updates to the replication source are then controlled based on the composite health of the replication.
    Type: Application
    Filed: July 19, 2018
    Publication date: November 8, 2018
    Inventors: Gregory I. Thiel, David Sterling, Sabitha Abraham, Yogesh Bansal, Nikita Kozhekin
  • Patent number: 10031958
    Abstract: Systems, methods, and software are disclosed that provide enhanced replication for message services. In one implementation, updates to a replication source are replicated to replication targets. The replication is monitored to identify an individual health of the replication for each of the replication targets. A composite health of the replication is determined based on the individual health of the replication for each of the replication targets. The updates to the replication source are then controlled based on the composite health of the replication.
    Type: Grant
    Filed: August 8, 2014
    Date of Patent: July 24, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gregory I. Thiel, David Sterling, Sabitha Abraham, Yogesh Bansal, Nikita Kozhekin
  • Publication number: 20140351216
    Abstract: Systems, methods, and software are disclosed that provide enhanced replication for message services. In one implementation, updates to a replication source are replicated to replication targets. The replication is monitored to identify an individual health of the replication for each of the replication targets. A composite health of the replication is determined based on the individual health of the replication for each of the replication targets. The updates to the replication source are then controlled based on the composite health of the replication.
    Type: Application
    Filed: August 8, 2014
    Publication date: November 27, 2014
    Inventors: Gregory I. Thiel, David Sterling, Sabitha Abraham, Yogesh Bansal, Nikita Kozhekin
  • Patent number: 8332369
    Abstract: A data resiliency layer provides manageable data resiliency policy options for email related applications. Through one or more APIs such applications are enabled to query whether a data resiliency policy is satisfied for a given mailbox or database at a given point in time. Email related applications may consume this information to modify their behavior such as to wait, repeat, or fail the actions at hand to the point where data committal is guaranteed to a degree specified by the data resiliency policy.
    Type: Grant
    Filed: December 15, 2009
    Date of Patent: December 11, 2012
    Assignee: Microsoft Corporation
    Inventors: Ayla Kol, Dmitri Gavrilov, Bradford Clark, Brian T. Kress, James C. Kleewein, Gregory I. Thiel
  • Publication number: 20110145208
    Abstract: A data resiliency layer provides manageable data resiliency policy options for email related applications. Through one or more APIs such applications are enabled to query whether a data resiliency policy is satisfied for a given mailbox or database at a given point in time. Email related applications may consume this information to modify their behavior such as to wait, repeat, or fail the actions at hand to the point where data committal is guaranteed to a degree specified by the data resiliency policy.
    Type: Application
    Filed: December 15, 2009
    Publication date: June 16, 2011
    Applicant: Microsoft Corporation
    Inventors: Ayla Kol, Dmitri Gavrilov, Bradford Clark, Brian T. Kress, James C. Kleewein, Gregory I. Thiel
  • Patent number: 7870248
    Abstract: Detecting the failure of file transfers via a network copy service from a source computer to a destination computer via a network monitoring service. If the network monitoring service determines that the source computer is no longer available, the destination computer initiates a second file transfer request via the network copy service from a second source of the file.
    Type: Grant
    Filed: May 1, 2006
    Date of Patent: January 11, 2011
    Assignee: Microsoft Corporation
    Inventors: Gregory I. Thiel, Rebecca L. Anderson, Thomas J. Miller, Martin Andras Chisholm
  • Patent number: 7644305
    Abstract: A cluster system including as few as two cluster nodes and a plurality of links, each one of the plurality of links coupling one of the cluster nodes to a voting device wherein a single surviving cluster node obtain a vote from the voting device. A method of establishing quorum in a cluster system including as few as two cluster nodes, the method comprising determining a single surviving cluster node of the as few as two cluster nodes, obtaining a vote from a voting device, and establishing quorum such that cluster operations are continued by the single surviving cluster node. A method for preventing a partition-in-time quorum establishment problem in a cluster system including as few as two cluster nodes, the method comprising determining that a revived cluster node is also a sole active cluster node of the cluster system, checking a last-surviving flag of the sole active cluster node, and if the last-surviving flag is set to FALSE, not restarting cluster operations.
    Type: Grant
    Filed: May 18, 2006
    Date of Patent: January 5, 2010
    Assignee: Microsoft Corporation
    Inventors: Kurt Lawrence Friedrich, David Allen Dion, Rajsekhar Das, Gregory I. Thiel
  • Patent number: 7370223
    Abstract: In clusters of multiprocessor systems it is important that these processor nodes are aware of each others availability and performance capabilities. In highly available systems using these multiprocessor systems there needs to be a method to dynamically bring nodes both into the cluster and to remove nodes out of the cluster. The processor node that is responsible for these actions is designated the manager node (50). The manager node has a pre-selected backup to assume this responsibility upon the inability of said manager node to fulfill its duties. To allow the cluster of nodes to communicate with each other efficiently there needs to be a distributed messaging system that allows for the rapid distribution of data messages among the cluster nodes.
    Type: Grant
    Filed: August 17, 2001
    Date of Patent: May 6, 2008
    Assignee: Goahead Software, Inc.
    Inventors: Gregory A. Olmstead, Gregory I. Thiel, Michael D. O'Brien, Peter Gravestock
  • Publication number: 20070294363
    Abstract: A cluster system including as few as two cluster nodes and a plurality of links, each one of the plurality of links coupling one of the cluster nodes to a voting device wherein a single surviving cluster node obtain a vote from the voting device. A method of establishing quorum in a cluster system including as few as two cluster nodes, the method comprising determining a single surviving cluster node of the as few as two cluster nodes, obtaining a vote from a voting device, and establishing quorum such that cluster operations are continued by the single surviving cluster node. A method for preventing a partition-in-time quorum establishment problem in a cluster system including as few as two cluster nodes, the method comprising determining that a revived cluster node is also a sole active cluster node of the cluster system, checking a last-surviving flag of the sole active cluster node, and if the last-surviving flag is set to FALSE, not restarting cluster operations.
    Type: Application
    Filed: May 18, 2006
    Publication date: December 20, 2007
    Applicant: Microsoft Corporation
    Inventors: Kurt Lawrence Friedrich, David Allen Dion, Rajsekhar Das, Gregory I. Thiel
  • Patent number: 7228453
    Abstract: This computer implemented software invention supervises networked system resources with the goal of maximizing service availability, providing on-demand and uninterrupted access to service, and minimizing the down time due to failures. It is a cluster-wide solution that co-ordinates the states and activities of resources, assigns availability roles, implements recovery from failures, and implements overall system policy. To do this, it maintains a system model of the system's physical and logical configuration and models the resources using managed objects that provides an extensive representation of the states, roles, and relationships of the systems resources.
    Type: Grant
    Filed: October 15, 2001
    Date of Patent: June 5, 2007
    Assignee: GoAhead Software, Inc.
    Inventors: Michael D. O'Brien, Bryan S. Klisch, John C. Vogel, Gregory I. Thiel
  • Publication number: 20040049573
    Abstract: In clusters of multiprocessor systems it is important that these processor nodes are aware of each others availability and performance capabilities. In highly available systems using these multiprocessor systems there needs to be a method to dynamically bring nodes both into the cluster and to remove nodes out of the cluster. The processor node that is responsible for these actions is designated the manager node (50). The manager node has a pre-selected backup to assume this responsibility upon the inability of said manager node to fulfill its duties. To allow the cluster of nodes to communicate with each other efficiently there needs to be a distributed messaging system that allows for the rapid distribution of data messages among the cluster nodes.
    Type: Application
    Filed: October 20, 2003
    Publication date: March 11, 2004
    Inventors: Gregory A Olmstead, Gregory I. Thiel, Michael D. O'Brien, Peter Gravestock