Patents by Inventor Allan H. Vermeulen

Allan H. Vermeulen 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: 8190588
    Abstract: Techniques are described for providing a storage service that stores information about large numbers of transactions in a persistent manner, such as with a high degree of reliability, availability and scalability based at least in part on use of a distributed computing and storage system. In some situations, the transaction information storage service stores various information about transactions that each include at least one monetary payment (e.g., a micro-payment) between financial accounts of two or more of numerous users having accounts with one or more entities. The transaction information storage service may be provided by or otherwise affiliated with a merchant, and customers of the merchant may purchase usage of the storage service for programs executed by or otherwise affiliated with the customers, with the storage service available to remote executing programs via a defined API of the storage service, such as a Web services-based API.
    Type: Grant
    Filed: September 19, 2005
    Date of Patent: May 29, 2012
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Rahul Singh, Duane J. Krause, Nipoon Malhotra
  • Patent number: 8185497
    Abstract: A distributed, web-services based storage system. A system may include a web services interface configured to receive, according to a web services protocol, a given client request for access to a given data object, the request including a key value corresponding to the object. The system may also include storage nodes configured to store replicas of the objects, where each replica is accessible via a respective unique locator value, and a keymap instance configured to store a respective keymap entry for each object. For the given object, the respective keymap entry includes the key value and each locator value corresponding to replicas of the object. A coordinator may receive the given client request from the web services interface, responsively access the keymap instance to identify locator values corresponding to the key value and, for a particular locator value, retrieve a corresponding replica from a corresponding storage node.
    Type: Grant
    Filed: March 4, 2011
    Date of Patent: May 22, 2012
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Alan B. Atlas, David M. Barth, John David Cormie, Ami K. Fischman, James Christopher Sorenson, III, Eric M. Wagner
  • Patent number: 8150768
    Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token.
    Type: Grant
    Filed: August 14, 2009
    Date of Patent: April 3, 2012
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Eugene Wei, Andrew R. Jassy, Jeffrey P. Bezos, Duane J. Krause, David A. Schappell
  • Patent number: 8150769
    Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token.
    Type: Grant
    Filed: August 17, 2009
    Date of Patent: April 3, 2012
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Eugene Wei, Andrew R. Jassy, Jeffrey P. Bezos, Duane J. Krause, David A. Schappell
  • Patent number: 8010651
    Abstract: Techniques are described for managing execution of programs on multiple computing systems, such as based at least in part of user-specified constraints. For example, constraints related to execution of a program may be based on a desired relative location of a host computing system to execute a copy of the program with respect to an indicated target (e.g., computing systems executing other copies of the program or copies of another indicated program), on particular geographic locations, and/or on factors not based on location (e.g., cost of use of a particular computing system, capabilities available from a particular computing system, etc.). Some or all of the multiple computing systems may be part of a program execution service for executing multiple programs on behalf of multiple users, and each may provide multiple virtual machines that are each capable of executing one or more programs for one or more users.
    Type: Grant
    Filed: August 9, 2010
    Date of Patent: August 30, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Peter N. DeSantis, Quinton R. Hoole, Roland Paterson-Jones, Allan H. Vermeulen, Luis Felipe Cabrera, Marvin M. Theimer
  • Publication number: 20110161293
    Abstract: A distributed, web-services based storage system. A system may include a web services interface configured to receive, according to a web services protocol, a given client request for access to a given data object, the request including a key value corresponding to the object. The system may also include storage nodes configured to store replicas of the objects, where each replica is accessible via a respective unique locator value, and a keymap instance configured to store a respective keymap entry for each object. For the given object, the respective keymap entry includes the key value and each locator value corresponding to replicas of the object. A coordinator may receive the given client request from the web services interface, responsively access the keymap instance to identify locator values corresponding to the key value and, for a particular locator value, retrieve a corresponding replica from a corresponding storage node.
    Type: Application
    Filed: March 4, 2011
    Publication date: June 30, 2011
    Inventors: Allan H. Vermeulen, Alan B. Atlas, David M. Barth, John David Cormie, Ami K. Fischman, James Christopher Sorenson, III, Eric M. Wagner
  • Patent number: 7962415
    Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token.
    Type: Grant
    Filed: August 18, 2009
    Date of Patent: June 14, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Eugene Wei, Andrew R. Jassy, Jeffrey P. Bezos, Duane J. Krause, David A. Schappell
  • Patent number: 7962419
    Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token.
    Type: Grant
    Filed: August 18, 2009
    Date of Patent: June 14, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Eugene Wei, Andrew R. Jassy, Jeffrey P. Bezos, Duane J. Krause, David A. Schappell
  • Patent number: 7937482
    Abstract: In one embodiment, a system comprises a plurality of nodes coupled to a network. At least a subset of the nodes are configured to maintain a replica of a state machine. The nodes are classified into a plurality of non-overlapping classes. A first class comprises at least one node that is a current participant in a consensus protocol to control transitions of the state machine. A second class comprises nodes that are not current participants in the consensus protocol but which are reclassifiable into the first class. The node(s) in the first class are configured to act on a proposal for a transition of the state machine according to the consensus protocol.
    Type: Grant
    Filed: March 27, 2008
    Date of Patent: May 3, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Swaminathan Sivasubramanian
  • Patent number: 7917484
    Abstract: Method and apparatus for inserting digital tracers in data that allow particular copies of the data to be traced to particular entities. Embodiments of a tracer mechanism may programmatically insert individualized tracers into data copies provided to third parties, for example via a Web service interface. A tracer may appear as normal data to the reader, and does not interfere with the typical use of the data copy. Tracers may serve as unique identifiers for particular data copies provided to particular Web service clients, allowing instances of the data copies to be associated with particular Web service clients. Embodiments may, for example, allow an enterprise to programmatically and systematically track copies of data distributed to third parties to help insure that the terms and conditions of licensing agreements are not violated. In one embodiment, the tracer mechanism may be implemented as a Web service.
    Type: Grant
    Filed: March 31, 2005
    Date of Patent: March 29, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Satbir S. Khanuja
  • Patent number: 7904423
    Abstract: A distributed, web-services based storage system. A system may include a web services interface configured to receive, according to a web services protocol, a given client request for access to a given data object, the request including a key value corresponding to the object. The system may also include storage nodes configured to store replicas of the objects, where each replica is accessible via a respective unique locator value, and a keymap instance configured to store a respective keymap entry for each object. For the given object, the respective keymap entry includes the key value and each locator value corresponding to replicas of the object. A coordinator may receive the given client request from the web services interface, responsively access the keymap instance to identify locator values corresponding to the key value and, for a particular locator value, retrieve a corresponding replica from a corresponding storage node.
    Type: Grant
    Filed: March 22, 2010
    Date of Patent: March 8, 2011
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Alan B. Atlas, David M. Barth, John David Cormie, Ami K. Fischman, James Christopher Sorenson, III, Eric M. Wagner
  • Publication number: 20100312871
    Abstract: Techniques are described for managing execution of programs on multiple computing systems, such as based at least in part of user-specified constraints. For example, constraints related to execution of a program may be based on a desired relative location of a host computing system to execute a copy of the program with respect to an indicated target (e.g., computing systems executing other copies of the program or copies of another indicated program), on particular geographic locations, and/or on factors not based on location (e.g., cost of use of a particular computing system, capabilities available from a particular computing system, etc.). Some or all of the multiple computing systems may be part of a program execution service for executing multiple programs on behalf of multiple users, and each may provide multiple virtual machines that are each capable of executing one or more programs for one or more users.
    Type: Application
    Filed: August 9, 2010
    Publication date: December 9, 2010
    Applicant: AMAZON TECHNOLOGIES, INC.
    Inventors: Peter N. DeSantis, Quinton R. Hoole, Roland Paterson-Jones, Allan H. Vermeulen, Luis Felipe Cabrera, Marvin M. Theimer
  • Patent number: 7814229
    Abstract: Systems and methods for providing dynamic DNS host services in regard to resolving a text-descriptive resource names of a network request into network addresses is presented. A network request corresponding to a network resource on the computer network is obtained. The network request comprises a text-descriptive resource name corresponding to the network resource. Resource criteria are also obtained. The resource criteria direct how to resolve the resource name of the network resource to a network address. A network address corresponding to the resource name is then selected according to the obtained resource criteria. Thereafter, the selected network address is returned in response to the network request.
    Type: Grant
    Filed: April 4, 2008
    Date of Patent: October 12, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Luis Felipe Cabrera, Allan H. Vermeulen, Marvin M. Theimer
  • Patent number: 7792944
    Abstract: Techniques are described for managing execution of programs on multiple computing systems, such as based at least in part of user-specified constraints. For example, constraints related to execution of a program may be based on a desired relative location of a host computing system to execute a copy of the program with respect to an indicated target (e.g., computing systems executing other copies of the program or copies of another indicated program), on particular geographic locations, and/or on factors not based on location (e.g., cost of use of a particular computing system, capabilities available from a particular computing system, etc.). Some or all of the multiple computing systems may be part of a program execution service for executing multiple programs on behalf of multiple users, and each may provide multiple virtual machines that are each capable of executing one or more programs for one or more users.
    Type: Grant
    Filed: September 6, 2007
    Date of Patent: September 7, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Peter N. DeSantis, Quinton R. Hoole, Roland Paterson-Jones, Allan H. Vermeulen, Luis Felipe Cabrera, Marvin M. Theimer
  • Publication number: 20100174731
    Abstract: A distributed, web-services based storage system. A system may include a web services interface configured to receive, according to a web services protocol, a given client request for access to a given data object, the request including a key value corresponding to the object. The system may also include storage nodes configured to store replicas of the objects, where each replica is accessible via a respective unique locator value, and a keymap instance configured to store a respective keymap entry for each object. For the given object, the respective keymap entry includes the key value and each locator value corresponding to replicas of the object. A coordinator may receive the given client request from the web services interface, responsively access the keymap instance to identify locator values corresponding to the key value and, for a particular locator value, retrieve a corresponding replica from a corresponding storage node.
    Type: Application
    Filed: March 22, 2010
    Publication date: July 8, 2010
    Inventors: Allan H. Vermeulen, Alan B. Atlas, David M. Barth, John David Cormie, Ami K. Fischman, James Christopher Sorenson, III, Eric M. Wagner
  • Patent number: 7743001
    Abstract: A method and system for dynamic pricing of web services utilization. According to one embodiment, a method may include dynamically predicting utilization of a web services computing resource that is expected to occur during a given interval of time, and dependent upon the dynamically predicted utilization, setting a price associated with utilization of the web services computing resource occurring during the given interval of time. The method may further include providing the price to a customer.
    Type: Grant
    Filed: June 21, 2005
    Date of Patent: June 22, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Jeffrey P. Bezos
  • Patent number: 7729994
    Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token.
    Type: Grant
    Filed: March 28, 2008
    Date of Patent: June 1, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Vikas Gupta, Allan H. Vermeulen, Eugene Wei, Andrew R. Jassy, Jeffrey P. Bezos, Duane J. Krause, David A. Schappell
  • Patent number: 7716180
    Abstract: A distributed, web-services based storage system. A system may include a web services interface configured to receive, according to a web services protocol, a given client request for access to a given data object, the request including a key value corresponding to the object. The system may also include storage nodes configured to store replicas of the objects, where each replica is accessible via a respective unique locator value, and a keymap instance configured to store a respective keymap entry for each object. For the given object, the respective keymap entry includes the key value and each locator value corresponding to replicas of the object. A coordinator may receive the given client request from the web services interface, responsively access the keymap instance to identify locator values corresponding to the key value and, for a particular locator value, retrieve a corresponding replica from a corresponding storage node.
    Type: Grant
    Filed: March 8, 2006
    Date of Patent: May 11, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Alan B. Atlas, David M. Barth, John David Cormie, Ami K. Fischman, James Christopher Sorenson, III, Eric M. Wagner
  • Patent number: 7702640
    Abstract: According to one embodiment, a system may include a number of computing nodes configured to implement a number of index data structures each configured to map ones of a plurality of input values to one or more corresponding data items. Each of the index data structures may include a respective plurality of index nodes arranged hierarchically and each having an associated tag value, where each of the data items corresponds to a respective one of the index nodes, and where for a given one of the data items having a given corresponding index node, each tag value associated with each ancestor of the given corresponding index node is a prefix of a corresponding input value mapping to the given data item.
    Type: Grant
    Filed: August 28, 2006
    Date of Patent: April 20, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, Ami K. Fischman
  • Patent number: 7685270
    Abstract: Method and apparatus for measuring true end-to-end latency for calls to Web services are described. In embodiments, a Web service client and a Web service provider may collaborate to collect timing/latency data for calls to the Web service. This data may be collected, stored, and analyzed by a latency measurement service to generate displays and/or reports on true end-to-end latency measurements for Web service calls. Embodiments may collect Internet/network infrastructure latency for Web service calls up to and including the “last mile” to the Web service client and the Web service processing time. Additionally, by analyzing latency data collected from a number of Web services clients and/or Web service providers, embodiments may provide a macro-level view into overall Internet performance. In one embodiment, the latency measurement service may be a Web service.
    Type: Grant
    Filed: March 31, 2005
    Date of Patent: March 23, 2010
    Assignee: Amazon Technologies, Inc.
    Inventors: Allan H. Vermeulen, James E. Scharf, Jr.