IP Library Granted Patent US 10,069,729
Granted Patent B2
US 10,069,729 · App. 15/231,353 · Granted Sep 4, 2018

System and method for throttling traffic based on a forwarding information base in a content centric network

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 10,069,729
App. No.
15/231,353
Granted
Sep 4, 2018
Kind
B2
Abstract

One embodiment provides a system that facilitates efficient communication based on a forwarding information base (FIB). The system receives, by an intermediate node, a first interest which includes a name and maximum interest information which indicates whether to forward a subsequent interest with a same name prefix as the first interest. In response to obtaining a first entry from a FIB based on the name for the first interest, the system adds to the first entry, for an outgoing interface corresponding to an arrival interface of the first interest, the maximum interest information included in the first interest as an interest limit for the first entry. In response to determining that the interest limit for the first entry is reached, the system refrains from forwarding the subsequent interest, thereby facilitating the intermediate node to manage traffic based on information in the forwarding information base provided by a content producer.

Claims (82)

1. A computer system for facilitating traffic throttling based on a forwarding information base, the system comprising:

a processor; and

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

receiving, by an intermediate node, a first interest which includes a name and maximum interest information, wherein the name is a hierarchically structured variable length identifier that includes contiguous name components ordered from a most general level to a most specific level, and wherein the maximum interest information indicates whether to forward a subsequent interest with a same name prefix as the first interest;

in response to obtaining a first entry from a forwarding information base based on the name for the first interest, adding to the first entry, for an outgoing interface corresponding to an arrival interface of the first interest, the maximum interest information included in the first interest as an interest limit for the first entry;

receiving the subsequent interest; and

in response to determining that the interest limit for the first entry is reached, refraining from forwarding the subsequent interest,

thereby facilitating the intermediate node to manage traffic based on information in the forwarding information base provided by a content producer.

2. The computer system of claim 1 , wherein an entry in the forwarding information base includes:

a name prefix which includes one or more contiguous name components of the name; and

one or more tuples comprised of an outgoing interface, an interest limit, and a counter which is a number that tracks a number of outstanding interests forwarded on the respective outgoing interface, wherein an outstanding interest is an interest which is forwarded and has not been satisfied by a responsive content object.

3. The computer system of claim 2 , wherein the method further comprises:

allocating the interest limit by transmitting one or more second interests to downstream routers, wherein a second interest includes the name and maximum interest information which is an allocated portion of the interest limit, wherein a sum of the allocated portions is equal to the interest limit, and wherein allocating the interest limit is based on one or more of:

an even distribution based on an equal or similar distribution;

an uneven distribution based on network conditions; and

a dynamic or a static distribution.

4. The computer system of claim 2 , wherein the maximum interest information included in the first interest is a maximum number of outstanding interests to be forwarded based on the name prefix.

5. The computer system of claim 4 , wherein the method further comprises determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

in response to determining that the counter for the selected outgoing interface is less than the interest limit:

forwarding the subsequent interest via the selected outgoing interface;

incrementing by one the counter for the selected outgoing interface; and

in response to determining that the counter for the selected outgoing interface is not less than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

6. The computer system of claim 2 , wherein the maximum interest information included in the first interest is a maximum rate of interests to be forwarded based on the name prefix.

7. The computer system of claim 6 , wherein the method further comprises determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

computing a sliding forwarding rate for the first entry based on the selected outgoing interface;

in response to determining that the computed rate is less than or equal to the interest limit, forwarding the subsequent interest via the selected outgoing interface; and

in response to determining that the computed rate is greater than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

8. A computer-implemented method for facilitating traffic throttling based on a forwarding information base, the method comprising:

receiving, by an intermediate node, a first interest which includes a name and maximum interest information, wherein the name is a hierarchically structured variable length identifier that includes contiguous name components ordered from a most general level to a most specific level, and wherein the maximum interest information indicates whether to forward a subsequent interest with a same name prefix as the first interest;

in response to obtaining a first entry from a forwarding information base based on the name for the first interest, adding to the first entry, for an outgoing interface corresponding to an arrival interface of the first interest, the maximum interest information included in the first interest as an interest limit for the first entry;

receiving the subsequent interest; and

in response to determining that the interest limit for the first entry is reached, refraining from forwarding the subsequent interest,

thereby facilitating the intermediate node to manage traffic based on information in the forwarding information base provided by a content producer.

