15
06/07/2016 WCN 2016 1 Practical Aspects Of State Machine Replication Virtualization Ederson Torresini 1 Eduardo Alchieri 2 Luis Pacheco 2 Marcos Caetano 2 1 Campus São José Instituto Federal de Santa Catarina 2 Departamento de Ciência da Computação Universidade de Brasília

Practical Aspects of State Machine Replication Virtualization

Embed Size (px)

Citation preview

Page 1: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 1

Practical Aspects Of State Machine

Replication Virtualization

Ederson Torresini1

Eduardo Alchieri2

Luis Pacheco2

Marcos Caetano2

1Campus São José

Instituto Federal de Santa Catarina

2Departamento de Ciência da Computação

Universidade de Brasília

Page 2: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 2

Outline

● Introduction

● Virtualization

● State Machine Replication

– BFT-SMaRt

● Experiments

● Conclusions and Future Work

Page 3: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 3

● State Machine Replication (SMR) is a technique widely used toimplement dependable systems

● Virtualization also could be seem as a technique that helps thedevelopment of dependable systems

– Some works proposed the integration of protocols for SMR and virtualization (both, virtual machines or containers)

● Our goal: Use a SMR library to implement an application for assess its performance and resources consumption whendeployed in both, virtual machines and containers

Introduction

Page 4: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 4

Virtualization

● Virtual Machines (KVM) vs. Containers (Docker)

Page 5: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 5

State Machine Replication

● Approach that replicates the servers and coordinates the

interactions among clients and servers

– Same state evolution

● Provide replica determinism:

– All replicas (1) starting with the same state and (2) executing

the same set of operations in the same order, (3) reach the

same final state

Page 6: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 6

State Machine Replication

op1

op2

Atomic multicast

op1, op2

op1,op2

op1, op2

op1, op2

ClientsServers

Page 7: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 7

BFT-SMaRt

● Java library used to implement replicated applications (SMR)

Page 8: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 8

Experiments

● We used one server and deployed a set of containers or virtual machines

– Virtual Machines: KVM

– Containers: Docker

● BFT-SMaRt was configured with 3 servers (f=1)

– 10 clients executed in a different machine

● Aplication: linked list

– Operations: ADD, REMOVE, GET and CONTAINS

– Initialized with 100k entries

– 25000 requests (25% for each type)

Page 9: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 9

Experiments: Latency

Page 10: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 10

Experiments: Throughput

Page 11: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 11

Experiments: CPU

Page 12: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 12

Experiments: Memory

Page 13: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 13

Experiments: Network

Page 14: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 14

Conclusions and Future Work

● We analysed the performance and the resources consumption ofan application replicated using the SMR approach

– Containers vs. Virtual Machines

– We found that containers perform better than virtual machines and, at same time, require less resources

● Important for a cloud computing scenario, where you payfor what you use

● Future work

– Integrate the SMR approach in the Kubernetes, a manager ofcontainers

– Compare these scenarios with the use of physical machines

● BFT-SMaRt: http://bft-smart.github.io/library

Page 15: Practical Aspects of State Machine Replication Virtualization

06/07/2016 WCN 2016 15