Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouHelena Cerqueira Alterado mais de 9 anos atrás
1
JXTA Protocolos PIP e PBP Franklin Felipe Wagner Márcio Dalle Lucca
2
Peer Information Protocol PIP
3
O que é? - Permite que os peers obtenham a informação de status dos peers previamente descobertos. - Uptime e quantidade de tráfego processada pelo par. - Futuro: monitoração. Peer Information Protocol
4
- O PIP fica numa camada acima do Peer Resolver Protocol. - PIP é um protocolo opcional do JXTA. - Nenhuma, uma ou múltiplas respostas podem ser recebidas a qualquer pergunta. Peer Information Protocol
5
- Peer 1 manda um Peer Info Query Message para um peer especifico (2) - Os peer´s recebem a msg e comparam o Peer ID da mensagem. - se for igual o seu (2), respondem para o peer source com uma Peer Infor Response Message - Senão, não faz nada (12) Exemplo de PIP
6
Mensagens: - Peer Info Query Message - Peer Info Response Message Peer Information Protocol
7
... Peer Info Query Message
8
...... Peer Info Response Message
9
......... Peer Info Response Message
10
- net.jxta.protocol diferente de - net.jxta.impl.protocol - PeerInfoQueryMessage e - PeerInfoResponseMsg Peer Information Protocol
11
Pipe Binding Protocol PBP
12
- Pipes são utilizados para troca de mensagens entre peers. - Antes de ser utilizado, um pipe precisa estar ligado a dois endpoints, para que os peers criem input e outputs pipes e então formem um Pipe. - O processo de ligar um pipe a um endpoint é definido pelo Pipe Binding Protocol Introdução
13
Definição: Interface de rede nativa provida por um peer. Utilização: Produzir, enviar, receber e usar mensagens através da rede. Endpoint
14
Outros serviços JXTA são construídos em cima de endpoints, direta ou indiretamente. Existem duas maneiras de acessar a rede P2P sem utilizar diretamente os endpoints: - Através do serviço Resolver - Através do uso de Pipes Endpoint
15
Um Pipe é formado quando dois endpoints querem se comunicar. Ele provê conexão entre um endpoint remetente e um ou mais endpoints destinatários. Embora o JXTA especifique outros tipos de Pipe, o único requerido é o Pipe unidirecional e assíncrono. Pipe
16
Pipe: formação
17
- O Peer1 cria um input pipe de um Pipe Advertisement e espera mensagens chegarem. - O Peer2, querendo mandar mensagens para o Peer1 usando o mesmo Pipe Advertisement, precisa criar um output pipe. Para isso ele envia uma PB Query Message para todos os seus peers e rendezvous peers conhecidos. - Peer1, ao receber a PB Query Message do Peer2, checa seu cache de pipes para ver se bate. Se sim, ele responde com uma PB Answer Message contendo seu Peer Advertisement. - Peer2 recebe de PB Answer Message e extrai a informação de endpoint do Peer Advertisement. Com ela ele cria um output pipe. Feito isso, o Peer2 pode mandar mensagens para o Peer1. Pipe: formação
18
... Pipe Advertisement
19
ID: ID único do Pipe. Type: JxtaUnicast - comum, JxtaUnicastSecure - comum com TLS, JxtaPropagate - provê conexão entre endpoints remetentes e múltiplos destinatários. Name: Nome simbólico do Pipe, que pode ser usado pelo Discovery service para descobrir o Pipe Advertisement. Pipe Advertisement
20
Percebe-se que o Pipe Advertisement não possui Peer ID. Isso é definido para que vários peers possam prover acesso a um serviço utilizando o mesmo Pipe Advertisement. E é por isso que os pipes precisam ser resolvidos com o PBP. Quando um peer quer enviar dados usando um pipe, ele precisa encontrar um peer que já ligou um pipe com o mesmo Pipe ID a um endpoint e que está esperando por dados. Pipe Advertisement
21
O PBP define duas mensagens para permitir que um peer resolva um pipe: - Pipe Binding Query Message - Pipe Binding Answer Message Mensagens
22
Query... PB Query Message
23
MsgType: pode ser Query ou Answer, nesse caso é Query. PipeId: ID do Pipe Type: Corresponde ao campo Type do Pipe Adv., pode ser JxtaUnicast, JxtaUnicastSecure ou JxtaPropagate. Cached: Opcional. Define se o peer usa seu cache de Pipes resolvidos pra responder à query. Peer: Opicional. Especifica um único Peer ID para responder a query. PB Query Message
24
Answer... false... PB Answer Message
25
MsgType: Answer Found: Opcional. Serve para indicar se foi encontrado o Pipe ID. Por default é considerado que sim. PeerAdv: Quando encontrado o Pipe ID correto, a resposta é enviada com o PeerAdv. do peer que o possui. PB Answer Message
26
- Quando o Peer1 cria o input pipe, nada é mandado pela rede. Ele simplesmente começa a esperar no seu endpoint local por mensagens que possuam o Pipe ID especificado no Pipe Adv. - O Pipe Adv. não necessariamente precisa ser comunicado através da rede. Embora o Pipe Adv. é normalmente descoberto através do Discovery service, ele pode ser codificado na aplicação ou pode ser trocado usando o Resolver service. - Binding significa a troca de mensagens PB para formar um pipe. Para criar um input pipe, não é necessário fazer o binding, ou seja, não são enviadas mensagens. - Os endpoints que na verdade são responsáveis por enviar e receber dados. O Pipe só auxilia na identificação de quais endpoints estarão trocando mensagens pela rede. Esclarecimentos
27
Dúvidas? Referências: http://translation.jxta.org/ja/docbook/JXTAProtocols.html#proto-pbp http://www.brendonwilson.com/projects/jxta-book/
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.