MuNCC: Multi-hop Neighborhood Collaborative Caching...

52
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

Transcript of MuNCC: Multi-hop Neighborhood Collaborative Caching...

MuNCC:Multi-hop Neighborhood Collaborative

Caching in Information-Centric Networks

Travis Mick, Reza Tourani, Satyajayant MisraNew Mexico State UniversityDept. of Computer Science

28 Sept. 2016ACM ICN, Kyoto

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

1

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

1

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

2

The amount of cacheable content is growing...

VideoTraffic

63% ofall traffic

79% oftraffic by

2020

1.8 ZBper year

2016 Cisco VNITravis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

3

The ideal caching scheme has several requirements.

IdealCaching

HighHit Ratio

LowOverhead

LowLatency

ReducedCost

ImprovedQoE

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

4

Caching encompasses several tightly-coupled problems.

AdmissionControl

ReplicaPlacement

Routing& Forwarding

StateExchange

RedundancyElimination

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

4

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

5

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

IndependentCaching

On-PathCoordination

NeighborhoodCoordination

GlobalCoordination

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

5

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

IndependentCaching

On-PathCoordination

NeighborhoodCoordination

GlobalCoordination

HighRedundancy

LimitedDiversity ? High

Overhead

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

6

On-path caching has minimal overhead.

ContentProvider

Consumer

On-pathReplica

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

7

On-path caching has minimal overhead; low diversity.

ContentProvider

Off-pathReplica

Consumer

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

7

On-path caching has minimal overhead; low diversity.

ContentProvider

Off-pathReplica

Consumer

NewReplica

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

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

9

Hash routing maximizes diversity.

ContentProvider

DesignatedReplica

Consumer

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

9

Hash routing maximizes diversity; increases path stretch.

ContentProvider

DesignatedReplica

Consumer

ContentProvider

DesignatedReplica

Consumer

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

10

Variants of hash routing aim to reduce path stretch.

ContentProvider

DesignatedReplica

Consumer

Asymmetric

ContentProvider

DesignatedReplica

Consumer

Multicast

Saino, L., Psaras, I., & Pavlou, G. (2013).Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

11

The neighborhood can contain diverse content.

SearchingNode

ImmediateNeighbors

2nd-hopNeighbors

3rd-hopNeighbors

DistantContentProvider

NearbyReplica

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

12

Neighborhood caching in ICN is not well-studied.

Caching schemes utilizing Bloom filters.Radius Validation Applicability

Tortelli, M., et al. 1-hop None CCNWang, Y., et al. Arbitrary Theoretical General ICNLee, 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

12

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

13

MuNCC consists of four major components.

Cache StateExchange

NeighborhoodForwarding

ErrorReduction

DiversityEnhancement

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

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

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

15

Cache summary exchange for BF construction: Step 2.

v

w x

y z

Bv

Bv

Bw

Bw

Bx

BxBy

Bz

2 Send Bloom filter to neighbors.

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

15

Cache summary exchange for BF construction: Step 3.

v

w x

y z

Bv(w ,0) = BwBv

(x ,0) = Bx

Bw(v ,0) = BvBw

(y ,0) = By

Bx(v ,0) = BvBx

