On the Analysis of Caches with Pending Interest Tables Mostafa - - PowerPoint PPT Presentation

on the analysis of caches with pending interest tables
SMART_READER_LITE
LIVE PREVIEW

On the Analysis of Caches with Pending Interest Tables Mostafa - - PowerPoint PPT Presentation

On the Analysis of Caches with Pending Interest Tables Mostafa Dehghan 1 , Bo Jiang 1 Ali Dabirmoghaddam 2 , Don Towsley 1 1 University of Massachusetts Amherst 2 University of California Santa Cruz ICN, October 2, 2015 College of Information and


slide-1
SLIDE 1

College of Information and Computer Sciences

On the Analysis of Caches with Pending Interest Tables

Mostafa Dehghan1, Bo Jiang1 Ali Dabirmoghaddam2, Don Towsley1

1University of Massachusetts Amherst 2University of California Santa Cruz

ICN, October 2, 2015

slide-2
SLIDE 2

Overview

Named Data Networking

Data names instead of IP addresses

Data Structures:

Content Store Pending Interest Table Forwarding Information Base

Packets:

Interest packet Data packet

1 / 25

slide-3
SLIDE 3

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1

2 / 25

slide-4
SLIDE 4

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf

2 / 25

slide-5
SLIDE 5

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf

2 / 25

slide-6
SLIDE 6

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf

2 / 25

slide-7
SLIDE 7

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf /icn/pit.pdf

2 / 25

slide-8
SLIDE 8

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf /icn/pit.pdf

2 / 25

slide-9
SLIDE 9

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 Interest: /icn/pit.pdf /icn/pit.pdf

2 / 25

slide-10
SLIDE 10

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf Interest: /icn/pit.pdf

2 / 25

slide-11
SLIDE 11

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf Interest: /icn/pit.pdf

2 / 25

slide-12
SLIDE 12

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf Interest: /icn/pit.pdf

2 / 25

slide-13
SLIDE 13

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf Interest: /icn/pit.pdf 0,2

2 / 25

slide-14
SLIDE 14

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf 0,2 Data: /icn/pit.pdf

2 / 25

slide-15
SLIDE 15

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf 0,2 Data: /icn/pit.pdf

2 / 25

slide-16
SLIDE 16

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf 0,2 Data: /icn/pit.pdf /icn/pit.pdf ...

2 / 25

slide-17
SLIDE 17

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf 0,2 Data: /icn/pit.pdf /icn/pit.pdf ...

2 / 25

slide-18
SLIDE 18

Overview

Face 0 Face 1 Face 2

Content Store Name Data ss Pending Interest Table Name Face ss Forwarding Information Base Prefix Face ss /icn/ 1 /icn/pit.pdf ...

2 / 25

slide-19
SLIDE 19

Pending Interest Table (PIT)

Performs request aggregation

Keep track of Interests forwarded but not yet satisfied

3 / 25

slide-20
SLIDE 20

Pending Interest Table (PIT)

Performs request aggregation

Keep track of Interests forwarded but not yet satisfied

Advantages:

lower bandwidth usage communication without knowledge of source and destination better security . . .

3 / 25

slide-21
SLIDE 21

Pending Interest Table (PIT)

Performs request aggregation

Keep track of Interests forwarded but not yet satisfied

Advantages:

lower bandwidth usage communication without knowledge of source and destination better security . . .

Affects cache behavior

hit probability response time

3 / 25

slide-22
SLIDE 22

Motivation

Need analytical models to predict cache behavior

Better design choices

4 / 25

slide-23
SLIDE 23

Motivation

Need analytical models to predict cache behavior

Better design choices

PIT sizing

4 / 25

slide-24
SLIDE 24

Motivation

Need analytical models to predict cache behavior

Better design choices

PIT sizing State of the art:

Ignores download delay Does not consider PIT

4 / 25

slide-25
SLIDE 25

Motivation

Need analytical models to predict cache behavior

Better design choices

PIT sizing State of the art:

Ignores download delay Does not consider PIT

Goal: Analytically model cache with PIT

4 / 25

slide-26
SLIDE 26

Outline

Time-To-Live Caches Model and Analysis Replacement Based Policies Simulation Results

5 / 25

slide-27
SLIDE 27

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration

