Managing bandwidth for shared resources
First Claim
1. A computer-implemented method of enabling a user to subscribe to shared resources, comprising:
- receiving, by one or more computer systems configured with executable instructions, a reservation request from a user to utilize resource capacity to fulfill one or more subsequent virtual machine requests, the reservation request specifying an amount of bandwidth to be used in fulfilling the one or more virtual machine requests;
fulfilling, by the one or more computer systems, the one or more virtual machine requests by enabling the user to purchase dedicated capacity during at least one time window if dedicated capacity is available with the specified amount of bandwidth during the at least one time window, the dedicated capacity being available during each time window for use by the user;
fulfilling the one or more virtual machine requests by enabling the user to purchase reserved capacity during at least one time window if reserved capacity is available with the specified amount of bandwidth during the at least one time window, the user being given priority to use the reserved capacity over other users during each time window; and
if a user is unable to purchase dedicated or reserved capacity, in response to a subsequent instance request;
fulfilling the one or more virtual machine requests by enabling the user to bid on excess capacity if excess capacity is available with the specified amount of bandwidth at substantially a time of fulfillment, the excess capacity being available when a bid price for the user at least meets a market price for the excess capacity, the user being able to utilize the excess capacity for at least a period of time when the bid price meets at least one selection criterion; and
fulfilling the one or more virtual machine requests by enabling the user to utilize available variable on-demand capacity if available variable on-demand capacity is available.
1 Assignment
0 Petitions
Accused Products
Abstract
Usage of shared resources can be managed by enabling users to obtain different types of guarantees at different times for various types and/or levels of resource capacity. A user can select to have an amount or rate of capacity dedicated to that user. A user can also select reserved capacity for at least a portion of the requests, tasks, or program execution for that user, where the user has priority to that capacity but other users can utilize the excess capacity during other periods. Users can alternatively specify to use the excess capacity or other variable, non-guaranteed capacity. The capacity can be for any appropriate functional aspect of a resource, such as computational capacity, throughput, latency, bandwidth, and storage. Users can submit bids for various types and combinations of excess capacity, and winning bids can receive dedicated use of the excess capacity for at least a period of time.
97 Citations
15 Claims
-
1. A computer-implemented method of enabling a user to subscribe to shared resources, comprising:
-
receiving, by one or more computer systems configured with executable instructions, a reservation request from a user to utilize resource capacity to fulfill one or more subsequent virtual machine requests, the reservation request specifying an amount of bandwidth to be used in fulfilling the one or more virtual machine requests; fulfilling, by the one or more computer systems, the one or more virtual machine requests by enabling the user to purchase dedicated capacity during at least one time window if dedicated capacity is available with the specified amount of bandwidth during the at least one time window, the dedicated capacity being available during each time window for use by the user; fulfilling the one or more virtual machine requests by enabling the user to purchase reserved capacity during at least one time window if reserved capacity is available with the specified amount of bandwidth during the at least one time window, the user being given priority to use the reserved capacity over other users during each time window; and if a user is unable to purchase dedicated or reserved capacity, in response to a subsequent instance request; fulfilling the one or more virtual machine requests by enabling the user to bid on excess capacity if excess capacity is available with the specified amount of bandwidth at substantially a time of fulfillment, the excess capacity being available when a bid price for the user at least meets a market price for the excess capacity, the user being able to utilize the excess capacity for at least a period of time when the bid price meets at least one selection criterion; and fulfilling the one or more virtual machine requests by enabling the user to utilize available variable on-demand capacity if available variable on-demand capacity is available. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system, comprising:
-
a memory that stores executable instructions; and a processor configured to access the memory and to execute the computer-executable instructions to collectively at least; receive a reservation request from a user to utilize resource capacity to fulfill one or more subsequent virtual machine requests, the reservation request specifying an amount of bandwidth to be used in fulfilling the one or more virtual machine requests; fulfill the one or more virtual machine requests by enabling the user to purchase dedicated capacity during at least one time window if dedicated capacity is available with the specified amount of bandwidth during the at least one time window, the dedicated capacity being available during each time window for use by the user; fulfill the one or more virtual machine requests by enabling the user to purchase reserved capacity during at least one time window if reserved capacity is available with the specified amount of bandwidth during the at least one time window, the user being given priority to use the reserved capacity over other users during each time window; and if a user is unable to purchase dedicated or reserved capacity, in response to a subsequent instance request; fulfill the one or more virtual machine requests by enabling the user to bid on excess capacity if excess capacity is available with the specified amount of bandwidth at substantially a time of fulfillment, the excess capacity being available when a bid price for the user at least meets a market price for the excess capacity, the user being able to utilize the excess capacity for at least a period of time when the bid price meets at least one selection criterion; and fulfill the one or more virtual machine requests by enabling the user to utilize available variable on-demand capacity if available variable on-demand capacity is available. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by one or more computer systems, configure the one or more computer systems to perform operations comprising:
-
receiving a reservation request from a user to utilize resource capacity to fulfill one or more subsequent virtual machine requests, the reservation request specifying an amount of bandwidth to be used in fulfilling the one or more virtual machine requests; fulfilling, by the one or more computer systems, the one or more virtual machine requests by enabling the user to purchase dedicated capacity during at least one time window if dedicated capacity is available with the specified amount of bandwidth during the at least one time window, the dedicated capacity being available during each time window for use by the user; fulfilling the one or more virtual machine requests by enabling the user to purchase reserved capacity during at least one time window if reserved capacity is available with the specified amount of bandwidth during the at least one time window, the user being given priority to use the reserved capacity over other users during each time window; and if a user is unable to purchase dedicated or reserved capacity, in response to a subsequent instance request; fulfilling the one or more virtual machine requests by enabling the user to bid on excess capacity if excess capacity is available with the specified amount of bandwidth at substantially a time of fulfillment, the excess capacity being available when a bid price for the user at least meets a market price for the excess capacity, the user being able to utilize the excess capacity for at least a period of time when the bid price meets at least one selection criterion; and fulfilling the one or more virtual machine requests by enabling the user to utilize available variable on-demand capacity if available variable on-demand capacity is available. - View Dependent Claims (12, 13, 14, 15)
-
Specification