Códigos, filtros Bloom y redes superpuestas. Michael Mitzenmacher



Documentos relacionados
Introducción general a la compresión de datos multimedia

Necesidad, Ámbito y Aéreas de Aplicación: Clientes Potenciales

TEMA 2: Representación de la Información en las computadoras

Práctica 5. Curso

Tecnología IP para videovigilancia... Los últimos avances han hecho posible conectar cámaras directamente a una red de ordenadores basada en el

Seminario Electrónico de Soluciones Tecnológicas sobre Content Networking

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

CAPITULO 4 JUSTIFICACION DEL ESTUDIO. En este capítulo se presenta la justificación del estudio, supuestos y limitaciones de

WINDOWS : TERMINAL SERVER

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets

Creación de Funciones de Conducción

Práctica 5: Modulaciones digitales

Generación de números aleatorios

Sistemas Operativos. Sesión 5: Protocolos de enrutamiento vector distancia

PROTOCOLOS DE ENRUTAMIENTO

Puesto que la trama consta de 32 intervalos de tiempo iguales, la duración de cada intervalo o canal será de:

SISTEMAS DE NUMERACIÓN. Sistema decimal

Comunicaciones Digitales - Ejercicios Tema 3

CAPÍTULO 6 SIMULACIONES Y RESULTADOS


EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET

SIELOCAL. Sistema de Información Económico Local SISTEMA DE GESTIÓN DE POBLACIÓN Y CALLEJERO DIGITAL

Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i.

Qué necesito saber para tener mi sitio web en Internet?

CAPÍTULO 7 7. CONCLUSIONES

Análisis de los datos

Con estas características soportadas logramos tener todo lo necesario para implementar un flujo de trabajo para la teleradiología.

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

Plan de ahorro en costes mediante telefonía IP

Qué son los protocolos de enrutamiento Dinámico?

Capa de TRANSPORTE. Ing. José Martín Calixto Cely Original: Galo Valencia P.

.TEL Un uso innovador del DNS

CONSIDERACIONES TÉCNICAS SOBRE LOS SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD DE STORAGE NETWORKING

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ

Los servicios más comunes son como por ejemplo; el correo electrónico, la conexión remota, la transferencia de ficheros, noticias, etc.

DESCARGA DE CARPETAS DE MENSAJES DE CORREO DESDE EL WEBMAIL A PC S LOCALES

Análisis de medidas conjuntas (conjoint analysis)

MEDICION DEL TRABAJO

POSICIONAMIENTO EN LA WEB (SEM Y SEO)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Administración avanzada de paquetes. apt-proxy.

Estadísticas de uso en Internet de sistemas operativos y navegadores en junio de 2014

Tutorial: Primeros Pasos con Subversion

EFICIENCIA EN LOS SISTEMAS DE BOMBEO Y DE AIRE COMPRIMIDO

Capítulo 7: Distribuciones muestrales

Instalar y configurar W3 Total Cache

Mi Negocio en Línea. DESCRIPCIÓN y CONCEPTO DEL PRODUCTO

Vigilar grandes extensiones nunca fue tan fácil. Soluciones profesionales de análisis de vídeo

REDES INFORMATICAS: Protocolo IP

GedicoPDA: software de preventa

PDF created with pdffactory Pro trial version

Conmutación. Conmutación telefónica. Justificación y definición.

SEWERIN. Pre Localización De Fugas de Agua

Login y Password. Elección de directorios confidenciales

Técnicas empleadas. además de los discos las controladoras.

TELEVISION DIGITAL TERRESTRE

ESTIMACIÓN. puntual y por intervalo

Creación del comercio electrónico para la empresa Donegear.com. Anexo F Características de los Sistemas de Pago

Instructivo MTS: A. Como entrar al sistema de testeo? Diríjase a la siguiente dirección Web:

ing Solution La forma más efectiva de llegar a sus clientes.

Infraestructura Tecnológica. Sesión 2: Mejoras adicionales al servidor de archivos

Bajo coste, alta densidad, alta velocidad, bajo consumo de energía y alta fiabilidad.

CREACIÓN Y OPERABILIDAD DE UNA BASE DE DATOS DE ADN DISTRIBUIDA MEDIANTE EL USO DE UN SISTEMA GRID CREACIÓN DE ÁRBOLES DE SUFIJOS

Redes de Computadores I

CRECE CON INTERNET. Ahorra espacio. Comprimir archivos

by Tim Tran:

Capítulo 12: Indexación y asociación

Caso de Estudio. Diemer S.L. Mejora del Posicionamiento Web. materialmedico24.es

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS

QUIERES COMPROBAR CÓMO LAS REDES DETECTAN Y CORRIGEN ERRORES?

Introducción Subsistemas de disco inteligentes Técnicas de entrada y salida. Storage. Esteban De La Fuente Rubio SASCO. 7 de noviembre de 2013

Qué es el enrutamiento estático?

SIMULACION. Formulación de modelos: solución obtenida de manera analítica

CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA

Tema 10. Estimación Puntual.

TRANSMISION DIGITAL. PCM, Modulación por Codificación de Pulsos

Arquitectura de sistema de alta disponibilidad

GUIA DE LABORATORIO #10 Nombre de la Practica: Proxy y Filtrado web en ClearOS Laboratorio de Redes Tiempo Estimado: 2 Horas y 30 Minutos

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

Posicionamiento WEB POSICIONAMIENTO WEB GARANTIZADO

Unidad I: La capa de Red

Roles y Características

Seis Sigma. Nueva filosofía Administrativa.

Laboratorio de Procesamiento Digital de Voz Practica 4 CUANTIZACION ESCALAR, LOGARITMICA, (A)DM y (A)DPCM

1. SISTEMAS DIGITALES

Conclusiones. Particionado Consciente de los Datos

punto, es que los criterios de evaluación de las medidas antes citadas se ajustan a las medidas señaladas para la toma del indicador VTD.

INTERNET Y WEB (4º ESO)

Formatos y Compatibilidad. Años anteriores al 2005 los formatos analógicos más comunes eran:

El Modelo de Referencia OSI

Aplicaciones Distribuidas: P2P

Infraestructura Tecnológica. Sesión 11: Data center

Alfredo Hidalgo Limbrick. Inteligencia de Redes de Datos

Unidad Didáctica. Códigos Binarios

CREACIÓN O MIGRACIÓN DEL CORREO POP A IMAP PARA MOZILLA THUNDERBIRD

Jhon Jairo Padilla Aguilar, PhD.

Internet como herramientas de comunicación: El correo electrónico

Bases de datos en Excel

18 y 19 Sistemas de Archivos Distribuidos y Tarea 05

PRINCIPIOS FINAN IEROS FUNDAMENTALE DEL FED

Transcripción:

Códigos, filtros Bloom y redes superpuestas Michael Mitzenmacher 1

Hoy... Códigos de borrado Fuente digital Filtros Bloom Caché de resumen, filtros Bloom comprimidos Entrega informada de contenido Combinando los dos Otrosstrabajos recientes 2

Códigos: una idea de alto nivel Todos piensan que los datos son un flujo ordenado. Necesito los paquetes del 1 al 1.000. Utilizando códigos, los datos son como el agua: No importa qué gotas se reciben. No importa si se derraman algunas. Sólo se desea que pasen por el tubo las necesarias. Necesito 1.000 paquetes. 3

Códigos de borrado n cn n n Mensaje Codificación Recibido Mensaje Algoritmo de codificación Transmisión Algoritmo de decodificación 4

Aplicación: problema de distribución de tráiler Millones de usuarios desean descargar el tráiler de una nueva película. Un archivo de 32 megabytes a 56 Kbits/segundo. El tiempo de descarga es de 75 minutos a toda velocidad. 5

Características de las soluciones Point-to-Point Ventajas: Los usuarios pueden iniciar la descarga cuando lo deseen. Los usuarios pueden continuar la descarga perfectamente después de una interrupción temporal. La pérdida moderada de paquetes no es un problema. Desventajas: Alta carga del servidor. Alta carga de la Red. No se gradua bien (sin recursos adicionales). 6

Características de las soluciones de difusión Desventajas: Los usuarios no pueden iniciar las descargas cuando lo deseen. Los usuarios no pueden continuar las descargas a la perfección después de una interrupción temporal. La pérdida de paquetes es un problema. Ventajas: Baja carga del servidor. Baja carga de la Red. Se gradua bien. 7

Una solución de codificación: suposiciones Podemos tomar un fichero de n paquetes y codificarlos en cn paquetes codificados. El mensaje original se puede decodificar desde cualquier conjunto de n paquetes codificados. 8

Solución de codificación 5 horas Codificación Copia 2 Codificación 4 horas 3 horas Archivo 2 horas Codificación Copia 1 1 hora Transmisión Recepción del usuario 1 Recepción del usuario 2 0 horas 9

Características de la solución de codificación Los usuarios pueden inicar la descarga cuando lo deseen. Los usuarios pueden continuar la descarga a la perfección después de una interrupción temporal. La pérdida moderada de paquetes no es un problema. Baja carga del servidor - protocolo simple. Se gradua bien. Baja carga de Red. 10

Entonces, por qué no se está utilizando esta opción? Los procesos de codificación y de decodificación son lentos cuando se trata de grandes archivos, especialmente la decodificación. Por lo tanto, se necesitan códigos rápidos para utilizar un esquema de codificación. Posiblemente haya que renunciar a algo para conseguir códigos rápidos... 11

Medidas de actuación Tiempo de overhead El tiempo que lleva codificar y decodificar, expresado como múltiplo de la longitud de codificación. Eficiencia de recepción El ratio de los paquetes del mensaje y de los paquetes para codificar. El óptimo es 1. 12

Recepción eficiente Óptimo Puede decodificar a partir de cualquier n palabras de codificación. La eficiencia de recepción es 1. Relajación Decodificar a partir de cualquier (1+ε) n palabras de codificación. La eficiencia de recepción es 1/(1+ε). 13

Parámetros del código Mensaje n cn Codificación (1+ε)n La eficiencia de recepción es 1/(1+ε) 14

Trabajo anterior La eficiencia de recepción es 1. Reed-Solomon estándar El tiempo de overhead es el número de paquetes redundantes. Utiliza operaciones de campo finitas. Basado en la transformación rápida de Fourier El tiempo de overhead es ln2 n operaciones de campo. La eficiencia de recepción es 1/(1+ε). Ecuaciones aleatorias de diferentes tamaños El tiempo de overhead es ln(1/ε)/ε. 15

Actuación del código Tornado La eficiencia de recepción es 1/(1+ε). El tiempo de overhead es ln(1/ε). Sencillo, rápido y práctico. 16

Códigos: otras aplicaciones? Utilizar códigos y datos es tan claro como el agua. Qué más se puede hacer con esta idea? Ejemplo -- descargas paralelas: Obtenga datos de varias fuentes, sin necesidad de coordinación. 17

Mejoras más recientes Problema práctico con el código Tornado: longitud de codificación Se debe decidir a priori qué es correcto. El tiempo/la memoria de codificación/decodificación son proporcionales a la longitud codificada. Transformada de Luby: Codificación producida instantáneamente -- sin longitud de codificación. El tiempo/la memoria de codificación/decodificación son proporcionales a la longitud del mensaje. 18

Solución de codificación 5 horas 4 horas 3 horas Archivo Codificación 2 horas 1 hora Transmisión Recepción del usuario 1 Recepción del usuario 2 19 0 horas

Filtros Bloom: una idea de alto nivel Todo el mundo piensa que necesita saber exactamente lo que tienen otros. Deme una lista de lo que posee. Las listas son largas y poco flexibles. Si se utilizan filtros Bloom, se pueden conseguir listas aproximadas. Deme información para que pueda averiguar qué posee. 20

Problema de búsqueda Dado un conjunto S = {x 1,x 2,x 3, x n } en un universo U, se quiere responder a preguntas del tipo: Is y S. Ejemplo: un conjunto de URLs del universo de todas las series de URL posibles. El filtro Bloom proporciona una respuesta en: Tiempo "constante" (tiempo para numerar). Cantidad pequeña de espacio. Pero con alguna probabilidad de error. 21

Filtros Bloom B Comience con una serie de m bits ocupados por ceros. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Numere cada elemento x j de S k veces. Si Hi(xj) = a, defina B[a] = 1. B 0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0 Para comprobar si y está en S, compruebe B en H i (y). Todos los valores k deben ser 1. B 0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0 Es posible tener un falso positivo; todos los valores k son 1, pero y no está en S. B 0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0 22

Errores Hipótesis: tenemos buenas funciones hash que parecen aleatorias. Dados m bits para el filtro y n elementos, elija un número k de funciones hash para minimizar los falsos positivos: kn kn / p= Pr[ celda vacía] = (1 1/ m) e Sea Sea Conforme va aumentando k existen más oportunidades de encontrar un 0, pero más de encontrar unos en la serie. Encuentre el óptimo en k = (ln 2)m/n por medio del cálculo. k m kn/ m f = Pr[falso positivo] = (1 p) (1 e ) 23 k

Ejemplo 0,1 Tasa de falso positivo 0,09 0,08 0,07 0,06 0,05 0,04 0,03 0,02 Opt k = 8ln2 = 5,45... m/n = 8 0,01 0 0 1 2 3 4 5 6 7 8 9 10 Funciones hash 24

Filtros Bloom: sistemas distribuidos Caché web 1 Caché web 2 Caché web 3 Caché web 4 Caché web 5 Caché web 6 Enviar filtros Bloom de las URL. Los falsos positivos no causan mucho problema. De todas formas, reciben errores de los cambios de caché. 25

Compensaciones Tres parámetros. Tamaño m/n : bits por elemento. Tiempo k : número de funciones hash. Error f : probabilidad de falso positivo. 26

Compresión Compresión: el filtro Bloom no es sólo una estructura de datos, también es un mensaje. Si el filtro Bloom es un mensaje, merece la pena comprimirlo. La compresión de vectores de bits es fácil. La codificación aritmética se aproxima a la entropía. Se pueden comprimir los filtros Bloom? 27

Optimización y, después, compresión Optimizar para minimizar el falso positivo. p = Pr[ celda vacía] En k = m (ln 2) /n, p = 1/2. El filtro Bloom parece una serie aleatoria. No se puede comprimir. = (1 1/ m) k kn e kn / m kn / m f = Pr[falso positivo] = (1 p) (1 e ) k = ( m ln 2) / n es óptimo k 28

Compensaciones Con la compresión, cuatro parámetros. Tamaño comprimido (de transmisión) z/n : bits por elemento Tamaño comprimido (de almacenamiento) m/n : bits por elemento Tiempo k : número de funciones hash. Error f : probabilidad de falso positivo. 29

Ayuda en algo la compresión? Afirmación: factor limitador del coste de la transmisión. Las actualizaciones tienen lugar frecuentemente. La memoria de la máquina es barata. Es posible reducir la tasa de falso positivo... aumentando el tamaño de descompresión (almacenamiento)? manteniendo constante el coste de la transmisión? 30

Errores: filtro comprimido Hipótesis: compresor óptimo, z = mh(p). H(p) es una función de entropía; obtenida de forma óptima. H(p) bits comprimidos por bit de la tabla original. Codificación aritmética cercana al óptimo. Optimización: dados z bits por filtro comprimido y n elementos, elija el tamaño de la tabla m y el número de funciones hash k para minimizar f. p e kn / m ; f (1 e kn / m Óptimo obtenido a partir del cálculo. ) k ; z mh ( p) 31

Ejemplo Tasa de falso positivo 0,1 0,09 0,08 0,07 0,06 0,05 0,04 0,03 0,02 Original Comprimido z/n = 8 0,01 0 0 1 2 3 4 5 6 7 8 9 10 Funciones hash 32

Resultados En k = m (ln 2) /n, los falsos positivos se maximizan con un filtro Bloom comprimido. El mejor caso sin compresión es el peor caso con compresión; la compresión es siempre de ayuda. Beneficio indirecto: se utilizan menos funciones hash con la compresión; posible aumento de la velocidad. 33

Bits de serie por elemento m/n 8 14 92 Bits de trans. por elemento z/n 8 7.923 7.923 Funciones hash k 6 2 1 Tasa de falso positivo f 0.0216 0.0177 0.0108 Bits de serie por elemento m/n 16 28 48 Bits de trans. por elemento z/n 16 15.846 15.829 Funciones hash k 11 4 3 Tasa de falso positivo f 4.59E-04 3.14E-04 2.22E-04 Ejemplos para tamaño de transmisión fijo. 20-50% de tasa de falso positivo. Simulaciones muy cercanas. Encabezado pequeño, variación en la compresión. 34

Bits de serie por elemento m/n 8 12.6 46 Bits de trans. por elemento z/n 8 7.582 6.891 Funciones hash k 6 2 1 Tasa de falso positivo f 0.0216 0.0216 0.0215 Bits de serie por elemento m/n 16 37.5 93 Bits de trans. por elemento z/n 16 14.666 13.815 Funciones hash k 11 3 2 Tasa de falso positivo f 4.59E-04 4.54E-04 4.53E-04 Ejemplos con tasa fija de probabilidad de falsos. 5-15% compresión por tamaño de transmisión. Se corresponde con las simulaciones. 35

Filtros Bloom: otras aplicaciones? Búsqueda de objetos Oceanstore: ubicación de objetos Resumen de servicios de la región geográfica Resúmenes de datos IP Traceback Métodos de reconciliación En breve... 36

Reuniendo toda la información: entrega informada de contenido en las redes superpuestas Para aparecer en SIGCOMM 2002. Trabajo conjunto con John Byers, Jeff Considine, Stan Rost. 37

Entrega informada: idea básica La multidifusión fiable utiliza redes en forma de árbol. En una red superpuesta/p2p, es posible que existan otras rutas de ancho de banda/comunicación disponibles. Pero se necesita coordinación para utilizarla inteligentemente. 38

Aplicación: el problema de la distribución de películas Millones de usuarios desean descargar una nueva película. O una CDN desea poblar miles de servidores con una nueva película para aquellos usuarios. Gran archivo: para personas con una gran cantidad de ancho de banda. La gente comenzará a utilizar redes P2P. 39

Ejemplo de motivación 40

Nuestro argumento En las CDN/P2P con un amplio ancho de banda, las conexiones adicionales favorecerán el rendimiento Si son inteligentes para colaborar en cómo utilizar el ancho de banda Si suponemos que un par de sistemas finales no han recibido exactamente el mismo contenido, podrían reconciliar las diferencias en el contenido recibido. 41

Es un mundo muy loco Retos Internet nativo Asincronía de conexiones y desconexiones Heterogeneidad de la velocidad y tasas de pérdida Población enorme de clientes Sesiones anticipables Fugacidad de hosts, routers y enlaces Superposiciones adaptativas A la hora de reconfigurar topologías, hacer énfasis en algunos de los puntos anteriores 42

La fluidez ambiental requiere paradigmas flexibles de contenido Hay que estar preparado para reconfigurar frecuentemente Es necesaria una migración escalable, un apoyo anticipado Fuente digital al rescate Sin estado: los servidores pueden producir codificados continuamente Invariable con el tiempo en la codificación sin memoria Tolerancia a las diferencias entre clientes Inclusión de fuentes 43

La fluidez ambiental genera oportunidades Oportunidades para la reconciliación Discrepancias significativas entre conjuntos de pares activos que reciben un contenido idéntico El receptor con la tasa de transferencia más alta o que haya llegado antes tendrá un mayor contenido Los receptores con pérdidas no correlativas tendrán espacios en blanco en las diferentes partes de sus conjuntos activos Descargas paralelas Conexiones efímeras de redes adaptativas superpuestas 44

Problema de la reconciliación Con la ordenación estándar de secuencias, la reconciliación no es (necesariamente) un problema. El empleo de la codificación, debe reconciliar más de un universo de símbolos desordenado y potencialmente amplio (empleando los códigos mejorados de Luby). Cómo se pueden reconciliar pares con contenido parcial de manera informada? 45

Reconciliación aproximada con filtros Bloom Envíe un filtro Bloom (comprimido) de paquetes codificados almacenados. El replicante puede comenzar a enviar paquetes codificados que no se tienen. Los falsos positivos no son tan importantes. La codificación ya produce redundancia. Se desea recibir paquetes útiles tan rápido como sea posible. Los filtros Bloom requieren un número reducido de paquetes. 46

Trabajo extra Basta estimación de una superposición en un paquete. Utilización de muestreo. Utilización de muestras independientes min-wise. Árboles de reconciliación aproximada. Estructura de datos mejorada para el caso en el que el número de discrepancias sea pequeño. Basado también en los filtros Bloom. Recodificación. Combinación de símbolos codificados. 47

Reconciliación: otras aplicaciones Reconciliación aproximada frente a reconciliación exacta Complejidad de la comunicación. Usos prácticos: Bases de datos, equipos portátiles, etc. 48

Relaciones públicas: investigaciones más recientes (1) Un modelo dinámico para el tamaño de los archivos y las distribuciones dobles de Pareto Un modelo generativo que explica la forma de los archivos en los sistemas de archivos que son observados de forma empírica. Cuerpo logarítmico normal, "cola" de Pareto. Combina modelos multiplicativos de la teoría de la probabilidad con modelos de grafos aleatorios similares a los trabajos recientes de grafos en la Red. 49

Relaciones públicas: investigaciones más recientes (2) Balance de carga con memoria Tire n bolas en n papeleras. De forma aleatoria: la carga máxima es log n / log log n La mejor de 2 opciones: log log n / log 2 Suponga que consigue "recordar" cuál fue la mejor posibilidad del último lanzamiento. Una elección aleatoria, una memoria: log log n / 2 log τ Las variaciones en cola también se analizan. 50

Relaciones públicas: investigación más reciente (3) Códigos de verificación Códigos de control de calidad de baja densidad para amplios alfabetos: ej., integrales de 32 bits y errores aleatorios. Códigos sencillos y eficientes. Tiempo lineal. Basado en los XO. Rendimiento: códigos Reed-Solomon mejores que en el peor caso. Extendido para modelos de error adicionales (aleatorización del código). 51

Conclusiones Estoy interesado en los problemas de la Red. Existen muchos problemas interesantes: Técnicas nuevas, algoritmos, estructuras de datos Nuevos análisis Buscando la forma correcta de aplicar las ideas que se conocen También me gustaría trabajar con estudiantes del MIT. 52