Transcript NDN_ICDCS12

Scalable Name Lookup in NDN Using Effective Name Component Encoding

Yi Wang

, Keqiang He, Huichen Dai, Wei Meng, Junchen Jiang, Bin Liu, Yan Chen

Parallel Name Lookup for NDN

——Outline

1. Named Data Networking (NDN) Introduction

2. Name Lookup in NDN 3. Name Component Encoding (NCE) 4. Analysis 5. Experimental Results 6. Conclusion

Parallel Name Lookup for NDN

——NDN Introduction  Named Data Networking (NDN)  Named Data Networking is proposed recently as the clean-slate network architecture for future Internet, which no longer concentrates on “ where ” the information is located, but “ what ” the information (content) is needed.

 NDN uses names to identify every piece of contents instead of IP addresses for hardware devices attached to IP network.

Parallel Name Lookup for NDN

——NDN Introduction  Naming in NDN  An NDN name is hierarchically structured and composed of explicitly delimited components  Interest and Data Packets in NDN /com/google/maps com google maps

 Packet Forwarding Process

Parallel Name Lookup for NDN

——NDN Introduction IP Packet Interest Packet Data Packet Client Dst Src FIB Content Provider

 Packet Forwarding Process

Parallel Name Lookup for NDN

——NDN Introduction

Parallel Name Lookup for NDN

——Outline 1. Named Data Networking (NDN) Introduction

2. Name Lookup in NDN

3. Name Component Encoding (NCE) 4. Analysis 5. Experimental Results 6. Conclusion

Parallel Name Lookup for NDN

——Name Lookup in NDN  The challenges of name lookup as below:  Variable length name: unlimited components number and unfixed component’s length  Longest name prefix matching: aggregate prefixes to reduce the total number of prefixes in FIB  Interest Packet and Data Packet has different lookup processes  The large-scale name prefix set  Frequently update

Parallel Name Lookup for NDN

——Name Lookup in NDN  Name lookup at component granularity / com / yahoo / news / com / yahoo / music / new / com / google / news / com / google / cn / com / sina / news / cn / com / sina / mail / cn / yahoo / news level-1 level-2 1 2 3 level-3 4 level-4 8 new 9 level-5 D 5 news A E 6 sina B F 7 news C Name Prefix Trie (NPT )

Parallel Name Lookup for NDN

——Outline 1. Named Data Networking (NDN) Introduction 2. Name Lookup in NDN

3. Name Component Encoding (NCE)

4. Analysis 5. Experimental Results 6. Conclusion

Name /com/yahoo /com/yahoo/news /com/yahoo/maps/uk /com/google /com/google/maps /cn/google/maps /cn/sina /cn/baidu /cn/baidu/map Pointer … … … … … … … … … < yahoo,1> level-1

Parallel Name Lookup for NDN

2 level-2 3 ——NCE Algorithm level-3 level-4 level-5 4 uk 5 6 7 maps 8 1 9 sina A maps C D map B E

Name

/com/yahoo /com/yahoo/news /com/yahoo/maps/uk /com/google /com/google/maps /cn/google/maps /cn/sina /cn/baidu /cn/baidu/map

Coding

/1/1 /1/1/1 /1/1/3/1 /1/4 /1/4/3 /2/4/3 /2/3 /2/1 /2/1/1

Ports

1 1 2 2 1, 2 3 2, 3 4 4 level-1 1 2 level-2 level-3 4 level-4 9 A uk,1 level-5 E 5 maps,3 B 1 3 sina,3 6 maps,3 7 8 map,1 C D

Base: (hex)

0001 4001 2

Transition_1:

2 0 4 1 2 8001 3 2 2 3 1 0004 1 9 7

Transition_2:

2 1 0 4 4 5 1 8 1 13 0007 3 1 10 4 8005 6 0009 3 0 11 7 0 2 4004 1 0 000A 000B 000D 000E 000F 0010 1 0 14 5 0 6 0 9 0 3 5 Transition

