You are on page 1of 31

Arquitecturas Peer-to-peer

(P2P)
Mariano Latorre A.
5/9/2005

marianolatorre@gmail.com Arquitecturas P2P 1


Temas a ver
Qu es P2P?
Tipos de redes
Reseas histricas
Arquitecturas
Estadsticas
Casos de estudio:
Napster, Gnutella, Kazaa y Bittorrent
Performance
Problemas actuales

marianolatorre@gmail.com Arquitecturas P2P 2


Qu es P2P? - Wikipedia
Una red informtica que no tiene clientes
y servidores fijos, sino una serie de nodos
que se comportan a la vez como clientes y
como servidores de los dems nodos de
la red. Cualquier nodo puede iniciar o
completar una transaccin. Los nodos
pueden diferir en configuracin local,
velocidad de proceso, ancho de banda de
su conexin a la red y capacidad de
almacenamiento
marianolatorre@gmail.com Arquitecturas P2P 3
Tipos de redes P2P
Computacin colaborativa Grids.
Ejemplo:
GRID.org tienen 2 millones de PC que suman
100 teraflops [un trilln de operaciones de punto flotante/seg.] .
Mensajera instantnea. Bsicamente
chat.
Comunidades afines Intercambio de
archivos.

marianolatorre@gmail.com Arquitecturas P2P 4


Reseas histricas
Antes 1999 - Internet provee News e IRC.
Mp3.com sitio web central
1999 Nace Napster Shawn Fanning
No completamente P2P
Fines 1999 demandas contra Napster
Febrero 2001 alcanza 13,6 millones de
usuarios
Julio 2001 cierran napster
marianolatorre@gmail.com Arquitecturas P2P 5
Reseas histricas
Napigator y OpenNap
WinMX y iMesh reemplazan a Napster
Audiogalaxy lidera la lista, pero tambin
es cerrado
2002 usuarios cambian masivamente a
Kazaa y Morpheus (descentralizados ms cerca de ser P2P)
Gnutella prcticamente imposible darla
de baja
marianolatorre@gmail.com Arquitecturas P2P 6
Arquitecturas
P2P hbrido. Usa servidores centrales (~160).

P2P hbrido con pocos servidores (decenas).


Los peers pueden ser servidores

P2P con Supernodos

P2P puro

marianolatorre@gmail.com Arquitecturas P2P 7


Arquitecturas: Napster vs Gnutella

P2P puro
P2P hbrido

marianolatorre@gmail.com Arquitecturas P2P 8


Arquitecturas: Kazaa

P2P con
supernodos (SN)

Los SN son
designados de
acuerdo a la
capacidad de la
red en la que se
encuentren. No
es obligatorio ser
SN.

Red de Kazaa
marianolatorre@gmail.com Arquitecturas P2P 9
Arquitecturas: Comparacin entre
http y p2p (1/2)
Archivos pequeos, Archivos grandes
no ms de 500kb desde 3.5Mb hasta
Objetos pasan en una 2Gb o ms
sola sesin Los downloads abren
Dura pocos segundos muchas conexiones
Conexiones Sesiones de das
confiables y Conexiones y
disponibilidad disponibilidad
asegurada insegura

marianolatorre@gmail.com Arquitecturas P2P 10


Arquitecturas: Comparacin entre
http y p2p (2/2)
Conalgunas excepciones Contenidos en constante
pocos sitios cambian sus cambio
contenidos Diversos protocolos
Protocolo bien definido y abiertos y cerrados
~esttico Puertos fijos, dinmicos,
Puerto fijo :80 ocultos en otros servicios.
Exceptuando los mirrors Cada contenido est
existe un nico host ligado a nico hash
Trfico asimtrico Trfico ~simtrico

marianolatorre@gmail.com Arquitecturas P2P 11


Arquitecturas: Nuevos desarrollos
Nuevos desarrollos
Seleccin de puertos dinmicos. Kazza
Downloads bi-direccionales. Bittorrent e
eDonkey.

Impacto
Ms difcil analizar el comportamiento de las
redes
Ms rpida la difucin y creacin de sources

marianolatorre@gmail.com Arquitecturas P2P 12


Estadsticas

marianolatorre@gmail.com Arquitecturas P2P 13


Estadsticas

marianolatorre@gmail.com Arquitecturas P2P 14


Estadsticas: algunas conclusiones
de CacheLogic 2004
El trfico web es insignificante en comparacin al P2P.
P2P es simtrico en upload:download
P2P va en crecimiento
El tamao de los archivos que se transfieren son cada vez
mayores. El 30 % del trfico es de a un solo archivo de 600
megas.
Se est comenzando a distribuir imgenes de software libre por
P2P. Ej: Fedora.
35 millones de europeos han bajado msica utilizando clientes
P2P
En 30 das una unidad de CacheLogic observ 3.5 millones de
ips fijas transfiriendo.
Bit torrent se ha vuelto la aplicacin P2P ms usada
actualmente.

