Slide 1

Slide 1 text

Route: A Name Based Routing Scheme for Information Centric Networks Reaz Ahmed*, Md. Faizul Bari*, Shihabur R. Chowdhury*, Md. Golam Rabbani*, Raouf Boutaba*, and Bertrand Mathieu Presented By: Shihabur R. Chowdhury *David R. Cheriton School of Computer Science, University of Waterloo +Orange Labs

Slide 2

Slide 2 text

Outline 2  Background  Information Centric Networks (ICN)  Challenges in ICN  Contribution Summary  Route DHT  Partitioning  Routing  Mapping  Content Lookup  Conclusion

Slide 3

Slide 3 text

Background 3  Information Centric Networking (ICN)  Also known as “Content Centric or Content Based Networking”, “Named Data Networking” etc.  Contents are communication endpoints rather than hosts  Host to content binding is transparent to the end users  Why ICN?  Internet usage is becoming more “content oriented” rather than “host oriented”  More video streaming traffic than ssh traffic  Efficient content distribution is through ad-hoc patches  CDN, P2P file sharing etc.  Little knowledge about the underlying network

Slide 4

Slide 4 text

Related Works 4  TRIAD proposed to avoid DNS lookup and use object names to route to object sources [2000]  DONA improved on TRIAD and proposed a secure and hierarchical name based routing architecture [2007]  Named Data Networking project at PARC initiated to develop a protocol specification for ICN [2009]  A number of projects are working on different ICN architectures  PSIRP, 4WARD, SAIL, COMET, PURSUIT, NetInf, CONVERGENCE

Slide 5

Slide 5 text

Challenges in ICN  Content Naming  How to uniquely and securely assign identifiers to contents ?  Routing  How to route content request based on content names ?  Routing Scalability  Routing table size  O(n) is very expensive, n ~ 1012 (even more).  Content names are hard to aggregate  Network traffic  How to efficiently serve content requests ? 5

Slide 6

Slide 6 text

Contribution Summary  We address the routing scalability issue in ICN  We propose Route, a name based Distributed Hash Table (DHT) to route based on content names  Route provides  Logarithmic routing table size and content lookup hops  We also propose an algorithm for mapping Route to a physical network 6

Slide 7

Slide 7 text

Route DHT 7  Three important issues in a DHT design  How to partition the name (or key) space among the DHT nodes?  How to route a get or put query between the DHT nodes?  How to map a logical DHT overlay topology to the underlying physical network?

Slide 8

Slide 8 text

Route: Partitioning {lord_of_the_rings.avi, book1.pdf, img_001.jpg, www.rocket.com….} 8

Slide 9

Slide 9 text

Route DHT: Partitioning (cont..)  We treat the names as unordered set of alphanumeric characters  book1.pdf => {b, o, k, 1, p, d, f}  We build a partitioning tree  Each level takes partitioning decisions based on presence/absence of a subset of characters  The final partitions are mutually exclusive 9

Slide 10

Slide 10 text