Transition_4:

3 0 1 8 3 7 4 6 1 0 3 12 # of Transitions Ports List Pointer

Character Trie for Components:

com

cn Parallel Name Lookup for NDN

——NCE Algorithm 1 1 c 2 3 5 m 4

Transition: Base:

2 1 1 0 c 2 3 3 2 o 0 3 4 6 8 n 5 1 0 9 5 m 4 1

Code

2 2..

States List

9..

0 1 0 2 6

Parallel Name Lookup for NDN

——Outline 1. Named Data Networking (NDN) Introduction 2. Name Lookup in NDN 3. Name Component Encoding (NCE)

4. Analysis

5. Experimental Results 6. Conclusion

Parallel Name Lookup for NDN

——Analysis  Memory  Character Trie: α=8, β=9  Name Component Trie: α=9, β=5

Parallel Name Lookup for NDN

——Analysis  In summary, compared with NCT, NCE utilizes the following three parts to reduce storage overhead.

 NCE uses State Transition Arrays to construct the NCT, and the memory cost can be reduced at least save 17.64%;   Code Allocation Mechanism reduces the number of components by merging the Original Collision Set at the same level; NCE stores the transitions in different sizes of Transition Arrays. Compared with the method that uses Transitiononly, it can reduce the memory overhead further.

Parallel Name Lookup for NDN

——Analysis  In NCE, the longest name prefix matching contains two Steps: 1) finds the components’ corresponding codes in CCT-STA: 2) looks up codes in ENPT-STA: So, a name lookup has: If there are

P

parallel code lookup modules, the complexity can be reduced to:

Parallel Name Lookup for NDN

——Analysis  Compared with character trie, NCE can gains:

Parallel Name Lookup for NDN

——Outline 1. Named Data Networking (NDN) Introduction 2. Name Lookup in NDN 3. Name Component Encoding (NCE) 4. Analysis

5. Experimental Results

6. Conclusion

Parallel Name Lookup for NDN

——Experimental Results  Number of Domains with different component’s number:

 Comparison of memory usage:

Parallel Name Lookup for NDN

——Experimental Results

Parallel Name Lookup for NDN

——Experimental Results  The number of different components and codes, and the compression ratio of Code Allocate Mechanism on DMOZ dataset:

Parallel Name Lookup for NDN

——Experimental Results  Number of Entries for Transition1, Transition2 and Transition4 on DMOZ dataset:

Parallel Name Lookup for NDN

——Experimental Results  The Memory Cost of NCE and NCT on DMOZ dataset:

Parallel Name Lookup for NDN

——Experimental Results  Comparison of NCT and NCE’s processing performance:

Parallel Name Lookup for NDN

——Experimental Results  NCE’s Average Lookup Time (When the Number of Parallel CCT lookup modules is 3):

Parallel Name Lookup for NDN

——Experimental Results  The relationship between NCE’s average lookuptime and the number of parallel CCT lookup modules

Parallel Name Lookup for NDN

——Experimental Results  The relationship between NCE’s speedup and the number of parallel CCT lookup modules

Parallel Name Lookup for NDN

——Experimental Results  The relationship between NCE’s packet delay and the number of parallel CCT lookup modules

Parallel Name Lookup for NDN

——Outline 1. Named Data Networking (NDN) Introduction 2. Name Lookup in NDN 3. Name Component Encoding (NCE) 4. Analysis 5. Experimental Results

6. Conclusion

Parallel Name Lookup for NDN

——Conclusion  Proposed an effective Name Components Encoding approach:  Code Allocation Mechanism  State Transition Array  Both theoretical analysis and experiments on real domain sets demonstrate that NCE could effectively reduce the memory cost while guaranteeing high-speed of longest name prefix lookup.

Parallel Name Lookup for NDN

Thank you!

Q & A