Patents by Inventor Marvin M. Theimer

Marvin M. Theimer 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: 7779253
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: May 26, 2004
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, William J. Bolosky
  • Patent number: 7640253
    Abstract: A method and system for managing data records on a computer network is described, in which copies of data records are distributed among various servers in a hierarchical tree structure, and in which servers that experience an excessive number of requests for a particular data record transmit replicas of that data record to other servers to distribute the load.
    Type: Grant
    Filed: February 22, 2005
    Date of Patent: December 29, 2009
    Inventors: Marvin M. Theimer, Michael B. Jones
  • Patent number: 7631359
    Abstract: Moving replicas in a cryptographically secure manner such that the target location and timing of the movements are completely hidden from any user, or is kept as a secret by a limited number of users who have been given advanced notice of the new location and relocation time for a replica. A catalog of replica locations that describe the current location of the replicas is stored in encrypted form so as to prevent individuals from determining the exact location of the replicas. Since the location of the replicas is hidden at any given moment, attackers may not use the location of the replicas in order to attack all of the replicas at the same time. Accordingly, recovery mechanisms may have an opportunity to recover from any given attack by once again creating replicas from those replicas that had not been attacked.
    Type: Grant
    Filed: November 6, 2002
    Date of Patent: December 8, 2009
    Assignee: Microsoft Corporation
    Inventors: Luis Felipe Cabrera, Marvin M. Theimer, Christopher G. Kaler
  • Patent number: 7620730
    Abstract: A method for multicasting a message in a computer network is described, in which at least some nodes of a multicast group transmit fault recovery information to other nodes of the group in addition to, or as part of, the message itself. The fault recovery information allows nodes to determine what dissemination responsibility should be assigned to successor nodes in the event that one or more nodes of the multicast group fail.
    Type: Grant
    Filed: July 17, 2006
    Date of Patent: November 17, 2009
    Inventors: Marvin M. Theimer, Michael B. Jones, Krishna P. Gummadi
  • Patent number: 7613796
    Abstract: A system and method for using skip nets to build and maintain overlay networks for peer-to-peer systems. A skip net is a distributed data structure that can be used to avoid some of the disadvantages of distributed hash tables by organizing data by key ordering. Skip nets can use logarithmic state per node and probabilistically support searches, insertions and deletions in logarithmic time.
    Type: Grant
    Filed: February 3, 2003
    Date of Patent: November 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Nicholas J. Harvey, Michael B. Jones, Stefan Saroiu, Marvin M. Theimer, Alastair Wolman, Atul Adya
  • Patent number: 7574598
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: June 10, 2005
    Date of Patent: August 11, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky, Marvin M. Theimer
  • Patent number: 7571186
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: August 4, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7551552
    Abstract: A guaranteed distributed failure notification method is described, wherein a failure notification (FN) facility allows applications using the facility to create FN groups to which the application associates an application state. The application registers failure handlers with the FN facility on nodes in the FN group; each failure handler is associated with a specific FN group. When, on a given node, the FN facility learns of a failure in the FN group, the facility executes the associated failure handler on that node. System failures detected by the application are signaled to other FN group members using the facility. The facility detects system failures that occur in an overlay network on which the facility is implemented, and signals a failure notification to the other FN group members.
    Type: Grant
    Filed: October 17, 2003
    Date of Patent: June 23, 2009
    Assignee: Microsoft Corporation
    Inventors: John Dunagan, Nicholas J. A. Harvey, Michael B. Jones, Dejan Kostić, Marvin M. Theimer, Alastair Wolman
  • Publication number: 20090132552
    Abstract: A serverless distributed file system manages the storage of files and directories using one or more directory groups. The directories may be managed using Byzantine-fault-tolerant groups, whereas files are managed without using Byzantine-fault-tolerant groups. Additionally, the file system may employ a hierarchical namespace to store files. Furthermore, the directory group may employ a plurality of locks to control access to objects (e.g., files and directories) in each directory.
    Type: Application
    Filed: January 29, 2009
    Publication date: May 21, 2009
    Applicant: Microsoft Corporation
    Inventors: Atul Adya, William J. Bolosky, Gerald Cermak, John R. Douceur, Marvin M. Theimer, Roger P. Wattenhofer
  • Patent number: 7519623
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: April 14, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7509423
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: March 24, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7505970
    Abstract: A serverless distributed file system manages the storage of files and directories using one or more directory groups. The directories may be managed using Byzantine-fault-tolerant groups, whereas files are managed without using Byzantine-fault-tolerant groups. Additionally, the file system may employ a hierarchical namespace to store files. Furthermore, the directory group may employ a plurality of locks to control access to objects (e.g., files and directories) in each directory.
    Type: Grant
    Filed: October 6, 2004
    Date of Patent: March 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Atul Adya, William J. Bolosky, Gerald Cermak, John R. Douceur, Marvin M. Theimer, Roger P. Wattenhofer
  • Patent number: 7487245
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: May 27, 2005
    Date of Patent: February 3, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7444387
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: October 28, 2008
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7437555
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: May 26, 2004
    Date of Patent: October 14, 2008
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky, Marvin M. Theimer
  • Patent number: 7359937
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: May 20, 2005
    Date of Patent: April 15, 2008
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7346774
    Abstract: A file that has been encrypted using a symmetric key and that has a corresponding access control entry with the symmetric key encrypted using the public key of a public/private key pair can be accessed. An encrypted key cache is also accessed to determine whether an access control entry to symmetric key mapping exists in the cache for the access control entry corresponding to the file. If such a mapping exists in the cache, then the mapped-to symmetric key is obtained form the cache, otherwise the encrypted symmetric key is decrypted using the private key of the public/private key pair. The encrypted key cache itself can also be encrypted and stored as an encrypted file.
    Type: Grant
    Filed: August 18, 2005
    Date of Patent: March 18, 2008
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Atul Adya, William J. Bolosky, Marvin M. Theimer
  • Patent number: 7310644
    Abstract: Potentially identical objects (such as files) across multiple computers are located. In one embodiment, a computer generates object information for an object stored on the computer. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). The object information is then transferred to one or more database server computers, where the object information can be compared to object information from other computers to determine whether the object is potentially identical to another object on one of the other computers.
    Type: Grant
    Filed: June 6, 2001
    Date of Patent: December 18, 2007
    Assignee: Microsoft Corporation
    Inventors: Atul Adya, William J. Bolosky, John R. Douceur, Marvin M. Theimer
  • Patent number: 7272630
    Abstract: Potentially identical objects (e.g., files) are located across multiple computers based on stochastic partitioning of workload. For each of a plurality of objects stored on a plurality of computers in a network, a portion of object information corresponding to the object is selected. The object information can be generated in a variety of manners (e.g., based on hashing the object, based on characteristics of the object, and so forth). Any of a variety of portions of the object information can be used (e.g., the least significant bits of the object information). A stochastic partitioning process is then used to identify which of the plurality of computers to communicate the object information to for identification of potentially identical objects on the plurality of computers.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: September 18, 2007
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, Atul Adya, William J. Bolosky
  • Patent number: 7266689
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable Objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: May 26, 2004
    Date of Patent: September 4, 2007
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky, Marvin M. Theimer