MuNCC: Multi-hop Neighborhood Collaborative Caching in - - PowerPoint PPT Presentation

muncc multi hop neighborhood collaborative caching in
SMART_READER_LITE
LIVE PREVIEW

MuNCC: Multi-hop Neighborhood Collaborative Caching in - - PowerPoint PPT Presentation

MuNCC: Multi-hop Neighborhood Collaborative Caching in Information-Centric Networks Travis Mick , Reza Tourani, Satyajayant Misra New Mexico State University Dept. of Computer Science 28 Sept. 2016 ACM ICN, Kyoto Travis Mick, Reza Tourani,


slide-1
SLIDE 1

MuNCC: Multi-hop Neighborhood Collaborative Caching in Information-Centric Networks

Travis Mick, Reza Tourani, Satyajayant Misra New Mexico State University

  • Dept. of Computer Science

28 Sept. 2016 ACM ICN, Kyoto

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-2
SLIDE 2

1

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-3
SLIDE 3

1

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-4
SLIDE 4

2

The amount of cacheable content is growing...

Video Traffic

63% of all traffic

79% of traffic by 2020 1.8 ZB per year

2016 Cisco VNI

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-5
SLIDE 5

3

The ideal caching scheme has several requirements.

Ideal Caching

High Hit Ratio Low Overhead Low Latency Reduced Cost Improved QoE

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-6
SLIDE 6

4

Caching encompasses several tightly-coupled problems.

Admission Control Replica Placement Routing & Forwarding State Exchange Redundancy Elimination

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-7
SLIDE 7

4

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-8
SLIDE 8

5

Caching strategies can be broadly classified into four categories, each with their own shortcomings.

Independent Caching On-Path Coordination Neighborhood Coordination Global Coordination

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-9
SLIDE 9

5

Caching strategies can be broadly classified into four categories, each with their own shortcomings.

Independent Caching On-Path Coordination Neighborhood Coordination Global Coordination High Redundancy Limited Diversity

?

High Overhead

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-10
SLIDE 10

6

On-path caching has minimal overhead.

Content Provider Consumer On-path Replica

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-11
SLIDE 11

7

On-path caching has minimal overhead; low diversity.

Content Provider Off-path Replica Consumer

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-12
SLIDE 12

7

On-path caching has minimal overhead; low diversity.

Content Provider Off-path Replica Consumer New Replica

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-13
SLIDE 13

8

Attempts have been made to improve on-path diversity.

Leave Copy Everywhere (LCE) Leave Copy Down (LCD), Move Copy Down (MCD)1. ProbCache2, Prob-PD3.

1Laoutaris, N., Che, H., & Stavrakakis, I. (2006). 2Psaras, I., Chai, W. K., & Pavlou, G. (2012). 3Ioannou, A., & Weber, S. (2014). Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-14
SLIDE 14

9

Hash routing maximizes diversity.

Content Provider Designated Replica Consumer

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-15
SLIDE 15

9

Hash routing maximizes diversity; increases path stretch.

Content Provider Designated Replica Consumer

Content Provider Designated Replica Consumer

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-16
SLIDE 16

10

Variants of hash routing aim to reduce path stretch.

Content Provider Designated Replica Consumer

Asymmetric

Content Provider Designated Replica Consumer

Multicast

Saino, L., Psaras, I., & Pavlou, G. (2013).

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-17
SLIDE 17

11

The neighborhood can contain diverse content.

Searching Node Immediate Neighbors 2nd-hop Neighbors 3rd-hop Neighbors Distant Content Provider Nearby Replica

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-18
SLIDE 18

12

Neighborhood caching in ICN is not well-studied.

Caching schemes utilizing Bloom filters. Radius Validation Applicability Tortelli, M., et al. 1-hop None CCN Wang, Y., et al. Arbitrary Theoretical General ICN Lee, M., et al. Arbitrary Simulation IP Wong, W., et al. Arbitrary Emulation CCN

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-19
SLIDE 19

12

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-20
SLIDE 20

13

MuNCC consists of four major components.

Cache State Exchange Neighborhood Forwarding Error Reduction Diversity Enhancement

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-21
SLIDE 21

14

Cached contents are advertised in Bloom filters.

Attenuated Bloom Filter Construction:

1 Compress cache state into a Bloom filter. 2 Send Bloom filter to neighbors. 3 Aggregate received Bloom filters. 4 Repeat h times to establish h-hop neighborhood.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-22
SLIDE 22

15

Cache summary exchange for BF construction: Step 1.

v w x y z

Bv Bw Bx By Bz 1 Compress cache state into a Bloom filter.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-23
SLIDE 23

15

Cache summary exchange for BF construction: Step 2.

v w x y z Bv Bv Bw Bw Bx Bx By Bz

