Redes P2P y Reputación
Marzo 2004
Rafael Melendreras Ruiz
1.
Introducción a las redes
P2P
¿ Qué es Peer-to-Peer ?
‘Peer-to-Peer’ es un
esquema de relación
SIMÉTRICA entre dos
elementos o nodos (peers)

METÁFORA: Tertulia


Mismas capacidades
Mismos permisos
Capacidad de intercambio
de papeles en una relación
Esquemas de relación
ASIMÉTRICA



METÁFORA: Clase

Master/Slave
Gestor/Agente
Cliente/Servidor
...
Tecnologías históricas Peer-to-Peer...
INTERNET en sus orígenes seguía un esquema PEER-TO-PEER...
Enrutamiento IP (IMP’s)
NNTP
(News Notification Transfer Protocol)
...o APLICACIONES ASIMÉTRICAS pero con patrones de uso SIMÉTRICOS
FTP
TELNET
... y como se fue optando por tecnologías asimétricas
...pero progresivamente ha ido adoptando esquemas jerárquicos...
DNS
...o claramente ASIMÉTRICOS
HTTP
En cierto sentido, P2P devuelve a INTERNET a su filosofía original.
Aplicaciones y protocolos
APLICACIÓN
NNTP
FTP
SNMP
...
Nivel APLICACIÓN
Nivel TRANSPORTE
Nivel RED
TCP
IP
HTTP
DNS
El BOOM del Peer-to-Peer
Se produce alrededor del año 2000
Se centra más en APLICACIONES P2P
que en PROTOCOLOS P2P
Elemento en común: DEVUELVEN
CONTENIDO Y CONTROL A LOS
USUARIOS
Aprovecha recursos (almacenamiento,
contenido, ciclos de CPU, presencia de
personas) en LA PERIFERIA DE LA RED
(e infrautilizados)
Toleran conectividad variable
Algunos proyectos influyentes

Napster

[email protected]

Gnutella

Web Services / .Net
Aplicaciones. Peer-to-Peer vs. Client/Server

CLIENTE/SERVIDOR




Cliente/Servidor
Existe un elemento CENTRAL el SERVIDOR, que
proporciona servicios a los CLIENTES
Relación asimétrica
En el SERVIDOR se suelen concentrar
 Datos y lógica de negocio
 Capacidades de alta disponibilidad,
escalabilidad y explotación
Los clientes ofrecen interfaz de usuario y tienden
a ser ligeros
CENTRALIZACIÓN

PEER-TO-PEER





NO existen elementos centrales
Cualquier nodo se puede comunicar con
cualquier otro nodo (directa o indirectamente)
Relación simétrica
Los nodos presentan alta autonomía
Los esquemas de conectividad son variables
DESCENTRALIZACIÓN
Peer-to-Peer
Redes Peer-to-Peer
Las redes P2P reales no presentan
conectividad directa entre todos sus
nodos
Deben proporcionar una visión
descentralizada a pesar de:




Desconocimiento de los nodos
Presencia de nodos NO garantizada
Apoyo en tecnologías y redes no
siempre P2P
Obstáculos:
 Firewalls
 NATS
Tipos



Completamente descentralizadas (ej.
Gnutella, P2People)
Jerárquicas (ej. DNS)
Coordinadas centralmente (ej.
[email protected] y Napster)
Tendencia hacia la estandarización ‘de
facto’ o ‘de iure’


JXTA
P2PWG
El fenómeno ‘Small World’
o ‘Este mundo es un pañuelo’
El experimento de Stanley Milgram
en 1967



Envío de 160 cartas
Población posible 200 Millones
42 cartas llegaron con una media de
5.5 intermediarios
Conceptos relacionados



Teoría de grafos
Redes sociales
Redes de telecomunicaciones
Las redes P2P pueden tomarse
como grafos
La existencia de unos pocos nodos
bien comunicados conduce al
fenómeno del ‘small world’
Arquitecturas Mixtas
Suelen tener un elemento
intermedio que SI es central
Una vez que los nodos se
comunican, la relación YA es
P2P y SIMÉTRICA
Ejemplo: Napster
Los retos del Peer-to-Peer
Retos tecnológicos





Seguridad
Prestaciones
Reputación y Confianza
Tarificación
Entornos
 Análisis de comportamiento de red
 Desarrollo
 Prueba
Otros retos




Madurez de la tecnología
Estandarización
Claridad del marco legal
Definición de modelos de
negocio
¿ Qué ventajas ofrece Peer-to-Peer ?
TÉCNICAS



Escalabilidad (al modo P2P)
Robustez (al modo P2P)
Disponibilidad (al modo P2P)
FUNCIONALES



LIBERTAD de los usuarios
DINAMISMO
AUSENCIA de MEDIADORES
EXPLOTACIÓN

Ausencia de administración o
administración sólo de entornos
clientes
¿ Cuándo aplicar Peer-to-Peer ?
NO existen activos de ámbito
claramente corporativo
(típicamente procesos de
negocio o datos)
Los datos o interacciones no
están claramente regulados
Se busca la INTERACCIÓN
LIBRE entre USUARIOS finales,
más que acceso a un servicio o
dato centralizado
ÁMBITOS TÍPICOS