6 / 25

slide-28
SLIDE 28

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache t

6 / 25

slide-29
SLIDE 29

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t

6 / 25

slide-30
SLIDE 30

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t

6 / 25

slide-31
SLIDE 31

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t Reset TTL cache

reset timer upon each hit

6 / 25

slide-32
SLIDE 32

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t Reset TTL cache

reset timer upon each hit

Cache T t

6 / 25

slide-33
SLIDE 33

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t Reset TTL cache

reset timer upon each hit

Cache T t

6 / 25

slide-34
SLIDE 34

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t Reset TTL cache

reset timer upon each hit

Cache T t

6 / 25

slide-35
SLIDE 35

Time-To-Live (TTL) Caches

Content eviction occurs upon timer expiration Cache T t Reset TTL cache

reset timer upon each hit

Cache T t

6 / 25

slide-36
SLIDE 36

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT t

7 / 25

slide-37
SLIDE 37

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT t

7 / 25

slide-38
SLIDE 38

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT t

7 / 25

slide-39
SLIDE 39

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D t

7 / 25

slide-40
SLIDE 40

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D t

7 / 25

slide-41
SLIDE 41

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D t

7 / 25

slide-42
SLIDE 42

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D t

7 / 25

slide-43
SLIDE 43

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-44
SLIDE 44

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-45
SLIDE 45

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-46
SLIDE 46

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-47
SLIDE 47

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-48
SLIDE 48

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-49
SLIDE 49

Model

Requests: renewal arrivals Reset TTL cache with PIT CS PIT D T t

7 / 25

slide-50
SLIDE 50

Metrics

D # misses M # hits N L Z t

8 / 25

slide-51
SLIDE 51

Metrics

Cache hit prob h = E[N] E[M] + E[N] D # misses M # hits N L Z t

8 / 25

slide-52
SLIDE 52

Metrics

Cache hit prob h = E[N] E[M] + E[N] Cache response time r = E[w(D)]/(E[M]+E[N]) w(t) = t+ t (t − x)dm(x) m(t): renewal function Poisson: m(t) = λt D # misses M # hits N L Z t

8 / 25

slide-53
SLIDE 53

Metrics

Cache hit prob h = E[N] E[M] + E[N] Cache response time r = E[w(D)]/(E[M]+E[N]) w(t) = t+ t (t − x)dm(x) m(t): renewal function Poisson: m(t) = λt D # misses M # hits N L Z t Cache occupancy prob

  • = E[L]/E[Z]

8 / 25

slide-54
SLIDE 54

Metrics

Cache hit prob h = E[N] E[M] + E[N] Cache response time r = E[w(D)]/(E[M]+E[N]) w(t) = t+ t (t − x)dm(x) m(t): renewal function Poisson: m(t) = λt D # misses M # hits N L Z t Cache occupancy prob

  • = E[L]/E[Z]

PIT occupancy prob p = E[D]/E[Z]

8 / 25

slide-55
SLIDE 55

Replacement Based Policies

Characteristic Time Approximation Introduced by Che et al. for LRU policy w/ Poisson arrivals Extended to other policies, e.g. FIFO, Random, . . . Extended to general request arrival processes Characteristic time T solution of

  • i oi(T) = C
  • i – cache occupancy probability of file i

C – cache size

9 / 25

slide-56
SLIDE 56

LRU Cache with Poisson Arrivals

Modeled as reset TTL with constant T Cache hit/occupancy probability hi = oi = eλiT − 1 λiEDi + eλiT

λi – arrival rate of requests for file i EDi – expected download delay for file i characteristic time T solution of

  • i

eλiT − 1 λiEDi + eλiT = C

10 / 25

slide-57
SLIDE 57

LRU Cache with Poisson Arrivals

PIT occupancy probability pi = λiEDi λiEDi + eλiT

11 / 25

slide-58
SLIDE 58

LRU Cache with Poisson Arrivals

PIT occupancy probability pi = λiEDi λiEDi + eλiT PIT size S ∼ N

  • i

pi,

  • i

pi(1 − pi)

  • 11 / 25
slide-59
SLIDE 59

LRU Cache with Poisson Arrivals

PIT occupancy probability pi = λiEDi λiEDi + eλiT PIT size S ∼ N

  • i