2 Send Bloom filter to neighbors.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-24
SLIDE 24

15

Cache summary exchange for BF construction: Step 3.

v w x y z

Bv

(w,0) = Bw

Bv

(x,0) = Bx

Bw

(v,0) = Bv

Bw

(y,0) = By

Bx

(v,0) = Bv

Bx

(z,0) = Bz

By

(w,0) = Bw

Bz

(x,0) = Bx

3 Aggregate received Bloom filters.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-25
SLIDE 25

15

Cache summary exchange for BF construction: Step 4.

v w x y z Bw ∪ Bx Bw ∪ Bx Bv ∪ By Bv ∪ By Bv ∪ Bz Bv ∪ Bz Bw Bx

4 Repeat.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-26
SLIDE 26

15

Cache summary exchange for BF construction: Step 4.

v w x y z

Bv

(w,1) = Bv ∪ By

Bv

(x,1) = Bv ∪ Bz

Bw

(v,1) = Bw ∪ Bx

Bw

(y,1) = Bw

Bx

(v,1) = Bw ∪ Bx

Bx

(z,1) = Bx

By

(w,1) = Bv ∪ By

Bz

(x,1) = Bv ∪ Bz

4 Repeat.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-27
SLIDE 27

16

Forwarding decisions are made based on attenuated BFs.

Implementation: Add distance flag D to interest, with default ∞. If D = ∞, the interest is part of a neighborhood search. If D = ∞:

1 Try to satisfy from cache. 2 Try to satisfy in neighborhood. 3 Forward toward content provider.

If D = ∞:

1 Try to satisfy in level D of neighborhood. 2 Return NACK.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-28
SLIDE 28

17

Neighborhood search procedure: Scenario.

v w x y z Searching Node True Positive False Positive

v: Wants content i. v: i ∈ local cache

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-29
SLIDE 29

17

Neighborhood search procedure: Level 1.

v w x y z Searching Node True Positive False Positive

v: i ∈ Bv

(w,0)

v: i ∈ Bv

(x,0)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-30
SLIDE 30

17

Neighborhood search procedure: False positive.

v w x y z

v: Forward to x with tag D = 0 x: i ∈ local cache x: Return NACK to v

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-31
SLIDE 31

17

Neighborhood search procedure: Level 2.

v w x y z

v: Process NACK from x v: i ∈ Bv

(w,1)

v: Forward to w with tag D = 1

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-32
SLIDE 32

17

Neighborhood search procedure: Next hop, level 1.

v w x y z

w: i ∈ Bw

(y,0)

w: Forward to y with tag D = 0

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-33
SLIDE 33

17

Neighborhood search procedure: Content delivery.

v w x y z

y: i ∈ local cache y: Deliver content to w w: Deliver content to v

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-34
SLIDE 34

18

Cache churn undermines BF usefulness and is detrimental to performance.

Eviction False Positive NACKs Increased Latency

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-35
SLIDE 35

19

Several mechanisms reduce the impact of cache churn.

Handling Churn Guaranteeing Advertised Content Preventing Recurrent Error Advanced Replacement Strategy Two-Level Cache Negative Bloom Filter NACK Response

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-36
SLIDE 36

20

Diversity is enhanced both implicitly and explicitly.

Neighborhood Awareness Don’t Cache If Cached Nearby Implicit Diversification Evict If Cached Next Door Explicit Diversification

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-37
SLIDE 37

20

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-38
SLIDE 38

21

Experiment Setup

Simulation Engine: Icarus 4. Topologies: Real: WIDE (30, 33), SPRINT (604, 2268), (|V |, |E|) TISCALI (240, 810), GEANT (53, 61) 5. Scale-free: Topo1 (250, 492), Topo2 (500, 972), Topo3 (750, 1447), Topo4 (1000, 1897). Workloads: Stationary (Zipf, α = 0.8, N = 3 · 106), Temporal (Globetraff 6, N ≈ 2.1 · 105) Interests Simulated: 1, 200, 000 per scenario Cache Sizes: Equivalent to {0.25%, 0.5%, 2%, 5%}

  • f content globally, uniformly distributed.

Parameters: Exchange every 3 minutes, BF size < 4KB, LFU. Comparison: HR Symmetric, HR Hybrid AM, ProbCache, LCD.

4Saino, L., Psaras, I., & Pavlou, G. (2014). 5Spring, N., Mahajan, R., Wetherall, D. (2002). 6Katsaros, K., Xylomenos, G., & Polyzos, G. (2012). Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-39
SLIDE 39

22

Cache hit ratio: temporal model, real graphs.

Higher hit ratio than on-path; exceeds HR in some scenarios.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

GEANT (53, 61)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

