incentivos em sistemas p2p - instituto de computação€¦ · armazenagem p2p multicast p2p redes...

60
Incentivos em Sistemas P2P Marcos Massayuki Kobuchi

Upload: others

Post on 23-Jun-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Incentivos em Sistemas P2PMarcos Massayuki Kobuchi

Page 2: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

IntroduçãoServer Based Peer to Peer

Page 3: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

IntroduçãoRedes P2P

● Napster (1999)● Gnutella (2000)

Page 4: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Napster

Page 5: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Gnutella

Page 6: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Características● Grande escala● Alta rotatividade● Anonimato

● Interações entre usuários que nunca irão se encontrar novamente!

Page 7: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Problema● Cooperação dificultada

Agravada por:● Deserções Indetectáveis● Criação de múltiplos usuários

Page 8: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

DefiniçõesJogadores:● Peer: podendo ser cliente ou servidor● Seeder: servidor

Page 9: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

p2p File Sharing GameObjetivo: aumentar banda de uploadPeer:● Cliente● Servidor

Servidor tem o custo de uso da CPU e banda!

Page 10: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Estratégia DominanteCliente:● Faz downloadServidor:● Se recusa a fazer upload

Free Riding!

Page 11: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Tit for TatRetaliação Equivalente● Dilema do Prisioneiro Iterado

● Ações anteriores são lembradas● Se oponente colaborou, então colaboro● Senão, não.

Page 12: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Shadow of the Future● Jogador fará upload● Expectativa de fazer download no futuro

Problemas:Jogadores farão outras transações?Jogadores terão papéis invertidos?

Page 13: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

População Pequena

Page 14: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

População Grande

Page 15: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Motivos?Interações entre pares não são frequentes

Reciprocidade Direta não é recomendada:● pareamento randômico● populações grandes

Reciprocidade Indireta?

Page 16: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Soluções● Reputação● BitTorrent● Moeda

Page 17: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Reputação● Histórico dos jogadores

● Recompensar bom comportamento● Punir mau comportamento

Page 18: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

KaZaA File Sharing

Page 19: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

KaZaA File Sharing● Constrói reputacão com upload de arquivos● Recompensa: prioridade quando download

Estratégias similares para:● armazenagem p2p● multicast p2p● redes adhoc

Page 20: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Esquema de reputação p2pCom técnicas de segurança, podemos:● identificar● isolar● evitar

peers maliciosos!

Page 21: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

VulnerabilidadesMultiple colluding peers● melhorar reputação com falsas

recomendações● punir um peer com falsas acusações

Pseudônimos “baratos”● Whitewashing● Sybil Attack

Page 22: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

A Minimalist p2p Model● população de peers racionais● diferentes disposições de contribuir● cada peer i tem tipo Ɵi refletindo sua

generosidade ou custo máximo● cada peer faz decisões autônomas:

○ quando contribuir?○ free ride?

Page 23: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

A Minimalist p2p Model● custo para cada contribuidor?

○ carga do sistema○ inversamente proporcional a fração de

contribuidores○ Ɵ = 1/x

● peer:○ se Ɵi > 1/x, contribua○ senão, free ride

Page 24: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Free Market● x = Pr(Ɵi ≥ Ɵ)● x = 1/Ɵ● Três equilíbrios:

○ Intersecção○ x = 0

Page 25: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Calculando x...● x = Prob(Ɵi ≥ 1/x)● no caso em que generosidade dos peers

estão uniformemente distribuídos entre 0 e Ɵm

● Prob(Ɵi ≥ 1/x) = 1 - (1/xƟm)● Equação de Ponto Fixo x = 1 - (1/xƟm)● Soluções:x1,2 = (Ɵm ± √(Ɵm^2-4Ɵm))/2Ɵm● se Ɵm < 4 não há x1 estável● x1 tende a 1 quando Ɵm -> ∞

Page 26: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Benefícios do Sistema● Benefícios é proporcional ao nível de

contribuição do sistema● Função αx

