72
Off-Path Caching in CCN Damien Saucez Chadi Barakat Anshuman Kalla Thierry Turletti *{first.last}@inria.fr INRIA Sophia Antipolis - Planète Project Team CCNxCon 2012 - 09/13/2012

CCNxCon 2012: Session #7: Off-Path Caching in CCN

Embed Size (px)

DESCRIPTION

Off-Path Caching in CCN Chadi Barakat, Anshuman Kalla, Damien Saucez, Thierry Turletti (INRIA, France)

Citation preview

Page 1: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-Path Caching in CCN Damien Saucez

Chadi BarakatAnshuman KallaThierry Turletti

*{first.last}@inria.frINRIA Sophia Antipolis - Planète Project TeamCCNxCon 2012 - 09/13/2012

Page 2: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What changes with CCN?

• Shift from location to content based communications

• Shift from end-to-end to local communications

! secure data themselves instead of communication channels

! contents can be cached anywhere

! topology is an only an optimization

2

Page 3: CCNxCon 2012: Session #7: Off-Path Caching in CCN

On-path caching is sub-optimal

3

1

1 1

1

11

/Sophia/sun

Page 4: CCNxCon 2012: Session #7: Off-Path Caching in CCN

On-path caching is sub-optimal

3

1

1 1

1

11

/Sophia/sun

Page 5: CCNxCon 2012: Session #7: Off-Path Caching in CCN

On-path caching is sub-optimal

3

1

1 1

1

11

/Sophia/sun

Page 6: CCNxCon 2012: Session #7: Off-Path Caching in CCN

On-path caching is sub-optimal

• The amount of traffic on the inter-domain links of an AS that can cache N contents is minimized if the N most popular contents are cached

• On-path caching is sub-optimal as contents might be duplicated on different caches:

• lower hit rates

• higher delays

4

Page 7: CCNxCon 2012: Session #7: Off-Path Caching in CCN

How to perform caching within an enterprise network such that the use of inter-domain links is minimized while keeping the domain links’ usage below their nominal capacities?

5

Page 8: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• To avoid content duplication on various caches, each popular content is assigned a specific cache

• A content is cached only by its assigned cached

• Every Interest packet for a given popular content is deflected to its content’ assigned cache

! As the shortest path is not followed anymore, we call it off-path caching

Deflect popular content traffic to optimally located caches

6

Page 9: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching to achieve optimality

7

I am The cache for /Sophia/sun

I am The cache for /Belgium/rain

1

1 1

1

11

/Sophia/sun

Page 10: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching to achieve optimality

7

I am The cache for /Sophia/sun

I am The cache for /Belgium/rain

1

1 1

1

11

/Sophia/sun

Page 11: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Where to place contents?

8

• Ideal placement would be such that

• contents are not duplicated,

• popular contents are cached close (delay) to their consumers,

• cache memory is not overloaded,

• links are not be overloaded.

Page 12: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimization problem

9

Page 13: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimization problem

9

• Let be the “content (c) to cache (r)” allocation matrix, with

A

r∈R

Ar,c = 1, Ar,c ∈ {0, 1} , ∀c ∈ C∗

Page 14: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimization problem

9

• Minimize the delay due to deflection

min�

c∈C∗

e∈E

λc,e

r∈R

Ar,c · de,r

• Let be the “content (c) to cache (r)” allocation matrix, with

A

r∈R

Ar,c = 1, Ar,c ∈ {0, 1} , ∀c ∈ C∗

Page 15: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimization problem

9

• Minimize the delay due to deflection

min�

c∈C∗

e∈E

λc,e

r∈R

Ar,c · de,r

• Do not overload cache memory�

c∈C∗

Ar,c ≤ memoryr, ∀r ∈ R

• Let be the “content (c) to cache (r)” allocation matrix, with

A

r∈R

Ar,c = 1, Ar,c ∈ {0, 1} , ∀c ∈ C∗

Page 16: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimization problem

9

• Minimize the delay due to deflection

min�

c∈C∗

e∈E

λc,e

r∈R

Ar,c · de,r

• Do not overload cache memory�

c∈C∗

