• Nenhum resultado encontrado

Reputation-based Resilient Distributed Algorithms

N/A
N/A
Protected

Academic year: 2021

Share "Reputation-based Resilient Distributed Algorithms"

Copied!
37
0
0

Texto

(1)

Reputation-based Resilient Distributed

Algorithms

Daniel Silvestre Semin´ario, Universidade Coimbra

Coimbra October 18th 2019

(2)

Outline

1 Introduction

2 Problem Statement 3 Proposed Solution

(3)

Motivation

Compute the average of samples - a set of sensors produces measurements that require some gathering approach. No centralized supervision - there does not exist an entity establishing the quality of the measurements.

Lightweight removal of attackers - proposed solutions need to require a low computational cost.

(4)

Example

Take the network given by the following

graph and state at time instant k,

x(k) = [1, 2, 3, 4]|

The consensus algorithm will

asymptotically converge to all the nodes

having xav= 2.5

If an attacker controlling one node in one time instant resets the state to

˜

x1(k) = x1(k) + m(c− xav)

In this examplec = 5, but the attacker can force the network to converge to any constant c!

Gossip Algorithm

[2]

• Nodes transmit at random times, exponentially distributed, i.e.

• Each node transmits only to one adjacent node at each time.

• Both nodes average their values (symmetric

communications). tl k+1− tlk∼ Exp(λ)

2

3

4

1

(5)

Example

Take the network given by the following

graph and state at time instant k,

x(k) = [1, 2, 3, 4]|

The consensus algorithm will

asymptotically converge to all the nodes

having xav= 2.5

If an attacker controlling one node in one time instant resets the state to

˜

x1(k) = x1(k) + m(c− xav)

In this examplec = 5, but the attacker

can force the network to converge to any

constant c!

Gossip Algorithm

[2]

• Nodes transmit at random times, exponentially distributed, i.e.

• Each node transmits only to one adjacent node at each time.

• Both nodes average their values (symmetric

communications). tl k+1− tlk∼ Exp(λ)

2

3

4

11

(6)

Traditional Solutions

1 Centralized approach

2 Use of an additional layer that computes worst-case values for

the measurements [1][2].

3 Discard measurements from the computation that are at the

(7)

Traditional Solutions

1 High computational costs and need for a central processing

unit.

2 Use of an additional layer that computes worst-case values for

the measurements [1][2].

3 Discard measurements from the computation that are at the

(8)

Traditional Solutions

1 High computational costs and need for a central processing

unit.

2 Use of an additional layer that computes worst-case values for

the measurements [1][2].

3 Discard measurements from the computation that are at the

(9)

Traditional Solutions

1 High computational costs and need for a central processing

unit.

2 High computational costs, requires a dynamical model.

3 Discard measurements from the computation that are at the

(10)

Traditional Solutions

1 High computational costs and need for a central processing

unit.

2 High computational costs, requires a dynamical model.

3 Discard measurements from the computation that are at the

(11)

Traditional Solutions

1 High computational costs and need for a central processing

unit.

2 High computational costs, requires a dynamical model.

(12)

Intuition behind Reputation-based approach

In our daily lives, we are drawn towards decisions based on reputation.

Reputation is a metric that assigns a large value if data is similar.

Is suitable for distributed computation as processors can use the reputation to weight the data.

(13)

Intuition behind Reputation-based approach

In our daily lives, we are drawn towards decisions based on reputation.

Reputation is a metric that assigns a large value if data is similar.

Is suitable for distributed computation as processors can use the reputation to weight the data.

(14)

Intuition behind Reputation-based approach

In our daily lives, we are drawn towards decisions based on reputation.

Reputation is a metric that assigns a large value if data is similar.

Is suitable for distributed computation as processors can use the reputation to weight the data.

(15)

Problem Statement

Consider an iterative algorithm to compute some weighted average of the measurements:

x(k+1)i = X

j∈Ni

c(k)ij x(k)j / X j∈Ni

c(k)ij (1)

Can we compute weights c(k)ij such that:

∀i ∈ N \ A : x(k+1)i → ¯x (2)

(16)

Reputation-based Consensus Algorithm

We use work on reputation systems with some mathematical adjustments to computec(k)ij ;

It has O l2i complexity for the maximum degree l and i

iterations;

No false positives;

Has a better behavior than discarding extreme values in simulation.

(17)

Simulation - no attack

The figure illustrates the used topology.

Without attacks the algorithm works as the non-resilient version. In the absence of attackers, reputations eventually equal 1.

