Universidade Federal do Paraná
Redes P2P: CHORD
Nuno Manuel Ferreira Gonçalves
Resumo

História

Classificação

Estrutura

Mapeamento de chaves

Roteamento

Pesquisa

Estabilização

Endereçamento

Vantagens/Problemas

Implementações

Referências
História



Criado em 2001
Instituto de Tecnologia de
Massachusetts(MIT)
Investigadores:

Ian Stoica

Robert Morris

David Karger

M. Frans Kaashoek

Hari Balakrishnan
01/09/2010
Nuno Manuel Ferreira Gonçalves -
3
Classificação

Arquitetura de 3ª geração

Modelo Descentralizado e Estruturado

Pesquisa através de DHT
01/09/2010
Nuno Manuel Ferreira Gonçalves -
4
Estrutura




Anel – direcionado
sentido horário com ID's
de m bits usado tanto
para os nodos como para
as chaves.
SHA-1 - Função de
HASH(Secure Hash
Standart)
Nó ID = SHA-1(endereço
IP)
Chave ID = SHA-1(chave)
01/09/2010
Nuno Manuel Ferreira Gonçalves -
5
Mapeamento de Chaves

Uma chave é mapeada para o primeiro
nodo cujo ID é igual ou superior ao da
chave.


Cada nó é responsável por um conjunto de
chaves(variável)
As chaves devem ser re-distribuídas após uma
entrada ou saída do sistema.
01/09/2010
Nuno Manuel Ferreira Gonçalves -
6
Roteamento

Finger table – contém m entradas. Definidas através
da função (n+2k-1)mod 2m, 1≤k≤m
01/09/2010
Nuno Manuel Ferreira Gonçalves -
7
Pesquisa Simples
01/09/2010
Nuno Manuel Ferreira Gonçalves -
8
Pesquisa Escalável
01/09/2010
Nuno Manuel Ferreira Gonçalves -
9
Pesquisa Escalável

O(log N) – N é o número de nodos
01/09/2010
Nuno Manuel Ferreira Gonçalves -
10
Estabilização


Quando um nó
entra na rede
somente corrige o
seu sucessor.
Executa a função
stabilize() e a
função fix_fingers()
periodicamente.
Somente O(1/N)
das chaves são
mudadas para
outra localização.
01/09/2010
Nuno Manuel Ferreira Gonçalves 
11
Entrada na rede

Entrada na rede através de um nodo
conhecido
01/09/2010
Nuno Manuel Ferreira Gonçalves -
12
Endereçamento


Não disponibilizada informação sobre como
ultrapassar barreiras de
endereçamento/protecção.
Paper original somente assume que a
comunicação na rede física é simétrica e
transitiva.
01/09/2010
Nuno Manuel Ferreira Gonçalves -
13
Principais vantagens

Balanceamento de carga

Descentralizado

Escalável

Alta disponibilidade

Simples

Boa performance
01/09/2010
Nuno Manuel Ferreira Gonçalves -
14
Problemas

Pesquisa no Chord não atende apropriamente:

Semântica mais complexa

Meta-informação

Buscas incompletas

Erros léxicos
Ex: Se for armazenado o video “o meu pé de meia” e a
procura for por “o meu pé” a pesquisa falha.

Possíveis problemas de segmentação do anel

Somente trata de chaves e ID's
01/09/2010
Nuno Manuel Ferreira Gonçalves -
15
Implementações

P2P XWIKI

Macedon (C++).

i3/Chord (C).

P2 (A custom declarative language).

The Circle (Python).

Open Chord (Java).

Overlay Weaver (Java).

nchord (C#)

chordjerl (Erlang)
01/09/2010
Nuno Manuel Ferreira Gonçalves -
16
Referências

Ion Stoica, Robert Morris, David Karger, M. Frans
Kaashoek, and Hari Balakrishnan. Chord: A scalable
peer-to-peer lookup service for internet applications.
In Proc. ACM SIGCOMM 2001, August 2001. An early
version appeared as LCS TR-819 available at
http://www.pdos.lcs.mit.edu/chord/papers.

http://pdos.csail.mit.edu/chord/

http://www.itl.nist.gov/fipspubs/fip180-1.htm(SHA-1)

Ion Stoica, Robert Morris, David Liben-Nowell, David R.
Karger, M. Frans Kaashoek, Frank Dabek, Hari Balakrishnan,
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet
Applications. IEEE/ACM Transactions on Networking,
February 2003
01/09/2010
Nuno Manuel Ferreira Gonçalves -
17
Perguntas?
01/09/2010
Nuno Manuel Ferreira Gonçalves -
18
Download

Ondas Azuis - UFPR - Universidade Federal do Paraná