TISCALI (240, 810)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

WIDE (30, 33)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

SPRINT (604, 2268)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-40
SLIDE 40

23

Latency: temporal model, real graphs.

Latency very close to LCD, often lower.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 20 22 24 26 28 30 32 Latency (ms)

GEANT (53, 61)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 25 30 35 40 45 50 Latency (ms)

TISCALI (240, 810)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 12 14 16 18 20 22 24 Latency (ms)

WIDE (30, 33)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 18 20 22 24 26 28 30 32 34 Latency (ms)

SPRINT (604, 2268)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-41
SLIDE 41

24

Overhead: temporal model, real graphs.

False Positive Rate Overhead Rate 0.5% 0.001372 0.000497 WIDE 2% 0.000819 0.000949 5% 0.000668 0.001170 0.5% 0.003139 0.000725 GEANT 2% 0.002315 0.001250 5% 0.002120 0.001527 0.5% 0.004133 0.000415 TISCALI 2% 0.004948 0.000809 5% 0.004093 0.001139 0.5% 0.006620 0.001422 SPRINT 2% 0.006979 0.002333 5% 0.004843 0.002962 FP rate: Probability that an interest experiences at least one FP. Overhead rate: BF transmissions per second by each node.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-42
SLIDE 42

24

Outline

Introduction Prior Work Solution Design Experimental Results Conclusion & Future Work

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-43
SLIDE 43

25

MuNCC shows feasibility for neighborhood collaboration.

Low Latency Low Overhead High Hit Ratio On-Path Hash Routing Global Collaboration

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-44
SLIDE 44

25

MuNCC shows feasibility for neighborhood collaboration.

Low Latency Low Overhead High Hit Ratio x MuNCC

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-45
SLIDE 45

26

Future work aims to improve MuNCC’s performance.

False Positive Mitigation

Dynamic BF sizing. Proactive eviction notification. Negative BF aggregation.

Redundancy Elimination

Multi-hop consolidation. Computational overhead reduction.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-46
SLIDE 46

26

Thank you!

Questions... tmick@cs.nmsu.edu

Funded by US National Science Foundation and US Dept. of Defense.

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-47
SLIDE 47

27

Any on-path node can initiate an expanding-ring search in the neighborhood.

if D = ∞ and content not in cache then for each level of the neighborhood, D′ ∈ [1, h − 1] do for each neighbor p, sorted by rank do if content in BA

(p, D′−1) then

forward to p with D = D′ − 1 if interest satisfied then break else forward toward content provider with D = ∞

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-48
SLIDE 48

28

The interest can indicate the exact cache level to index, reducing compute burden and latency at the next hop.

if D = ∞ then if D = 0 then check local cache if content not found then send NACK else for each neighbor p do if content in BA

(p, D′−1) then

forward to p with D = D′ − 1 if interest satisfied then break else send NACK

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-49
SLIDE 49

29

Cache hit ratio: stationary model, real graphs.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.2 0.3 0.4 0.5 0.6 Cache hit ratio

GEANT (53, 61)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.1 0.2 0.3 0.4 0.5 0.6 Cache hit ratio

TISCALI (240, 810)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.2 0.3 0.4 0.5 0.6 Cache hit ratio

WIDE (30, 33)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.1 0.2 0.3 0.4 0.5 0.6 Cache hit ratio

SPRINT (604, 2268)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-50
SLIDE 50

30

Latency: stationary model, real graphs.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 16 18 20 22 24 26 28 30 Latency (ms)

GEANT (53, 61)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 20 25 30 35 40 45 Latency (ms)

TISCALI (240, 810)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 10 12 14 16 18 20 22 24 Latency (ms)

WIDE (30, 33)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 16 18 20 22 24 26 28 30 32 Latency (ms)

SPRINT (604, 2268)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-51
SLIDE 51

31

Cache hit ratio: temporal model, scale-free graphs.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

Topo1 (250, 492)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

Topo2 (500, 972)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

Topo3 (750, 1447)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 0.00 0.05 0.10 0.15 0.20 0.25 0.30 Cache hit ratio

Topo4 (1000, 1897)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

slide-52
SLIDE 52

32

Latency: temporal model, scale-free graphs.

MuNCC/4/deg- HR Symm HR Hybrid AM ProbCache LCD 0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 20 22 24 26 28 30 32 34 36 38 Latency (ms)

Topo1 (250, 492)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 25 30 35 40 45 50 Latency (ms)

Topo2 (500, 972)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 30 35 40 45 50 55 60 Latency (ms)

Topo3 (750, 1447)

0.00 0.02 0.04 0.06 0.08 0.10 Cache to population ratio 30 35 40 45 50 55 60 Latency (ms)

Topo4 (1000, 1897)

Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching