Anda di halaman 1dari 6

Sistemas Operativos Distribuidos Fernando Prez Costoya

ndice

Sistemas Operativos Distribuidos Introduccin


Servicio de nombres
Estudio de un ejemplo prctico: DNS
Servicio de directorio
Servicio de Estudio de un ejemplo prctico: LDAP
Nombres

Sistemas Operativos Distribuidos Fernando Prez Costoya


2

Una historia basada en hechos reales Una historia basada en hechos reales

Quiero contactar con persona en un contexto para pedirle algo Nombres y direcciones suelen tener carcter jerrquico
Contexto: una organizacin, una ciudad, un pas, el mundo, ... Facilita su administracin y gestin
Necesito su direccin de contacto (p.e. n telfono en ese contexto) Ejs. Nombres: ID empleado internacional (ISBN, cuenta bancaria, ...)
Nombre (quin) [permanente] Direccin (dnde) [transitorio] Cambio de recurso en jerarqua puede invalidar el nombre
Servicio telefnico pginas blancas (Servicio de nombres) Ejs. Direcciones: n telfono o direccin postal
Encaminamiento jerrquico
Necesito conocer n telfono de servicio de gua del contexto dado
Y especificar la persona con nombre unvoco en ese contexto A veces quiero contactar con cualquiera que d un servicio
Nombre/apellidos | n empleado | n DNI Necesito conocer condiciones de servicio para elegir
Gua proporciona nivel de indireccin respecto a direccin contacto Servicio telefnico pginas amarillas (Servicio de directorio)
Permite que persona cambie n tfno (cuidado con agenda-cach)
Puede requerirse cadena de consultas; n tfno empleado?:
1 obtengo n tfno empresa; 2 centralita empresa me da tfno empleado

Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
3 4

4-Servicio de nombres 1
Sistemas Operativos Distribuidos Fernando Prez Costoya

URI: Uniform Resource Identifier Ejemplo: Niveles de traduccin de URL

2 tipos de identificadores de recursos URIs en Internet: http://www.datsi.fi.upm.es/informacion.html


Nombres URNs y direcciones URLs
DNS
Uniform Resource Name: Nombre (qu) [permanente]
Identifican recurso sin incluir informacin de localizacin IP 138.100.9.2 | Puerto 80 TCP
Requiere un proceso de traduccin
Uniform Resource Locator: Direccin (dnde) [transitorio?] ARP httpd
Pueden verse afectados si recurso se mueve
Ejemplos wikipedia URN vs. URL 00:06:5B:F0:2B:F1 /usr/local/apache/htdocs/informacion.html
urn:ietf:rfc:3187
URL queda invlido slo si SF
http://tools.ietf.org/html/rfc3187.html
cambio dominio o puerto
Disco 0; particin 5; inodo 74431
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
5 6

Servicio de nombres Jerarqua de nombres

Nombre de entidad en SD punto(s) de acceso a la entidad SD incluye muchas entidades muy diversas
Sockets: Dir(s) IP+ puerto(s)+ protocolo(s) Como SFD, organizacin jerrquica facilita asignacin y gestin
Impresoras de distintos departamentos con el mismo nombre
RMI o CORBA: referencia(s) a objeto(s)
Nombre permite referirse a una entidad nica en SD Espacio de nombres jerrquico
Aunque puede estar replicada (p.e. fichero en Coda) Entidades contenedoras de otras entidades (directorios)
y puede haber varios nombres para la misma entidad (alias) Traduccin de nombres (pathnames):
Hay diversos tipos de entidades en SD Proceso iterativo que parte de un nodo inicial
ficheros, usuarios, grupos, procesos, dispositivos, mquinas, ... Necesidad de conocer traduccin de nodo inicial
Absoluta (nodo raz) vs. Relativa (nodo intermedio)
Serv. de nombres especficos para algunos tipos de entidades Proceso costoso: Uso de cach en traduccin
para ficheros (SFD), para mquinas (DNS), ... Informacin invlida si migracin
Ideal: servicio de nombres integral para todas las entidades Alternativa: 2 niveles de traduccin (p.e. AFS)
Excepto ficheros por gran volumen y frecuencia de actualizaciones pathname ID interno (servicio de nombres)
ID interno punto de acceso a entidad (servicio de localizacin)
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
7 8