Ar,c ≤ memoryr, ∀r ∈ R

• Do not overload links�

c∈C

e∈E

λc,e · vc · δl,e,c,A ≤ capacityl, ∀ link l

• Let be the “content (c) to cache (r)” allocation matrix, with

A

r∈R

Ar,c = 1, Ar,c ∈ {0, 1} , ∀c ∈ C∗

Page 17: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimal content placement and deflection

1. Estimate for every content c, at every edge router e

2. Solve the optimization problem to determine

3. Inject in the routing tables

10

λc,e

A

A

Page 18: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Optimality is complex to reach

11

• Optimal placement problem is NP-complete

• requires content popularity estimation

• not tractable in some configuration (e.g., large network, large caches...)

• not adapted to dynamic popularity distribution

• Routing table size is with N potentially large

O(N)

Page 19: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Hash function based heuristic

• A heuristic that avoids content duplication, removes the necessity to solve an optimization problem, and maintains flow table size linear with the size of the network

• Caching All Contents by Hashing (CACH):

• hash names

• routing based on the hash value

12

Page 20: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Encapsulation based deflection

13

/Sophia/sun

R1

R2

R3

R4

R5

HASH 4224% |R|1.

2.

Interest for /Sophia/sun

/Sophia/sun

Interest for /encap/R5/Sophia/sun

4

Page 21: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Evaluation

14

Page 22: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Simulation setup

15

• Rocketfuel [SMW02] topology ASN 3967

• 79 core routers, 44 edge routers (2 per city), 6 peering routers

• LRU caching on edge routers, 10 cache entries per core router

• 150ms peering link delay

• 200,000 Interest packets generated, simulations repeated 11 times

• 7,900 content of Zipf 0.8 [FRR12] popularity distribution

Page 23: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Main observations

• Rocketfuel simulation (popularity ~ Zipf 0.8)

• Inter-domain link usage is reduced

• from 83% to 53% (opt. 35%) of the load without cache

• Hit ratio is increased

• from 17% to 53% (opt. 65%)

• Overall retrieval delay is reduced significantly

16

Page 24: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Conclusion

17

Page 25: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Summary

18

• The default on-path caching CCN policy is sub-optimal as contents are duplicated on several caches

• We then propose off-path caching that deflects popular traffic to optimally selected caches

• off-path caching maximizes cache hit ratio

• which results in lower inter-domain link usage

• and lower average content retrieval delay

Page 26: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Next steps

• Transpose the model to dynamic traffic demand (e.g., content consumers move in the network) and mobile infrastructure

• Resiliency / optimality tradeoff

19

Page 27: CCNxCon 2012: Session #7: Off-Path Caching in CCN

/**/ || ??

20

Off-Path Caching in CCN

Page 28: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Backup

21

Page 29: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• Communication is between two devices

• Users use services, from anywhere

Technique vs users

22

Page 30: CCNxCon 2012: Session #7: Off-Path Caching in CCN

How to reconcile the two worlds

• Evolutionary solutions

• Enhance current architecture

• Provide interworking mechanisms

• Clean-slate solutions

• Rethink the paradigms

23

Page 31: CCNxCon 2012: Session #7: Off-Path Caching in CCN

How to reconcile the two worlds

• Evolutionary solutions

• Enhance current architecture

• Provide interworking mechanisms

•Clean-slate solutions

• Rethink the paradigms

24

Page 32: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Content-Centric Networking (CCN)

• Shift from location-based to content-based communications

• Contents become first class citizens in the network

25

Page 33: CCNxCon 2012: Session #7: Off-Path Caching in CCN

The idea

• Content-Centric Networking (CCN) treats content as a primitive [JST+09]

• Every chunk of data is assigned a name, such that any content can be directly retrieved by its name

• Routers cache chunks of data on-path between consumers and producers

26

Page 34: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Workflow

• A content consumer (client) asks for content by sending an Interest packet to nodes at its direct neighborhood

• A node that has data that satisfies the interest responds with a Data packet

• Otherwise, the node forwards the Interest packet to its neighbors, and remembers from which neighbors it receives the interest

27

Page 35: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• Two types of CCN packets

