Issuu on Google+

DHTCache 1

A Distributed Cache Service Carlos E. Gómez carloseg@uniquindio.edu.co University of Quindio – Colombia

María del Pilar Villamil mavillam@uniandes.edu.co University of Los Andes - Colombia

Harold E. Castro hcastro@uniandes.edu.co University of Los Andes – Colombia

Laurent d’Orazio laurent.dorazio@isima.fr University Blaise Pascal – France


Content 2

 DHT P2P systems and performance  Related work  The DHTCache  Evaluation  Conclusions and future work


Content 3

 DHT P2P systems and performance  Related work  The DHTCache  Evaluation  Conclusions and future work


DHT P2P systems and performance 4

 DHT systems    

New generation of P2P systems. Based on Distributed Hash Tables. Object storage and location with scalability and efficiency. Nodes form a overlay network.

 DHT applications     

Highly sophisticated. More semantics on objects that handle. High volume of data. Highly distributed. Need good performance


DHT Systems - Functional layers 5


DHT Systems - Functional layers 6


DHT Systems - Functional layers 7


DHT Systems - Functional layers 8


DHT Systems - Functional layers 9


Cache 10

 Enhancing the performance.  Shorter path for retrieval a object.  If the system is layered, the cache is present across all layers.  Different information can be cached depending on the layer.  Emerges the idea of cooperative cache vertical and horizontal.


Motivation and objective 11

 It is very difficult to configure a cache since there are

many parameters:    

Size. Replacement Policy. Topology of the distributed cache. Resolution protocol.

 Is very complex to fine tune, specially when it is dynamic

and distributed.


Content 12

 DHT P2P systems and performance

 Related work  The DHTCache  Evaluation  Conclusions and future work


Related work 13

 Diverse proposals about

distributed caches: 



Cache in P2P systems



DHTSystems used as caches of other P2P systems  P2P systems that they are implemented inside a cache







 Benefits

Adaptable cache services



Reduce the network use Improve the response time Ameliorate popular queries Reduce processing cost

 But  

Cache configuration? How to provide cooperation between heterogeneous caches?

This information in not clear and it is difficult to reuse these solutions


Content 14

 DHT P2P systems and performance  Related work

 The DHTCache  Evaluation  Conclusions and future work


The DHTCache (1) 15

 Is a distributed cache service placed on top of DHT Systems.  It has different types of caches according to the layers of

DHTSystems.  It takes into account advanced caching techniques, particularly

cooperative caching.  It allows to experiment cache configurations in order to tune

caches according to a specific context.


The DHTCache (2) 16

 It supports make decisions about of cache suitable for

developing in a particular DHTApplication.  It is transparent for the DHTApplications.  It intercepts get and put messages.  When a cache miss occurs, it forwards the get message.


Operation of DHTCache 17


Typical Node 18


Functions of the DHTCache 19

Internal functions

Internal functions

 The put operation

 Record the events

 The get operation

 Analyzer component


The put operation 20


The put operation 21


The put operation 22


The put operation 23


The get Operation 24


The get Operation 25


The get Operation 26


The get Operation 27


The get Operation 28


The get Operation 29


The get Operation 30


The get Operation 31


Content 32

 DHT P2P systems and performance  Related work  The DHTCache

 Evaluation  Conclusions and future work


Evaluation 33

 Evaluation of the DHTCache is a twofold issue:  Non-functional features: Flexibility (plain files).  Usage is the same that FreePastry.  Portability and scalability. 



Capability of a developer to make decisions based on the information provided.


Scenario of the Evaluation 34

 A third-party DHTApplication was used  Several experiments were performed with different

number of nodes and different cache configurations.     

Nodes: 400, 600 and 800. Objects: 1000. Cache size: 200, 400 and 600 objects. Replacement Policy: FIFO and LRU. Cache size was a fixed fraction of the objects within the system.

 Results obtained in terms of hit rate.


Results 35

DHTSystem of 600 nodes

DHTSystem of 600 nodes

It is important to note:  Developers are responsible for analyzing metrics  The results are highly dependent of the DHTApplication


Content 36

 DHT P2P systems and performance  Related work  The DHTCache  Evaluation

 Conclusions and future work


Conclusions 37

 DHTCache is a making decisions tool.  DHTCache provides metrics to the developer to facilitate the

identification of one appropriate cache configuration.  DHTCache takes into account techniques as cooperative caching.  A first prototype of the DHTCache is functional and allows

validating the ideas of this proposal.  A first performance evaluation using several cache parameters and

different number of nodes.


Future work 38

 The development of cache within the DLS layer and its

interaction with caching within the DSS layer.  One easier way to specify the distributed cache topology.  One mechanism for automatically defining new metrics

and gathering the log files.  New scenarios with more peers and more nodes to probe

the scalability of DHTCache.


DHTCache

Thank you very much! Questions!

Carlos E. G贸mez carloseg@uniquindio.edu.co


DHTCache