4-Servicio de nombres 2
Sistemas Operativos Distribuidos Fernando Prez Costoya

Interfaz de servicio de nombres Implementacin de espacio de nombres


Operaciones del servicio de nombres (p.ej. CORBA) Servidor de nombres nico:
Asociar nombre (path) a entidad
Problemas de escala, rendimiento y fiabilidad
bind(Nombre, Referencia_objeto)
Desasociar nombre de entidad Tres tcnicas para paliarlos:
unbind(Nombre) Cach de traducciones
Traducir nombre Distribucin de espacio de nombres
resolve(Nombre) Replicacin de espacio de nombres
Crear nuevo directorio (contexto en CORBA) Cach de traducciones:
bind_new_context(Nombre_dir)
Problema de coherencia
Listar directorio
En DNS: No hay garanta
list(...)
Servidor retorna TTL (tiempo de vida) de informacin
Nombre interpretado respecto a un directorio (contexto) inicial
Dir_root.resolve(path)
CORBA dispone tambin de servicio de directorio (trading)
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
9 10

Distribucin y replicacin Domain Name System (DNS)


Espacio de nombres partido y distribuido entre servidores Servicio de nombres de mquinas en Internet: nombre IP
Se requiere info. que monte particiones para formar rbol nico No es un servicio de nombres general pero es ilustrativo
Cada particin gestionada por (al menos) un servidor
Posibilita administracin distribuida Espacio de nombres de DNS
Mismas alternativas de navegacin que en SFD Nombre: secuencia de dominios (directorios)
Iterativa, Transitiva y Recursiva www.datsi.fi.upm.es. . + es + upm + fi + datsi
Particin replicada en varios servidores Dominio raz: .
Fiabilidad y rendimiento, pero hay que asegurar coherencia Dominios nivel superior genricos (com, edu, ...) o por pas
Esquema simtrico: Cada dominio contiene resource records (RR)
Consulta a cualquier rplica Nombre TTL Clase Tipo Valor
Actualizacin simultnea en todas las rplicas www.google.es. 311901 IN CNAME www.google.com.
Esquema asimtrico: 1 primario y N secundarios www.google.com. 483176 IN CNAME www.l.google.com.
Consulta a cualquier rplica www.l.google.com. 277 IN A 66.102.9.104
Actualizacin en primario con propagacin a rplicas www.l.google.com. 277 IN A 66.102.9.147
Modo push o pull
www.l.google.com. 277 IN A 66.102.9.99
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
11 12

4-Servicio de nombres 3
Sistemas Operativos Distribuidos Fernando Prez Costoya

Algunos tipos de Resource Records Zonas de DNS

SOA (Start of Authority): Comienzo de definicin de una zona Espacio de nombres distribuido en particiones (zonas)
Cada zona gestionada por al menos 1 serv. primario y N secundarios
A (IPv4) y AAAA (IPv6): Direccin de mquina RR de tipo NS especifica servidores de dominio
CNAME: Nombre cannico Alias Un mismo servidor puede gestionar varias zonas
MX: Servidor correo para dominio (por orden de preferencia) Fichero de zona (slo en primarios): Contiene los RR de un dominio
Puede incluir RR de subdominios Subdominios virtuales
NS: Servidor nombres (para dominio o subdominio delegado) Pero habitual: subdominio tiene su propia zona delegacin
PTR: Traduccin inversa direccin IP Nombre Delegacin de zonas: dominio padre incluye punto de montaje
SRV: Asocia servicio a mquina y puerto NS: Nombre de subdominio Servidor que lo gestiona
Podra ser el mismo que para el padre
Ejemplo de wikipedia:
Si servidor de subdominio (Ssub) pertenece a subdominio
_service._proto.name TTL CL TIPO prio weight port target Padre incluye dir. de Ssub (glue record) (problemas de coherencia)
_sip._tcp.example.com. 86400 IN SRV 0 5 5060 sipsv.example.com.

Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
13 14

Extracto de zona upm.es. Extracto de zona fi.upm.es.


