Proximity as an aid to caching and secondary serving of data
First Claim
1. An apparatus, comprising:
- a processor; and
a memory, at least one of the processor or the memory being configured or designed for;
determining a location of at least one client not currently requesting content but that is likely to request the content;
determining a first proximity between the at least one client and a first server not currently storing but configured to store and serve the content;
determining a second proximity between the at least one client and a second server not currently storing but configured to store and serve the content; and
based upon the relative values of the first and second proximities, loading the content into one of the first server or the second server from a third entity.
0 Assignments
0 Petitions
Accused Products
Abstract
A proximity-based content control method “propagates” or positions content based upon “proximity” between various nodes on a network. The nodes between which the content is propagated include content libraries, servers, and clients. In one case, the relative proximities of two content servers to a particular client or group of clients determines which of these servers serves client requests. In another case, the method employs anticipatory loading of content from a library to a server based upon the server'"'"'s proximity to a given client-base. Yet another application involves adding or removing server capacity to a network based upon proximity to clients. Another application applies proximity affects to cache release algorithms. A “content control system” calculates proximity dynamically and automatically decides whether to move content based upon the proximity calculation.
-
Citations
24 Claims
-
1. An apparatus, comprising:
-
a processor; and a memory, at least one of the processor or the memory being configured or designed for; determining a location of at least one client not currently requesting content but that is likely to request the content; determining a first proximity between the at least one client and a first server not currently storing but configured to store and serve the content; determining a second proximity between the at least one client and a second server not currently storing but configured to store and serve the content; and based upon the relative values of the first and second proximities, loading the content into one of the first server or the second server from a third entity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An apparatus, comprising:
-
means for determining the location of at least one client not currently requesting content but that is likely to request the content; means for determining a first proximity between the at least one client and a first server not currently storing but configured to store and serve the content; means for determining a second proximity between the at least one client and a second server not currently storing but configured to store and serve the content; and means for loading the content into one of the first server or the second server from a third entity based upon the relative values of the first and second proximities.
-
-
10. An apparatus, comprising:
-
a processor; and a memory, at least one of the processor or the memory being configured or designed for; (a) determining a location of a client or group of clients that will require access to content; (b) identifying a first server currently storing the content and serving the client'"'"'s requirements for access to the content; (c) identifying a second server that does not currently store said content but that is configured to store and serve the content; (d) determining a first proximity between the first server and the client or group of clients; (e) determining a second proximity between the second server and the client or group of clients, wherein at least one of the first or second proximities is determined by at least one of the following factors, the factors weighted based on the type of content to be loaded;
congestion, noise and loss on a network segment, or charges incurred to send; and(f) if the relative values of the first and second proximities meet a defined constraint, loading the content to the second server from a third entity. - View Dependent Claims (11)
-
-
12. An apparatus, comprising:
-
a processor; and a memory, at least one of the processor or the memory being configured or designed for; (a) determining a location of a client or group of clients that are likely to access content; (b) determining the relative proximities of (i) the client or group of clients to a first server not currently storing but configured to store and serve the content and (ii) the client or group of clients and a second server not currently storing but configured to store and serve the content; and (c) based upon the relative proximities, loading the content into one of the first server or the second server from a third entity. - View Dependent Claims (13)
-
-
14. An apparatus, comprising:
-
a processor; and a memory, at least one of the processor or the memory being configured or designed for; (a) determining that one or more clients needs or will need to receive content; (b) determining a first proximity between the one or more clients and a first server configured to supply the content; (c) determining a second proximity between the one or more clients and a second server configured to supply the content; and (d) based upon the relative values of the first and second proximities, choosing one of the first or second servers to receive the content from a third entity in order to be able to fill future client requests for the content, wherein at least one of the first or second proximities is determined by at least one of the following factors;
congestion, noise and loss on a network segment, or charges incurred to send. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. An apparatus, comprising:
-
a processor; and a memory, at least one of the processor or the memory being configured or designed for; predicting that at least one client is likely to request content, wherein the at least one client is not currently requesting the content; determining a first proximity between the at least one client and a first server not currently storing but configured to store and serve the content; determining a second proximity between the at least one client and a second server not currently storing but configured to store and serve the content; and based upon the relative values of the first and second proximities, loading the content into one of the first server or the second server from a third entity. - View Dependent Claims (22, 23, 24)
-
Specification