The algorithm converges to

��������� �

� �

� �

(18)

Simulation - no attack

The figure illustrates the used topology. Without attacks the

algorithm works as the non-resilient version.

In the absence of attackers, reputations eventually equal 1.

The algorithm converges to

□ □ □ □□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ ♢ ♢♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ × × × × × × × × × × × × × × × × × × × × ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 0.0 0.5 1.0 1.5 2.0 2.5 3.0 Number of Iterations Consensus Value □ x1 ♢ x2 ○ x3 × x4 ● x5

(19)

Simulation - no attack

The figure illustrates the used topology.

Without attacks the algorithm works as the non-resilient version.

In the absence of attackers, reputations eventually equal 1.

The algorithm converges to

● ● ● ●● ●● ● ●● ● ● ● ● ● ● ● ● ● ● ■ ■■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ 5 10 15 20 0.0 0.2 0.4 0.6 0.8 1.0 Number of Iterations Reputation ● c5,1 ■ c5,2 ◆ c5,3 ▲ c5,4

(20)

Simulation - single attacker with value close to consensus

Same topology.

At first sight it seems unsuccessful.

By zooming in, we see that the nodes exclude the close value of the attacker. By looking at the reputation of node 5, the correct

��������� �

� �

� �

(21)

Simulation - single attacker with value close to consensus

Same topology.

At first sight it seems unsuccessful.

By zooming in, we see that the nodes exclude the close value of the attacker. By looking at the reputation of node 5, the correct

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ ♢ ♢♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ × × × × × × × × × × × × × × × × × × × × ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 0.0 0.5 1.0 1.5 2.0 2.5 3.0 Number of Iterations Consensus Value □ a1x2x3 × x4x5

(22)

Simulation - single attacker with value close to consensus

Same topology.

At first sight it seems unsuccessful.

By zooming in, we see that the nodes exclude the close value of the attacker.

By looking at the reputation of node 5, the correct

● □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ ♢ ♢♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ♢ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ × × ×●× × × × × × × × × × × × × × × × ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 1.50 1.55 1.60 1.65 1.70 Number of Iterations Consensus Value □ a1x2x3 × x4x5

(23)

Simulation - single attacker with value close to consensus

Same topology.

At first sight it seems unsuccessful.

By zooming in, we see that the nodes exclude the close value of the attacker.

By looking at the reputation

of node 5, the correct

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ 5 10 15 20 0.0 0.2 0.4 0.6 0.8 1.0 Number of Iterations Reputation ● c5,1 ■ c5,2 ◆ c5,3 ▲ c5,4

(24)

Simulation - two attackers with different values

More complex topology.

It works when the two attackers share smaller values.

But also when one is larger and the other smaller than the consensus value.

��������� � � � � � � � � � ��

(25)

Simulation - two attackers with different values

More complex topology. It works when the two attackers share smaller values.

But also when one is larger and the other smaller than the consensus value.

× × × × × × × × × × × × × × × × × × × × ○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ △△ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ 5 10 15 0 1 2 3 4 5 Number of Iterations Consensus Value × a1x2 ◇ x3 ◻ x4 ● x5 ■ x6 ▲ x7 ▼ a8x9 ▽ x10

(26)

Simulation - two attackers with different values

More complex topology.

It works when the two attackers share smaller values.

But also when one is larger and the other smaller than the consensus value.

× × × × × × × × × × × × × × × × × × × × ○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ▲▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ △ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ ▽ 5 10 15 0 1 2 3 4 5 Number of Iterations Consensus Value × a1x2 ◇ x3 ◻ x4 ● x5 ■ x6 ▲ x7 ▼ a8x9 ▽ x10

(27)

Simulation - Reputation-based vs State-of-the-art (1/2)

State-of-the-art consists in removing large and small values. We used the topology in the figure.

Using MSR algorithm results in a shift regarding the final value.

Using Reputation-based improves on minimizing the

effect of the attacker.

(28)

Simulation - Reputation-based vs State-of-the-art (1/2)

State-of-the-art consists in removing large and small values. We used the topology in the figure.

Using MSR algorithm results in a shift regarding the final value.

Using Reputation-based improves on minimizing the effect of the attacker.

× × × × × × × × × × × × × × × × × × × × × ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ 0 5 10 15 0 1 2 3 4 Number of Iterations Consensus Value × a 1x2 ◇ x3 ◻ x4

(29)

Simulation - Reputation-based vs State-of-the-art (1/2)