IN SOA einstein.ccupm.upm.es. hostmaster.upm.es. 2008032501 86400 7200 2592000 172800 IN SOA goofy.fi.upm.es. hostmaster.fi.upm.es. 2008031703 28800 7200 2592000 86400
Clase Internet; Start Of Authority; S. primario; responsable; n de serie (++por cada cambio); fi.upm.es. 3600 IN NS goofy.fi.upm.es. Servidor primario
Periodo de actualizacin de secundario; Tiempo de reintento de secundario antes actualizacin fallida; fi.upm.es. 3600 IN NS ns.fi.upm.es. Servidor secundario
Tiempo de expiracin de info. de secundario ante actualizacin fallida; TTL mnimo fi.upm.es. 3600 IN NS zape.fi.upm.es. Servidor secundario
Dominio TTL Clase Tipo Valor Comentario goofy.fi.upm.es. 3600 IN A 138.100.8.23 Direccin de mquina
upm.es. 86400 IN NS einstein.ccupm.upm.es. Servidor primario ns.fi.upm.es. 3600 IN A 138.100.240.2 Direccin de mquina
upm.es. 86400 IN NS galileo.ccupm.upm.es. Servidor secundario zape.fi.upm.es. 3600 IN A 138.100.8.1 Direccin de mquina
upm.es. 86400 IN MX 10 relay.upm.es. S. de correo preferente www.fi.upm.es. 3600 IN A 138.100.8.70 Direccin de mquina
upm.es. 86400 IN MX 20 relay2.upm.es. S. de correo secundario www.fi.upm.es. 3600 IN A 138.100.8.71 Direccin de mquina
fi.upm.es. 86400 IN NS zape.fi.upm.es. S. de subdominio (padre) raticulin.fi.upm.es. 600 IN A 138.100.8.43 Direccin de mquina
zape.fi.upm.es. 86400 IN A 138.100.8.1 Glue record backup.fi.upm.es. 3600 IN CNAME raticulin.fi.upm.es. Alias
eui.upm.es. 86400 IN NS fenix.eui.upm.es. S. de subdominio (padre) fi.upm.es. 60 IN MX 10 relay.fi.upm.es. Servidor de correo preferente
fenix.eui.upm.es. 86400 IN A 138.100.152.2 Glue record fi.upm.es. 60 IN MX 100 relay.upm.es. Servidor de correo secundario
etsia.upm.es. 86400 IN NS einstein.ccupm.upm.es. S. de subdominio (=padre) datsi.fi.upm.es. 3600 IN NS goofy.fi.upm.es. Servidor de subdominio (=padre)
ccupm.upm.es. 86400 IN NS einstein.ccupm.upm.es. S. de subdominio (=padre) datsi.fi.upm.es. 3600 IN NS ns.fi.upm.es. Servidor de subdominio (=padre)
www.upm.es. 86400 IN CNAME newton.ccupm.upm.es Alias datsi.fi.upm.es. 3600 IN NS zape.fi.upm.es. Servidor de subdominio (=padre)

Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
15 16

4-Servicio de nombres 4
Sistemas Operativos Distribuidos Fernando Prez Costoya

Mantenimiento de info. de zona Estructura de nombres en Internet

Sincronizacin de secundarios Hay 13 servidores de dominio raz (.) replicados


Secundario pide info. zona a primario Desde a.root-servers.net hasta m.root-servers.net
Peridicamente (p.e. 1 vez/da) 13 porque esa informacin cabe en paquete UDP
O cuando primario avisa de cambios (NOTIFY) DNS usa UDP (53); y slo TCP(53) cuando tamao lo aconseja
Si cambio: transferencia completa (AXFR) o incremental (IXFR) Problemas de escalabilidad?
Actualizacin de DNS: Detrs de cada uno hay mltiples servidores (uso de anycast)
Cambio en fichero de zona y reinicio de primario Incluyen NS de dominios de nivel 1 y glue records
Dynamic DNS: Protocolo DNS incluye ops. para actualizar zona Cada serv. DNS tiene dir. de servidores raz (fichero root.servers)
Aadir, modificar y borrar RR pero no crear nuevas zonas Se debe actualizar peridicamente (p.e. 1 vez al ao)
Importante aspectos de seguridad Servidores dominios nivel 1: NS y glue records de los de 2,...

Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
17 18

Estructura de nombres en Internet Traduccin en DNS


