Presentation is loading. Please wait.

Presentation is loading. Please wait.

On Pending Interest Table in Named Data Networking Huichen Dai, Bin Liu, Yan Chen*, Yi Wang Tsinghua University, China *Northwestern University, USA.

Similar presentations


Presentation on theme: "On Pending Interest Table in Named Data Networking Huichen Dai, Bin Liu, Yan Chen*, Yi Wang Tsinghua University, China *Northwestern University, USA."— Presentation transcript:

1 On Pending Interest Table in Named Data Networking Huichen Dai, Bin Liu, Yan Chen*, Yi Wang Tsinghua University, China *Northwestern University, USA

2 Outline 1.Background of Named Data Networking (NDN) 2.Pending Interest Table (PIT) 3.Problem Statement 4.Challenges 5.Measure PIT Size and Access Frequency 6.NCE to Accelerate PIT Access and Size Shrinking 7.Evaluation 8.Conclusion 2/33

3 Background of NDN (1/3) Newly proposed clean-slate network architecture; Embraces Internet’s function transition from host-to-host communication to content dissemination; Routes and forwards packets by content names; Two kinds of packets: – Interest packet and Data packet. Request-driven communication model (pull); 3/33

4 Background of NDN (2/3) Content Store (CS): the router’s buffer memory that caches Data packets; Pending Interest Table (PIT): each entry records the name of a pended Interest and the interfaces from which the Interest comes in. Forwarding Information Base (FIB): NDN forwarding table. 4/33

5 Background of NDN (3/3) Figure: Interest Packet lookup and forwarding process Figure: Data packet lookup and forwarding process Content Store Pending Interest Table Forwarding Information Base 5/33

6 Pending Interest Table (1/3) A special table in NDN and no equivalent in IP. Keeps track of the Interest packets that are received but yet un-responded. Brings NDN significant features: – communication without the knowledge of host locations; – loop and packet loss detection; – multipath routing support; etc. 6/33

7 Pending Interest Table (2/3) Read and write on PIT. Content nameInterface list PIT com/google/maps 1 com/google/scholar …… com/google/maps/data/1/ com/google/scholar/data/1/ lookup Interest Packet Data Packet inserted deleted A Dynamic Process! 7/33

8 Problem Statement (1/2) A router inserts every incoming Interest into PIT, and removes each received Data packet from PIT. High-speed packet arrival rate leads to a large PIT size and extremely high access (lookup, insert and delete) frequency. Two major problems about PIT arise: – The size of PIT? – The access (lookup, insert and delete) frequency of PIT? Size? Frequency? 8/33

9 Problem Statement (2/2) Senior researchers (Lixia Zhang, Van Jacobson, etc.) witness Internet’s function transition; NDN is empirically proposed based on their experience; A gap from experience to practice: can PIT be satisfied by off-the-shelf technologies? No previous study touched the feasibility issue. No statistics support. 9/33

10 Challenges 1.No NDN deployment; 2.No data; 3.No PIT; 10/33

11 A fresh look at NDN (1/2) -- from application perspective NDN better satisfies the requirements of users: – browsing web pages, – watching videos, – sharing files, etc. Users demand the same network applications, but require different implementations in NDN. The PIT entries are consumed by application- triggered requests. 11/33

12 A fresh look on NDN (1/2) -- PIT entry filled by app-triggered Interests A sample PIT: Content nameInterface list PIT com/google/maps1 com/google/scholar3 Avatar2 parc.com/ _service/van/ 5 …… HTTP Interest P2P Interest Interest The applications do not change, solve the problems from the application perspective! 12/33

13 Apps from IP to NDN (1/5) Major Internet applications: – HTTP, FTP, P2P, , Online games, Streaming media, Instant messaging, etc. Implement these applications using NDN’s request-driven communication model. Afterwards, examine how these applications construct and destruct PIT entries. HTTP/1.1 as an example. 13/33

14 Apps from IP to NDN -- HTTP (2/5) A request/response protocol; – A client sends a request over a connection to a server, – The server responds with a message. HTTP/1.1 adopts Persistent Connections: – HTTP requests and responses can be pipelined on a connection. Simplest Case: 14/33

15 Apps from IP to NDN -- HTTP(3/5) 15/33

16 Apps from IP to NDN -- HTTP(4/5) For HTTP Request: – HTTP requests can be divide into different categories, including GET, HEAD, POST, PUT, DELETE, TRACE; – GET, HEAD – pull data from server; – POST, PUT – push data to server; – DELETE, TRACE – function calls on the server. NDN can only pull data from server. 16/33

17 Apps from IP to NDN -- HTTP(5/5) GET, HEAD – implemented by Interest packet directly; Extend the function of Interest packet to accommodate the rest methods; POST, PUT – add additional data block to the Interest packet that contains the content to be pushed to the server; DELETE, TRACE – extend Interest packet to enable function calls. 17/33

18 Measure PIT Size and Access Freq. (1/3) So far, we have So we can: We get data – we quantify PIT size and access frequency by analyzing the NDN trace. Applications on IP Applications on NDN IP traceNDN trace translate 18/33