State-of-the-art consists in removing large and small values. We used the topology in the figure.

Using MSR algorithm results in a shift regarding the final value.

Using Reputation-based improves on minimizing the effect of the attacker.

× × × × × × × × × × × × × × × × × × × × ○ ○ ○ ○ ○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻ ◻ ◻ ◻◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ 0 5 10 15 0 1 2 3 4 Number of Iterations Consensus Value × a1x2x3x4

(30)

Simulation - Reputation-based vs State-of-the-art (2/2)

Using a topology that is not fully connected.

Using MSR algorithm still results in a large shift in the steady-state.

Using Reputation-based achieves a very small error. Even if the attacker uses a variable signal, using

Reputation-based is still able

(31)

Simulation - Reputation-based vs State-of-the-art (2/2)

Using a topology that is not fully connected. Using MSR algorithm still

results in a large shift in the steady-state.

Using Reputation-based achieves a very small error. Even if the attacker uses a variable signal, using

Reputation-based is still able

× × × × × × × × × × × × × × × × × × × × ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 0 1 2 3 4 Number of Iterations Consensus Value × a1x2x3x4x5

(32)

Simulation - Reputation-based vs State-of-the-art (2/2)

Using a topology that is not fully connected.

Using MSR algorithm still results in a large shift in the steady-state.

Using Reputation-based achieves a very small error.

Even if the attacker uses a variable signal, using

Reputation-based is still able

× × × × × × × × × × × × × × × × × × × × ○ ○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇◇ ◇ ◇ ◇◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 0 1 2 3 4 Number of Iterations Consensus Value × a1x2x3x4x5

(33)

Simulation - Reputation-based vs State-of-the-art (2/2)

Using a topology that is not fully connected.

Using MSR algorithm still results in a large shift in the steady-state.

Using Reputation-based achieves a very small error.

Even if the attacker uses a variable signal, using

Reputation-based is still able

× × × × × × × × × × × × ×× ×× × × × × ○ ○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◻ ◻◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ◻ ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 0 5 10 15 0.0 0.5 1.0 1.5 2.0 2.5 3.0 Number of Iterations Consensus Value × a1x2 ◇ x3 ◻ x4 ● x5

(34)

Concluding Remarks

Contributions:

We present a Reputation-based algorithm that measures the quality of the values provided by each agent.

The algorithm is lightweight with worst-case complexity dependent on the largest number of neighbors.

Currently, this work is under review. In the journal version, we provide theoretical guarantees associated with the correctness and correct detection.

(35)

D. Silvestre, J. P. Hespanha, and C. Silvestre,“Broadcast and gossip stochastic average consensus algorithms in

directed topologies,”IEEE Transactions on Control of

Network Systems, vol. 6, no. 2, pp. 474–486, 2019. doi: 10.1109/TCNS.2018.2839341.

D. Silvestre, P. Rosa, J. P. Hespanha, and C. Silvestre,

“Stochastic and deterministic fault detection for randomized

gossip algorithms,”Automatica, vol. 78, pp. 46 –60, 2017,

issn: 0005-1098. doi:

10.1016/j.automatica.2016.12.011.

H. Y. ¨Oks¨uz and M. Akar,“Distributed resilient consensus: A

(36)
(37)

Daniel Silvestre Semin´ario, Universidade Coimbra

Coimbra October 18th 2019

Referências

Documentos relacionados

The present study was designed to elaborate the effects of two throw- ing programs with the same workload on mean peak throwing velocity with a water polo ball on land and in water

DDBG was an early prototype of an early specification of the debugging engine, which was used in a set of successful experiments. These experiments range from the simple provision

Marcas que estão na própria história da inserção das mulheres no campo literário: as negociações a serem feitas com as editoras que as publicam, as estratégias de difusão de

A presente dissertação tem como objetivo principal o estudo de um sistema que faça variar a capacidade de admissão num motor de Atkinson, para que se possa reduzir o consumo quando

Esta dissertação tem ainda como objectivo o estudo da capacidade resistente de funda- ções superficiais em solos arenosos e influenciadas pela passagem de um fluxo de água

Acompanhando a forma como decorreu, nuÍna escola da cidade de Évorq no final do ano lectivo de 200512006, a segunda edição do Exame Nacional de Língua

Na investigação descrita neste projeto foram utilizadas algumas estratégias para alcançar os objetivos como já foi referido: investigar como o conhecimento da história dos

For this purpose, agent- based simulation is a suitable approach, but its computing requirements can be high and demanding distributed and non-distributed highly performant