IP Library Patent Application 14516450
Patent Application
App. No. 14/516,450

SYSTEM AND METHOD FOR RANKING NAMED-DATA NETWORKING OBJECTS IN A CACHE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/516,450
Abstract

A router can select a cached Content Object to rank, and analyzes historical usage information for the Content Object to determine a set of exclusions received for the Content Object. The router then computes a rank value for the Content Object, based on the set of exclusions for the Content Object and one or more predetermined exclusion patterns, and stores the rank value in association with the Content Object. When the router receives an Interest whose name is associated with multiple cached Content Objects, the router selects, from the multiple cached Content Objects, a cached Content Object with a highest rank value. The router can return the selected cached Content Object to satisfy the Interest.

Claims (145)

1 . A computer-implemented method, comprising:

selecting a Content Object to rank;

analyzing, by a forwarding device, historical usage information for the Content Object;

determining, from the historical usage information, a set of exclusions received for the Content Object;

computing a rank value for the Content Object, based on the set of exclusions for the Content Object and one or more predetermined exclusion patterns; and

storing the rank value in association with the Content Object.

2 . The method of claim 1 , wherein the Content Object is a cached Content Object.

3 . The method of claim 1 , further comprising, selecting the Content Object to rank in response to one or more of:

storing the Content Object in a cache;

receiving an Interest whose name matches a name or name prefix of the Content Object; and

receiving an Interest that includes an exception for the Content Object.

4 . The method of claim 1 , further comprising:

receiving an Interest whose name is associated with multiple cached Content Objects;

selecting, from the multiple cached Content Objects, a cached Content Object with a highest rank value; and

returning the selected cached Content Object to satisfy the Interest.

5 . The method of claim 1 , further comprising:

determining that the Content Object is a new Content Object; and

assigning a maximum rank value to the Content Object.

6 . The method of claim 5 , wherein determining that the Content Object is a new Content Object involves one or more of:

determining that the Content Object has not been returned to satisfy an Interest; and

determining that an exclusion has not been received for the Content Object.

7 . The method of claim 1 , further comprising selecting one or more exclusion patterns for ranking the Content Object from a set of predetermined exclusion patterns including at least one of:

an exclusion-rate pattern that ranks the Content Object based on a rate at which the Content Object received exclusions;

a time distribution pattern that ranks the Content Object based on a time elapsed since the Content Object received an exclusion; and

an excluding-interfaces pattern that ranks the Content Object based on a fraction of local interfaces from which the Content Object received exclusions.

8 . The method of claim 1 , wherein computing the rank value involves:

computing a factor for each exclusion pattern, based on the set of exclusions for the Content Object;

computing an overall factor, F, based on the individual factors for each exclusion pattern; and

computing the rank value using the overall factor, F.

9 . The method of claim 8 , wherein computing the rank value further involves computing:

r

n

|

H

(

C

)

(

t

)

=

-

t

F

wherein r n|H(C) designates the rank value for the Content Object, and wherein t designates the age of the Content Object in the cache.

10 . A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method:

selecting a Content Object to rank;

analyzing, by a forwarding device, historical usage information for the Content Object;

determining, from the historical usage information, a set of exclusions received for the Content Object;

computing a rank value for the Content Object, based on the set of exclusions for the Content Object and one or more predetermined exclusion patterns; and

storing the rank value in association with the Content Object.

11 . The storage medium of claim 10 , further comprising, selecting the Content Object to rank in response to one or more of:

storing the Content Object in a cache;

receiving an Interest whose name matches a name or name prefix of the Content Object; and

receiving an Interest that includes an exception for the Content Object.

12 . The storage medium of claim 10 , further comprising:

receiving an Interest whose name is associated with multiple cached Content Objects;

selecting, from the multiple cached Content Objects, a cached Content Object with a highest rank value; and

returning the selected cached Content Object to satisfy the Interest.

13 . The storage medium of claim 10 , further comprising:

determining that the Content Object is a new Content Object; and

assigning a maximum rank value to the Content Object.