9. The method of claim 8 , wherein an entry in the forwarding information base includes:

a name prefix which includes one or more contiguous name components of the name; and

one or more tuples comprised of an outgoing interface, an interest limit, and a counter which is a number that tracks a number of outstanding interests forwarded on the respective outgoing interface, wherein an outstanding interest is an interest which is forwarded and has not been satisfied by a responsive content object.

10. The method of claim 9 , further comprising:

allocating the interest limit by transmitting one or more second interests to downstream routers, wherein a second interest includes the name and maximum interest information which is an allocated portion of the interest limit, wherein a sum of the allocated portions is equal to the interest limit, and wherein allocating the interest limit is based on one or more of:

an even distribution based on an equal or similar distribution;

an uneven distribution based on network conditions; and

a dynamic or a static distribution.

11. The method of claim 9 , wherein the maximum interest information included in the first interest is a maximum number of outstanding interests to be forwarded based on the name prefix.

12. The method of claim 11 , further comprising determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

in response to determining that the counter for the selected outgoing interface is less than the interest limit:

forwarding the subsequent interest via the selected outgoing interface;

incrementing by one the counter for the selected outgoing interface; and

in response to determining that the counter for the selected outgoing interface is not less than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

13. The method of claim 9 , wherein the maximum interest information included in the first interest is a maximum rate of interests to be forwarded based on the name prefix.

14. The method of claim 13 , further comprising determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

computing a sliding forwarding rate for the first entry based on the selected outgoing interface;

in response to determining that the computed rate is less than or equal to the interest limit, forwarding the subsequent interest via the selected outgoing interface; and

in response to determining that the computed rate is greater than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

15. 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 an intermediate node, a first interest which includes a name and maximum interest information, wherein the name is a hierarchically structured variable length identifier that includes contiguous name components ordered from a most general level to a most specific level, and wherein the maximum interest information indicates whether to forward a subsequent interest with a same name prefix as the first interest;

in response to obtaining a first entry from a forwarding information base based on the name for the first interest, adding to the first entry, for an outgoing interface corresponding to an arrival interface of the first interest, the maximum interest information included in the first interest as an interest limit for the first entry;

receiving the subsequent interest; and

in response to determining that the interest limit for the first entry is reached, refraining from forwarding the subsequent interest,

thereby facilitating the intermediate node to manage traffic based on information in the forwarding information base provided by a content producer.

16. The storage medium of claim 15 , wherein an entry in the forwarding information base includes:

a name prefix which includes one or more contiguous name components of the name; and

one or more tuples comprised of an outgoing interface, an interest limit, and a counter which is a number that tracks a number of outstanding interests forwarded on the respective outgoing interface, wherein an outstanding interest is an interest which is forwarded and has not been satisfied by a responsive content object.

17. The storage medium of claim 16 , wherein the method further comprises:

allocating the interest limit by transmitting one or more second interests to downstream routers, wherein a second interest includes the name and maximum interest information which is an allocated portion of the interest limit, wherein a sum of the allocated portions is equal to the interest limit, and wherein allocating the interest limit is based on one or more of:

an even distribution based on an equal or similar distribution;

an uneven distribution based on network conditions; and

a dynamic or a static distribution.

18. The storage medium of claim 16 , wherein the maximum interest information included in the first interest is a maximum number of outstanding interests to be forwarded based on the name prefix.

19. The storage medium of claim 18 , wherein the method further comprises determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

in response to determining that the counter for the selected outgoing interface is less than the interest limit:

forwarding the subsequent interest via the selected outgoing interface;

incrementing by one the counter for the selected outgoing interface; and

in response to determining that the counter for the selected outgoing interface is not less than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

20. The storage medium of claim 16 , the maximum interest information included in the first interest is a maximum rate of interests to be forwarded based on the name prefix, and wherein the method further comprises determining whether the interest limit for the first entry is reached, which comprises:

selecting an outgoing interface;

computing a sliding forwarding rate for the first entry based on the selected outgoing interface;

in response to determining that the computed rate is less than or equal to the interest limit, forwarding the subsequent interest via the selected outgoing interface; and

in response to determining that the computed rate is greater than the interest limit, refraining from forwarding the subsequent interest via the selected outgoing interface.

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 Aug 8, 2016
From: WOOD, CHRISTOPHER A.; SCOTT, GLENN C.
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 039372/0842 →