marianolatorre@gmail.com Arquitecturas P2P 15


Casos de estudio: Napster
Es probable que
Etherny sea
previa (pero no
masiva)
TCP punto a
punto
Necesita servidor
centralizado

marianolatorre@gmail.com Arquitecturas P2P 16


Casos de estudio: Napster
Cliente se conecta al
servidor de Napster
Se sube la lista de archivos
compartidos al servidor
junto con el IP
Bsqueda (query)
Pings a los peers que son
source
Selecciona un conjunto de
ellos con la mejor tasa de
transferencia.
Comienza con la
transferencia
marianolatorre@gmail.com Arquitecturas P2P 17
Casos de estudio: Napster
Problemas:
Servidor sobrecargado
Sistema no tolerante a fallas

marianolatorre@gmail.com Arquitecturas P2P 18


Casos de estudio: Gnutella
Bsqueda y flooding distribuido
Elimina los problemas del servidor central
Open source
Un request demasiado trfico

marianolatorre@gmail.com Arquitecturas P2P 19


Casos de estudio: Gnutella
Ha copiado cosas de otros protocolos:
downloads paralelos, administracin de
colas, etc.
Atractivo a investigadores, fcil realizar
experimentos, provee plataforma de tests
y mediciones.

marianolatorre@gmail.com Arquitecturas P2P 20


Casos de estudio: Kazaa [Chawathe 03]
Software propietario y protocolo cerrado.
Utiliza supernodos (SN)
Viene con lista inicial de potenciales SN
Elige servidor y cambia cuando necesita
Cliente configurable: max upload-download rate, nmero
mnimo de resultados.
Olas de resultados y downloads paralelos
Cada SN se conecta con ~150 ON (ordinary node)
Se estiman ~30.000 SN
c/SN mantiene TCP con ~40 ON
Conexin ON-SN dura en promedio 56 minutos

marianolatorre@gmail.com Arquitecturas P2P 21


Casos de estudio: Kazaa
ONs con mejor conexin SN
3 tipos de conexin:
ON-ON sobre HTTP
ON-SN, SN-SN sobre TCP

marianolatorre@gmail.com Arquitecturas P2P 22


Casos de estudio: Kazaa
Pasos para integrarse a la red:
1. ON prepara lista de archivos disponibles y calcula
metadata
Metadata: nombre, tamao, hash de contenido y descriptores
de archivo
2. ON enva toda su metada a un SN de la lista inicial
3. SN le enva lista SN actuales cercanos a l
4. ON enva ping a 5 de esos SNs y elige 1
5. Si el SN se va offline, el ON repipite desde 2.

marianolatorre@gmail.com Arquitecturas P2P 23


Casos de estudio: Kazaa
Pasos para el query
ON enva su query al SN con un mnimo de N
resultados requeridos
Si el SN supera los N resultados solicitados
por el ON, realiza forward a los SN con que
est conectado.
Cada SN que no obtenga resultados realiza
forward.
Los resultados son enviados al ON

marianolatorre@gmail.com Arquitecturas P2P 24


Casos de estudio: Kazaa
Pasos para el download:
ON posee lista de ONs fuentes
ON enva request
Se inicia transferencia sobre HTTP usando
byte-range header

marianolatorre@gmail.com Arquitecturas P2P 25


Casos de estudio: Kazaa

marianolatorre@gmail.com Arquitecturas P2P 26


Casos de estudio: BitTorrent
No es P2P puro
Utiliza sitios webs y trackers
Las bsquedas se realizan en el servidor
web
Para iniciar un download se debe bajar el
.torrent asociado al contenido a bajar
.torrent contiene: el largo de archivo,
nombre, hash y url del tracker
marianolatorre@gmail.com Arquitecturas P2P 27
Casos de estudio: BitTorrent

marianolatorre@gmail.com Arquitecturas P2P 28


Casos de estudio: BitTorrent
El tracker realiza mediciones fcil obtener
estadisticas y analizar performance
Los archivos se dividen en partes (256Kb)
El cliente puede elegir qu partes bajar
primero
En general se prefieren las menos comunes
Archivos son fuentes durante el download.
Luego de completado el download este se
puede mantener como seed

marianolatorre@gmail.com Arquitecturas P2P 29


Medicin de performance
Dos tipos:
Monitoreo de red o Sniffing
No es necesario conocer el protocolo
Los protocolos han cambiado para evitar estas
mediciones
Datos de aplicacin
Volver a escribir la aplicacin cliente y servidor
Ingeniera reversa
Datos ms exactos

marianolatorre@gmail.com Arquitecturas P2P 30


Problemas Actuales de P2P
Polucin. Falso contenido
Archivos de moda. Cerca del 0.1% de los archivos
que estn siendo requeridos con mayor frecuencia,
generan cerca del 50% del trfico
Usuarios peligrosos. Cerca del 10% de las IPs
que acceden a una red P2P consumen cerca del 99%
del trfico total

marianolatorre@gmail.com Arquitecturas P2P 31