Compartición de ficheros
Computación distribuida
Comercio electrónico
Trabajo en grupo
Necesidad de la gestión de
la reputación en redes P2P
2.
Necesidad de la Gestión de
la Reputación en redes P2P
Anonimato de los usuarios (Anonimity)
Mayoría de Aplicaciones de acceso a
las redes P2P, usan técnicas o
métodos ocultación de IP (Privacidad)
Redes P2P tienden a ser inundadas con
archivos corruptos (inauthentic files)
por usuarios malintencionados
(malicious peers).
Intereses:



Propios (Industria de Grabación).
Degradar funcionamiento de la red.
Económicos (aquellas que incluyan
servicios C2C, etc).
Necesidad de la Gestión de
la Reputación en redes P2P
Sistemas de Gestión de la
Reputación
Algoritmos que permitan a los
usuarios (peers) conocer a otros en
función de sopesar la opinión de
aquellos con quienes interaccionaron
en el pasado.
OBJETIVO:
Minimizar el número de contactos
(sesiones de trabajo o colaboración)
con usuarios malintencionados.
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
“Valor de Confianza Local (local trust value): sij”
Suma de las tasas de cada una de las descargas que el peer i ha
recibido del peer j.


Tasa de descarga positiva: tr(i,j)=1
Tasa de descarga negativa: tr(i,j)=-1
s ij 
 tr
 sat ( i , j )  unsat ( i , j )
Problema:
Como agregar los valores de confianza local sij sin
almacenarlos ni gestionarlos de manera centralizada.
Solución:
Sistema de reputación que agregue los valores de confianza
local de todos los usuarios de manera natural, con el mínimo
coste en términos de complejidad de mensajes.
ij
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
Noción de “Confianza Transitiva”
Un usuario i tendrá una buena opinión de
aquellos otros usuarios que le hayan
proporcionado archivos no corrompidos.
Incluso, dicho peer tenderá a confiar en las
opiniones de esos mismos usuarios, debido a
que si han sido honestos con los archivos que
ellos mismos proveen deberán serlo en
cuanto a la información que reporten sobre
sus valores de confianza local.
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
ALGORITMO EIGEN TRUST
La reputación total de cada peer i viene dada por los valores de
confianza local asignados a i por otros peers, y ponderados por
las reputaciones globales de quienes los asignan.
Normalización de Valores de Confianza Local: Con la
intención de que peers malintencionados no trastornen el
sistema se asegura que  [0,1]. Valores arbitrarios no están
permitidos.
c ij 
max s ij , 0 

j
max( s ij , 0 )
Cij solo aporta valores relativos (proceso de normalización), sin
embargo, permiten efectuar el desarrollo computacional del
algoritmo sin renormalizar los valores de confianza global en
cada iteración.
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
Suma de los Valores de Confianza Local: La forma natural es
que el usuario i pregunte a sus “conocidos” acerca de sus
opiniones sobre el peer en cuestión, y en función de su confianza
en éstos dar un mayor o menor peso a esas opiniones.
t ik 


T
t  C
 
c ij c jk

ci
j
Tasa de confianza del peer i en el k en base a las opiniones de los
conocidos.
Se puede profundizar aún más y preguntar a los conocidos de
nuestros conocidos (Obtendremos una visión más completa de la
red después de muchas iteraciones “n”)

T
t  C

n

ci
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
Algoritmo Eigen Trust Distribuido
Para cada peer i {
- Primero, preguntar a los usuarios que han descargado archivos de
i sus opiniones. (tj(0)=pj)
- Mientras no converja repetir {
- Cálculo del valor de confianza global actual del peer i:
ti(k+1)=(1-a)(c(1i)t1(k)+..+c(qi)tq(k))+api
- Envía tu opinión cij y el valor de confianza global ti(k+1) a los peers de
quienes has descargado archivos.
- Espera a que tus conocidos te envíen sus valores de confianza y
opiniones actualizados.
}
}
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
Algoritmo Eigen Trust Distribuido y Seguro
- Cada peer i posee un número M de managers de resultado
- Desde que cada peer es a su vez manager de resultado, tiene un
conjunto de peers hijas (Daughter) D, para las cuales es uno de sus
managers de resultados.
- Cada peer hija proporciona su manager de resultados con el
conjunto de peers de los que ella ha tratado de descargarse
archivos.
Diagrama
Revisión de sistemas actuales
de gestión de la reputación.
Seguridad en Eigen Trust Eigen Trust (Standford)
Los peers malintencionados
pueden reportar valores de
confianza falsos.
Los managers de resultados
calculan el vector de confianza
global de un peer.
Tablas de Hash Distribuido (DHT)
Ventajas de los managers de
resultados:



Anonimato
Randomización
Redundancia
Revisión de sistemas actuales
de gestión de la reputación.
Eigen Trust (Standford)
El uso de valores de confianza en Eigen Trust:
Ayuda a aislar a los peers malintencionados (Hasta
comunidades con agrupaciones del 70% de este tipo) .
Encauza el problema de “freeloader”.
Problemas de Eigen Trust:
Los diseminadores de virus.
Los archivos corruptos.
Descargar

P2P y algoritmos para reputación