Servidor DNS debe ofrecer naveg. iterativa; recursiva opcional
a.root-servers.net.
es. 172800 IN NS ns1.nic.es. Diversos tipos de servidores de nombres:
ns1.nic.es. 172800 IN A 194.69.254.1 Primario, secundario, slo cach (nonauthoritative)
ns1.nic.es. Operacin de traduccin (www.fi.upm.es)
upm.es. 7200 IN NS galileo.ccupm.upm.es. Aplicacin pide a resolver traduccin de nombre de mquina
galileo.ccupm.upm.es. 7200 IN A 138.100.4.4 gethostbyname(www.fi.upm.es) o getaddrinfo (www.fi.upm.es, ...)
galileo.ccupm.upm.es. Si configurado uso de DNS (/etc/nsswitch.conf)
fi.upm.es. 86400 IN NS zape.fi.upm.es. Resolver contacta con servidor de nombres SN (/etc/resolv.conf)
zape.fi.upm.es. 86400 IN A 138.100.8.1 Requiere direccin IP de SN
2 posibles situaciones en la traduccin:
Dominio de SN es subcadena de nombre (p.e. SN gestiona upm.es.)
SN, y delegados si necesario, traducen el camino restante
En caso contrario (p.e. SN gestiona miempresa.com.)
Hay que traducir todo el camino desde dominio raz
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
19 20

4-Servicio de nombres 5
Sistemas Operativos Distribuidos Fernando Prez Costoya

Esquema de traduccin Traduccin desde dominio raz


Secuencia de operaciones (supuestos: iterativa y cach vaca)
SN contacta con un s. raz: obtiene dir. de un s. nombres de es. (Ses)
a.root-servers.net (198.41.0.4 ) ns1.nic.es. (194.69.254.1)
SN contacta con Ses: obtiene dir. de un s. nombres de upm. (Supm)
ns1.nic.es. (194.69.254.1) galileo.ccupm.upm.es. (138.100.4.4)
SN contacta con Supm: obtiene dir. de un s. nombres de fi. (Sfi)
galileo.ccupm.upm.es. (138.100.4.4) zape.fi.upm.es. (138.100.8.1)
SN contacta con Sfi: obtiene dir. de mquina pedida
zape.fi.upm.es. (138.100.8.1) www.fi.upm.es. (138.100.8.70)
Informacin en cach para la prxima vez:
Traduccin de backup.fi.upm.es slo requiere el ltimo paso
Uso de TTL: no garantiza coherencia (info. non-authoritative)

Pro DNS and BIND


Ron Aitchison (Apress)
Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
21 22

Traduccin desde dominio no raz Traduccin inversa

SN (ns.fi.upm.es.) gestiona dominio pedido (fi.upm.es.) IP nombre (gethostbyaddr: 138.100.8.70www.fi.upm.es.)


Retorna directamente traduccin www.fi.upm.es. (138.100.8.70) Gestionada tambin por DNS: dominio especial in-addr.arpa.
SN (galileo.ccupm.upm.es.) gestiona dominio padre (upm.es.) Traducir 138.100.8.70 70.8.100.138.in-addr.arpa.
Encuentra registro NS (y glue record) para un s. nombres de fi. (Sfi) Servidores raz incluyen NS de *.in-addr.arpa. y as sucesivamente
zape.fi.upm.es. (138.100.8.1) Traduccin final usa registro PTR en vez de A
SN contacta con Sfi: obtiene dir. de mquina pedida
zape.fi.upm.es. (138.100.8.1) www.fi.upm.es. (138.100.8.70) a.root-servers.net.
138.in-addr.arpa. 86400 IN NS chia.arin.net.
chia.arin.net.
Si varias entradas A/AAAA o CNAME satisfacen una consulta 100.138.in-addr.arpa. 86400 IN NS galileo.ccupm.upm.es.
Se retornan todas a la aplicacin, que usa la que quiere galileo.ccupm.upm.es.
Habitualmente la primera de la lista 8.100.138.in-addr.arpa. 86400 IN NS zape.fi.upm.es.
Por ello, algunos servidores van rotando la lista (Round-robin DNS) zape.fi.upm.es.
70.8.100.138.in-addr.arpa. 86400 IN PTR web1.fi.upm.es.

Sistemas Operativos Distribuidos Fernando Prez Costoya Sistemas Operativos Distribuidos Fernando Prez Costoya
23 24

4-Servicio de nombres 6

Anda mungkin juga menyukai