○ α grande, onde x=0 é socialmente ineficiente

Page 27: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Performance do Sistema● Diferença entre total de benefícios e custo

de contribuição total● Ws = αx - (1/x)x = αx - 1

● Performance do sistema é limitada pelo menor nível de contribuição

● Sistema entrará em colapso se generosidade máxima for baixa!

Page 28: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Reputação eServiço de Diferenciação● Sistema que pega free riders com

probabilidade p● Política de Diferenciação onde free riders

são excluídos do sistemaOu….● Sistema que consegue diferenciar

perfeitamente free riders de contribuidores● Política de Diferenciação onde free riders

receberão serviço 1-p vezes de um contribuidor

Page 29: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Consequencias● A penalidade introduz uma ameaça a free

riders, induzindo-os a contribuir● Diminui o custo do sistema

○ para x + (1-x)(1-p)○ custo de contribuição [x + (1-x)(1-p)]/x

Page 30: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Um pouco de matemática...● Q: Benefício Individual● R: Custo de Contribuição (reduzido)● T: AmeaçaPerformance:● Contribuidor: Q-R = αx - [x + (1-x)(1-p)]/x● Free rider: Q-T = αx - pαx

Page 31: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Mais um pouco...● Novo equilíbrio de contribuição:

○ x = Prob(Ɵi ≥ R-T) ● = Prob(Ɵi ≥ [x + (1-x)(1-p)]/x - pαx)

● Performance do Sistema○ Ws(p) = x(Q-R) + (1-x)(Q-T)

● = (αx-1)(x+(1-x)(1-p))

Page 32: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Visualizando...

Page 33: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Algumas conclusões● Imposição de penalidade, enquanto

aumenta o nível de contribuição acarreta em alguma perda social

● Podemos ajustar valor de p para conseguir um nível de cooperação desejada○ Se p for suficientemente alto, T > R e não haverá

free riders, atingindo performance ótima

Page 34: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

BitTorrent● Barter Based System (Permutação)● Reciprocidade Direta

Arquivo:● dividido em pedaços pequenos pelo seeder● diferentes pedaços para diferentes peers● cada peer troca pedaços com outros peers● peer reconstrói arquivo Swarming Download ou Parallel Download

Page 35: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

BitTorrentForçar varias transações entre peers

Exemplo:● Peer inicia download● Carrega conjunto de 40 peers● Seleciona quatro peers para se conectar● Periodicamente atualiza a lista de vizinhos

com peers com melhor taxa de download

Page 36: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ProblemaE depois do download ser concluído?Não há incentivo!

Solução:Reputação!

Page 37: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Outros problemas…● fingir possuir banda de upload menor

enquanto mantem ordem relativa com relação à taxa de upload de outros peers

● sybil attack (aumentando chances de ser selecionado para download)

● whitewashing● enviar “lixo” para aumentar taxa de upload

Page 38: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Moeda (currency)Ganhar crédito contribuindo com recursos….

para gastar comprando recursos!

Currency Based Systems● Mojonation● Karma

Page 39: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Golle et al. (2001)● cada peer faz decisão independente em

relação a sua quantidade de download/upload

● se cada peer é cobrado um valor proporcional a diferença entre download e upload….

● … existe um unico e estrito equilíbrio de nash onde todos peers irão maximizar quantidade de download e upload

Page 40: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Outros comportamentos...Não há só o free riding!

Decisões estratégicas:● ao entrar ou sair da rede● quais peers se conectar● reportar corretamente ao sistema

informações (ex: custos)● manipular mecanismos ou protocolos do

sistema

Page 41: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Hidden Action● ações do peer são ocultas de outros peers● como peers se comportarão?Esperamos que peers enviem e encaminhem mensagens de/para seus vizinhosExemplo:● peer recebe query de um vizinho● responde se possível● encaminha para seus outros vizinhos

Page 42: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Hidden ActionPeer pode:● não enviar a mensagem● enviar probabilisticamente

para reduzir custos!

Um sistema em que todos decidem não enviar pararia de funcionar!

