Informática UFRGS
Sistemas
Sistemas
P2P
P2P
Autoria Autoria �Cláudio Geyer �
Local
�Instituto de Informática �UFRGS �Disciplinas: � Sistemas Operacionais II �Versão � v0 � dez/2009Informática
UFRGS BibilografiaBibilografia
�
Bibliografia:
�Coulouris et al. “Sistemas Distribuídos – Conceitos e Projeto”.
Ed. 4. Bookman. 2007.
Informática
UFRGS SúmulaSúmula
�
Súmula
�Conceito
Informática
UFRGS
�
Motivação
�É esperado que a demanda por serviços na Internet seja
limitada pelo tamanho da população mundial
�A expansão de serviços Internet é limitada pela quantidade de
recursos e pelo custo de gerenciamento e recuperação de falhas
�Ociosidade grande de recursos (processamento e
Informática
UFRGS
�
Objetivos
�Sistemas peer-to-peer(p2p) têm por objetivo compartilhar
dados e recursos em grande escala de forma descentralizada
�Oposição ao modelo cliente-servidor onde há uma entidade
Informática
UFRGS
�
Status de p2p na Internet
�Entre 2002 e 2006 houve um forte e rápido crescimento de p2p
na Internet
�No mesmo período
� Redução do tráfego para email, ftp, web
�Fonte:
� CacheLogic Research
�Não há uma definição totalmente de consenso!
�Sistemas p2pdevem suportar os seguintes requisitos:
� Nós podem estar localizados nas “bordas da rede;
� Nós com conectividade variável e temporária (endereços IP também)
� Heterogeneidade de nós (hardware e software) e de taxas de transmissão
� Nós com autonomia parcial ou total em relação a um servidor central
� Nós oferecem capacidades iguais de fornecer e consumir recursos
� Ser escalável
Informática
UFRGS
�
Definições de sistema p2p
�1) Clay Shirky (www.shirky.com)
� P2P is a class of applications that take advantage of resources– storage, cycles, content, human presence – available at the edges of the Internet
�2) Milojicicet al.(HP)
� P2P refers to a class of systems and applications that employ distributed resources to perform a critical function in a
decentralized manner
Informática
UFRGS
�
Principais propriedades de sistemas p2p
�Garantir que cada usuário contribua com recursos para o
sistema
�Ausência de controle central e de centralização de
informações
�Sistema não-hierarquizado
� Cada nó (peer) assume o papel de cliente e de servidor
�Não há· uma visão global do sistema
�Disponibilidade de acesso para qualquer nó
�Nós são autônomos
�Sistema não-confiável (recursos voláteis)
overlay networks)
�Rede “virtual” criada sobre uma rede existente
� Própria Internet através do conceito de IP emprega esse conceito
� Rede lógica sobre diferentes tecnologias de rede
�Rede p2p define uma rede virtual interconectando seus
peers(nós)
�Características básicas de uma rede p2p
� Peers são conectados de forma aleatória
� A conexão de um peer se estabelece através de outro já
Informática
UFRGS
�
Exemplos de Redes de Sobreposição
�www.fr.ipv6tf.org/DATA/REUNIONS/.../P2P_LIP6.ppt (Marcelo Amorim - LIP6, Paris)
IP
Informática
UFRGS
�
Exemplo de Rede de Sobreposição
Informática
UFRGS
�
Modelos de arquitetura de p2p
�Problemas fundamentais:
� Localização de recursos (onde está determinado recurso) � Envolve mecanismo de registro
� Roteamento (como faço para chegar lá?)
�Existem várias formas de categorizar as redes p2p
� Basicamente é sobre a presença ou não de um nó de controle � Novamente, não há consenso
Informática
UFRGS
�
Classificação 1
�Descentralizada
� Não há um servidor
� Peers são autônomos e responsáveis pelos recursos e controle
� Peers se comunicam diretamente ou através de vizinhos comuns
�Semicentralizada (híbrida)
Informática
UFRGS
�
Classificação 2
�Busca centralizada (centralized indexing architecture)
� Rede com a presença de ponto central que mantém informações de busca
� Os peers consultam o nó central e trocam informações diretamente entre si
�Busca por inundação (distributed indexing with flooding
architecture)
� Mecanismo de busca e distribuição são dispersos na rede � Cada nó mantém uma lista de seus recursos e fazem pedido
Informática
UFRGS
�
Classificação 2
�Busca por hash distribuída (distributed indexing with hashing
architec.)
� Similar à busca por inundação
� Usam uma tabela hash para “dividir” o espaço de busca de informações
Informática
UFRGS
�
Classificação 3
�Centralizada
� Presença de um nó central para manter as informações de busca
�Descentralizada e não estruturada
� Ausência de um nó central
� A medida que nós entram e saem, estabelecem ligações com nós arbitrários
Informática
UFRGS
�
Classificação 3
�Descentralizada e estruturada
� Ausência de um nó central
� A topologia da rede de sobreposição é ditada por um esquema de alocação de chaves e de ids geradas (hashing) na entrada de um nó
� Estrutura os peers entre si de forma a facilitar a localização dos mesmos
�Problem:
� Peer-to-peer systems are neither new nor unique; they make us look for solutions to old problems that we all worked around or tried to ignore before.
� Andy Oram (O'Reilly & associates) speech at Free and Open Source Software Developers'sMeeting Brussels, BE, Feb. 2002
�O conceito não é novo... usenet, dns, roteamentoIP etc
� Apenas novas aplicaçoes, problemas e necessidades
� Escalabilidade � Segurança � Estabilidade � Anonimato
Informática
UFRGS
�
Classificação de aplicações p2p
�Compartilhamento de arquivos
� Napster, Gnutella, Freenet, Oceanstore, PAST, Freehaven, KaZaA
�Computação distribuída
� Seti@home, Entropia, Parabon, Popular Power, …
�Trabalho colaborativo
� Mensagens instantâneas (Jabber, MSN, AIM, YahooMessager!, …)
Informática
UFRGS
�
Classificação de aplicações p2p
�Outras
� Distribução de conteúdo (BitTorrent) � Base de dados
� Jogos � Blogs
Informática
UFRGS
�
Gerações de sistemas p2p
�1ageração
� Compartilhamento de arquivos (Napster)
�2a geração
� Compartilhamento de arquivos provendo maior escalabilidade, anonimato e tolerância a falhas (Freenet, Gnutella, KaZaA, BitTorrent)
�3a geração
� Surgimento de middlewares para o gerenciamento de recursos distribuÌdos de forma independente da aplicação
Informática
UFRGS
�
Tecnologias relacionadas com p2p
�Computação distribuída
�Computação em grade (gridcomputing)
�Bancos de dados distribuídos
�Redes wirelessadhoc
�Redes de sensores
�Computação ubíqua
�Webservices
�Jogos distribuídos
�Aplicaçõess multimídia (vídeo e áudio streaming)
Informática UFRGS
Sistemas
Sistemas
P2P
P2P
Informática
UFRGS ResumResum
o o
�
Resumo e sugestões
�em caso de dúvida
� use CMP e atributo Required
�EJB entidade
� somente CMP � nem JDBC �CMP
� declarar atributos
Informática
UFRGS ResumResum
o o �
Resumo e sugestões
�BMP JBDC
� SQL comandos e commit / rollback
�BMP JTA
� métodos begin, commit e rollback
�BMP JDBC + JTA
� possível mas não recomendado (depuração complexa) �BMP
� certificar-se que commit ou rollback são chamados
���������������������������������������������������������������������������
��������������������������������������������������������������������������������� �����������������������������������������������������