Está en la página 1de 31

Sistemas Distribuidos

Servicios de nombres

Introduccin
Propsito de los nombres Compartir objetos (=recursos) Ejemplo: archivos, usuarios, servicios,

Identificadores nicos
Independencia de la localizacin

Comunicacin
Alternativa a los nombres: Atributos descriptivos

Introduccin
Los nombres pueden ser lebles por el humano, por ejemplo: aretha.informatik.uni-siegen.de O, pueden ser identificadores del sistema elegidos para una manipulacin y almacenamiento eficientes. Ejemplo: 141.99.92.8

Introduccin
URL http://www.cdk3.net:8888/WebExamples/earth.html Bsqueda DNS

Identificador del recurso(nmero IP, nmero de puerto, ruta)


55.55.55.55 8888 WebExamples/earth.html

Servidor Web Direccin de red 2:60:8c:2:b0:5a Conector Archivo

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 impresin) O ms correcto: asociar nombre-atributo. Ejemplo: DNS asocia aretha.informatik.uni-siegen.de con 141.99.92.8. Resolucin de nombres: Hallar el objeto referenciado por un nombre

Servicio de nombres
Almacena un conjunto de contextos de nombres Bindings entre nombres textuales y atributos de objetos Principal servicio: Resolucin de nombres Otros servicios: Crear nuevos bindings Actualizar bindings Borrar bindings Listar nombres vlidos Aadir/borrar contextos Manejar aliases

Servicio de nombres
Motivacin para separarlo de otros servicios Unificacin conveniente para diferentes servicios que usan el mismo esquema de nombres (ej.: URLs) Integracin Puede ser necesario compartir objetos creados en diferentes dominios Servicio de nombres comn/separado idntica convencin de nombres integracin ms simple

Requerimientos del servicio de nombres


Escalabilidad Largo tiempo de vida Alta disponibilidad Aislacin de fallas Tolerancia a la desconfianza

Espacio de nombres
Conjunto de todos los nombres vlidos usados en un cierto contexto. Por ej.: todas las URLs vlidas en WWW Pueden ser descriptos usando una gramtica generativa. Por ej.: BNF para URLs Estructura interna Conjunto plano de identificadores numricos o simblicos Jerrquico representando la posicin. Por ej.: sistema de archivos de UNIX Jerrquico representando estructura organizacional. Por ej.:dominios de Internet

Espacio de nombres
Potencialmente infinito Aliases En general permite que un nombre ms conveniente sustituya uno ms complicado Dominio de eleccin de nombres Espacio de nombres para el cual existe una nica autoridad administrativa que asigne nombres dentro de l

Atributos almacenados por un servicio de nombres


Tipo
Usuario

Valor

<login name, computadora donde se entregan los mail, nro. TE., etc.> Servicio <direccin, versin del servicio> Computadora <arquitectura, SO, direccin de red, propietario> Grupo <nombre1, nombre2,> Alias <nombre> Directorio <nombreComponente1, nombreComponente2,>

Resolucin de nombres
Translacin de un nombre en sus atributos asociados A menudo, un proceso iterativo El servicio de nombres retorna los atributos si la resolucin puede ser realizada en elcontexto del nombre (directorio) Si no es as el servicio enva el requerimiento a a otro contexto Podra tratar con aliases que introduzcan ciclos Si no se obtienen resultados, aborta resolucin despus de un predefinido nmero de intentos

Navegacin
Acceder a datos de nombres desde ms de un servidor de nombres, para resolver Navegacin iterativa Usada en DNS El cliente contacta un servidor de nombres (NS) El NS resuelve el nombre o sugiere otro NS a contactar La resolucin contina hasta que el nombre es resuelto o se encuentra que el nombre es

unbound

Navegacin iterativa
NS2 2 Cliente 1 3 NS3 NS1

Servidores de nombres

Un cliente contacta de forma iterativa con los servidores de nombres NS1-NS3 para resolver un nombre

Navegacin
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 ms extenso del espacio de nombres Aplicado recursivamente hasta resolver Puede usarse si clientes y server de bajo nivel no tienen derecho a contactar directamente los de alto nivel

Navegacin no recursiva
NS2 2

1
Cliente 4 NS1 3 NS3

Un cliente contacta con el servidor de nombres NS1 quien se comunica con otros servidores de nombres representando al cliente

Navegacin recursiva
NS2 2 1 4 NS1 NS3 3

Cliente
5

Un cliente de nombres NS1 se comunica con otros servidores de nombres representando a un cliente

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 Replicacin Un dominio usualmente tiene ms de un servidor de nombres Se mejora disponibilidad y performance Caching Los servidores pueden cachear la resolucin de nombres realizadas en otros servidores Evita contactar repetidamente el mismo servidor de nombres para buscar el mismo nombre

Internet Domain Name System (DNS)


Realiza el mapeo nombre-direcciones de IP Base de datos distribuida Implementada en una jerarqua de muchos servidores de nombre Protocolo de la capa de aplicacin host, routers, servidores de nombre se comunican para resolver nombres Porqu no centralizar DNS? nico punto de falla volumen del trfico base de datos centralizada distante mantenimiento no escalable!

Servidores de nombre DNS


Ningn servidor tiene todos los mapeos nombredirecciones de IP Servidores de nombres locales Cada compaa 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, direccin de IP Puede realizar resolucin de nombres para el nombre de este host Servidor de nombres raz

Servidores de nombre raz


Contactados por los servidores de nombre locales que no pueden resolver nombres Servidor de nombres races: 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 races

Servidores de nombre raz

Ejemplo simple de DNS


Host db.utoronto.ca desea la direccin de IP de malliag.math.uwaterloo.ca contacta su servidor de nombres local dns.utoronto.ca dns. utoronto.ca contacta el servidor de nombres raz, si es necesario el servidor raz contacta al servidor autorizado, dns.uwaterloo.ca, si es necesario

Ejemplo simple de DNS

Ejemplo de DNS
Servidor de nombres raz:
Puede no conocer el servidor de nombres autorizado Puede conocer el servidor de nombres intermediario: a quin contactar para hallar el

servidor de nombres autorizado

Ejemplo de DNS

DNS: queries iteradas


Query recursiva Pone la responsabilidad de la resolucin 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

DNS: queries iteradas

Tipos de registros DNS


Tipo de registro A NS CNAME SOA WKS PTR Significado Contenidos principales
Nmero IP Nombre de dominio para un servidor Nombre de dominio para un alias Parmetros que gobiernan en una zona Lista de nombres de servicio y protocolo Nombre de dominio

HINFO
MX TXT

Una direccin de computador Un servidor de nombres autorizado El nombre cannico de un alias Marca el comienzo de datos en una zona Una descripcin de servicio bien conocido Puntero de nombre de dominio (bsquedas inversas) Informacin de host Intercambio de correo Cadena de texto

Arquitectura de la mquina y del sistema operativo Lista de pares <preferencia, host>


Texto arbitrario

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 direccin de IP Tipo= NS nombre=dominio (por ej.: foo.com) valor= direccin de IP del servidor de nombres autorizado para este dominio Tipo= CNAME nombre= es un alias para algn nombre cannico (el real) valor= su nombre cannico Tipo= MX valor= hostname del server de mail asociado con nombre

DNS Protocolos y mensajes

También podría gustarte