pi,

  • i

pi(1 − pi)

  • Average cache response time

ri = EDi + 0.5λiED2

i

λiEDi + eλiT

11 / 25

slide-60
SLIDE 60

Simulation

Cache size = 103 # different files = 104 Requests: Poisson process w/ rate λ = 105 per second File popularity: Zipf distribution, λi ∝ i−0.8 Download delay: 100 ms One simulation run: total of 107 requests simulated Base model:

ZDD: Zero-Download Delay

12 / 25

slide-61
SLIDE 61

Result – Cache Hit Probability

Hit probability for individual files (D = 100 ms)

10 10

2

10

4

10

−2

10

−1

10

File index Hit probability

LRU Simulation Model

13 / 25

slide-62
SLIDE 62

Result – Cache Hit Probability

Hit probability for individual files (D = 100 ms)

10 10

2

10

4

10

−2

10

−1

10

File index Hit probability

LRU Simulation ZDD Model

13 / 25

slide-63
SLIDE 63

Result – Cache Hit Probability

Average hit probability vs. download delay

50 100 150 200 250 0.1 0.2 0.3 0.4 0.5

Download delay (ms) Average hit probability

LRU Simulation Model

14 / 25

slide-64
SLIDE 64

Result – Request Aggregation

PIT occupancy probability for individual files (D = 100 ms)

10 10

2

10

4

0.2 0.4 0.6 0.8

Files

  • Req. aggregation prob.

LRU Simulation Model

15 / 25

slide-65
SLIDE 65

Result – PIT Size

PIT size distribution

2800 2900 3000 3100 3200 0.002 0.004 0.006 0.008 0.01

PIT size Probability density

LRU Simulation Model

16 / 25

slide-66
SLIDE 66

Result – PIT Size

Average PIT size vs. download delay

50 100 150 200 250 1000 2000 3000 4000 5000

Download delay (ms) Average PIT size

LRU Simulation Model

17 / 25

slide-67
SLIDE 67

Result – Cache Response Time

Response time for individual files (D = 100 ms)

10 10

2

10

4

20 40 60 80 100

File index Average response time (ms)

LRU Simulation Model

18 / 25

slide-68
SLIDE 68

Result – Cache Response Time

Response time for individual files (D = 100 ms)

10 10

2

10

4

20 40 60 80 100

File index Average response time (ms)

LRU Simulation ZDD Model

18 / 25

slide-69
SLIDE 69

Result – Cache Response Time

Average response time vs. download delay

50 100 150 200 250 50 100 150

Download delay (ms) Average response time (ms)

LRU Simulation Model

19 / 25

slide-70
SLIDE 70

Numerical Results

Cache size = 104 # different files = 107 Requests: Poisson process w/ rate λ = 105 per second File popularity: Zipf distribution, λi ∝ i−0.8 Download delay: 100 ms Model only – no simulations

20 / 25

slide-71
SLIDE 71

Result – Cache Hit Probability

Average hit probability vs. cache size

10

3

10

4

10

5

10

6

10

7

10

−2

10

−1

10

Cache size Overall hit probability

LRU FIFO

21 / 25

slide-72
SLIDE 72

Result – Cache Hit Probability

Average hit probability vs. download delay

50 100 150 200 250 0.04 0.06 0.08 0.1 0.12

Download delay (ms) Overall hit probability

LRU FIFO

22 / 25

slide-73
SLIDE 73

Result – PIT Size

Average PIT size vs. cache size

10

3

10

4

10

5

10

6

10

7

2000 4000 6000 8000 10000

Cache size Average PIT size

FIFO LRU

23 / 25

slide-74
SLIDE 74

Result – PIT Size

Average PIT size vs. download delay

50 100 150 200 250 0.5 1 1.5 2 2.5x 10

4

Download delay (ms) Average PIT size

FIFO LRU

24 / 25

slide-75
SLIDE 75

Summary

Conclusions:

Modeled cache with PIT and non-zero download delay

Cache hit probability PIT size Cache response time

Analysis based on TTL caches

LRU, FIFO and Random

Characteristic time holds with positive download delay

Future Work:

Requests arriving for chunks of files (e.g. streaming video) Different scales of download delays

25 / 25