Software deployment using client location
First Claim
1. At a computer system, the computer system having a processor and system memory, the computer system including a local group distribution manager, the local group distribution manager managing software distributions to a distribution group of assigned devices, a method for controlling a software distribution to a plurality of devices, the method comprising:
- for each device in the plurality of devices, receiving an assignment that the device is assigned to the distribution group;
receiving an indication that a software distribution is to be deployed from a distribution server to the distribution group, the software distribution also being deployed to one or more other distribution groups of devices;
accessing a distribution policy, the distribution policy defining the behavior of the local group distribution manager for deploying software distributions to the distribution group, including defining time-based resource restrictions applicable to deploying software distributions from the distribution server to the plurality of devices;
accessing date/time information;
determining applicable resource restrictions for deploying the software distribution to a subset of the distribution group based on the accessed date/time information;
deploying the software distribution from the distribution server to the subset of the distribution group in accordance with the applicable resource restrictions, including allocating one or more of;
bandwidth capacity and server capacity for the subset of the distribution group so as to control resource consumption associated with the distribution server, andsubsequent to determining applicable resource restrictions for deploying the software distribution based on the accessed date/time information;
accessing second date/time information, the second date/time information including at least a time of day for a geographic location;
adjusting applicable resource restrictions for deploying the software distribution based on the accessed second date/time information, including the at least a time of day for a geographic region; and
deploying the software distribution from the distribution server to an adjusted subset of the distribution group by deploying the software distribution in accordance with the adjusted applicable resource restrictions.
2 Assignments
0 Petitions
Accused Products
Abstract
A software distribution mechanism evaluates network addresses of requesting clients to determine a location for each client. The clients from a particular location are grouped together and a fraction of those clients in a particular group are recipients of a software distribution. The faction is adjusted to enable more or fewer clients to download, thus effectively throttling the amount of bandwidth consumed by a mass distribution event. The fraction may be adjusted for particular geographical locations and the time of day to make more effective use of network bandwidth.
56 Citations
18 Claims
-
1. At a computer system, the computer system having a processor and system memory, the computer system including a local group distribution manager, the local group distribution manager managing software distributions to a distribution group of assigned devices, a method for controlling a software distribution to a plurality of devices, the method comprising:
- for each device in the plurality of devices, receiving an assignment that the device is assigned to the distribution group;
receiving an indication that a software distribution is to be deployed from a distribution server to the distribution group, the software distribution also being deployed to one or more other distribution groups of devices; accessing a distribution policy, the distribution policy defining the behavior of the local group distribution manager for deploying software distributions to the distribution group, including defining time-based resource restrictions applicable to deploying software distributions from the distribution server to the plurality of devices;
accessing date/time information;determining applicable resource restrictions for deploying the software distribution to a subset of the distribution group based on the accessed date/time information; deploying the software distribution from the distribution server to the subset of the distribution group in accordance with the applicable resource restrictions, including allocating one or more of;
bandwidth capacity and server capacity for the subset of the distribution group so as to control resource consumption associated with the distribution server, andsubsequent to determining applicable resource restrictions for deploying the software distribution based on the accessed date/time information;
accessing second date/time information, the second date/time information including at least a time of day for a geographic location;adjusting applicable resource restrictions for deploying the software distribution based on the accessed second date/time information, including the at least a time of day for a geographic region; and deploying the software distribution from the distribution server to an adjusted subset of the distribution group by deploying the software distribution in accordance with the adjusted applicable resource restrictions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
- for each device in the plurality of devices, receiving an assignment that the device is assigned to the distribution group;
-
13. A system for deploying software distributions, the system comprising:
- a processor;
an address resolver that determines a network address for each of a plurality of clients;
a location resolver that uses the network address to determine a geographic location for each of the plurality of clients;a distribution engine; and a plurality of local group distribution managers, each of the plurality of local group distribution managers associated with a geographic region; and wherein the distribution engine is adapted to assign each of the plurality of clients to an appropriate local group distribution manager, selected from among the plurality of local group distribution managers, based on the determined geographic location of the client; and wherein each of the plurality of local group distribution managers is adapted to; receive an indication that a software distribution is to be deployed from a distribution server; access a distribution policy, the distribution policy defining the behavior of the local group distribution manager for deploying software distributions, including defining time-based resource restrictions applicable to deploying software distributions to clients assigned to the local group distribution manager;
access date/time information for the geographic region;
determine applicable resource restrictions for deploying the software distribution based on the accessed date/time information; anddeploy the software distribution to a subset of the assigned clients in a controlled manner by deploying the software distribution in accordance with the applicable resource restrictions, including metering one or more of;
bandwidth capacity and server capacity for the distribution server so as to control resource consumption associated with the distribution server; andsubsequent to determining applicable resource restrictions for deploying the software distribution based on the accessed date/time information; access second date/time information, the second date/time information including at least a time of day for a geographic location; adjust applicable resource restrictions for deploying the software distribution based on the accessed second date/time information, including the at least a time of day for a geographic region; and deploy the software distribution from the distribution server to an adjusted subset of the assigned clients by deploying the software distribution in accordance with the adjusted applicable resource restrictions. - View Dependent Claims (14, 15, 16, 17, 18)
- a processor;
Specification