19 Measure PIT Size and Access Freq. – Metrics (2/3) Size: the number of PIT entries at each snapshot by examining the lifetime of each PIT entry. Lookup frequency: the # of Data packets (excluding the last Data of a request/response pair) arrive per second; Insert frequency: the # of emerging biflows (new Interests arrive) Delete frequency: the # of disappearing biflows (last Data packet of a request/response pair arrive). 19/33

20 Measure PIT Size and Access Freq. – Results (3/3) A one-hour IP trace from a 20 Gbps link in China Education and Research Network (CERNET). PIT size: 1.5 million Frequencies of the first 10 seconds: (1.4 M/s, 0.9 M/s, 0.9 M/s) Methodology is what matters. 20/33

21 Data Structure for PIT (1/3) PIT size and access frequency demand a well- organized data structure to implement PIT. Inspired by the Trie structure in IP lookup, we organize PIT by a Trie as well. A sample IP trie, bit-wise. 21/33

22 Data Structure for PIT (2/3) NDN name is different from IP address; – IP addresses: Fixed length, short… – NDN names: hierarchical, composed of component, enables aggregation; Unbounded # of components, much longer than IP; E.g., /com/parc/bulletin/breakthroughs.html Therefore, we adopt Name Prefix Trie, which is of component granularity. 22/33

23 Data Structure for PIT (3/3) Name Prefix Trie (NPT), each edge stands for a name component. NamePorts /com/yahoo1 /com/yahoo/news1 /com/yahoo/maps/uk2 /com/google2 /com/google/maps1, 2 /cn/google/maps3 /cn/sina2, 3 /cn/baidu4 /cn/baidu/map4 An example of PIT Name Prefix Tree A A D D com cn B B E E yahoo google baidu google maps map news maps 6 6 uk level-1level-5level-2level-4level-3 C C sina 23/33

24 Name Component Encoding (1/4) The Name Prefix Trie (NPT) makes PIT well organized, but matching each component is slow: – The length of each component varies; – should be an exact match of string patterns. We further propose to use positive integers to encode components – Name Component Encoding (NCE). – An integer occupies smaller memory space compared to a component; – Matching integers is much faster. 24/33

25 Name Component Encoding (2/4) Name Prefix Trie (NPT) is transferred to Encoded Name Prefix Trie (ENPT) A A D D com cn B B E E yahoo google baidu google maps map news maps 6 6 uk level-1level-5level-2level-4level-3 C C sina A A D D B B E E level-1level-5level-2level-4level-3 C C 2 Name Prefix TreeEncode Name Prefix Tree CAS 25/33

26 Name Component Encoding (3/4) Preparation: define the edges in the NPT leaving from the same node as a Code Allocation Set (CAS) (dotted ellipse on the NPT); The rules to assign codes to components: – Assign each name component in a CAS a unique code; – The code should be as small as possible (ensures the codes are continuous). The ENPT is a logical structure and is eventually implemented by Simplified State Transition Arrays (S 2 TA). Benefit: a component match on S 2 TA can be implemented by a single memory access with the codes as indexes! 26/33

27 Name Component Encoding (4/4) The data structure that really implements the ENPT, each transition stands for a node and its outgoing edges. The codes are indexes of each outgoing edge A A D D B B E E level -1 level -5 level -2 level -4 level -3 C C 2 Encode Name Prefix Trie (ENPT) Simplified State Transition Array (S 2 TA) 27/33

28 Evaluation Two name sets to compose two PITs: – Domain names collected from ALEXA, DMOZ and our web crawler, around 10 Million; – URLs extracted from the HTTP requests in the trace, around 8 Million. Evaluation goals: – memory consumption of S 2 TA, – access frequency S 2 TA, – Comparison with other methods. 28/33

29 Evaluation Results (1/3) Memory Consumption Figure: 10M Name Set memory consumption–original size, NPT size, ENPT. compression ratio (10M Name Set): 63.66% Figure: 8M Name Set memory consumption–original size, NPT size, ENPT. compression ratio (8M Name Set): 12.56% 29/33

30 Evaluation Results (2/3) Access frequency Figure: Lookup, insert and delete performance for the 10M Name Set Average: 3.27 M/s, 2.93 M/s and 2.69 M/s Figure: Lookup, insert and delete performance for the 8M Name Set Average: 2.51 M/s, 1.81 M/s and 2.18 M/s 30/33

31 Evaluation Results (3/3) Figure: PIT access frequency speedup based on S 2 TA. All these results reveal that PIT can be implemented by off-the-shelf technologies. 31/33

32 Conclusion Measure the size and access frequency of a specific PIT; Prove the feasibility of PIT with off-the-shelf technologies; Propose NCE to accelerate PIT access operations while reducing PIT size. 32/33

33 THANKS! QUESTIONS PLEASE ^_^ 33/33


Download ppt "On Pending Interest Table in Named Data Networking Huichen Dai, Bin Liu, Yan Chen*, Yi Wang Tsinghua University, China *Northwestern University, USA."

Similar presentations


Ads by Google