×

System and method for on-demand content exchange with adaptive naming in information-centric networks

  • US 10,333,840 B2
  • Filed: 02/06/2015
  • Issued: 06/25/2019
  • Est. Priority Date: 02/06/2015
  • Status: Active Grant
First Claim
Patent Images

1. A computer-executable method for content exchange in an information-centric network (ICN), the method comprising:

  • receiving, by a first node in the ICN, an interest for content from a second node, wherein the interest indicates a name of the content and an incoming identifier assigned to the interest by the second node, wherein the incoming identifier is a concatenation of a predecessor token that indicates a previous-hop neighbor to the second node, a forwarding token, and an anchor token that indicates a destination node that advertises the content, and the forwarding token is assigned by the second node and is unique to a combination of the previous-hop neighbor to the second node, the first node, and the destination node, and wherein the received interest further indicates a hop count from the second node to the destination node that advertises the content;

    determining, based on routing information stored on the first node and the hop count, whether a distance-based forwarding condition is met to determine whether the first node is closer to the destination node than the second node from which the interest was received, wherein in response to the distance-based forwarding condition not being met, dropping the interest and sending a control message back to the second node indicating that an interest loop is detected, and in response to the distance-based forwarding condition being met;

    determining whether a matching entry is found in an identifier table stored on the first node that corresponds to the incoming identifier, wherein in response to the matching entry being found in the identifier table, the matching entry indicates a next-hop neighbor and an outgoing identifier, and in response to no matching entry corresponding to the incoming identifier being found in the identifier table;

    identifying a next-hop neighbor based on the routing information stored on the first node; and

    creating an entry in the identifier table for the received interest, wherein creating the entry comprises generating an outgoing identifier, and the generated outgoing identifier indicates an outgoing forwarding token that is assigned by the first node and is unique to a combination of the second node, the next-hop neighbor, and the destination node that advertises the content;

    updating the interest by replacing the incoming identifier with the outgoing identifier, wherein the outgoing identifier includes an outgoing predecessor token, an outgoing forwarding token, and an outgoing anchor token, the outgoing predecessor token is a same as the forwarding token assigned by the second node, and the outgoing forwarding token is assigned by the first node and is unique to a combination of the second node, the next-hop neighbor, and the destination node indicated by the outgoing anchor token;

    forwarding the updated interest to the next-hop neighbor;

    receiving, by the first node, a content object in response to the interest, wherein the content object includes a content identifier, wherein the content identifier includes, at least in part, the outgoing forwarding token assigned by the first node;

    identifying a second matching entry in the identifier table stored on the first node that corresponds to the content identifier wherein the second matching entry indicates the second node and an identifier associated with the second node, wherein the identifier associated with the second node that is stored on the first node includes, at least in part, the forwarding token assigned by the second node;

    updating the content object by replacing the content identifier with the previously received incoming identifier associated with the second node; and

    forwarding the updated content object to the second node.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×