IP Library Granted Patent US 9,992,281
Granted Patent B2
US 9,992,281 · App. 14/267,769 · Granted Jun 5, 2018

Accountable content stores for information centric networks

View Patent ↗
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 9,992,281
App. No.
14/267,769
Granted
Jun 5, 2018
Kind
B2
Abstract

A set of Content Store nodes of an information-centric network (ICN) can cache data, and can processes an Interest for this data based on a domain assigned to the requested data. During operation, a CS node can receive a Content Object that is to be cached, and processes the Content Object by determining a domain associated with the Content Object. The CS node selects a storage repository associated with the domain, and stores the Content Object in the selected repository. The CS node can also receive an Interest for a piece of content, and processes the Interest by performing a lookup operation for a rule associated with the Interest's name. The rule can include a set of commands for performing a programmatic operation. Then, if the CS node finds a matching rule, the CS node can execute the rule's commands to perform the programmatic operation.

Claims (110)

1. A computer-implemented method, comprising:

receiving, by a content-storing device, a Content Object, wherein the Content Object includes a name which is a hierarchically structured variable length identifier;

determining, by the content-storing device, a content producer associated with the Content Object;

selecting, by the content-storing device, for the Content Object, a first domain associated with the content producer, the first domain indicating a subscription;

selecting, by the content-storing device, a first storage repository assigned to the first domain, wherein the first storage repository sends a first-resolution format of the Content Object;

assigning, by the content-storing device, for the Content Object, a second domain for use other than the subscription;

selecting, by the content-storing device, a second storage repository assigned to the second domain, wherein the second storage repository sends a second-resolution format of the Content Object, wherein the first-resolution format has a higher resolution than the second-resolution format;

storing, by the content-storing device, the Content Object in the first and second storage repositories;

receiving an Interest that specifies a name of the Content Object;

determining whether the Interest has permission to access the first domain; and

in response to determining that the Interest has permission to access the first domain, returning the first-resolution format of the Content Object from the first storage repository; or

in response to determining that the Interest has no permission to access the first domain, returning the second-resolution format of the Content Object from the second storage repository.

2. The method of claim 1 , further comprising:

assigning the first storage repository to the first domain based on one or more of:

an administrative attribute of the first storage repository;

a typological attribute of the first storage repository;

a performance attribute of the first storage repository;

an ontological attribute of the first storage repository; and

a security attribute of the first storage repository.

3. The method of claim 1 , wherein each of the first storage repository and the second storage repository includes one or more of:

a memory device;

a local non-volatile storage device;

a network storage device;

a distributed data store; and

a database.

4. The method of claim 1 , further comprising:

determining, by the content-storing device, one or more attributes of the Content Object, wherein the determined attributes of the Content Object include one or more of:

an owner;

a data size;

a content name;

a signer of the Content Object;

a digital signature;

a lifetime of the Content Object; and

an access frequency of the Content Object.

5. The method of claim 1 , further comprising:

determining a set of domains associated with the Content Object; and

determining, from the set of domains, a domain that the Interest has permission to access.

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

receiving, by the computer, a Content Object, wherein the Content Object includes a name which is a hierarchically structured variable length identifier;

determining, by the computer, a content producer associated with the Content Object;

selecting, by the computer, for the Content Object, a first domain associated with the content producer, the first domain indicating a subscription;

selecting, by the computer, a first storage repository assigned to the first domain, wherein the first storage repository sends a first-resolution format of the Content Object;

assigning, by the computer, for the Content Object, a second domain for use other than the subscription;

selecting, by the computer, a second storage repository assigned to the second domain, wherein the second storage repository sends a second-resolution format of the Content Object wherein the first-resolution format has a higher resolution than the second-resolution format;

storing, by the computer, the Content Object in the first and second storage repositories;

receiving an Interest that specifies a name of the Content Object;

determining whether the Interest has permission to access the first domain; and

in response to determining that the Interest has permission to access the first domain, returning the first-resolution format of the Content Object from the first storage repository; or

