Page 1
1
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
Aplicaciones y Servicios Avanzados
InternetCurso de Doctorado
2007-2008
Encarna Pastor <[email protected] >Dpto. Ingeniería de Sistemas Telemáticos
Universidad Politécnica de Madrid
2 ditditUPM© DIT-UPM, 2008
Índice global de temas de investigación (1)
� Servicios a gran escala� Distribución de contenidos
─ Modelos, arquitectura─ CDNs: encaminamiento de peticiones─ P2p y CDNs─ Distribución de video, iptv
� Evolución de Internet� Estudio y evaluación de nuevas propuestas de arquitecturas� El impacto de TCP
─ Estudio de propuestas actuales sobre TCP─ Necesidades de aplicaciones móviles─ TCP sobre UMTS
� DNS� Web
─ Evolución web semántica
Page 2
2
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
Sistemas de entrega y distribución de contenidos.
Nuevos paradigmas.
4 ditditUPM© DIT-UPM, 2008
Entrega de contenidos clásica: web y HTTP
� Arquitectura cliente/servidor�petición/respuesta sobre conexiones TCP
� Los mensajes HTTP atraviesan largos caminos en la red…�mecanismos para mejora de prestaciones!!
InternetInternet
Cliente web Servidor web
Page 3
3
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
5 ditditUPM© DIT-UPM, 2008
Redesbackbone
ISP
Organización de Internet
ISP
ISPISP
ISP ISP
LAN LANLAN
NAP
Dial-up
DSL
NAP
CableHead Ends
CellCell
Cell
Satélite
6 ditditUPM© DIT-UPM, 2008
Caminos en Internet
Tier-2 ISP
Tier-2 ISP
NAP
ISP Tier 1ISP Tier 1
ISP Tier 1
ISP Tier 2ISP Tier 2
ISP Tier 2
ISP Tier 2ISP Tier 2
ISP Tier 3ISP local
ISP local
ISP localISP local
ISP local
� Un paquete puede atravesar muchas redes
Page 4
4
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
7 ditditUPM© DIT-UPM, 2008
Sistemas de entrega de contenidos
� Objetivo: mejora de prestaciones�acceso a contenidos independientemente de
su ubicación en la red�proxies, réplicas, distribución, redirección, …�algo en común: protocolo HTTP
� Sistemas de distribución y entrega de contenidos gestionados por:�Proveedores de servicios Internet�Proveedores de contenidos�Usuarios
8 ditditUPM© DIT-UPM, 2008
Índice
� Sistemas de distribución y entrega de contenidos gestionados por:�Proveedores de servicios Internet
─ Caché web, proxy caché
�Proveedores de contenidos─ Granjas de servidores, mirrors─ Redes de distribución de contenidos (CDN)
�Usuarios─ Redes peer-to-peer (P2P)
Page 5
5
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
9 ditditUPM© DIT-UPM, 2008
Índice
� Sistemas de distribución y entrega de contenidos gestionados por:�Proveedores de servicios Internet
─ Caché web, proxy caché
�Proveedores de contenidos─ Granjas de servidores, mirrors─ Redes de distribución de contenidos (CDN)
�Usuarios─ Redes peer-to-peer (P2P)
10 ditditUPM© DIT-UPM, 2008
Caché web: servidor proxy
Objetivo: disminuir tráfico y retardos, enviando objetos al cliente sin involucrar al servidor origen.
Servidor Proxy:� Guarda copias de páginas
recientemente solicitadas
cliente
http request
http request
http response
http response
servidorweb
cliente
servidorproxy
Page 6
6
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
11 ditditUPM© DIT-UPM, 2008
Caché web
� El proxy caché está cercanoal cliente�en su misma red
corporativa�en la entrada a su ISP
─ interception proxies!� Menor tiempo de respuesta
�QoS� Disminuye el tráfico que se
produciría hacia servidoresdistantes�Ahorro de costes
servidoresweb
Internet
redcorporativa 10 Mbps LAN
enlace de 1.5 Mbps
caché/proxyde la organización
12 ditditUPM© DIT-UPM, 2008
Caché web cooperativas
� Múltiples cachés web�caché cooperativa� topología jerárquica�protocolo squid
� Árbol de distribución de contenidos
Usuarios
Caché Institucionales
Caché
Regionales
Caché Nacional (Raíz)
Servidor
Web
INTERNETINTERNET Jerárquica
Page 7
7
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
13 ditditUPM© DIT-UPM, 2008
Índice
� Sistemas de distribución y entrega de contenidos gestionados por:�Proveedores de servicios Internet
─ Caché web, proxy caché
�Proveedores de contenidos─ Granjas de servidores, mirrors─ Redes de distribución de contenidos (CDN)
�Usuarios─ Redes peer-to-peer (P2P)
14 ditditUPM© DIT-UPM, 2008
Granjas de servidores
� Permiten crear potentes servidores virtuales a base de unir varios servidores físicos:
� Ventajas:� Transparente para los clientes (dirección IP virtual)� Los servidores están replicados� Balanceo de carga, comprobación de disponibilidad de servidores
ClientesClientesServidores Servidores webweb
reales reales (Server (Server FarmFarm ))
Servidor VirtualServidor Virtual
Red IPRed IPConmutador Conmutador
Nivel 4Nivel 4
DirecciDirecci óón n IP virtualIP virtual
Page 8
8
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
15 ditditUPM© DIT-UPM, 2008
Mirrors
� Copias de servidores (mirrors) instaladas en áreas de la red geográficamente alejadas.�Sincronización por FTP o rsync
� Redirección a veces automática�cookies�preferred language del cliente�Algunos productos comerciales hacen
balanceo de carga (según métricas de la red)
16 ditditUPM© DIT-UPM, 2008
Redes de distribución de contenidos (CDNs)
Distribución Entrega
Ej.: Akamai
Page 9
9
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
17 ditditUPM© DIT-UPM, 2008
Elementos de una CDN
Servidor
Web
Cliente
Servidor
Sustituto
Servidor
Sustituto
Servidor
SustitutoServidor
Sustituto
Servidor
Sustituto
Sistema de Distribución Sistema de
Tarificación
Sistema de Encaminamiento CDN
INTERNET
18 ditditUPM© DIT-UPM, 2008
CDN – Aspectos de diseño
� Mecanismos para distribuir el contenido sobre los servidores sustitutos.
� Políticas de distribución de contenidos� completos o parciales
� Mecanismos para encaminar a los clientes hacia el mejor servidor CDN� Basado en DNS, a nivel de transporte, o de aplicación
� Selección del mejor servidor CDN� Métricas utilizadas: estáticas, estadísticas o dinámicas
Page 10
10
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
19 ditditUPM© DIT-UPM, 2008
Sistemas Caché web vs CDNs
Sí permite que el proveedor de contenidos mantenga el control sobre las copias de su contenido.
No permite que el proveedor de contenidos mantenga el control sobre las copias de su contenido.
Beneficia tanto a los proveedoresde contenidos como a los usuarios.
Beneficia más a los usuarios e ISPs que a los proveedores de contenidos.
Opera Pro-activamente.Opera Re-activamente.
El Proveedor de Contenidos lo usapara incrementar la QoS.
El ISP lo usa para reducir el consumo de ancho de banda.
CDNCaché web
20 ditditUPM© DIT-UPM, 2008
Índice
� Sistemas de distribución y entrega de contenidos gestionados por:�Proveedores de servicios Internet
─ Caché web, proxy caché
�Proveedores de contenidos─ Granjas de servidores, mirrors─ Redes de distribución de contenidos (CDN)
�Usuarios─ Redes peer-to-peer (P2P)
Page 11
11
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
21 ditditUPM© DIT-UPM, 2008
Peer to peer (P2P)
� Paradigma de distribución de contenidos� Recursos en la periferia de Internet� Peers:
─ Sistemas finales, conectividad intermitente─ Autonomía, sin intervención de terceras partes
� Cooperan: ─ Comparten recursos: contenidos, ciclos de CPU,
almacenamiento, …─ A través de protocols para encaminamiento,
réplicas, etc. sobre redes superpuestas (overlay networks)
� Funciones: ─ Compartición de ficheros, procesamiento
distribuido, distribución de contenidos, comunicación, …
22 ditditUPM© DIT-UPM, 2008
Ejemplos de P2P
� Compartición de ficheros� Gnutella, Kazaa, eMule, Napster, …
� Compartición de ciclos de CPU� SETI@home, Gnome@home, …
� Sistemas de ficheros y almacenamiento distribuido� OceanStore, CFS, Freenet, Farsite, …
� Media streaming y distribución de contenidos� PROMISE, SplitStream, CoopNet, PeerCast, Bullet,
Zigzag, NICE, …� Comunicación
� Skype, mensajería instantánea, …
Page 12
12
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
23 ditditUPM© DIT-UPM, 2008
P2P: directorio centralizado
� Diseño original de Napster�Shawn Fanning�Comienza a finales 90’s�Fin en 2001
� Problemas:�un punto único de fallo�cuello de botella en
prestaciones
Servidorcentral
peers1
1
1
12
3
24 ditditUPM© DIT-UPM, 2008
P2P: solución distribuida
� Enfoque de Gnutella�Justin Frankel y Tom
Pepper, creadores de WinAmp (2000)
� Se utiliza un nodo de “bootstrap” para conocera los peers
� Envío de consulta a los vecinos�query flooding
� El peer que tiene el objetorequerido, envía un mensaje al peer origen.
join
Page 13
13
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
25 ditditUPM© DIT-UPM, 2008
P2P: directorio descentralizado
� Enfoque seguido porKaZaA/FastTrack�Niklas Zennstrom y
Janus Friis, quien ha creado Skype
� El líder de grupoconoce el contenido de todos los peersmiembros del grupo
� Los peers consultan a su líder y éste puedeconsultar a otros líderesde grupo
ordinary peer
group-leader peer
neighoring relationshipsin overlay network
26 ditditUPM© DIT-UPM, 2008
P2P vs Grid
� PCs con capacidady conectividad limitada
� Muy diversasplataformas y pocofiables
� Clusters de máquinaspotentes y fiables
� Conectadas medianteredes altas prestaciones
� Instrumentosespecializados
Comparticiónde recursos
� Mayoritariamenteanónimos
� Intercambio de ficheros, otrasemergentes
� Comunidades yaestablecidas (científicos)
� Resolución de problemas que requierenalta capacidad de cálculo
Comunidad y aplicaciones
P2PGrid
Page 14
14
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
27 ditditUPM© DIT-UPM, 2008
P2P vs Grid
Simple: eMule, SETI@Home
� Sofisticado: Globus, CondorSoftware
� Servicios limitados: búsqueda de recursos
� Confianza muylimitada entremiembros
� Sofisticados: autenticación, planificación, búsqueda de recursos, control de acceso
� Confianza entremiembros
Servicios
� Cientos de miles a millones
� Centenares a miles Escalabilidaddel sistema
P2PGrid
28 ditditUPM© DIT-UPM, 2008
¿Qué es nuevo en P2P?
� No es nuevo el concepto:� Arquitectura distribuida� Compartición de recursos� Gestión de los nodos (join/leave/fail)� Comunicación de grupo� Gestión de un estado distribuido
� Son nuevas las características de� Nodos (peers): heterogéneos, no fiables, autónomos,…� Sistema: escala, topología, seguridad, coste, …
Page 15
15
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
29 ditditUPM© DIT-UPM, 2008
¿Qué es nuevo en P2P?
� Se necesita diseñar nuevos algoritmos y protocolos que escalen a (posiblemente) millones de nodos con nuevas características
� ¿Por qué ahora el boom de P2P?�Muchos recursos en la periferia de la red
infrautilizados�Conectividad e infraestructura de red
� El tráfico P2P ha superado al de web (> 50%)!
30 ditditUPM© DIT-UPM, 2008
Redes superpuestas (overlays)
� Un nivel abstracto sobre la arquitectura TCP/IP� Conexiones tcp entre nodos de la periferia
�Mantenimiento de vecindades�Reconfiguración
� Posibilidad de innovaciones sin modificar redesactuales
Page 16
16
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
31 ditditUPM© DIT-UPM, 2008
Redes superpuestas (overlays)
� Ejemplos:�DNS�Routers BGP�CDNs�P2P
32 ditditUPM© DIT-UPM, 2008
Conclusiones
� Una nueva Internet�Con un nuevo nivel (complejo)
superpuesto─ En la periferia de la red─ Que redefine nombres y hace
encaminamiento y multicast─ Almacena y sirve datos de forma
completamente distribuida�Flexibilidad de diseño de
aplicaciones� ¿Y el principio end-to-end?
IP
Applications
AccessTechnologies
MiddlewareServices
NetworkTechnology
Page 17
17
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
Arquitectura de Internet
34 ditditUPM© DIT-UPM, 2008
Arquitectura
� Principios abstractos que guían el diseño técnico de una red, especialmente la ingeniería de sus algoritmos y protocolos�Nombres, direcciones, encaminamiento
─ ¿Qué entidades tienen nombre?�Modularización, torre de protocolos�Reparto de capacidad, equidad, control de
congestión�Seguridad y gestión�QoS
� El papel de una arquitectura es asegurar consistencia y coherencia y representa una base para toma de decisiones
Page 18
18
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
35 ditditUPM© DIT-UPM, 2008
Evolución de Internet (I)• 1961-1972: conmutación de paquetes, NCP
NUCLEO ARPAnet
SFSFSFSFSFSF
SFSF
36 ditditUPM© DIT-UPM, 2008
Evolución de Internet (II)
NUCLEO ARPAnet
RR
RR RR
LANLAN
LANLANLANLAN
• 1972-1980: interconexión de redes
Diseño de InternetCerf, Kahn (1974):
� autonomía� best effort� routers sin estado� control
descentralizadoEnd-to-end argument
SFSF
Page 19
19
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
37 ditditUPM© DIT-UPM, 2008
NUCLEO ARPAnet
R3 R2
R4
R1
Evolución de Internet (III)• 1980-1990: proliferación de redes, problemas de escala
Red xRed y
�Subnetting
�CIDR
�ASs
�DNS
�TCP, AIMD
38 ditditUPM© DIT-UPM, 2008
Evolución de Internet (IV)
NAPBackbone
Backbone
PSIregional
PSIregional
PSIlocal
Hacia una topología jerárquica
- Network AccessPoints (NAP)
• 90´s: comercialización, web
PSIregional
PSIlocal
PSIlocal
Page 20
20
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
39 ditditUPM© DIT-UPM, 2008
Arquitectura de Internet. Resumen.
� Inicialmente:�Red de paquetes no orientada a conexión�Funcionalidad en la periferia de la red (robustez)�Servicios extremo a extremo en el nivel de
transporte o aplicación─ Fiable y no fiable (datagrama)
�Direcciones numéricas con jerarquía simple─ Asignadas a interfaces físicas con la red
�Redes heterogéneas, diversidad de tecnologías� Evolución en los 80:
�Subnetting, ASs, DNS (jerarquía, escalabilidad)� IP multicast (aunque no desplegado…)�TCP AIMD, control de congestión
40 ditditUPM© DIT-UPM, 2008
Arquitectura de Internet.End-to-end arguments
� Ningún mecanismo debe implementarse en la red si puede implementarse en los sistemas finales.
� El núcleo de la red debe proporcionar un servicio genérico, no debe adaptarse a ninguna aplicación.�Innovación�Fiabilidad y robustez�Transparencia
IP
Applications
AccessTechnologies
MiddlewareServices
NetworkTechnology
Page 21
21
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
41 ditditUPM© DIT-UPM, 2008
Arquitectura de Internet.Alteración de los principios end-to-end
� Pérdida de confianza entre sistemas finales, pérdida de transparencia�Firewalls, VPNs
� Control por parte de ISPs, pérdida de transparencia�Filtrado a nivel de aplicación, redirecciones, etc.
� Observación de flujos de datos�Sitios de captura en la red
� Mejora de prestaciones de aplicaciones como, p.e., web�Caché web, mirrors, redirecciones DNS, servidores
CDN para VoD, etc.� Simplificación del despliegue de aplicaciones en los SF
�Servidores de aplicaciones
42 ditditUPM© DIT-UPM, 2008
Últimas extensiones
� Más consistentes con la arquitectura original:� IntServ (Integrated Services)�DiffServ (Differentiated Services)� IPSEC
� Nada consistentes:�Firewalls� IP móvil�NAT (Network Address Translator)�VPNs�MPLS�Caché webs� ...
Page 22
22
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
43 ditditUPM© DIT-UPM, 2008
Interacciones
� NAT es incompatible con IPSEC� Las cachés web transparentes son
incompatibles con SSL o IPSEC� Herramientas como traceroute dejan de ser
útiles debido a nodos intermediarios� Es difícil desplegar algunas nuevas aplicaciones
debido a los firewalls�a veces se usan túneles sobre otros
protocolos para lograr atravesarlos
44 ditditUPM© DIT-UPM, 2008
Diseño de aplicaciones. Tendencias.End-to-end a alto nivel
� Componentes “intermediarios” entre los extremos�Requisito de usuarios u operadores�Privacidad, mejora de prestaciones,…
─ Anonimizadores, servidores filtros de correo, cachés de contenidos, …
� Aplicaciones complejas�Necesitan componentes adicionales como parte
de la aplicación distribuida─ Transacciones que involucran a tres o más
partes, obtención de credenciales, votación electrónica, …
Page 23
23
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
45 ditditUPM© DIT-UPM, 2008
Open Pluggable Edge Services (OPES)
� OPES, IETF WG� Entidades de aplicación entre un cliente y un servidor
� Servidores cooperativos (opes substitutos y delegados)� Personalización de servicios
─ Control de contenidos, privilegios de acceso, anonimizadores, políticas de organizaciones, traducción de idiomas, adaptación de formatos
� Redirecciones─ Equilibrio de carga
� Monitorización─ Virus, anti-spam, tarificación
46 ditditUPM© DIT-UPM, 2008
Arquitectura. Conclusión
� Investigación en nuevas arquitecturas, conceptos, fundamentos teóricos
� Requisitos� Interconexión de redes, robustez, heterogeneidad,
gestión distribuida, facilidad de conexión�Adaptabilidad a modelos de negocio, regulatorios,
políticas de operadores, usuarios, etc.�Movilidad, autoconfiguración, soporte para
asignación de recursos flexible �Reparto de capacidad�Largos retardos de propagación, ...
Page 24
24
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
47 ditditUPM© DIT-UPM, 2008
Propuestas de nuevas arquitecturas (i)
� Internet Virtual (USC/ISI)�Versión virtual de la actual Internet
─ red superpuesta (overlay, RON)─ host y routers virtuales se interconectan a través
de túneles─ se basa en el paradigma de memoria virtual
Base Net
Star VN
Ring VN
48 ditditUPM© DIT-UPM, 2008
Propuestas de nuevas arquitecturas (ii)
� Plutarch (U. Cambridge, UK)�Redes plurales
─ Internet, una más─ Contexto: hosts, routers, switches, enlaces, ...─ Funciones intersticiales: establecen
correspondencia entre las funcionalidades encapsuladas en los contextos
Sensornetwork
IPv6network
IPv4network
NAT LAN
Interstitial function
Context
Page 25
25
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
49 ditditUPM© DIT-UPM, 2008
Propuestas de nuevas arquitecturas (iii)
� FARA : Forwarding directive, Association, and Rendezvous Architecture (MIT, USC ISI, NewArchProject).�Cleanly decouple end-system identity from network
layer forwarding functions─ The familiar location/identity split─ Support general mobility (includes multihoming)
�Avoid the need for a new global namespace for identity
�Provide E2E security with a range of assurance levels�Generalize the architecture along several dimensions�Support diverse naming & forwarding mechanisms
Impacto de TCP sobre redesmóviles
Page 26
26
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
51 ditditUPM© DIT-UPM, 2008
Redes móviles y arquitectura TCP/IP
� Redes móviles celulares: ¿impacto en el servicio ofrecido a las aplicaciones? ¿en otros protocolos?
� Teóricamente el impacto debería ser mínimo…�El modelo de servicio no cambia�TCP y UDP protocolos de transporte
� … pero puede haber pérdida de prestaciones� Mayores retardos (retransmisiones en el nivel de enlace) y
variabilidad (jitter)� Pérdida de paquetes (descarte por errores)� Traspasos (handover), falta de cobertura� TCP interpreta pérdidas como congestión, disminuyendo
tasa de envío� Ancho de banda limitado� El terminal móvil
52 ditditUPM© DIT-UPM, 2008
Características básicas de TCP
� Envío continuo�ACKs: segmento a segmento, retardados (1
paquete o 500 ms. típ.), duplicados (RX fuerade orden)
� Control de flujo soportado por la ventana�Caudal <= W (bits) / RTT(s) < C
─Caudal = tasa media de envío�Tamaño ideal de ventana: W(bits) = C (bps) *
RTT(s)
Page 27
27
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
53 ditditUPM© DIT-UPM, 2008
Errores y Control de Congestión
� Visión de TCP:�Un paquete se pierde SII hay congestión�Detección de pérdidas por temporizador o ACKs
duplicados� Característica de redes móviles
�Pérdidas frecuentes por errores de transmisión y/o “Jitter” alto
� TCP no puede distinguir entre pérdidas de paquetes debidas a congestión y aquellas debidas a errores o retardos.�Reduce innecesariamente la ventana de congestión…�Volviendo en ocasiones a la fase de arranque lento…
� Pérdida de prestaciones!
54 ditditUPM© DIT-UPM, 2008
Comportamiento ideal
� Red ideal: los errores de transmisión permanecen ocultos al emisor, mediante una recuperación transparente y eficiente en el nivel de enlace.
� TCP ideal: el emisor sólo retransmite un paquete que se ha perdido debido a errores de transmisión, sin tomar ninguna acciónrelacionada con el control de congestion.
� Los esquemas propuestos generalmente tratan de aproximarse a uno de estos dos ideales.
Page 28
28
Aplicaciones y Servicios
Avanzados Internet
Curso 07/08
Doctorado
55 ditditUPM© DIT-UPM, 2008
Propuestas modificación TCP
� Conexiones divididas (split connection)� Se abandona la semántica extremo a extremo de TCP:
� Conexión TCP en el tramo inalámbrico.� Conexión TCP en el tramo cableado.
� La división se hace en el “nodo intermedio”: estación base.
� Se optimiza independientemente cada conexión
Estación base Terminal móvilTerminal fijo