(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

15

Cache summary exchange for BF construction: Step 4.

v

w x

y z

Bw ∪ Bx

Bw ∪ BxBv ∪ By

Bv ∪ By

Bv ∪ Bz

Bv ∪ BzBw

Bx

4 Repeat.

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

15

Cache summary exchange for BF construction: Step 4.

v

w x

y z

Bv(w ,1) = Bv ∪ ByBv

(x ,1) = Bv ∪ Bz

Bw(v ,1) = Bw ∪ BxBw

(y ,1) = Bw

Bx(v ,1) = Bw ∪ BxBx

(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

16

Forwarding decisions are made based on attenuated BFs.

Implementation:Add distance flag D to interest, with default ∞.If D 6=∞, 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 6=∞:1 Try to satisfy in level D of neighborhood.2 Return NACK.

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

17

Neighborhood search procedure: Scenario.

v

w x

y z

SearchingNode

TruePositive

FalsePositive

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

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

17

Neighborhood search procedure: Level 1.

v

w x

y z

SearchingNode

TruePositive

FalsePositive

v : i 6∈ Bv(w ,0)

v : i ∈ Bv(x,0)

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

17

Neighborhood search procedure: False positive.

v

w x

y z

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

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

17

Neighborhood search procedure: Level 2.

v

w x

y z

v : Process NACK from xv : i ∈ Bv

(w,1)v : Forward to w with tag D = 1

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

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

17

Neighborhood search procedure: Content delivery.

v

w x

y z

y : i ∈ local cachey : Deliver content to ww : Deliver content to v

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

18

Cache churn undermines BF usefulness and is detrimentalto performance.

Eviction FalsePositive NACKs

IncreasedLatency

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

19

Several mechanisms reduce the impact of cache churn.

HandlingChurn

GuaranteeingAdvertised

Content

PreventingRecurrent

Error

AdvancedReplacement

Strategy

Two-LevelCache

NegativeBloom Filter

NACKResponse

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

20

Diversity is enhanced both implicitly and explicitly.

NeighborhoodAwareness

Don’t CacheIf Cached

Nearby

ImplicitDiversification

Evict IfCached

Next Door

ExplicitDiversification

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

20

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

21

Experiment SetupSimulation 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%}of 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

22

Cache hit ratio: temporal model, real graphs.Higher hit ratio than on-path; exceeds HR in some scenarios.

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

SPRINT (604, 2268)

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

23

Latency: temporal model, real graphs.Latency very close to LCD, often lower.

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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

La

ten

cy (

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

La

ten

cy (

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

La

ten

cy (

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

La

ten

cy (

ms)

SPRINT (604, 2268)

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

24

Overhead: temporal model, real graphs.

False Positive Rate Overhead Rate0.5% 0.001372 0.000497

WIDE 2% 0.000819 0.0009495% 0.000668 0.001170

0.5% 0.003139 0.000725GEANT 2% 0.002315 0.001250

5% 0.002120 0.0015270.5% 0.004133 0.000415

TISCALI 2% 0.004948 0.0008095% 0.004093 0.001139

0.5% 0.006620 0.001422SPRINT 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

24

Outline

Introduction

Prior Work

Solution Design

Experimental Results

Conclusion & Future Work

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

25

MuNCC shows feasibility for neighborhood collaboration.

LowLatency

LowOverhead

HighHit Ratio

On-Path

HashRouting

GlobalCollaboration

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

25

MuNCC shows feasibility for neighborhood collaboration.

LowLatency

LowOverhead

HighHit Ratio

x

MuNCC

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

26

Future work aims to improve MuNCC’s performance.

False Positive MitigationDynamic BF sizing.Proactive eviction notification.Negative BF aggregation.

Redundancy EliminationMulti-hop consolidation.Computational overhead reduction.

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

26

Thank you!

[email protected]

Funded by US National Science Foundation and US Dept. of Defense.Travis Mick, Reza Tourani, Satyajayant Misra MuNCC: Multi-hop Neighborhood Collaborative Caching

27

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

if D =∞ and content not in cache thenfor each level of the neighborhood, D′ ∈ [1, h − 1] do

for each neighbor p, sorted by rank doif content in BA

(p, D′−1) thenforward to p with D = D′ − 1if interest satisfied then

breakelse

forward toward content provider with D =∞

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

28

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

if D 6=∞ thenif D = 0 then

check local cacheif content not found then

send NACKelse

for each neighbor p doif content in BA

(p, D′−1) thenforward to p with D = D′ − 1if interest satisfied then

breakelse

send NACK

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

29

Cache hit ratio: stationary model, real graphs.

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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.6C

ach

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

SPRINT (604, 2268)

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

30

Latency: stationary model, real graphs.

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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

30L

ate

ncy (

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

La

ten

cy (

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

La

ten

cy (

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

La

ten

cy (

ms)

SPRINT (604, 2268)

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

31

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

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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.30C

ach

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

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

Ca

ch

e h

it r

atio

Topo4 (1000, 1897)

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

32

Latency: temporal model, scale-free graphs.

0.00 0.02 0.04 0.06 0.08 0.10

Cache to population ratio

16

18

20

22

24

26

28

30

Late

ncy (

ms)

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

38L

ate

ncy (

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

La

ten

cy (

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

La

ten

cy (

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

La

ten

cy (

ms)

Topo4 (1000, 1897)

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