Route: Partitioning (cont..)  A subset of the alphabet, Si is assigned at each level i  Example: Initially we have only one node and a partitioning set S1 = {r,c} } , { 1 c r S  10

Slide 11

Slide 11 text

Route: Partitioning (cont..)  There are possible character presence combination at each node at level i.  Each character presence combination may form the edges to nodes in level i + 1  The root has at most 22 = 4 children.  We assign another partitioning set, S2 = {e} to level 2 nodes. | | 2 i S c r rc c r c r } { 2 e S  } , { 1 c r S  11

Slide 12

Slide 12 text

Route: Partitioning (cont..)  Each node in level 2 has at most 21 = 2 children  For S3 = {k, t}, each node in level 2 will have at most 22 = 4 children  And so on c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k 12

Slide 13

Slide 13 text

Route: Partitioning (cont..)  Leaf nodes are labeled with concatenation of all the labels on root to leaf path  These concatenated labels represent a partition  Labels of the leaf nodes are assigned to the DHT nodes c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e t k t k e c r 13 Names that have c and k but not r, e and t

Slide 14

Slide 14 text

Route: Partitioning (cont..) Logical node Indexing node c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k Responsible for names Matching the pattern t ek c r 14

Slide 15

Slide 15 text

Route: Routing t ek c r rocket.jpg does not Match pattern. Where to forward? 15

Slide 16

Slide 16 text

Route: Routing (cont..) 2 5 7 6 Logical node (no physical existence) Indexing node (DHT nodes) c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k t k e c r   16  Each node has a set of logical neighbors  Neighbor list of a leaf node is determined by taking all possible character presence combination of each sub-label from root to node path t k e c r   t k e rc   t k e c r   t k e c r   t k e c r   kt e c r   t k e c r   t k e c r   t k e c r   t k e c r  

Slide 17

Slide 17 text

Route: Routing (cont..) 3 4 1 2 5 7 6 Logical node (no physical existence) Indexing node (DHT nodes) c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k t k e c r   17  If a leaf node corresponding to a pattern does not exist then select the leaf node having longest matched prefix with the pattern’s representative string t k e c r   t k e rc   t k e c r   t k e c r   t k e c r   kt e c r   t k e c r   t k e c r   t k e c r   t k e c r  

Slide 18

Slide 18 text

Route: Routing (cont..) c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k 18 Logical node Indexing node Logical link Physical link

Slide 19

Slide 19 text

Route: Mapping  Route DHT nodes have almost equal number of logical neighbors.  i.e., overlay graph is regular  Underlay graph is the Internet graph (AS level). It is reported to be power law distributed.  Underlay graph nodes have tier ranking.  Embedding a regular overlay graph on a power law distributed graph is hard. 19

Slide 20

Slide 20 text

Route: Mapping (cont..)  Mapping Algorithm  Initiated by a central naming authority, similar to ICANN in current Internet naming.  The partition tree, T is initially grown based on some corpus.  The partitioning sets at each level are selected based on character frequency in the corpus.  The central authority assigns partitions to Tier-I ASs only. 20

Slide 21

Slide 21 text

Route : Mapping (cont..)  Initially the tree is grown to support the number of Tier-I ASs only  Partitions are assigned to Tier-I ASs along with possible next levels of extensions. 21 Tier-1 Logical node Indexing node rc c r c r c r

Slide 22

Slide 22 text

Route: Mapping (cont..)  Tier-I ASs extend their partition with additional levels in the tree  The extended partitions are assigned to Tier-II AS. 22 Tier-1 Tier-2 Logical node Indexing node rc c r c r c r t t t t t t

Slide 23

Slide 23 text

Route: Mapping 23  Conflict Resolution t k e c r   kt e c r   t k e c r   t k e rc  

Slide 24

Slide 24 text

Route: Content Lookup A node, n receives a content request The content name is transformed to matching pattern, p n forwards p to a node m, responsible for pattern q. Forwarding continues until destination is found or n looks up in routing table to find a pattern q that has longest prefix match with p m contains an index, indicating the content’s actual location Request is redirected to the content’s actual location 24 www.rocket.com rcekt p  n q p n q p Content is in r r

Slide 25

Slide 25 text

Conclusion  Routing in the Internet based on content name is challenging due to the large volume of contents  Proposed Route, a name based DHT that can route using content names  Route provides guaranteed content lookup using logarithmic size routing table  Also proposed a mapping algorithm that maps the DHT to physical network and assigns loads to network elements proportionally to their capacity. 25

Slide 26

Slide 26 text

Questions? 26

Slide 27

Slide 27 text

Backup Slide 27 Logical node (no physical existence) Indexing node (DHT nodes) c r rc c r c r } , { 3 t k S  } { 2 e S  } , { 1 c r S  e e e e e e e e kt t k t k t k kt t k t k t k kt t k t k t k kt t k t k t k