Page 43: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

The Principal-Agent Model● Dirigente emprega agentes● Conjunto N de n agentes● Conjunto A = (0, 1) de ações● Cada agente i ∈ N

○ tem ação ai ∈ Ai○ custo c(ai) ≥ 0 para cada ação ai

■ baixo esforço (ai = 0): custo 0■ alto esforço (ai = 1): custo c

Page 44: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

The Principal-Agent Model● Coletiva e probabilisticamente, ações dos

agentes determinam uma saída o ∈ {0, 1}● Saída é determinada de acordo com:

○ a tecnologia do projeto○ ou uma função de sucesso t: A1 x … x An → [0, 1]

● Ganho do dirigente:○ v = 0 se saída for 0 (falha)○ v > 0 se saída for 1 (sucesso)

Page 45: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Read-Once Networks● Grafo com dois nós especiais:

○ Source○ Sink

● Cada agente controla uma aresta○ se fizer baixo esforço, probabilidade de sucesso γ○ se fizer alto esforço, probabilidade de sucesso δ≥γ

● Projeto se tiver caminho source-sink● Mapeamento dos sucessos individuais

através de tecnologias○ tecnologia “AND”○ tecnologia “OR”

Page 46: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Probabilidade e Esforço● Um agente:

○ low: probabilidade γ ∈ (0, 1/2) de sucesso○ high: probabilidade 1-γ ∈ (1/2,1) de sucesso

Page 47: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Tecnologia “AND”Probabilidade de sucesso

Page 48: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Tecnologia “OR”Probabilidade de sucesso

Page 49: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ContratosDirigente fará contrato com agentes● Se projeto tem sucesso, pago pi ≥ 0 a cada

agente i● Senão, não pago nada

Page 50: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Pensando em um jogo...Profile of Action● a = (a1,...,an)Utilidade de cada agente:● ui(a) = pi * t(a) - c(ai)

Utilidade do dirigente:

● onde a1,...,an estão em equilíbrio de Nash

Page 51: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Incentivo e ContribuiçãoQueremos motivar todo agente a se esforçar

Contribuição marginal do agente i:

● aumento na probabilidade quando esforça

Page 52: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Melhor estratégiaMelhor estratégia do agente i é:● ai = 1 se

● ai = 0 se

Page 53: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Melhores ContratosOs melhores contratos para o dirigente é:● pi = 0 para agente i que não se esforça● para agente i que se esforça

Page 54: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ObservaçõesNo caso não observável, pagamento de cada agente i é maior que o custo dele!

Page 55: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Price of UnaccountabilityPOU(t)● pior taxa entre

○ utilidade do dirigente no caso observável○ utilidade do dirigente nas ações ocultas

Page 56: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ResultadosLema:● Para qualquer tecnologia t, a utilidade

esperada do dirigente nos contratos ótimos, a probabilidade de sucesso e o pagamento esperado são todos não decrescentes com o valor v

Page 57: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ResultadosPara qualquer tecnologia AND com n agentes

existe um preço v* < ∞ de forma que● qualquer v < v* ótimo é não contratar● qualquer v > v* ótimo é contratar todosPrice of unaccountability:● ponto de transição do caso não observável

Page 58: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

ResultadosPara qualquer tecnologia OR com n agentes● existem valores finitos positivos

v1 < v2 < … < vn tal que para qualquervk < v < vk+1

contratar exatamente k agentes é ótimoPrice of unaccountability:● POU é limitado por 5/2

Page 59: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Conclusões● A rede p2p precisa de contribuidores● Racionalidade x Bem Estar Social● Mecanismos

○ Reputação○ BitTorrent○ Moeda

● Hidden Actions● Facilidade de implementação levou ao

florescimento de sistemas p2p● Validação de designs de incentivos

Page 60: Incentivos em Sistemas P2P - Instituto de Computação€¦ · armazenagem p2p multicast p2p redes adhoc. Esquema de reputação p2p Com técnicas de segurança, podemos: identificar

Dúvidas?