Generation and execution of scripts for enabling cost-effective access to network resources
First Claim
1. In an access monitoring system included in an information retrieval system, wherein the information retrieval system further includes a client system, a method for selecting an access provider by which the client system is to gain access to network resources, comprising the steps of:
- compiling a usage profile associated with the client system, wherein the usage profile characterizes the use of the client system to gain access to network resources;
identifying an access cost associated with the client system, wherein the access cost has been incurred by the client system gaining access to network resources; and
generating, based on the usage profile and the access cost, a script that includes computer-executable instructions for instructing the client system to access the network resources via one or more selected access providers.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and method for selecting points-of-presence (POPs) to be used by client systems when accessing network resources from the Internet are disclosed. An access monitoring system capable of monitoring client system usage compiles usage profiles for each of a plurality of client systems as POPs are used to access the Internet. The POPs may charge for Internet access according a flat periodic fee, hourly rates, per-port rates, or other arrangements. Periodically, the access monitoring system evaluates the usage profiles to determine whether the client systems could have obtained access to the Internet for lower access costs if different POPs had been used. If so, the access monitoring system identifies the appropriate, cost-effective POPs and generates one or more scripts instructing the client systems to use the appropriate POPs. To subsequently access the Internet, the client systems execute the scripts and establish communication with the appropriate POPs. The process of monitoring usage and reevaluating which POPs should be used continues as desired. POP selection can also be conducted to balance load between various POPs based on the usage patterns described by the usage profiles.
77 Citations
37 Claims
-
1. In an access monitoring system included in an information retrieval system, wherein the information retrieval system further includes a client system, a method for selecting an access provider by which the client system is to gain access to network resources, comprising the steps of:
-
compiling a usage profile associated with the client system, wherein the usage profile characterizes the use of the client system to gain access to network resources;
identifying an access cost associated with the client system, wherein the access cost has been incurred by the client system gaining access to network resources; and
generating, based on the usage profile and the access cost, a script that includes computer-executable instructions for instructing the client system to access the network resources via one or more selected access providers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
determining that the client system would have incurred a lower access cost if the client system had used one or more different access providers; and
selecting the one or more different access providers to be the selected one or more access providers.
-
-
7. A method as defined in claim 6, wherein the step of identifying the access cost comprises the step of estimating the access cost based on the usage profile.
-
8. A method as defined in claim 1, further comprising the step of transmitting the script from the access monitoring system to the client system.
-
9. In an information retrieval system comprising a client system and an access monitoring system, a method for selecting an access provider by which the client system is to gain access to network resources, comprising the steps of:
-
gaining access to network resources of the information retrieval system via one or more initial access providers;
compiling, by the access monitoring system, a usage pattern of the client system as the client system gains access to the network resources via the one or more initial access providers;
after a selected time period, evaluating the usage pattern to determine that the access to the network resources would have been less expensive using one or more different access providers; and
instructing the client system to use an access provider selected from the one or more different access providers when the client system again gains access to the network resources. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
generating a first script including information permitting the client system to select one of a first subset of the different access providers;
generating a second script including information permitting the client system to select one of a second subset of the different access providers; and
selecting one of the first script and the second script to be executed based on designated criteria.
-
-
15. A method as defined in claim 14, wherein the designated criteria include the current time of day.
-
16. A method as defined in claim 14, wherein the designated criteria include an amount of time during which the client system has accessed the network resources during a current time interval.
-
17. In a client system included in an information retrieval system, the client system being configured to access network resources via the information retrieval system, a method for selecting an access provider by which the client system is to access the network resources, comprising the steps of:
-
storing a first script and a second script at the client system, wherein the first script includes instructions enabling the client system to access the network resources via a first access provider, and wherein the second script includes instructions enabling the client system to access the network resources via a second access provider; and
based at least on access cost criteria, selecting one of the first script and the second script for execution. - View Dependent Claims (18, 19, 20, 21)
at a first time, conducting the steps of;
selecting and executing first script; and
accessing the network resources via the first access provider; and
at a second time, when a load on the information retrieval system is greater than the load on the information retrieval at the first time, conducting the steps of;
selecting and executing the second script; and
accessing the network resources via the second access provider.
-
-
19. A method as defined in claim 18, wherein:
-
the first access provider charges a first access cost based on a maximum number of associated client systems that simultaneously access the network resources during a billing cycle; and
the second access provider charges a second access cost based on a period of time during which the network resources are accessed via the first access provider.
-
-
20. A method as defined in claim 17, wherein the first script includes instructions to access the network resources via one or two or more access providers, the two or more access providers including the first access provider.
-
21. A method as defined in claim 20, wherein the step of selecting one of the first script and the second script comprises the step of selecting the first script, the method further comprising the steps of:
-
attempting and failing to access the network resources via the first access provider; and
accessing the network resources via another of the two or more access providers.
-
-
22. In an information retrieval system comprising an access monitoring system and a plurality of client systems including a first client system and a second client system capable of accessing network resources of the information retrieval system via a plurality of access providers, a method for instructing the plurality of client systems to access the network resources via selected access providers, comprising the steps of:
-
compiling, by the access monitoring system, a usage profile and an access cost associated with each of the plurality of client systems that include the first client system and the second client system, each usage profile characterizing the use of the associated client system to access the network resources, and each access cost characterizing the cost incurred by the associated client system to access the network resources; and
based on the usage profiles and the access costs, generating a first script and a second script, including the steps of;
generating a first script instructing the first client system to access the network resources via at least a first access provider; and
generating a second script instructing the second client system to access the network resources via at least a second access provider. - View Dependent Claims (23, 24, 25, 26)
selecting the first access provider, wherein the first access provider charges a first access cost having a fixed amount that is not dependent on the amount of time during which the network resources are accessed via the first access provider during a billing cycle; and
selecting the second access provider, wherein the second access provider charges a second access cost having an amount that is dependent on the amount of time during which the network resources are accessed via the first access provider during a billing cycle.
-
-
25. A method as defined in claim 22, wherein:
-
the method further comprises the step of designating a peak load time during which the information retrieval system experiences a heavy load compared to a load experienced at other times, the usage profile indicating that the first client system has accessed the network resources during the peak load time more than the second client has accessed the network resources during the peak load time; and
the step of generating the first script and the second script comprise the steps of;
selecting the first access provider, wherein the first access provider charges a first access cost having a fixed amount that is not dependent on the amount of time during which the network resources are accessed via the first access provider during a billing cycle; and
selecting the second access provider, wherein the second access provider charges a second access cost having an amount that is based on a maximum number of associated client systems that simultaneously access network resources via the second access provider during a billing cycle.
-
-
26. A method as defined in claim 22, wherein:
-
the method further comprises the step of designating a peak load time during which the information retrieval system experiences a heavy load compared to a load experienced at other times, the usage profile indicating that the first client system has accessed the network resources during the peak load time more than the second client has accessed the network resources during the peak load time; and
the step of generating the first script and the second script comprise the steps of;
selecting the first access provider, wherein the first access provider charges a first access cost having an amount that is dependent on the amount of time during which the network resources are accessed via the first access provider during a billing cycle; and
selecting the second access provider, wherein the second access provider charges a second access cost having an amount that is based on a maximum number of associated client systems that simultaneously access network resources via the second access provider during a billing cycle.
-
-
27. A computer program product for implementing a method of selecting access providers to be used by one or more client systems of an information retrieval system to access network resources, wherein the method is capable of being implemented in an access monitoring system included in the information retrieval system, the computer program product comprising:
-
a computer-readable medium carrying computer-executable instructions for implementing the method, wherein the computer-executable instructions comprise;
program code means for compiling information characterizing the use of a client system to gain access to network resources;
program code means for identifying an access cost associated with the client system, wherein the access cost has been incurred by the client system gaining access to network resources; and
program code means for generating, based on the use and the access cost of the client system, computer-executable code for instructing the client system to access the network resources via one or more selected access providers. - View Dependent Claims (28, 29, 30, 31)
program code means for characterizing the use of other client systems; and
program code means for choosing the one or more access providers so as to provide an expected degree of load balancing based on the use of the client system and the use of the other client systems.
-
-
32. A computer program product for implementing a method of selecting an access provider by which a client system of an information retrieval system is to access network resources, wherein the method is capable of being implemented in the client system, the computer program product comprising:
-
a computer-readable medium carrying computer-executable instructions for implementing the method, wherein the computer-executable instructions comprise;
program code means for storing a first script and a second script, wherein the first script includes code enabling the client system to access the network resources via a first access provider, and wherein the second script includes code enabling the client system to access the network resources via a second access provider; and
program code means for selecting, based at least on access cost criteria, one of the first script and the second script for execution. - View Dependent Claims (33, 34, 35, 36, 37)
program code means for executing one of the first script and the second script; and
program code means for establishing communication with one of the first access provider and the second access provider in response to executing one of the first script and the second script at the client system.
-
-
36. A computer program product as defined in claim 35, wherein communication is established with the first access provider during a peak load time, the information retrieval system experiencing a heavy load during the peak load time compared to the load experienced by the information retrieval system during other times, and wherein the communication is established with the second access provider during the other times.
-
37. A computer program product as defined in claim 32, wherein the computer-executable instructions further comprise:
-
program code means for making an attempt to establish communication with the first access provider upon executing the first script; and
program code means for establishing communication with an alternate access provider if the attempt is unsuccessful.
-
Specification