Title: Elementos da Arquitetura P2P
1Elementos da Arquitetura P2P (Parte I)
Fernanda Marília
2TIPOS DE PEER
Há três tipos de peer - simple peers -
rendezvous peers - router peers No último
o nome difere pela capacidade de terem ou não
algumas funcionalidades fundamentais para a
criação de grupo. Os peers roteadores mantém
uma tabela interna com os usuários aptos a
entrarem e usarem os serviços do grupo.
3TIPOS DE PEER
- Peer Simples É designado a servir um único
usuário final, permitindo a este prover e
consumir serviços da rede. - Peer
Rendezvous Fornece as localizações na rede para
a descoberta de outros peers e de seus recursos
disponíveis. - Peer Router Fornece um
mecanismo para que os peers se comuniquem através
de firewalls ou NATs.
4PEER GROUPS
-
- Peer Group (segurança/integridade dos dados)
-
- Um grupo de peers com um conjunto comum de
interesses - ou objetivos.
-
- Peer groups podem fornecer aos seus membros
serviços - que não estão diretamente acessíveis aos outros
peers da rede. - Eles podem ser divididos por
- - Aplicação a ser executada no grupo em si
- - Requisitos de segurança dos peers envolvidos
- Necessidades de informações de estado dos
seus membros
5PEER GROUPS
- Na arquitetura OSI, um peer group é um grupo
formado por - unidades funcionais numa dada camada da rede na
qual todas - as funções realizadas por uma unidade funcional
se estendem - pelo sistema na mesma camada.
6PEER GROUPS
- Groups services funcionalidades que um grupo
oferece - a qualquer membro desse grupo. Pode ser
disponibilizada por - vários peers permitindo redundância.
- Desde que um peer esteja num peer group os
serviços - desse grupo estão disponíveis.
7ENDPOINTS, PIPES E MENSAGENS
- Infraestrutura de Transporte
- - Endpoints a origem ou destino de qualquer
porção de dados - transmitida na rede. Correspondem às interfaces
de rede usadas - para enviar e receber dados. É definido por um
par de hosts, - cada um com seu ip e porta.
- Já que TCP identifica uma conexão por um par
de endpoints, - um número de porta pode ser compartilhado por
múltiplas - conexões na mesma máquina. TCP define um endpoint
como - um par de inteiros (host,port).
8ENDPOINTS, PIPES E MENSAGENS
- Qualquer par de endpoints pode abrir um
socket e - "conversar" diretamente entre eles mesmos.
-
- Ex Cartão de visitas de uma pessoa
- Telefone, endereço, e-mail, fax,
celular... -
- Um peer pode ser alcançável por um número de
endereços virtuais ou endpoints -
9ENDPOINTS, PIPES E MENSAGENS
- Por que usar endpoints?
- Mudanças no estado do peer
- Um endpoint pode não estar sempre
disponível - Peer pode usar somente um protocolo específico
(requisitos de segurança, p.ex.).
10ENDPOINTS, PIPES E MENSAGENS
-
- - Pipes canais de comunicação virtuais,
unidirecionais, - assíncronos, conectando dois ou mais endpoints.
-
- Ex
- Um canal de comunicação entre dois
peers tem uma ID - Os pontos finais do canal são
identificados pelos endpoints - Se o endereço IP muda? A rede JXTA
ajusta o - roteamento da mensagem
- Dois endpoints podem usar diferentes
protocolos
11ENDPOINTS, PIPES E MENSAGENS
- Pipes não são confiáveis (condições da rede)
- Confiabilidade pode ser garantida por
uma camada de software (garantir integridade da
mensagem) - Também podem ser seguros (usando
criptografia na mensagem)
12ENDPOINTS, PIPES E MENSAGENS
- - Mensagens Recipientes de dados que estão
sendo transmitidos em um pipe de um endpoint a
outro. -
- São objetos enviados entre peers JXTA, ou seja é
a unidade básica de troca de dados entre peers.
Mensagens são enviadas e recebidas por serviços
de pipes e por endpoints.
13ENDPOINTS, PIPES E MENSAGENS
- Aplicações utilizam serviço de pipes para criar,
enviar e receber mensagens. -
- O conteúdo das mensagens podem ser de tipos
arbitrários e cada plataforma de software
descreve como uma mensagem é convertida de uma
estrutura de dados nativa (como exemplo objetos
da linguagem Java ou C) para uma representação
conhecida por toda arquitetura JXTA.
14REDE DE TRANSPORTE
-
- Transmissão utilizando Pipes
-
- Primeiro o peer precisa achar os endpoints um
ponto para ser a fonte da mensagem e outro para
cada destino da mensagem. - Assim se forma um canal virtual entre cada um
dos pontos. Quando este canal virtual estiver
formado as mensagens podem ser transmitidas de um
ponto a outro.
15REDE DE TRANSPORTE
- - As mensagens contêm os dados a serem
transmitidos - - Peers utilizam output pipe para enviar dados,
e o peer que recebe a mensagem utiliza input pipe
para extrair os dados da mensagem recebida - - Um pipe de comunicação entre peers pode ser
somente unidirecional para haver comunicação
entre dois peers deve haver dois pipes de
comunicação entre eles - - Embora uma comunicação bidirecional faça parte
de qualquer rede moderna existente, uma
comunicação unidirecional pode ser modelada em
qualquer ambiente de rede
16 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Peer Discovery Protocol este protocolo
permite ao peers noticiarem seus recursos e
buscarem recursos que estão disponíveis de outros
pares. - Discovery Query Message usada para encontrar
peers ou grupos de peers - Discovery Response Message usado para
responder uma discovery query message
17 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Peer Resolver Protocol este protocolo
permite peers enviarem uma consulta para um ou
múltiplos peers e receberam uma resposta a uma
consulta realizada. - Resolver Query Message usado para enviar um
resultado de uma consulta para outro peer.
Consultas que possuem uma identidade única. - Resolver Response Message usado para responder
a uma Resolver Query Message. Resposta enviada
com a identidade única do remetente.
18 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Peer Information Protocol permite a um peer
descobrir informações de status sobre outros
peers, isto é, estado, uptime e capacidades. - Ping Message envida para verificar se o peer
está ativado e pegar informações sobre o peer. - PeerInfo Message envia uma resposta ao uma
ping message.
19 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Pipe Binding Protocol é um mecanismo que
permite aos peers realizarem um canal de
comunicação virtual (pipe) entre dois ou mais
peers. - Pipe Binding Query Message um peer procurando
por um pipe endpoint envia esta mensagem. - Pipe Binding Answer Message a resposta
retornada para o peer requisitor.
20 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Endpoint Routing Protocol este protocolo
permite aos peers descobrirem uma rota entre dois
peers. - Route Query Request enviada por um peer
roteador para outro que fez o requerimento. - Route Answer Request enviada em resposta ao
route query request.
21 PROTOCOLOS DE TRANSPORTE DE MENSAGEM
- - Rendezvous Protocol este protocolo permite
os peers se tornarem membros de um serviço de
propagação (grupo). - Membership Apply Message mensagem enviada ao
autenticador. Uma resposta irá conter uma
credencial e um anúncio do grupo que lista o
serviço da sociedade. - Membership Join Message enviado por um peer
para o autenticador. Esta é uma aplicação para se
juntar ao grupo. Para fazê-lo o peer deve passar
a credencial. - Membership ACK Message é enviada pelo
autenticador para indicar ao peer quando este
consegue o acesso a uma aplicação ou a uma
sociedade completa. - Membership Renew Message enviar um novo acesso
ao grupo de peers. - Membership Cancel Message enviar um
cancelamento da sociedade para o grupo de pares.
22 BIBLIOGRAFIA
- http//www.gta.ufrj.br/grad/04_1/p2p/
- http//www.javaworld.com/javaworld/jw-05-2005/jw-0
509-jxta.html - http//gnomo.fe.up.pt/eol/MEMBERS/nuno_sousa/old/
ppc/artigo.html