Sistemas Operativos Distribuidos

Anuncio
Sistemas Operativos Distribuidos
Contenidos del Tema
Sistemas Operativos Distribuidos
Servicio de
Nombres
•
•
•
•
•
Introducción
Conceptos básicos
Espacios de nombres
Resolución de nombres
Estudio de ejemplo práctico: X.500
Sistemas Operativos Distribuidos
2
Introducción
Fernando Pérez Costoya
José María Peña Sánchez
Conceptos básicos
• Ya han aparecido antes servicios de nombres:
– Para ficheros (servicio de directorio de un SFD)
– Para denominar a servicios (RPC/RMI)
• Nombre permite referirse a objetos
– Nombre está asociado a id. del objeto (o sea, a nombre interno)
– Más general, nombre asociado a conjunto de atributos del objeto
• Resolución de nombres:
• Hay otros tipos de objetos en un sistema:
– usuarios, organizaciones, nodos, dispositivos, máquinas, ...
– objetos específicos de aplicaciones o usuarios
• Hay serv. de nombres estándar para algunos tipos de info.
– Por ejemplo, DNS gestiona información sobre máquinas
• Objetivo:
– Convencional: A partir de nombre, se obtienen atributos
– Por atributos: A partir de 1 o más atributos, se obtiene el resto
• Servicio de nombres:
– Resolución convencional (Páginas blancas)
• Servicio de directorio
– Resolución basada en atributos (Páginas amarillas)
– Un servicio de nombres general para todo el sistema distribuido
Sistemas Operativos Distribuidos
3
Fernando Pérez Costoya
José María Peña Sánchez
Espacios de nombres
Sistemas Operativos Distribuidos
4
Fernando Pérez Costoya
José María Peña Sánchez
Resolución de nombres
• Cjto. de nombres reconocidos por un servicio de nombres
• Alternativas:
– Único espacio (servicio) de nombres para todos los tipos de objetos
• No siempre adecuado incluir todos los objetos (p.ej. ficheros)
– Combinación de distintos espacios de nombres (p. ej. DCE)
• Ejemplo de la última alternativa:
– Servicio de nombres principal para todo excepto ficheros
– Espacio de nombre de ficheros “enganchado” en un punto del
espacio de nombres principal
– Cuando en resolución de nombre, servicio principal alcanza punto
de montaje, delega en SFD el resto de la resolución
Sistemas Operativos Distribuidos
5
• NOTA: Servicio de directorio de un SFD es un servicio de nombres
– Incluye resolución convencional ya que el nombre es un atributo
Fernando Pérez Costoya
José María Peña Sánchez
4-Servicio de nombres
• Generalmente el espacio de nombres es jerárquico
– Algunos objetos son contenedores (directorios) de otros objetos
• Resolución: proceso iterativo que parte de un contexto inicial
– Res. absoluta: contexto inicial corresponde con raíz
– Res. relativa: contexto inicial corresponde con nodo intermedio
• Espacio de nombres organizado en dominios
– Cada dominio gestionado por un servidor
• Mismas alternativas de navegación que en SFD
– Resolución iterativa, transitiva o recursiva
• Uso de cache en la resolución
• Replicación de información de un dominio
– Mejor fiabilidad y rendimiento, pero problema de coherencia
Sistemas Operativos Distribuidos
6
Fernando Pérez Costoya
José María Peña Sánchez
1
Sistemas Operativos Distribuidos
Ejemplos de serv. de nombres
• CORBA:
– Servicio de nombres y de navegación
• X.500. Servicio de directorio estándar de ISO.
• LDAP (Lightweight Directory Access Protocol, RFC 2251)
– Basado en X.500 pero con un protocolo más ligero (sobre TCP/IP)
y una interzaz más sencilla
Servicio de directorio X.500
•
•
•
•
Conceptos básicos
Modelo orientado a objetos
Nombres y operaciones
Arquitectura del servicio X.500
• Active Directory de Microsoft
– Forma parte de la arquitectura de Windows 2000
– Proporciona una interfaz LDAP
Sistemas Operativos Distribuidos
7
Fernando Pérez Costoya
José María Peña Sánchez
Sistemas Operativos Distribuidos
8
Conceptos básicos
Fernando Pérez Costoya
José María Peña Sánchez
Ejemplo de jerarquía
• S. de directorio (p. amarillas) + S. de nombres (p. blancas)
• Información organizada jerárquicamente
– Directory Information Tree (DIT)
Coulouris, Dollimore and
Kindberg
Distributed Systems: Concepts
and Design Edn. 3
© Addison-Wesley Publishers
2000
X.500 Service (root)
...
France (country) Great Britain (country) Greece (country)...
• Por ejemplo: <país, organización, departamento, persona>
• Nodo del árbol (directorio) tiene asociado cjto. de atributos
• Conjunto de toda la información:
– DIB (Directory Information Base)
– Similar a una BD pero escrituras infrecuentes y sencillas
...
BT Plc (organization) University of Gormenghast (organization)
...
... Computing Service (organizationalUnit)
Department of Computer Science (organizationalUnit)
Engineering Department (organizationalUnit)
...
• Usa un modelo de información orientado a objetos
... Departmental Staff (organizationalUnit)
ely (applicationProcess)
Research Students (organizationalUnit)
...
... Alice Flintstone (person) ... Pat King (person) James Healey (person) Janet Papworth (person)
Sistemas Operativos Distribuidos
9
Fernando Pérez Costoya
José María Peña Sánchez
Sistemas Operativos Distribuidos
10
Modelo orientado a objetos
• Objetos agrupados en clases
...
Fernando Pérez Costoya
José María Peña Sánchez
Una entrada de DIB
info
– p.ej. personas, impresoras, organizaciones, ...
• Existe esquema que define clases y herencia entre clases
– Para cada clase se define cjto. de atributos:
• Atributo= nombre de atributo + tipo de valor(es) asociado(s)
• Puede especificarse como obligatorio u opcional
– Define la jerarquía de herencia de clases
• P.ej. Clase Secretario derivada de Empleado
• Entrada de DIB (o sea, nodo de DIT): Cjto. de atributos
– Atributo= nombre + uno o más valores (p.e j. Despacho=115)
– Atributo obligatorio que define la clase (ObjectClass)
– No confundir jerarquía de objetos (DIT) con jerarquía de clases
(Esquema)
Alice Flintstone, Departmental Staff, Department of Computer Science,
University of Gormenghast, GB
commonName
Alice.L.Flintstone
Alice.Flintstone
Alice Flintstone
A. Flintstone
uid
alf
mail
alf@dcs.gormenghast.ac.uk
surname
Flintstone
roomNumber
telephoneNumber
+44 986 33 4604
userClass
Alice.Flintstone@dcs.gormenghast.ac.uk
Z42
Research Fellow
Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3
© Addison-Wesley Publishers 2000
Sistemas Operativos Distribuidos
11
Fernando Pérez Costoya
José María Peña Sánchez
4-Servicio de nombres
Sistemas Operativos Distribuidos
12
Fernando Pérez Costoya
José María Peña Sánchez
2
Sistemas Operativos Distribuidos
Nombres y operaciones
Arquitectura del servicio X.500
• Cada entrada tiene un nombre:
– Atributo(s) “distinguido(s)” que forma(n) su Relative Distinguished
Name (RDN)
– Debe ser único entre los “hermanos” del objeto
– P.ej. Nombre=“Juan Martínez Martínez”
• Nombre completo: Distinguished Name (DN)
– Concatenación de RDNs desde raíz hasta objeto:
• P.ej. País=ES,Organización=UPM,Nombre=“Juan Martínez Martínez”
• Operaciones típicas:
•
•
•
•
•
•
Modelo cliente/servidor
Clientes: Directory User Agents (DUA)
Servidores: Directory Service Agents (DSA)
Normalmente, DIB repartida entre varios DSAs
Admite distintos esquemas de resolución (iterativa, recursiva)
Aspectos de implementación no definidos por estándar
– Por ejemplo, caching y replicación
– Añadir/eliminar/modificar entrada de directorio
– Leer atributos de un objeto
– Buscar en árbol subyacente a objeto qué objetos cumplen criterio
Sistemas Operativos Distribuidos
13
Fernando Pérez Costoya
José María Peña Sánchez
Sistemas Operativos Distribuidos
14
Fernando Pérez Costoya
José María Peña Sánchez
Arquitectura del servicio X.500
DUA
DUA
DSA
DSA
DSA
DSA
DUA
DSA
DSA
Coulouris, Dollimore and
Kindberg
Distributed Systems: Concepts
and Design Edn. 3
© Addison-Wesley Publishers
2000
Sistemas Operativos Distribuidos
15
Fernando Pérez Costoya
José María Peña Sánchez
4-Servicio de nombres
3
Descargar