← Back to Patent Explorer
US6502175B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for locating caches in a network to optimize performance

Assignee: Alcatel Lucent SAS
•
Filing: 1999-03-31
•
Granted: 2002-12-31
•
Expires: 2019-03-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for determining locations for and placing k caches in a network for optimizing performance of a network parameter. The method includes the steps of selecting a placement parameter l that is greater than 0, assigning l caches to l arbitrary nodes in the network. selecting l caches to remove from the network, assigning l+1 caches to every possible location in the network, computing and recording network performance data on the network cost parameter for each location and for each selection of l caches, determining a location where the network performance data on the network cost parameter computed and recorded is optimized, assigning l+1 caches to the determined location, and repeating the above steps of selecting l caches, assigning l+1 caches, computing and recording network performance, determining a location, and assigning l+1 caches for k-1 iterations.

Inventors

  • 👤 P. Krishnan
  • 👤 Danny Raz
  • 👤 Yuval Shavitt

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 20:20
CPC Classifications
H; H04; H04L; H04L41/00; H04L41/50; H04L41/5003; H04L41/5019; H04L41/5025; H04L41/12; H04L67/00; H04L67/01; H04L67/10; H04L67/1001; H04L67/50; H04L67/56; H04L67/568

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 191 words
A method of determining locations for k caches in a network wherein a network configuration is defined by a plurality of network connections, a plurality of nodes, and a plurality of servers and clients and wherein network performance is determined by the interrelation therebetween and thereamong, wherein the locations determined for k caches optimizes performance of a network cost parameter which is dependent upon the network configuration, said method comprising the steps of: (a) selecting a placement parameter l that is greater than 0; (b) assigning l caches to l arbitrary nodes in the network; (c) selecting l caches to remove from the network; (d) assigning l+1 caches to every possible location in the network; (e) computing and recording network performance data on the network cost parameter for each location of said step (d) and for each selection of l caches of said step (c); (f) determining a location where the network performance data on the network cost parameter computed and recorded in said step (e) is optimized; (g) assigning l+1 caches to the location determined in said step (f); and (h) repeating said steps (c) through (g) for k−l iterations.
Claim 2
Independent Claim 191 words
A method of determining locations for k caches in a network wherein a network configuration is defined by a plurality of network connections, a plurality of nodes, and a plurality of servers and clients and wherein network performance is determined by the interrelation therebetween and thereamong, wherein the locations determined for k caches optimizes performance of a network cost parameter which is dependent upon the network configuration, said method comprising the steps of: (a) selecting a placement parameter l that is greater than 0; (b) assigning l caches to l arbitrary nodes in the network; (c) selecting l caches to remove from the network; (d) assigning l+1 caches to every possible location in the network; (e) computing and recording network performance data on the network cost parameter for each location of said step (d) and for each selection of l caches of said step (c); (f) determining a location where the network performance data on the network cost parameter computed and recorded in said step (e) is optimized; (g) assigning l+1 caches to the location determined in said step (f); and (h) repeating said steps (c) through (g) for k−l iterations.
Claim 3
Dependent Claim 27 words
The method of claim 1 , wherein said step (a) comprises selecting a placement parameter that is greater than 0 and less than or equal to 2.
Claim 4
Dependent Claim 43 words
The method of claim 1 , wherein said step (f) comprises determining a location that is not located at an edge of the network where the network performance data on the network cost parameter computed and recorded in said step (e) is optimized.
Claim 5
Dependent Claim 16 words
The method of claim 1 , further comprising the step of periodically repeating said steps (a)-(h).
Claim 6
Independent Claim 584 words
A method of determining a location for each of a plurality of caches in a single server network, said method comprising the steps of computing an optimal cost C(i, {tilde over (k)}, s) using a dynamic programming algorithm, where i is a node, {tilde over (k)} is the number of optimally placed caches, and s is the distance between node i and a next cache in the network, and determining an optimal location for installation of each of the plurality of caches for network traffic for the single server based on the computed optimal cost, wherein the network has a predetermined number of nodes and a predetermined number of caches located within the network, said step of computing an optimal cost C(i, {tilde over (k)}, s) using a dynamic programming algorithm comprising the steps of: (a) selecting a network cost parameter; (b) where no cache is located at node i, determining an optimal location for caches in the network by solving the following equation for each node i having children i L , and i R , for each cache, {tilde over (k)} and for each distance s: min 0 ≤ k ′ ≤ k   ( C   ( i L , k ′ , s + 1 ) + C   ( i R , k ~ - k ′ , s + 1 ) + ( s + 1 )   ( F   ( i L , k ′ , s + 1 ) + ( F   ( i R , k ~ - k ′ , s + 1 ) ) + s   f s , i ) ; and (c ) where a cache is located at node i, determining an optimal location for caches in the network by solving the following equation for each node i having children i L , and i R , for each cache k and for each distance s: min 0 ≤ k ′ ≤ ( k - 1 )    ( C   ( i L , k ′ , s ) + C   ( i R , k ~ - s - k ′ , s ) + F   ( i L , k ′ , s + 1 ) + ( F   ( i R , k ~ - k ′ , s + 1 ) ) where C(i, {tilde over (k)}, s) is an optimal cost of a subtree rooted at node i with {tilde over (k)} optimally placed caches, where the next cache in the network is located at a distance s from node i, F(i, {tilde over (k)}, s) is a flow associated with optimal cost C(i, {tilde over (k)}, s) which is the sum of demands in the subtree rooted at node i that do not pass through a cache in the optimal solution of C(i, {tilde over (k)}, s), C is the cost parameter, i L is a child of node i located to the left of node i, i R is a child of node i located to the right of node i, k is a cache budget and 0≦k′≦{tilde over (k)}≦k, s is a distance from node i to the next cache in the network moving away from the server and 0≦s ≦h, where h is the height of the tree, and f s,i is a flow requested by node i from the server.
Claim 7
Independent Claim 584 words
A method of determining a location for each of a plurality of caches in a single server network, said method comprising the steps of computing an optimal cost C(i, {tilde over (k)}, s) using a dynamic programming algorithm, where i is a node, {tilde over (k)} is the number of optimally placed caches, and s is the distance between node i and a next cache in the network, and determining an optimal location for installation of each of the plurality of caches for network traffic for the single server based on the computed optimal cost, wherein the network has a predetermined number of nodes and a predetermined number of caches located within the network, said step of computing an optimal cost C(i, {tilde over (k)}, s) using a dynamic programming algorithm comprising the steps of: (a) selecting a network cost parameter; (b) where no cache is located at node i, determining an optimal location for caches in the network by solving the following equation for each node i having children i L , and i R , for each cache, {tilde over (k)} and for each distance s: min 0 ≤ k ′ ≤ k   ( C   ( i L , k ′ , s + 1 ) + C   ( i R , k ~ - k ′ , s + 1 ) + ( s + 1 )   ( F   ( i L , k ′ , s + 1 ) + ( F   ( i R , k ~ - k ′ , s + 1 ) ) + s   f s , i ) ; and (c ) where a cache is located at node i, determining an optimal location for caches in the network by solving the following equation for each node i having children i L , and i R , for each cache k and for each distance s: min 0 ≤ k ′ ≤ ( k - 1 )    ( C   ( i L , k ′ , s ) + C   ( i R , k ~ - s - k ′ , s ) + F   ( i L , k ′ , s + 1 ) + ( F   ( i R , k ~ - k ′ , s + 1 ) ) where C(i, {tilde over (k)}, s) is an optimal cost of a subtree rooted at node i with {tilde over (k)} optimally placed caches, where the next cache in the network is located at a distance s from node i, F(i, {tilde over (k)}, s) is a flow associated with optimal cost C(i, {tilde over (k)}, s) which is the sum of demands in the subtree rooted at node i that do not pass through a cache in the optimal solution of C(i, {tilde over (k)}, s), C is the cost parameter, i L is a child of node i located to the left of node i, i R is a child of node i located to the right of node i, k is a cache budget and 0≦k′≦{tilde over (k)}≦k, s is a distance from node i to the next cache in the network moving away from the server and 0≦s ≦h, where h is the height of the tree, and f s,i is a flow requested by node i from the server.
Claim 8
Dependent Claim 15 words
The method of claim 5 , wherein the network cost parameter is minimum network flow.
Claim 9
Dependent Claim 205 words
A network having a plurality of nodes, a plurality of clients and a plurality of servers, all interconnected to define a network configuration and wherein network performance is determined by the interrelation therebetween and thereamong, said network comprising: a plurality of caches at a plurality of locations, wherein the locations of k caches optimizes performance of a network cost parameter which is dependent upon the network configuration, the locations of k caches being determined by a software program operable in connection with a general purpose computer for: (a) selecting a placement parameter l that is greater than 0; (b) assigning l caches to l arbitrary nodes in the network; (c) selecting l caches to remove from the network; (d) assigning l+1 caches to every possible location in the network; (e) computing and recording network performance data on the network cost parameter for each location of said step (d) and for each selection of l caches of said step (c); (f) determining a location where the network performance data on the network cost parameter computed and recorded in said step (e) is optimized; (g) assigning l+1 caches to the location determined in said step (f); and (h) repeating said steps (c) through (g) for k−l iterations.
Claim 10
Dependent Claim 205 words
A network having a plurality of nodes, a plurality of clients and a plurality of servers, all interconnected to define a network configuration and wherein network performance is determined by the interrelation therebetween and thereamong, said network comprising: a plurality of caches at a plurality of locations, wherein the locations of k caches optimizes performance of a network cost parameter which is dependent upon the network configuration, the locations of k caches being determined by a software program operable in connection with a general purpose computer for: (a) selecting a placement parameter l that is greater than 0; (b) assigning l caches to l arbitrary nodes in the network; (c) selecting l caches to remove from the network; (d) assigning l+1 caches to every possible location in the network; (e) computing and recording network performance data on the network cost parameter for each location of said step (d) and for each selection of l caches of said step (c); (f) determining a location where the network performance data on the network cost parameter computed and recorded in said step (e) is optimized; (g) assigning l+1 caches to the location determined in said step (f); and (h) repeating said steps (c) through (g) for k−l iterations.
Claim 11
Dependent Claim 27 words
The network of claim 7 , wherein the general purpose computer is connected to said network and wherein the network configuration of said network is determined by

References Cited (Backward Citations)

US5511208A Cited
US5864852A Cited
US5852717A Cited
US6058423A Cited
US5878218A Cited
US6189043B1 Cited
US6038601A Cited
US5999734A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-12-30 2006-07-01 2006-12-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-12-30 2010-07-01 2010-12-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-12-30 2014-07-01 2014-12-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag