1 / 31

Sistemas Distribuidos

Sistemas Distribuidos. Servicios de nombres. Introducción. Propósito de los nombres  Compartir objetos (=recursos)  Ejemplo: archivos, usuarios, servicios, …  Identificadores únicos  Independencia de la localización  Comunicación

Télécharger la présentation

Sistemas Distribuidos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sistemas Distribuidos Servicios de nombres

  2. Introducción • Propósito de los nombres  Compartir objetos (=recursos)  Ejemplo: archivos, usuarios, servicios, …  Identificadores únicos  Independencia de la localización  Comunicación • Alternativa a los nombres: Atributos descriptivos

  3. Introducción • Los nombres pueden ser leíbles por el humano, por ejemplo: aretha.informatik.uni-siegen.de • O, pueden ser identificadores del sistema elegidos para una manipulación y almacenamiento eficientes. Ejemplo: 141.99.92.8

  4. Introducción URL http://www.cdk3.net:8888/WebExamples/earth.html Búsqueda DNS Identificador del recurso(número IP, número de puerto, ruta) 55.55.55.55 8888 WebExamples/earth.html Servidor Web Dirección de red Archivo 2:60:8c:2:b0:5a Conector

  5. Uso de nombres • Binding de nombres:Asociar nombre-objeto Ejemplos: usuarios (nombres reales, nombre de login, direcciones de email), computadoras (nombres de host), servicios (de archivos, de impresión)  O más correcto: asociar nombre-atributo. Ejemplo: DNS asocia aretha.informatik.uni-siegen.de con 141.99.92.8. • Resolución de nombres: Hallar el objeto referenciado por un nombre

  6. Servicio de nombres • Almacena un conjunto de contextos de nombres  Bindingsentre nombres textuales y atributos de objetos • Principal servicio: Resolución de nombres • Otros servicios:  Crear nuevos bindings  Borrar bindings  Listar nombres válidos  Añadir/borrar contextos  Manejar aliases Actualizar bindings

  7. Servicio de nombres • Motivación para separarlo de otros servicios  Unificación  conveniente para diferentes servicios que usan el mismo esquema de nombres (ej.: URLs)  Integración  Puede ser necesario compartir objetos creados en diferentes dominios  Servicio de nombres común/separado idéntica convención de nombres  integración más simple

  8. Requerimientos del servicio de nombres • Escalabilidad • Largo tiempo de vida • Alta disponibilidad • Aislación de fallas • Tolerancia a la desconfianza

  9. Espacio de nombres • Conjunto de todos los nombres válidos usados en un cierto contexto. Por ej.: todas las URLs válidas en WWW • Pueden ser descriptos usando una gramática generativa. Por ej.: BNF para URLs • Estructura interna  Conjunto plano de identificadores numéricos o simbólicos  Jerárquico representando la posición. Por ej.: sistema de archivos de UNIX  Jerárquico representando estructura organizacional. Por ej.:dominios de Internet

  10. Espacio de nombres • Potencialmente infinito • Aliases  En general permite que un nombre más conveniente sustituya uno más complicado • Dominio de elección de nombres  Espacio de nombres para el cual existe una única autoridad administrativa que asigne nombres dentro de él

  11. Atributos almacenados porun servicio de nombres Tipo Valor Usuario <login name, computadora donde se entregan los mail, nro. TE., etc.> Servicio <dirección, versión del servicio> Computadora <arquitectura, SO, dirección de red, propietario> Grupo <nombre1, nombre2,…> Alias <nombre> Directorio <nombreComponente1, nombreComponente2,…>

  12. Resolución de nombres • Translación de un nombre en sus atributos asociados • A menudo, un proceso iterativo  El servicio de nombres retorna los atributos si la resolución puede ser realizada en elcontexto del nombre (directorio)  Si no es así el servicio envía el requerimiento a a otro contexto • Podría tratar con aliases que introduzcan ciclos  Si no se obtienen resultados, aborta resolución después de un predefinido número de intentos

  13. Navegación • Acceder a datos de nombres desde más de un servidor de nombres, para resolver • Navegación iterativa  Usada en DNS  El cliente contacta un servidor de nombres (NS)  El NS resuelve el nombre o sugiere otro NS a contactar  La resolución continúa hasta que el nombre es resuelto o se encuentra que el nombre es unbound

  14. Navegación iterativa NS2 2 Servidores de 1 NS1 nombres Cliente 3 NS3 Un cliente contacta de forma iterativa con los servidores de nombres NS1-NS3 para resolver un nombre

  15. Navegación • No recursiva, controlada por servidor  El servidor contacta a sus pares si no puede resolverlo  Por multicast o iterativamente por contacto directo • Recursiva, controlada por servidor  Si el server no puede resolver contacta otro server superior responsable, por un prefijo más extenso del espacio de nombres  Aplicado recursivamente hasta resolver  Puede usarse si clientes y server de bajo nivel no tienen derecho a contactardirectamente los de alto nivel

  16. Navegación no recursiva NS2 2 1 NS1 Cliente 3 4 NS3 Un cliente contacta con el servidor de nombres NS1 quien se comunica con otros servidores de nombres representando al cliente

  17. Navegación recursiva NS2 2 4 3 1 NS1 Cliente 5 NS3 Un cliente de nombres NS1 se comunica con otros servidores de nombres representando a un cliente

  18. Cuestiones en Servicio de nombres • Particionado  Un solo servidor no puede mantener todas las entradas, nombres-atributos, para toda la red, en particular en el caso de Internet  Datos del servidor de nombres particionados de acuerdo al dominio • Replicación  Un dominio usualmente tiene más de un servidor de nombres  Se mejora disponibilidad y performance • Caching  Los servidores pueden cachearla resolución de nombres realizadas en otros servidores  Evita contactar repetidamente el mismo servidor de nombres para buscar el mismo nombre

  19. Internet Domain Name System (DNS) • Realiza el mapeo nombre-direcciones de IP • Base de datos distribuida  Implementada en una jerarquía de muchos servidores de nombre • Protocolo de la capa de aplicación  host, routers, servidores de nombre se comunican para resolver nombres • Porqué no centralizar DNS?  único punto de falla  volumen del tráfico  base de datos centralizada distante  mantenimiento  no escalable!

  20. Servidores de nombre DNS • Ningún servidor tiene todos los mapeos nombre- direcciones de IP • Servidores de nombres locales  Cada compañía tiene un servidor de nombres local (por defecto)  Un query de un host del DNS va primero a éste • Servidor de nombres autorizado  Para un host: almacena nombre, dirección de IP  Puede realizar resolución de nombres para el nombre de este host • Servidor de nombres raíz

  21. Servidores de nombre raíz • Contactados por los servidores de nombre locales que no pueden resolver nombres • Servidor de nombres raíces:  contacta los servidores de nombre autorizados si no se conoce el mapeo de nombres  realiza mapeo  retorna el mapeo al servidor de nombres local • Existen en el mundo aproximadamente una docena de servidores de nombres raíces

  22. Servidores de nombre raíz

  23. Ejemplo simple de DNS • Host db.utoronto.ca desea la dirección de IP de malliag.math.uwaterloo.ca  contacta su servidor de nombres local dns.utoronto.ca  dns. utoronto.cacontacta el servidor de nombres raíz, si es necesario  el servidor raíz contacta al servidor autorizado, dns.uwaterloo.ca, si es necesario

  24. Ejemplo simple de DNS

  25. Ejemplo de DNS • Servidor de nombres raíz:  Puede no conocer el servidor de nombres autorizado  Puede conocer el servidor de nombres intermediario: a quién contactar para hallar el servidor de nombres autorizado

  26. Ejemplo de DNS

  27. DNS: queries iteradas • Query recursiva  Pone la responsabilidad de la resolución de nombres en el servidor de nombres contactado  Carga pesada? • Query iterada  El servidor contactado responde con el servidor de nombres a contactar  “No conozco este nombre, pero pregunte a este servidor”

  28. DNS: queries iteradas

  29. Tipos de registros DNS Tipo de registro Contenidos principales Significado A Una dirección de computador Número IP NS Un servidor de nombres autorizado Nombre de dominio para un servidor CNAME El nombre canónico de un alias Nombre de dominio para un alias SOA Marca el comienzo de datos en una zona Parámetros que gobiernan en una zona WKS Una descripción de servicio bien conocido Lista de nombres de servicio y protocolo PTR Puntero de nombre de dominio (búsquedas inversas) Nombre de dominio HINFO Información de host Arquitectura de la máquina y del sistema operativo MX Intercambio de correo Lista de pares <preferencia, host> TXT Cadena de texto Texto arbitrario

  30. Registros DNS - Ejemplos • DNS mantiene registros de recursos (RR)  Formato de RR: (nombre, valor, tipo, tt1) • Ejemplos de registros:  Tipo=A  nombre=hostname  valor= su dirección de IP  Tipo= NS  nombre=dominio (por ej.: foo.com)  valor= dirección de IP del servidor de nombres autorizado para este dominio  Tipo= CNAME  nombre= es un alias para algún nombre “canónico” (el real)  valor= su nombre canónico  Tipo= MX  valor= hostname del server de mail asociado con nombre

  31. DNS Protocolos y mensajes

More Related