• Packets indicate the what, not the who or the where (neither source nor destination)

Packets

28

Content Name

Selector(order preference, publisher filter, scope...)

Nonce

Interest packet

Content Name

Signature

Signed Info

Data

Data packet

Source Address

Destination Address

Payload

IP packet

Page 36: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Page 37: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Page 38: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Pending Interest Table (PIT)/IRM/CCN, from NW

Page 39: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Pending Interest Table (PIT)/IRM/CCN, from NW

Page 40: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Pending Interest Table (PIT)/IRM/CCN, from NW

Pending Interest Table (PIT)/IRM/CCN, from W

Page 41: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Interest: /IRM/CCN

Pending Interest Table (PIT)/IRM/CCN, from NW

Pending Interest Table (PIT)/IRM/CCN, from W

Page 42: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Pending Interest Table (PIT)/IRM/CCN, from NW

Pending Interest Table (PIT)/IRM/CCN, from W

Data: /IRM/CCN=

Page 43: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Pending Interest Table (PIT)/IRM/CCN, from NW

Pending Interest Table (PIT)/IRM/CCN, from W

Data: /IRM/CCN=

Page 44: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Pending Interest Table (PIT)/IRM/CCN, from NW

Pending Interest Table (PIT)/IRM/CCN, from W

Content Store (CS)/IRM/CCN =

Data: /IRM/CCN=

Page 45: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Pending Interest Table (PIT)/IRM/CCN, from NW

Content Store (CS)/IRM/CCN =

Data: /IRM/CCN=

Page 46: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Pending Interest Table (PIT)/IRM/CCN, from NW

Content Store (CS)/IRM/CCN =

Data: /IRM/CCN=

Content Store (CS)/IRM/CCN =

Page 47: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN = Data: /IRM/CCN=

Content Store (CS)/IRM/CCN =

Page 48: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN =

Content Store (CS)/IRM/CCN =

Page 49: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN =

Content Store (CS)/IRM/CCN =

Interest: /IRM/CCN

Page 50: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN =

Content Store (CS)/IRM/CCN =

Interest: /IRM/CCN

Page 51: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN =

Content Store (CS)/IRM/CCN =

Data: /IRM/CCN=

Page 52: CCNxCon 2012: Session #7: Off-Path Caching in CCN

CCN in a nutshell

29

Content Store (CS)/IRM/CCN =

Content Store (CS)/IRM/CCN =

Data: /IRM/CCN=

Page 53: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What does it change?

• Shift from location to content based communications

• Shift from end-to-end to local communications

! contents can be cached anywhere

! secure data themselves instead of communication channels

! topology is an only an optimization

30

Page 54: CCNxCon 2012: Session #7: Off-Path Caching in CCN

The reason of CCN?• Communications in the Internet focus on the endpoints.

• Names are bound to servers which are bound to IP addresses,

• TCP flows are bound to IP address.

• Most of today’s networks use is to acquire named chunks of data (e.g., web pages, videos).

• There is a gap between the technology and the usage leading to inefficiencies:

• reliability issue (e.g., what if the server breaks down?),

• inefficient resource utilization (e.g., hotspots),

• weak mobility support.

31

Page 55: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Implement off-path caching with SDN

• Off-path caching is a two-fold process:

• compute the optimal placement of popular contents in the caches,

• Interest packets deflection to the appropriate caches.

• As the shortest path is not followed anymore, we call it off-path caching.

32

Page 56: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Every content benefits from optimal placement

33

0

50

100

150

200

250

1 10 100 1000

aver

age

dela

y [m

s]

content

CACHon-path

popularity estimatoroptimal placement

Page 57: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Context

34

• Controlled fixed networks (e.g., ISP)

• peering links are expensive and slow

• internal network is over provisioned

Page 58: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What if...

35

Page 59: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What if...

• we are in an enterprise/campus network?

• internal network is over provisioned

• peering links are expensive and slow

35

Page 60: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What if...

• we are in an enterprise/campus network?

• internal network is over provisioned

• peering links are expensive and slow

• content is produced outside the network?

35

Page 61: CCNxCon 2012: Session #7: Off-Path Caching in CCN