14 . The storage medium of claim 13 , wherein determining that the Content Object is a new Content Object involves one or more of:

determining that the Content Object has not been returned to satisfy an Interest; and

determining that an exclusion has not been received for the Content Object.

15 . The storage medium of claim 10 , further comprising selecting one or more exclusion patterns for ranking the Content Object, from a set of predetermined exclusion patterns including at least one of:

an exclusion-rate pattern that ranks the Content Object based on a rate at which the Content Object received exclusions;

a time distribution pattern that ranks the Content Object based on a time elapsed since the Content Object received an exclusion; and

an excluding-interfaces pattern that ranks the Content Object based on a fraction of local interfaces from which the Content Object received exclusions.

16 . The storage medium of claim 10 , wherein computing the rank value involves:

computing a factor for each exclusion pattern, based on the set of exclusions for the Content Object;

computing an overall factor, F, based on the individual factors for each exclusion pattern; and

computing the rank value using the overall factor, F.

17 . The storage medium of claim 16 , wherein computing the rank value further involves computing:

r

n

|

H

(

C

)

(

t

)

=

-

t

F

wherein r n|H(C) designates the rank value for the Content Object, and wherein t designates the age of the Content Object in the cache.

18 . A computer system, comprising:

one or more processors;

a memory; and

a computer-readable medium coupled to the one or more processors storing instructions stored that, when executed by the one or more processors, cause the computing system to perform a method comprising:

selecting a Content Object to rank;

analyzing, by a forwarding device, historical usage information for the Content Object;

determining, from the historical usage information, a set of exclusions received for the Content Object;

computing a rank value for the Content Object, based on the set of exclusions for the Content Object and one or more predetermined exclusion patterns; and

storing the rank value in association with the Content Object.

19 . The computer system of claim 18 , further comprising, selecting the Content Object to rank in response to one or more of:

storing the Content Object in a cache;

receiving an Interest whose name matches a name or name prefix of the Content Object; and

receiving an Interest that includes an exception for the Content Object.

20 . The computer system of claim 18 , further comprising:

receiving an Interest whose name is associated with multiple cached Content Objects;

selecting, from the multiple cached Content Objects, a cached Content Object with a highest rank value; and

returning the selected cached Content Object to satisfy the Interest.

21 . The computer system of claim 18 , further comprising:

determining that the Content Object is a new Content Object; and

assigning a maximum rank value to the Content Object.

22 . The computer system of claim 21 , wherein determining that the Content Object is a new Content Object involves one or more of:

determining that the Content Object has not been returned to satisfy an Interest; and

determining that an exclusion has not been received for the Content Object.

23 . The computer system of claim 18 , further comprising selecting one or more exclusion patterns for ranking the Content Object, from a set of predetermined exclusion patterns including at least one of:

an exclusion-rate pattern that ranks the Content Object based on a rate at which the Content Object received exclusions;

a time distribution pattern that ranks the Content Object based on a time elapsed since the Content Object received an exclusion; and

an excluding-interfaces pattern that ranks the Content Object based on a fraction of local interfaces from which the Content Object received exclusions.

24 . The computer system of claim 18 , wherein computing the rank value involves:

computing a factor for each exclusion pattern, based on the set of exclusions for the Content Object;

computing an overall factor, F, based on the individual factors for each exclusion pattern; and

computing the rank value using the overall factor, F.

25 . The computer system of claim 24 , wherein computing the rank value further involves computing:

r

n

|

H

(

C

)

(

t

)

=

-

t

F

wherein r n|H(C) designates the rank value for the Content Object, and wherein t designates the age of the Content Object in the cache.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: CISCO SYSTEMS, INC.
Reel/Frame 041714/0373 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: CISCO SYSTEMS, INC.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 041715/0001 →
CONFIRMATORY LICENSE Recorded Mar 3, 2016
From: PALO ALTO RESEARCH CENTER
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 037981/0174 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2014
From: UZUN, ERSIN
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 034027/0742 →