in response to determining that the Interest has no permission to access the first domain, returning the second-resolution format of the Content Object from the second storage repository.

7. The storage medium of claim 6 , wherein the method further comprises:

assigning the first storage repository to the first domain based on one or more of:

an administrative attribute of the first storage repository;

a typological attribute of the first storage repository;

a performance attribute of the first storage repository;

an ontological attribute of the first storage repository; and

a security attribute of the first storage repository.

8. The storage medium of claim 6 , wherein the method further comprises:

determining, by the computer, one or more attributes of the Content Object, and the determined attributes of the Content Object include one or more of:

an owner;

a data size;

a content name;

a signer of the Content Object;

a digital signature;

a lifetime of the Content Object; and

an access frequency of the Content Object.

9. The storage medium of claim 6 , wherein the method further comprises:

determining a set of domains associated with the Content Object; and

determining, from the set of domains, a domain that the Interest has permission to access.

10. A computer system, comprising:

a processor; and

a storage device for storing instructions that, when executed by the processor, cause the processor to perform a method, the method comprising

receiving, by the computer system, a Content Object, wherein the Content Object includes a name which is a hierarchically structured variable length identifiers

determining, by the computer system, a content producer associated with the Content Object;

selecting, by the computer system, for the Content Object, a first domain associated with the content producer, the first domain indicating a subscription;

selecting, by the computer system, a first storage repository assigned to the first domain, wherein the first storage repository sends a first-resolution format of the Content Object;

assigning, by the content-storing device, for the Content Object, a second domain for use other than the subscription;

selecting, by the content-storing device, a second storage repository assigned to the second domain, wherein the second storage repository sends a second-resolution format of the video stream of the Content Object, wherein the first-resolution format has a higher resolution than the second-resolution format;

storing, by the computer system, the Content Object in the first and second storage repositories;

receiving an Interest that specifies a name of the Content Object;

determining whether the Interest has permission to access the first domain; and

in response to determining that the Interest has permission to access the first domain, returning the first-resolution format of the Content Object from the first storage repository; or

in response to determining that the Interest has no permission to access the first domain, returning the second-resolution format of the Content Object from the second storage repository.

11. The computer system of claim 10 , wherein the method further comprises:

assigning the first storage repository to the first domain based on one or more of:

an administrative attribute of the first storage repository;

a typological attribute of the first storage repository;

a performance attribute of the first storage repository;

an ontological attribute of the first storage repository; and

a security attribute of the first storage repository.

12. The computer system of claim 10 , wherein the method further comprises:

determining, by the computer system, one or more attributes of the Content Object, and the determined attributes of the Content Object include one or more of:

an owner;

a data size;

a content name;

a signer of the Content Object;

a digital signature;

a lifetime of the Content Object; and

an access frequency of the Content Object.

13. The computer system of claim 10 , wherein the method further comprises:

determining a set of domains associated with the Content Object; and

determining, from the set of domains, a domain that the Interest has permission to access.

14. The method of claim 1 , wherein each of the first storage repository and the second storage repository delivers a predetermined level of performance.

15. The storage medium of claim 6 , wherein each of the first storage repository and the second storage repository delivers a predetermined level of performance.

16. The computer system of claim 10 , wherein each of the first storage repository and the second storage repository delivers a predetermined level of performance.

17. The method of claim 1 , wherein storing the Content Object in the first and second storage repositories includes storing only a first segment of the Content Object, and the method further comprises:

pre-fetching later segments of the Content Object after receiving the Interest for the first segment of the Content Object.

18. The storage medium of claim 6 , wherein storing the Content Object in the first and second storage repositories includes storing only a first segment of the Content Object, and the method further comprises:

pre-fetching later segments of the Content Object after receiving the Interest for the first segment of the Content Object.

19. The computer system of claim 10 , wherein storing the Content Object in the first and second storage repositories includes storing only a first segment of the Content Object, and the method further comprises:

pre-fetching later segments of the Content Object after receiving the Interest for the first segment of the Content Object.

Assignments (3)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2014
From: SCOTT, GLENN C.
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 032862/0101 →