What if...

• we are in an enterprise/campus network?

• internal network is over provisioned

• peering links are expensive and slow

• content is produced outside the network?

• traffic demand is stable over reasonable time periods?

35

Page 62: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Inter-domain link bandwidth gain

36

0

50000

100000

150000

200000

0 1000 2000 3000 4000 5000 6000 7000 8000

cum

mul

ativ

e am

ount

of e

xter

nal b

andw

idth

content

no cachingon-path

CACHpopularity estimator

optimal placement

Page 63: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Inter-domain link bandwidth gain

36

0

50000

100000

150000

200000

0 1000 2000 3000 4000 5000 6000 7000 8000

cum

mul

ativ

e am

ount

of e

xter

nal b

andw

idth

content

no cachingon-path

CACHpopularity estimator

optimal placement 200,000166,479

94,65769,509

Peering traffic drops from 83% of the total traffic to 47% and 35%.

Page 64: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Inter-domain link bandwidth gain

36

0

50000

100000

150000

200000

0 1000 2000 3000 4000 5000 6000 7000 8000

cum

mul

ativ

e am

ount

of e

xter

nal b

andw

idth

content

no cachingon-path

CACHpopularity estimator

optimal placement 200,000166,479

94,65769,509

Peering traffic drops from 83% of the total traffic to 47% and 35%.

Popular contents are always cached

Page 65: CCNxCon 2012: Session #7: Off-Path Caching in CCN

437

50%22%0.7%

The top 5.5% of popular contents accounts for 50% of the inter-domain traffic, while at optimal they account only for 0.7%

Inter-domain link bandwidth gain

36

0

50000

100000

150000

200000

0 1000 2000 3000 4000 5000 6000 7000 8000

cum

mul

ativ

e am

ount

of e

xter

nal b

andw

idth

content

no cachingon-path

CACHpopularity estimator

optimal placement 200,000166,479

94,65769,509

Peering traffic drops from 83% of the total traffic to 47% and 35%.

Popular contents are always cached

Page 66: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching improves hit ratio

37

0

0.2

0.4

0.6

0.8

1

1.2

1 10 100 1000

hit r

atio

content

CACHon-path

popularity estimatoroptimal placement

Page 67: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• High hit ratio for popular contents

Off-path caching improves hit ratio

37

0

0.2

0.4

0.6

0.8

1

1.2

1 10 100 1000

hit r

atio

content

CACHon-path

popularity estimatoroptimal placement

Page 68: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• High hit ratio for popular contents

• The overall hit ratio significantly increases from 17% to 53% and 65%

Off-path caching improves hit ratio

37

0

0.2

0.4

0.6

0.8

1

1.2

1 10 100 1000

hit r

atio

content

CACHon-path

popularity estimatoroptimal placement

Page 69: CCNxCon 2012: Session #7: Off-Path Caching in CCN

• High hit ratio for popular contents

• The overall hit ratio significantly increases from 17% to 53% and 65%

• What is the impact on delay?

Off-path caching improves hit ratio

37

0

0.2

0.4

0.6

0.8

1

1.2

1 10 100 1000

hit r

atio

content

CACHon-path

popularity estimatoroptimal placement

Page 70: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching improves retrieval delay

38

On-path CACH Optimal placement5.11ms± 0.05 28.08ms± 0.04 23.52ms± 0.03

Page 71: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching improves retrieval delay

38

On-path CACH Optimal placement5.11ms± 0.05 28.08ms± 0.04 23.52ms± 0.03

• Once a content is cached, the deflection has a negative impact on the average retrieval delay

Page 72: CCNxCon 2012: Session #7: Off-Path Caching in CCN

Off-path caching improves retrieval delay

38

On-path CACH Optimal placement5.11ms± 0.05 28.08ms± 0.04 23.52ms± 0.03

On-path CACH Optimal placement154.42ms± 0.05 119.19ms± 0.11 84.23ms± 0.09

• Once a content is cached, the deflection has a negative impact on the average retrieval delay

• But the overall average retrieval delay is reduced with off-path caching, thanks to a better hit ratio