SlideShare una empresa de Scribd logo
1 de 110
Lic. Jorge Guerra G.
Sistemas Distribuidos
Servicio de
Nombramiento
Año 2015 Lic. Jorge Guerra Guerra
Lic. Jorge Guerra G.Sistemas Distribuidos
2
Lic. Jorge Guerra G.
Nombres y direcciones
• Nombre: forma de identificar una entidad en un sistema
distribuido (lista de bits o caracteres).
– Entidades: Usuarios, ficheros, recursos, equipos, impresoras,
ventanas..
– Queremos nombres porque queremos operar con ellas.
● Dirección: para poder operar con una entidad es necesario
acceder a través de un punto de acceso. Los puntos de
acceso son entidades que se identifican por una dirección.
● Un nombre de una entidad es independiente de su ubicación
si es independiente de las direcciones de su punto de acceso.
– Es más flexible.
Sistemas Distribuidos
3
Lic. Jorge Guerra G.Sistemas Distribuidos
4
Introducción
Lic. Jorge Guerra G.
¿Cómo pasar de nombres a direcciones?
• ● Sistema de nombres: mecanismo para traducir un nombre a una dirección.
● En su forma más sencilla puede ser simplemente una tabla (nombre, dirección).
– Solución sencilla en sistemas centralizados: un único servidor de nombres
– Solución compleja en sistemas distribuidos: múltiples servidores para poder ser
flexible, tolerante a fallos…
● Dos tipos de sistemas:
– No estructurados (o planos).
– Estructurados (o jerárquicos).
● Capacidad del espacio de nombres finita o ilimitada
– Puede ser finita en un sentido (p.ej en direcciones: IP) e ilimitada en otros (p. ej.
En nombres: DNS)
Sistemas Distribuidos
5
Lic. Jorge Guerra G.Sistemas Distribuidos
6
• Motivación
– Muchas aplicaciones basadas en redes se apoyan en sus
directorios (o bases de datos) propios
• Información que describe a los usuarios, aplicaciones, ficheros y
otros recursos accesible por la red
• Gran parte de la información es común con otras aplicaciones
– Problema de consistencia
– A más directorios especializados, mayor dificultad de
mantenimiento
Introducción
Lic. Jorge Guerra G.
Conceptos Basicos
Sistemas Distribuidos
7
Lic. Jorge Guerra G.Sistemas Distribuidos
8
Conceptos básicos
• 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:
– 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)
• NOTA: Servicio de directorio de un SFD es un servicio de nombres
– Incluye resolución convencional ya que el nombre es un atributo
Lic. Jorge Guerra G.Sistemas Distribuidos
9
Servicios de nombres
• Herramienta fundamental en
cualquier sistema de
computación
– Nombres
– Bindings
– Referencias y direcciones
– Contextos
– Sistemas de nombres y
espacios de nombres
Ejemplos:
DNS (Domain Name Service)
Registro RMI
Servicio de nombres de CORBA
Lic. Jorge Guerra G.
Objetivos de sistema de nombres
• Transparencia de ubicación: El nombre de una entidad no
debe revelar su ubicación física.
• Independencia de ubicación: El nombre de una entidad no
debe cambiar cuando cambie su ubicación física.
– Facilita migración, ya que una misma entidad tiene el mismo
nombre en distintos lugares en distintos momentos.
Sistemas Distribuidos
10
Lic. Jorge Guerra G.Sistemas Distribuidos
11
Servicios de directorio
• Amplían la funcionalidad de los
servicios de nombres asignando
atributos a los objetos
– Atributos
– Búsquedas y filtros
Lic. Jorge Guerra G.
Aproximación basado en ubicación original
Sistemas Distribuidos
12
Lic. Jorge Guerra G.
Nombre utilizado para accesar a un recurso usando URL
Sistemas Distribuidos
13
file
Web server
Socket
http://www.cdk3.net:8888/WebExamples/earth.html
URL
Resource ID (IP number, port number, pathname)
138.37.88.61 WebExamples/earth.html8888
DNS lookup
(Ethernet) Network address
2:60:8c:2:b0:5a
ARP lookup
Lic. Jorge Guerra G.Sistemas Distribuidos
14
Espacios de nombres
• Conjunto 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 archivos “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
Lic. Jorge Guerra G.
Aproximación basado en ubicación original
• Problemas:
● Mientras exista la entidad debe existir la ubicación original.
● Incremento de latencia y mala escalabilidad geográfica (la
“casa” puede estar muy alejada)
● La ubicación original está prefijada. ¿Y si la entidad se
mueve permanentemente a otra ubicación?
Pregunta: ¿Cómo resolver el problema de la reubicación
permanente?
Sistemas Distribuidos
15
Lic. Jorge Guerra G.
Servicios de ubicación jerárquica
Sistemas Distribuidos
16
Lic. Jorge Guerra G.
Organización en árbol
• La dirección de una entidad se guarda en un nodo
“hoja” o en un nodo intermedio.
• Los nodos intermedios contienen un puntero al hijo
sólo si el sub-árbol de un hijo contiene un puntero a
la entidad.
• La raíz conoce todas las entidades.
• Una entidad puede tener múltiples direcciones. – El nodo
común tendrá dos punteros, uno para cada rama.
Sistemas Distribuidos
17
Lic. Jorge Guerra G.Sistemas Distribuidos
18
Resolución 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
Lic. Jorge Guerra G.
Organización en árbol
Sistemas Distribuidos
19
Lic. Jorge Guerra G.Sistemas Distribuidos
20
Resolucion de nombres
• Resolución (nombres « direcciones y otros atributos),
búsqueda, Modificación
• Funcionamiento:
– Base de datos distribuida (servidores que cooperan),
– por dominios (escala), rápido (sin conexión, cachés, réplicas)
– Muchas consultas (casi sólo lectura),
– Muy pocas modificaciones (propagación de cambios)
Lic. Jorge Guerra G.
Organización jerárquica: consulta
• Se empieza la búsqueda en el nodo hoja.
• Dos posibilidades:
– El nodo conoce a la entidad -> se sigue el puntero hacia
abajo
– El nodo no lo conoce ->se sube un nivel
• Si suben, las consultas terminan en el nodo raíz.
Sistemas Distribuidos
21
Lic. Jorge Guerra G.
Organización jerárquica: consulta
Sistemas Distribuidos
22
Lic. Jorge Guerra G.
Organización jerárquica: inserción
Sistemas Distribuidos
23
Lic. Jorge Guerra G.
Organización jerárquica: inserción
Sistemas Distribuidos
24
Lic. Jorge Guerra G.
Espacio de nombres
Sistemas Distribuidos
25
Lic. Jorge Guerra G.Sistemas Distribuidos
26
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
• Active Directory de Microsoft
– Forma parte de la arquitectura de Windows 2000
– Proporciona una interfaz LDAP
• UDDI Universal Directory Description Interface
-- Forman parte de .NET y JWSDP
Lic. Jorge Guerra G.Sistemas Distribuidos
27
Conceptos básicos de X.500
• S. de directorio (p. amarillas) + S. de nombres (p. blancas)
• Información organizada jerárquicamente
– Directory Information Tree (DIT)
• 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
• Usa un modelo de información orientado a objetos
Lic. Jorge Guerra G.Sistemas Distribuidos
28
Ejemplo de jerarquía
... France (country) Great Britain (country) Greece (country)...
BT Plc (organization) University of Gormenghast (organization)... ...
Department of Computer Science (organizationalUnit)
Computing Service (organizationalUnit)
Engineering Department (organizationalUnit)
...
...
X.500 Service (root)
Departmental Staff (organizationalUnit)
Research Students (organizationalUnit)
ely (applicationProcess)
...
...
Alice Flintstone (person) Pat King (person) James Healey (person) ...... Janet Papworth (person)...
Coulouris, Dollimore and Kindberg
Distributed Systems: Concepts and
Design Edn. 3
© Addison-Wesley Publishers 2000
Lic. Jorge Guerra G.Sistemas Distribuidos
29
Modelo orientado a objetos
• Objetos agrupados en clases
– 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)
Lic. Jorge Guerra G.Sistemas Distribuidos
30
Una entrada de DIB
info
Alice Flintstone, Departmental Staff, Department of Computer Science,
University of Gormenghast, GB
commonName
Alice.L.Flintstone
Alice.Flintstone
Alice Flintstone
A. Flintstone
surname
Flintstone
telephoneNumber
+44 986 33 4604
uid
alf
mail
alf@dcs.gormenghast.ac.uk
Alice.Flintstone@dcs.gormenghast.ac.uk
roomNumber
Z42
userClass
Research Fellow
Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3
© Addison-Wesley Publishers 2000
Lic. Jorge Guerra G.Sistemas Distribuidos
31
Nombres y operaciones
• 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:
– Añadir/eliminar/modificar entrada de directorio
– Leer atributos de un objeto
– Buscar en árbol subyacente a objeto qué objetos cumplen criterio
Lic. Jorge Guerra G.Sistemas Distribuidos
32
Arquitectura del servicio X.500
• 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
Lic. Jorge Guerra G.Sistemas Distribuidos
33
Lic. Jorge Guerra G.Sistemas Distribuidos
34
Arquitectura del servicio X.500
DSA
DSA
DSA
DSA
DSADSADUA
DUA
DUA
Coulouris, Dollimore and Kindberg
Distributed Systems: Concepts and
Design Edn. 3
© Addison-Wesley Publishers 2000
Lic. Jorge Guerra G.
Resoluciones
Sistemas Distribuidos
35
Lic. Jorge Guerra G.Sistemas Distribuidos
36
Lic. Jorge Guerra G.Sistemas Distribuidos
37
Lic. Jorge Guerra G.Sistemas Distribuidos
38
Funcionamiento de DNS
• Toda zona (unidad de gestión) tiene al menos dos servidores de
nombres
– Motivación de la duplicación
• Desempeño
• Tolerancia a fallas
– Cada servidor mantiene una tabla de correspondencia nombre de dominio- IP
• Colección de registros <Nombre, Valor, Tipo, Clase, Duración de vida>
• Principio de búsqueda
– Un servidor contiene la dirección buscada
– Contiene la dirección de otro servidor con posibilidad de conocerla
Lic. Jorge Guerra G.Sistemas Distribuidos
39
Funcionamiento de DNS
Lic. Jorge Guerra G.Sistemas Distribuidos
40
Funcionamiento de DNS
• El servidor raíz contiene
– los nombres de los servidores de nombres de los dominios del segundo nivel
– Las direcciones IP de esos servidores
• <inrialpes.fr, if.inrialpes.fr, NS, IN, ...>
• <if.inrialpes, 194.199.18.65, A, IN,...>
– El servidor raíz está ampliamente duplicado
• Más un servidor es “alto” más se necesita que haya copias y menos seguido cambia
(long TTL)
– Cada servidor de zona contiene
• Tuplas (nombre, dirección) de hosts que pertenecen a los dominios contenidos en la
zona
• Eventualmente tuplas (nombre, dirección) de servidores de nombres de subdominios
incluidos
• v.g., if.inrialpes.fr <tuamotu.inrialpes.fr, 194.199.20.81, A, IN, ...>
Lic. Jorge Guerra G.Sistemas Distribuidos
41
Distribución del espacio de nombres
Lic. Jorge Guerra G.Sistemas Distribuidos
42
Lic. Jorge Guerra G.Sistemas Distribuidos
43
Lic. Jorge Guerra G.Sistemas Distribuidos
44
Lic. Jorge Guerra G.
Implementación de la resolución de nombres: iterativa
Sistemas Distribuidos
45
Lic. Jorge Guerra G.Sistemas Distribuidos
46
Lic. Jorge Guerra G.Sistemas Distribuidos
47
Lic. Jorge Guerra G.
Implementación de la resolución de nombres: recursiva
Sistemas Distribuidos
48
Lic. Jorge Guerra G.
Resolución de nombres recursiva
Sistemas Distribuidos
49
Lic. Jorge Guerra G.Sistemas Distribuidos
50
Lic. Jorge Guerra G.Sistemas Distribuidos
51
Lic. Jorge Guerra G.Sistemas Distribuidos
52
Funcionamiento
Lic. Jorge Guerra G.Sistemas Distribuidos
53
Lic. Jorge Guerra G.Sistemas Distribuidos
54
Lic. Jorge Guerra G.Sistemas Distribuidos
55
Lic. Jorge Guerra G.Sistemas Distribuidos
56
Lic. Jorge Guerra G.Sistemas Distribuidos
57
• Lightweight Directory Access Protocol
• Método estándar de acceso y actualización de la
información del directorio
– Es un protocolo de comunicaciones
– No define un interfaz de programación
• Es un estándar industrial abierto
• Acceso más “ligero”a X.500
– Usa la pila de protocolos TCP/IP
– Simplifica alguans operaciones X.500
LDAP: definición
Lic. Jorge Guerra G.
Espacio de nombres LDAP
Sistemas Distribuidos
58
Lic. Jorge Guerra G.
Espacio de nombres LDAP
Sistemas Distribuidos
59
Lic. Jorge Guerra G.Sistemas Distribuidos
60
• Gateway a un servidor X.500
• Stand-Alone
LDAP
Client
LDAP
Server
X.500
Server
Directory
TCP/IP OSI
LDAP
Client
LDAP
Server
Directory
TCP/IP
Servidor LDAP
Lic. Jorge Guerra G.Sistemas Distribuidos
61
• Interacción básica
– Binding : 1, 2
– Unbinding : 5
LDAP
Client
LDAP
Server
1. request
2. authenticated
3. read or update
or search request
4. response
5. close session
LDAP: interacción
Lic. Jorge Guerra G.Sistemas Distribuidos
62
Lic. Jorge Guerra G.Sistemas Distribuidos
63
Lic. Jorge Guerra G.Sistemas Distribuidos
64
Lic. Jorge Guerra G.Sistemas Distribuidos
65
• Ejemplo de DIT
cn=John,ou=LDAP Team,o=IBM,c=US
cn=John Smith,o=IBM,c=DE
Directory Root
o=MyOrgc=US c=DE
o=IBM
o=transarc
mail:info@transarc.com
fax:512- 838- 5187
o=IBM
ou=LDAP Team
cn=Mike Young
mail:my@transarc.com
cn:John Smith
mail:jsmith@mail.com
cn=John
(alias)
Modelo de nombres (2)
Lic. Jorge Guerra G.Sistemas Distribuidos
66
• Sufijos y Referrals (referencias)
– Soporte de los directorios distribuidos
• Sufijos
– Los servidores LDAP pueden no almacenar el DIT entero
• Referrals
– Forma un directorio distribuido que contiene todo el DIT
– Una entrada de objectClass referral
– Tiene un atributo, ref, cuyo valor es el LDAP URL de la entrada referida en
otro servidor LDAP
– Manejado por el cliente
» Descarga al servidor del trabajo de contactar con otros servidores
Modelo de nombres (3)
Lic. Jorge Guerra G.Sistemas Distribuidos
67
• Ejemplo de referrals
Server 2
Server 1
o=IBM,c=US
Suffix
ou=ITSO
ou=ITSO,o=IBM,c=US
Suffix
ou=ITSOtest
Suffix
cn=John Smith
cn=Paul Miller
cn=Mike Cook
Referral
Modelo de nombres (4)
Lic. Jorge Guerra G.Sistemas Distribuidos
68
• Operación de consulta
– Parámetros de la búsqueda
Directory Root
c=US c=DE c=SE
Scope of Search
LDAP_SCOPE_SUBTREE
Base Object
dn="o=Transarc,c=US"
o=Transarc
mail:info@transarc.com
fax:512- 838- 5187
cn=Larry Brown
cn:Mike Cook
mail:mc@transarc.com
cn=Charlie Brown
cn:Paul Miller
mail:pm@transarc.com
Search Filter
(cn=Larry Brown)
Information Returned
All Attributes
Modelo funcional (1)
Lic. Jorge Guerra G.Sistemas Distribuidos
69
• LDAP replicado
Web
Server
Web App.
Server
Mail
Server
LDAP
client
Network
Dispatcher
Client
Network
Master
Directory
Server
Replica
Directory
Server
Client Requests
Server Replies
Ejemplo de uso (1)
Lic. Jorge Guerra G.Sistemas Distribuidos
70
• OpenLDAP
– Gratuito y Open Source
• Netscape Directory Server
• IBM's Secure Way Directory
• Microsoft Active Directory Service
– Parte de Windows 2000
Implementaciones
Lic. Jorge Guerra G.Sistemas Distribuidos
71
Lic. Jorge Guerra G.Sistemas Distribuidos
72
Arquitectura de JNDI
Lic. Jorge Guerra G.Sistemas Distribuidos
73
Proveedor de servicio
• Componente de JNDI para integrar el acceso a algún tipo de
servicio de nombres o directorio:
– Lightweight Directory Access Protocol(LDAP)
– CORBA services(COS) naming service
– Java Remote Method Invocation(RMI) Registry
– Network Information System(NIS)
– File System
– Domain Name System (DNS)
– Novell NDS
Lic. Jorge Guerra G.Sistemas Distribuidos
74
Paquetes JNDI
• Parte del Standard Development Kit 1.3?, jndi.jar
• javax.naming
– Acceso a los servicios de nombes
• javax.naming.directory
– Acceso a los servicios de directorio
• javax.naming.event
– Soporta notificación de eventos en servicios de nomgres y directorios.
• javax.naming.ldap
– Características propias de LDAP v3 no cubiertas en el paquete javax.naming.directory
• javax.naming.spi
– Interfaz de proveedor de servicio
Lic. Jorge Guerra G.Sistemas Distribuidos
75
Lic. Jorge Guerra G.Sistemas Distribuidos
76
Contexto inicial (1)
• Punto de inicio para la resolución de nombres
1. Especificar el proveedor de servicio
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.ldap.LdapCtxFactory");
• Otros proveedores:
– Sistema de archivos:
• com.sun.jndi.fscontext.RefFSContextFactory
– Registro RMI:
• com.sun.jndi.rmi.registry.RegistryContextFactory
Lic. Jorge Guerra G.Sistemas Distribuidos
77
Contexto inicial (2)
2. Especificar otra configuración:
env.put(Context.PROVIDER_URL, "ldap://ldap.wiz.com:389");
env.put(Context.SECURITY_PRINCIPAL, "user");
env.put(Context.SECURITY_CREDENTIALS, "password");
3. Creación del contexto inicial:
Context ctx = new InitialContext(env);
DirContext ctx = new InitialDirContext(env);
Lic. Jorge Guerra G.Sistemas Distribuidos
78
Contexto inicial (3)
• Uso del fichero de propiedades jndi.properties
java.naming.provider.url="ldap://localhost:389/o=jnditutorial“
java.naming.factory.initial="com.sun.jndi.ldap.LdapCtxFactory"
• jndi.properties en:
– algún directorio del classpath
– JAVA_HOME/lib/
• Constructor sin parámetros
Context ctx = new InitialContext();
Lic. Jorge Guerra G.Sistemas Distribuidos
79
Ejemplo servicio de nombres
try {
// Contexto inicial
Context ctx = new InitialContext(env);
// Buscar un objeto
Object obj = ctx.lookup(name);
// Casting y uso
System.out.println(name + " ligado a: " + obj);
} catch (NamingException e) {
System.err.println(“Problemas con " + name + ": " + e);
}
Lic. Jorge Guerra G.Sistemas Distribuidos
80
Ejemplo servicio de directorio (1)
try {
// Contexto indicial de directorio
DirContext ctx = new InitialDirContext(env);
// Atributos del objeto
Attributes attrs =
ctx.getAttributes("cn=Eduardo Martinez, ou=DIIC");
// Encontrar el nombre de pila ("sn") e imprimirlo
System.out.println("sn: " + attrs.get("sn").get());
} catch (NamingException e) {
System.err.println(“Problemas recuperando atributo:" + e);
}
Lic. Jorge Guerra G.Sistemas Distribuidos
81
Ejemplo servicio de directorio (2)
DirContext ctx = new InitialDirContext(env);
String base = “o=UM, c=ES”;
String filter = “(|(cn=Mart*)(cn=Per*))”;
SearchControls contraints = new SearchControls();
contraints.setSearchScope(
searchControls.SUBTREE_SCOPE);
NamingEnumeration results = ctx.search(base,filter,contraints);
Lic. Jorge Guerra G.Sistemas Distribuidos
82
Ejemplo servicio de directorio (3)
while (results.hasMore()) {
SearchResult sr = (SearchResult)results.next();
System.out.println(sr.getName());
Attributes attrs = sr.getAttributes();
if (attrs != null) {
for (NamingEnumeration ne=attrs.getAll(); ne.hasMore();)
{
Attribute attr = (Attribute)ne.next();
String id = attr.getID();
Lic. Jorge Guerra G.Sistemas Distribuidos
83
Ejemplo servicio de directorio (4)
for (Enumeration vals = attr.getAll();
vals.hasMoreElements();
System.out.println(id + “:” +vals.nextElement())
);
} // for attrs.getAll()
} // if attrs!=null
} // while results.hasMore()
Lic. Jorge Guerra G.Sistemas Distribuidos
84
Lic. Jorge Guerra G.
Servicios de Directorio de Windows 2000
Active Directory
Lic. Jorge Guerra G.Sistemas Distribuidos
86
¿ Por qué tener un Directorio Activo ?
• Componente importante de un sistema distribuido
• Búsqueda de recursos en la red
• Reforzar la seguridad definida por el Administrador
• Distribuir un directorio en varios servidores a través de
una red
• Replicar un directorio para hacerlo disponible a más
usuarios
• Dividir un directorio en varios puntos de almacenamiento
Lic. Jorge Guerra G.Sistemas Distribuidos
87
Directorio Activo
• Objetivos del Directorio Activo
– Facilitar el uso a los administradores
– Hacerlo más útil y potente para los usuarios
• Localizar información
• Localizar servicios
• Búsqueda
– Facilitar el uso de las aplicaciones, conectar con directorio de
aplicaciones
– Interoperar con otros directorios
Lic. Jorge Guerra G.Sistemas Distribuidos
88
Directorio Activo
Conceptos importantes
• Scope
– Incluye cualquier objeto
• NameSpace
– Area delimitada de resolución de nombres
• Object
– Conjunto de atributos que representan algo en concreto
• Container
– Contenedor de objetos
Lic. Jorge Guerra G.Sistemas Distribuidos
89
Servicios de Directorio
Schema
• Contiene una definición
formal de contenidos y
estructura del AD, con
atributos, clases y
propiedades de cada
clase
 Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)
 Se almacena en el propio directorioSe almacena en el propio directorio
Lic. Jorge Guerra G.Sistemas Distribuidos
90
Directorio Activo
Conceptos importantes
• Árbol
– Describe una
jerarquía de objetos
y contenedores
Lic. Jorge Guerra G.Sistemas Distribuidos
91
Directorio Activo
Conceptos importantes
• Nombre
– Distinguished (DN)
• /O=Internet/DC=COM/DC=Microsoft/CN=Users/CN=Francisco
Serrano
– Relative Distinguished Name (RDN)
• CN=Francisco Serrano
• Dominio
– Area de seguridad dentro de una red
• Árbol de Dominios
– Grupo de Dominios que comparten mismo esquema
Lic. Jorge Guerra G.Sistemas Distribuidos
92
Árbol de Dominios
Ver Relaciones de Confianza
DominioDominio AA
DominioDominio CC
DominioDominio BB
ConfianzaConfianza
ImplícitaImplícita
ConfianzaConfianza
ExplícitaExplícita
Lic. Jorge Guerra G.Sistemas Distribuidos
93
Árbol de Dominios
Ver NameSpace
root.com
sub.root.com
other.sub.root.com
Lic. Jorge Guerra G.Sistemas Distribuidos
94
Servicios de Directorio
Global Catalog
• Repositorio central de información sobre objetos en un tree o en un
forest
• Un Global Catalog Server es un DC que almacena una copia del
Global Catalog
Lic. Jorge Guerra G.Sistemas Distribuidos
95
Global Catalog
DC1, Global Catalog
DC2, Domain Controller DC3, Domain Controller
DC4, Global Catalog DC5, Domain Controller
• Mínimo, uno por dominio (checking)
• GCs adicionales en DCs
dependiendo del nº de usuarios y
del nº de consultas
• GCs requieren memoria adicional
Lic. Jorge Guerra G.Sistemas Distribuidos
96
Global Catalog - Logon
• La máquina cliente contacta con el Controlador de
Dominio (DC)
• DC busca la dirección IP en la máquina cliente
• Si el cliente no está en la subred local, el DC mira en el
Global Catalog para buscar otro DC cercano al cliente
• Se notifica al cliente si no se ha conectado al DC más
cercano
• Evita el tráfico WAN cuando es posible
Lic. Jorge Guerra G.Sistemas Distribuidos
97
P: ¿Qué es un grupo de árboles?
Respuesta: Un bosque
Lic. Jorge Guerra G.Sistemas Distribuidos
98
Directorio Activo
Conceptos importantes
• Bosque
– Unión de árboles de dominio que:
• Usan el mismo esquema
• Comparten el mismo Global Catalog
• Unidos por relaciones de confianza Kerberos
– Muy útil para grupos de empresas subsidiarias que quieren
autonomía en los aspectos administrativos
• Site
– Lugar en la red que contiene servidores Active Directory
– Subredes TCP/IP ‘bien conectadas’
• Conexión de red altamente fiable y rápida
Lic. Jorge Guerra G.Sistemas Distribuidos
99
Servicios de DirectorioServicios de Directorio
EstructuraEstructura
TreesTrees
DomainsDomains
ForestsForests
SitesSites
DomainDomain
controlescontroles
FísicaFísicaLógicaLógica
OUOU Contenedor usado para organizar objetos en un dominio. Puede contener otros OusContenedor usado para organizar objetos en un dominio. Puede contener otros Ous
DomainDomain unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios).unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios).
1Millon+1Millon+
TreeTree agrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Compartenagrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Comparten globalglobal
catalog (repositorio central) y schema (definición de los objetos del AD)catalog (repositorio central) y schema (definición de los objetos del AD)
ForestForest grupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operangrupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operan
independientemente pero necesitan comunicarse éntre si (comparten catalogo global)independientemente pero necesitan comunicarse éntre si (comparten catalogo global)
Domain ControlersDomain Controlers PC que almacena una replica de la DBase del dominio local.Todo Server es un DCPC que almacena una replica de la DBase del dominio local.Todo Server es un DC
Lic. Jorge Guerra G.Sistemas Distribuidos
100
Servicios de Directorio
Modelos de dominio
NYC
example1.com
TOKLON
BIZ1
.
BIZ2
Example1.com
Biz 1 Biz3Biz2 Biz4 Biz6Biz5
Dominio Único
Dominios por negocios: Forest Extendido
Modelo Geográfico
Lic. Jorge Guerra G.Sistemas Distribuidos
101
Ejemplo: Jerarquía OUs
widgets.org
executive
adm
in
usuarioss
usuarios
recursos
recursos
im
presoras
ordenadores
im
presoras
ordenadores
tem
porales
em
pleados
tem
porales
em
pleados
Lic. Jorge Guerra G.Sistemas Distribuidos
102
widgets.org
.
executive
adm
in
usuarios
usuarios
recursos
recursos
GP1
GP1 GP1
Grupo
Política 1
Asignar
Aplicaciones
financieras al
menu
Quitar “Run” del
menu Inicio
im
presoras
ordenadores
im
presoras
ordenadores
tem
porales
em
pleados
tem
porales
em
pleados
gp2 GP1,2
Grupo
Política 2
Lic. Jorge Guerra G.Sistemas Distribuidos
103
Sites widgets.org
na.widgets.org euro.widgets.org asia.widgets.org
of.na.widgets.org
Oeste Centro Este España Alemania Francia Japón Australia Nueva Zelanda
oe.na.widgets.org
ce.na.widgets.org
es.na.widgets.org
sp.euro.widgets.org
al.euro.widgets.org
fr.euro.widgets.org
jp.asia.widgets.org
au.asia.widgets.org
nz.asia.widgets.org
Ofic. Centrales
Lic. Jorge Guerra G.Sistemas Distribuidos
104
Directorio Activo
Schema
• Contiene una definición
formal de contenidos y
estructura del AD, con
atributos, clases y
propiedades de cada
clase
 Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)
 Se almacena en el propio directorioSe almacena en el propio directorio
Lic. Jorge Guerra G.Sistemas Distribuidos
105
Actualización a Active Directory
Single Domain
PDCPDC
Windows NT4Windows NT4
•Upgrade del PDCUpgrade del PDC
Mixed ModeMixed Mode
BDCBDC
BDCBDC
BDCBDC BDCBDC
Native ModeNative Mode
•Cambiar a modoCambiar a modo
nativonativo
•Upgrade de los BDCsUpgrade de los BDCs
Lic. Jorge Guerra G.Sistemas Distribuidos
106
Modo Nativo y Modo Mixto
 Active Directory soporta DC en modo
mixto
 Una vez actualizados todos los BDC
cambiamos a modo nativo
 Características disponibles sólo en
modo Nativo:
 Grupos universales
 Admin. InterDominios
 Consultas en los DCs
Lic. Jorge Guerra G.Sistemas Distribuidos
107
us.company.comus.company.com
uk.company.comuk.company.com
company.comcompany.com
na.company.comna.company.com eu.company.comeu.company.com
Opciones Integración DNS
Windows 2000 controla Raiz
• Pros
– No hay dependencia de
DNS existentes
– No se necesita testing de
integración AD
– Nombres más familiares
• Cons
– Requiere esfuerzos para
sustituir DNS existentes
Lic. Jorge Guerra G.Sistemas Distribuidos
108
company.comcompany.com
us.company.comus.company.com
uk.company.comuk.company.com
cool.company.comcool.company.com
na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com
Opciones Integración DNS
Subdominio delegado
• Pros
– No requiere upgrade DNS
existentes
– Minimiza impacto del AD
en servidores DNS
existentes
• Cons
– Nombres son más largos
– Contínua dependencia de
DNS
Lic. Jorge Guerra G.Sistemas Distribuidos
109
company.comcompany.com
us.company.comus.company.com
uk.company.comuk.company.com
cool.company.comcool.company.com
na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com
Opciones integración DNS
No hay Windows 2000 DNS
• Pros
– No hay cambios
• Cons
– Unico punto de fallo
– Upgrade DNS para soporte de SRV
records (RFC 2052)
– Pruebas de integración con MS
DHCP server
Lic. Jorge Guerra G.Sistemas Distribuidos
110
Actualización Active Directory
Consolidación de Directorios
• Active Directory Connector
– Replica usuarios de Exchange 5.5
– Replica Exchange Distribution Lists y direcciones
personalizadas
– Third Parties
• Post Windows 2000
– Exchange utilizará Active Directory

Más contenido relacionado

La actualidad más candente

diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
Universidad Tecnológica
 
Diagramas de colaboracion
Diagramas de colaboracionDiagramas de colaboracion
Diagramas de colaboracion
d-draem
 
Gestión del riesgo de software
Gestión del riesgo de software Gestión del riesgo de software
Gestión del riesgo de software
jose_macias
 
Base de Datos: Modelo Entidad-Relacion
Base de Datos: Modelo Entidad-RelacionBase de Datos: Modelo Entidad-Relacion
Base de Datos: Modelo Entidad-Relacion
Diego Torres
 

La actualidad más candente (20)

Diagrama de Colaboración
Diagrama de ColaboraciónDiagrama de Colaboración
Diagrama de Colaboración
 
Ejemplo dfd
Ejemplo dfdEjemplo dfd
Ejemplo dfd
 
Introducción a los Modelos De Datos
Introducción a los Modelos De DatosIntroducción a los Modelos De Datos
Introducción a los Modelos De Datos
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
 
Manual sql server parte 1
Manual sql server parte 1Manual sql server parte 1
Manual sql server parte 1
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Introducción a los modelos de datos
Introducción a los modelos de datosIntroducción a los modelos de datos
Introducción a los modelos de datos
 
Algoritmo de Anillo
Algoritmo de AnilloAlgoritmo de Anillo
Algoritmo de Anillo
 
ETL
ETLETL
ETL
 
Programación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenadosProgramación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenados
 
Requerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No FuncionalesRequerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No Funcionales
 
Tema3 modelo relacional - normalización
Tema3   modelo relacional - normalizaciónTema3   modelo relacional - normalización
Tema3 modelo relacional - normalización
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
 
Diagrama de contexto
Diagrama de contextoDiagrama de contexto
Diagrama de contexto
 
2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de uso2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de uso
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
Metodo radix
Metodo radixMetodo radix
Metodo radix
 
Diagramas de colaboracion
Diagramas de colaboracionDiagramas de colaboracion
Diagramas de colaboracion
 
Gestión del riesgo de software
Gestión del riesgo de software Gestión del riesgo de software
Gestión del riesgo de software
 
Base de Datos: Modelo Entidad-Relacion
Base de Datos: Modelo Entidad-RelacionBase de Datos: Modelo Entidad-Relacion
Base de Datos: Modelo Entidad-Relacion
 

Destacado

UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDASUNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
Eduardo S de Loera
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
sergiooney
 
Comandos ddl y dml
Comandos ddl y dmlComandos ddl y dml
Comandos ddl y dml
Gerardo
 

Destacado (11)

Architectural Layers for SOA
Architectural Layers for SOAArchitectural Layers for SOA
Architectural Layers for SOA
 
Areas donde implementamos los sistemas distribuidos
Areas donde implementamos los sistemas distribuidosAreas donde implementamos los sistemas distribuidos
Areas donde implementamos los sistemas distribuidos
 
Sistemas Distribuidos Arquitectura XML SOA Middleware Web Services
Sistemas Distribuidos Arquitectura XML SOA Middleware Web ServicesSistemas Distribuidos Arquitectura XML SOA Middleware Web Services
Sistemas Distribuidos Arquitectura XML SOA Middleware Web Services
 
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDASUNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
UNIDAD 2 DISEÑO DE LAS BASES DE DATOS DISTRIBUIDAS
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Caracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas DistribuidosCaracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas Distribuidos
 
Unidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos DistribuidasUnidad1 Bases De Datos Distribuidas
Unidad1 Bases De Datos Distribuidas
 
BASE DE DATOS DISTRIBUIDAS
BASE DE DATOS DISTRIBUIDASBASE DE DATOS DISTRIBUIDAS
BASE DE DATOS DISTRIBUIDAS
 
Comandos ddl y dml
Comandos ddl y dmlComandos ddl y dml
Comandos ddl y dml
 
Sistemas Distribuidos. Diseño e Implementacion
Sistemas Distribuidos. Diseño e ImplementacionSistemas Distribuidos. Diseño e Implementacion
Sistemas Distribuidos. Diseño e Implementacion
 

Similar a Servicio de Nombramiento

labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
Rockdan
 
Active directory
Active directoryActive directory
Active directory
Erii Amaya
 
Dns anita vaca
Dns anita vacaDns anita vaca
Dns anita vaca
Anita Vaca
 
Taller Redis
Taller RedisTaller Redis
Taller Redis
betabeers
 

Similar a Servicio de Nombramiento (20)

Maricela poaquiza
Maricela poaquizaMaricela poaquiza
Maricela poaquiza
 
Sesión 4.- DNS.pdf
Sesión 4.- DNS.pdfSesión 4.- DNS.pdf
Sesión 4.- DNS.pdf
 
labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
labs.lacnic.net site sites_default_files_050-dns-dnssec-lacnic-01_0
 
Servicios De Nombres Y El Sistema De Nombres
Servicios De Nombres Y El Sistema De NombresServicios De Nombres Y El Sistema De Nombres
Servicios De Nombres Y El Sistema De Nombres
 
Base de datos
Base de datosBase de datos
Base de datos
 
Dns
DnsDns
Dns
 
Dns
DnsDns
Dns
 
Dns
DnsDns
Dns
 
Active directory
Active directoryActive directory
Active directory
 
Domain name system
Domain name systemDomain name system
Domain name system
 
Servicio DNS
Servicio DNSServicio DNS
Servicio DNS
 
Dns guadalupe
Dns guadalupeDns guadalupe
Dns guadalupe
 
DNS
DNSDNS
DNS
 
Exposicion de estructuras discretas
Exposicion de estructuras discretasExposicion de estructuras discretas
Exposicion de estructuras discretas
 
DB1 Unidad 1: Sistemas de almacenamiento de la información
DB1 Unidad 1: Sistemas de almacenamiento de la informaciónDB1 Unidad 1: Sistemas de almacenamiento de la información
DB1 Unidad 1: Sistemas de almacenamiento de la información
 
Dns basics 20140422-2 - citel - spanish
Dns basics 20140422-2 - citel - spanishDns basics 20140422-2 - citel - spanish
Dns basics 20140422-2 - citel - spanish
 
Dns anita vaca
Dns anita vacaDns anita vaca
Dns anita vaca
 
Consultaso
ConsultasoConsultaso
Consultaso
 
Taller Redis
Taller RedisTaller Redis
Taller Redis
 
Cuestionario 3-2.docx
Cuestionario 3-2.docxCuestionario 3-2.docx
Cuestionario 3-2.docx
 

Más de Jorge Guerra (7)

Implementaciones de Serv. Nombramiento
Implementaciones de Serv. NombramientoImplementaciones de Serv. Nombramiento
Implementaciones de Serv. Nombramiento
 
Tablas del lab 1 Gestion de Datos I
Tablas del lab 1 Gestion de Datos ITablas del lab 1 Gestion de Datos I
Tablas del lab 1 Gestion de Datos I
 
Comunicacion entre procesos SSDD
Comunicacion entre procesos SSDDComunicacion entre procesos SSDD
Comunicacion entre procesos SSDD
 
Cloud Computing , caracteristicas 2011
Cloud Computing , caracteristicas 2011Cloud Computing , caracteristicas 2011
Cloud Computing , caracteristicas 2011
 
cloud computing alcances e implementacion
cloud computing alcances e implementacioncloud computing alcances e implementacion
cloud computing alcances e implementacion
 
Definiciones Sistemas Distribuidos
Definiciones Sistemas DistribuidosDefiniciones Sistemas Distribuidos
Definiciones Sistemas Distribuidos
 
Base De Datos Distribuidas
Base De Datos DistribuidasBase De Datos Distribuidas
Base De Datos Distribuidas
 

Servicio de Nombramiento

  • 1. Lic. Jorge Guerra G. Sistemas Distribuidos Servicio de Nombramiento Año 2015 Lic. Jorge Guerra Guerra
  • 2. Lic. Jorge Guerra G.Sistemas Distribuidos 2
  • 3. Lic. Jorge Guerra G. Nombres y direcciones • Nombre: forma de identificar una entidad en un sistema distribuido (lista de bits o caracteres). – Entidades: Usuarios, ficheros, recursos, equipos, impresoras, ventanas.. – Queremos nombres porque queremos operar con ellas. ● Dirección: para poder operar con una entidad es necesario acceder a través de un punto de acceso. Los puntos de acceso son entidades que se identifican por una dirección. ● Un nombre de una entidad es independiente de su ubicación si es independiente de las direcciones de su punto de acceso. – Es más flexible. Sistemas Distribuidos 3
  • 4. Lic. Jorge Guerra G.Sistemas Distribuidos 4 Introducción
  • 5. Lic. Jorge Guerra G. ¿Cómo pasar de nombres a direcciones? • ● Sistema de nombres: mecanismo para traducir un nombre a una dirección. ● En su forma más sencilla puede ser simplemente una tabla (nombre, dirección). – Solución sencilla en sistemas centralizados: un único servidor de nombres – Solución compleja en sistemas distribuidos: múltiples servidores para poder ser flexible, tolerante a fallos… ● Dos tipos de sistemas: – No estructurados (o planos). – Estructurados (o jerárquicos). ● Capacidad del espacio de nombres finita o ilimitada – Puede ser finita en un sentido (p.ej en direcciones: IP) e ilimitada en otros (p. ej. En nombres: DNS) Sistemas Distribuidos 5
  • 6. Lic. Jorge Guerra G.Sistemas Distribuidos 6 • Motivación – Muchas aplicaciones basadas en redes se apoyan en sus directorios (o bases de datos) propios • Información que describe a los usuarios, aplicaciones, ficheros y otros recursos accesible por la red • Gran parte de la información es común con otras aplicaciones – Problema de consistencia – A más directorios especializados, mayor dificultad de mantenimiento Introducción
  • 7. Lic. Jorge Guerra G. Conceptos Basicos Sistemas Distribuidos 7
  • 8. Lic. Jorge Guerra G.Sistemas Distribuidos 8 Conceptos básicos • 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: – 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) • NOTA: Servicio de directorio de un SFD es un servicio de nombres – Incluye resolución convencional ya que el nombre es un atributo
  • 9. Lic. Jorge Guerra G.Sistemas Distribuidos 9 Servicios de nombres • Herramienta fundamental en cualquier sistema de computación – Nombres – Bindings – Referencias y direcciones – Contextos – Sistemas de nombres y espacios de nombres Ejemplos: DNS (Domain Name Service) Registro RMI Servicio de nombres de CORBA
  • 10. Lic. Jorge Guerra G. Objetivos de sistema de nombres • Transparencia de ubicación: El nombre de una entidad no debe revelar su ubicación física. • Independencia de ubicación: El nombre de una entidad no debe cambiar cuando cambie su ubicación física. – Facilita migración, ya que una misma entidad tiene el mismo nombre en distintos lugares en distintos momentos. Sistemas Distribuidos 10
  • 11. Lic. Jorge Guerra G.Sistemas Distribuidos 11 Servicios de directorio • Amplían la funcionalidad de los servicios de nombres asignando atributos a los objetos – Atributos – Búsquedas y filtros
  • 12. Lic. Jorge Guerra G. Aproximación basado en ubicación original Sistemas Distribuidos 12
  • 13. Lic. Jorge Guerra G. Nombre utilizado para accesar a un recurso usando URL Sistemas Distribuidos 13 file Web server Socket http://www.cdk3.net:8888/WebExamples/earth.html URL Resource ID (IP number, port number, pathname) 138.37.88.61 WebExamples/earth.html8888 DNS lookup (Ethernet) Network address 2:60:8c:2:b0:5a ARP lookup
  • 14. Lic. Jorge Guerra G.Sistemas Distribuidos 14 Espacios de nombres • Conjunto 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 archivos “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
  • 15. Lic. Jorge Guerra G. Aproximación basado en ubicación original • Problemas: ● Mientras exista la entidad debe existir la ubicación original. ● Incremento de latencia y mala escalabilidad geográfica (la “casa” puede estar muy alejada) ● La ubicación original está prefijada. ¿Y si la entidad se mueve permanentemente a otra ubicación? Pregunta: ¿Cómo resolver el problema de la reubicación permanente? Sistemas Distribuidos 15
  • 16. Lic. Jorge Guerra G. Servicios de ubicación jerárquica Sistemas Distribuidos 16
  • 17. Lic. Jorge Guerra G. Organización en árbol • La dirección de una entidad se guarda en un nodo “hoja” o en un nodo intermedio. • Los nodos intermedios contienen un puntero al hijo sólo si el sub-árbol de un hijo contiene un puntero a la entidad. • La raíz conoce todas las entidades. • Una entidad puede tener múltiples direcciones. – El nodo común tendrá dos punteros, uno para cada rama. Sistemas Distribuidos 17
  • 18. Lic. Jorge Guerra G.Sistemas Distribuidos 18 Resolución 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
  • 19. Lic. Jorge Guerra G. Organización en árbol Sistemas Distribuidos 19
  • 20. Lic. Jorge Guerra G.Sistemas Distribuidos 20 Resolucion de nombres • Resolución (nombres « direcciones y otros atributos), búsqueda, Modificación • Funcionamiento: – Base de datos distribuida (servidores que cooperan), – por dominios (escala), rápido (sin conexión, cachés, réplicas) – Muchas consultas (casi sólo lectura), – Muy pocas modificaciones (propagación de cambios)
  • 21. Lic. Jorge Guerra G. Organización jerárquica: consulta • Se empieza la búsqueda en el nodo hoja. • Dos posibilidades: – El nodo conoce a la entidad -> se sigue el puntero hacia abajo – El nodo no lo conoce ->se sube un nivel • Si suben, las consultas terminan en el nodo raíz. Sistemas Distribuidos 21
  • 22. Lic. Jorge Guerra G. Organización jerárquica: consulta Sistemas Distribuidos 22
  • 23. Lic. Jorge Guerra G. Organización jerárquica: inserción Sistemas Distribuidos 23
  • 24. Lic. Jorge Guerra G. Organización jerárquica: inserción Sistemas Distribuidos 24
  • 25. Lic. Jorge Guerra G. Espacio de nombres Sistemas Distribuidos 25
  • 26. Lic. Jorge Guerra G.Sistemas Distribuidos 26 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 • Active Directory de Microsoft – Forma parte de la arquitectura de Windows 2000 – Proporciona una interfaz LDAP • UDDI Universal Directory Description Interface -- Forman parte de .NET y JWSDP
  • 27. Lic. Jorge Guerra G.Sistemas Distribuidos 27 Conceptos básicos de X.500 • S. de directorio (p. amarillas) + S. de nombres (p. blancas) • Información organizada jerárquicamente – Directory Information Tree (DIT) • 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 • Usa un modelo de información orientado a objetos
  • 28. Lic. Jorge Guerra G.Sistemas Distribuidos 28 Ejemplo de jerarquía ... France (country) Great Britain (country) Greece (country)... BT Plc (organization) University of Gormenghast (organization)... ... Department of Computer Science (organizationalUnit) Computing Service (organizationalUnit) Engineering Department (organizationalUnit) ... ... X.500 Service (root) Departmental Staff (organizationalUnit) Research Students (organizationalUnit) ely (applicationProcess) ... ... Alice Flintstone (person) Pat King (person) James Healey (person) ...... Janet Papworth (person)... Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000
  • 29. Lic. Jorge Guerra G.Sistemas Distribuidos 29 Modelo orientado a objetos • Objetos agrupados en clases – 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)
  • 30. Lic. Jorge Guerra G.Sistemas Distribuidos 30 Una entrada de DIB info Alice Flintstone, Departmental Staff, Department of Computer Science, University of Gormenghast, GB commonName Alice.L.Flintstone Alice.Flintstone Alice Flintstone A. Flintstone surname Flintstone telephoneNumber +44 986 33 4604 uid alf mail alf@dcs.gormenghast.ac.uk Alice.Flintstone@dcs.gormenghast.ac.uk roomNumber Z42 userClass Research Fellow Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000
  • 31. Lic. Jorge Guerra G.Sistemas Distribuidos 31 Nombres y operaciones • 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: – Añadir/eliminar/modificar entrada de directorio – Leer atributos de un objeto – Buscar en árbol subyacente a objeto qué objetos cumplen criterio
  • 32. Lic. Jorge Guerra G.Sistemas Distribuidos 32 Arquitectura del servicio X.500 • 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
  • 33. Lic. Jorge Guerra G.Sistemas Distribuidos 33
  • 34. Lic. Jorge Guerra G.Sistemas Distribuidos 34 Arquitectura del servicio X.500 DSA DSA DSA DSA DSADSADUA DUA DUA Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000
  • 35. Lic. Jorge Guerra G. Resoluciones Sistemas Distribuidos 35
  • 36. Lic. Jorge Guerra G.Sistemas Distribuidos 36
  • 37. Lic. Jorge Guerra G.Sistemas Distribuidos 37
  • 38. Lic. Jorge Guerra G.Sistemas Distribuidos 38 Funcionamiento de DNS • Toda zona (unidad de gestión) tiene al menos dos servidores de nombres – Motivación de la duplicación • Desempeño • Tolerancia a fallas – Cada servidor mantiene una tabla de correspondencia nombre de dominio- IP • Colección de registros <Nombre, Valor, Tipo, Clase, Duración de vida> • Principio de búsqueda – Un servidor contiene la dirección buscada – Contiene la dirección de otro servidor con posibilidad de conocerla
  • 39. Lic. Jorge Guerra G.Sistemas Distribuidos 39 Funcionamiento de DNS
  • 40. Lic. Jorge Guerra G.Sistemas Distribuidos 40 Funcionamiento de DNS • El servidor raíz contiene – los nombres de los servidores de nombres de los dominios del segundo nivel – Las direcciones IP de esos servidores • <inrialpes.fr, if.inrialpes.fr, NS, IN, ...> • <if.inrialpes, 194.199.18.65, A, IN,...> – El servidor raíz está ampliamente duplicado • Más un servidor es “alto” más se necesita que haya copias y menos seguido cambia (long TTL) – Cada servidor de zona contiene • Tuplas (nombre, dirección) de hosts que pertenecen a los dominios contenidos en la zona • Eventualmente tuplas (nombre, dirección) de servidores de nombres de subdominios incluidos • v.g., if.inrialpes.fr <tuamotu.inrialpes.fr, 194.199.20.81, A, IN, ...>
  • 41. Lic. Jorge Guerra G.Sistemas Distribuidos 41 Distribución del espacio de nombres
  • 42. Lic. Jorge Guerra G.Sistemas Distribuidos 42
  • 43. Lic. Jorge Guerra G.Sistemas Distribuidos 43
  • 44. Lic. Jorge Guerra G.Sistemas Distribuidos 44
  • 45. Lic. Jorge Guerra G. Implementación de la resolución de nombres: iterativa Sistemas Distribuidos 45
  • 46. Lic. Jorge Guerra G.Sistemas Distribuidos 46
  • 47. Lic. Jorge Guerra G.Sistemas Distribuidos 47
  • 48. Lic. Jorge Guerra G. Implementación de la resolución de nombres: recursiva Sistemas Distribuidos 48
  • 49. Lic. Jorge Guerra G. Resolución de nombres recursiva Sistemas Distribuidos 49
  • 50. Lic. Jorge Guerra G.Sistemas Distribuidos 50
  • 51. Lic. Jorge Guerra G.Sistemas Distribuidos 51
  • 52. Lic. Jorge Guerra G.Sistemas Distribuidos 52 Funcionamiento
  • 53. Lic. Jorge Guerra G.Sistemas Distribuidos 53
  • 54. Lic. Jorge Guerra G.Sistemas Distribuidos 54
  • 55. Lic. Jorge Guerra G.Sistemas Distribuidos 55
  • 56. Lic. Jorge Guerra G.Sistemas Distribuidos 56
  • 57. Lic. Jorge Guerra G.Sistemas Distribuidos 57 • Lightweight Directory Access Protocol • Método estándar de acceso y actualización de la información del directorio – Es un protocolo de comunicaciones – No define un interfaz de programación • Es un estándar industrial abierto • Acceso más “ligero”a X.500 – Usa la pila de protocolos TCP/IP – Simplifica alguans operaciones X.500 LDAP: definición
  • 58. Lic. Jorge Guerra G. Espacio de nombres LDAP Sistemas Distribuidos 58
  • 59. Lic. Jorge Guerra G. Espacio de nombres LDAP Sistemas Distribuidos 59
  • 60. Lic. Jorge Guerra G.Sistemas Distribuidos 60 • Gateway a un servidor X.500 • Stand-Alone LDAP Client LDAP Server X.500 Server Directory TCP/IP OSI LDAP Client LDAP Server Directory TCP/IP Servidor LDAP
  • 61. Lic. Jorge Guerra G.Sistemas Distribuidos 61 • Interacción básica – Binding : 1, 2 – Unbinding : 5 LDAP Client LDAP Server 1. request 2. authenticated 3. read or update or search request 4. response 5. close session LDAP: interacción
  • 62. Lic. Jorge Guerra G.Sistemas Distribuidos 62
  • 63. Lic. Jorge Guerra G.Sistemas Distribuidos 63
  • 64. Lic. Jorge Guerra G.Sistemas Distribuidos 64
  • 65. Lic. Jorge Guerra G.Sistemas Distribuidos 65 • Ejemplo de DIT cn=John,ou=LDAP Team,o=IBM,c=US cn=John Smith,o=IBM,c=DE Directory Root o=MyOrgc=US c=DE o=IBM o=transarc mail:info@transarc.com fax:512- 838- 5187 o=IBM ou=LDAP Team cn=Mike Young mail:my@transarc.com cn:John Smith mail:jsmith@mail.com cn=John (alias) Modelo de nombres (2)
  • 66. Lic. Jorge Guerra G.Sistemas Distribuidos 66 • Sufijos y Referrals (referencias) – Soporte de los directorios distribuidos • Sufijos – Los servidores LDAP pueden no almacenar el DIT entero • Referrals – Forma un directorio distribuido que contiene todo el DIT – Una entrada de objectClass referral – Tiene un atributo, ref, cuyo valor es el LDAP URL de la entrada referida en otro servidor LDAP – Manejado por el cliente » Descarga al servidor del trabajo de contactar con otros servidores Modelo de nombres (3)
  • 67. Lic. Jorge Guerra G.Sistemas Distribuidos 67 • Ejemplo de referrals Server 2 Server 1 o=IBM,c=US Suffix ou=ITSO ou=ITSO,o=IBM,c=US Suffix ou=ITSOtest Suffix cn=John Smith cn=Paul Miller cn=Mike Cook Referral Modelo de nombres (4)
  • 68. Lic. Jorge Guerra G.Sistemas Distribuidos 68 • Operación de consulta – Parámetros de la búsqueda Directory Root c=US c=DE c=SE Scope of Search LDAP_SCOPE_SUBTREE Base Object dn="o=Transarc,c=US" o=Transarc mail:info@transarc.com fax:512- 838- 5187 cn=Larry Brown cn:Mike Cook mail:mc@transarc.com cn=Charlie Brown cn:Paul Miller mail:pm@transarc.com Search Filter (cn=Larry Brown) Information Returned All Attributes Modelo funcional (1)
  • 69. Lic. Jorge Guerra G.Sistemas Distribuidos 69 • LDAP replicado Web Server Web App. Server Mail Server LDAP client Network Dispatcher Client Network Master Directory Server Replica Directory Server Client Requests Server Replies Ejemplo de uso (1)
  • 70. Lic. Jorge Guerra G.Sistemas Distribuidos 70 • OpenLDAP – Gratuito y Open Source • Netscape Directory Server • IBM's Secure Way Directory • Microsoft Active Directory Service – Parte de Windows 2000 Implementaciones
  • 71. Lic. Jorge Guerra G.Sistemas Distribuidos 71
  • 72. Lic. Jorge Guerra G.Sistemas Distribuidos 72 Arquitectura de JNDI
  • 73. Lic. Jorge Guerra G.Sistemas Distribuidos 73 Proveedor de servicio • Componente de JNDI para integrar el acceso a algún tipo de servicio de nombres o directorio: – Lightweight Directory Access Protocol(LDAP) – CORBA services(COS) naming service – Java Remote Method Invocation(RMI) Registry – Network Information System(NIS) – File System – Domain Name System (DNS) – Novell NDS
  • 74. Lic. Jorge Guerra G.Sistemas Distribuidos 74 Paquetes JNDI • Parte del Standard Development Kit 1.3?, jndi.jar • javax.naming – Acceso a los servicios de nombes • javax.naming.directory – Acceso a los servicios de directorio • javax.naming.event – Soporta notificación de eventos en servicios de nomgres y directorios. • javax.naming.ldap – Características propias de LDAP v3 no cubiertas en el paquete javax.naming.directory • javax.naming.spi – Interfaz de proveedor de servicio
  • 75. Lic. Jorge Guerra G.Sistemas Distribuidos 75
  • 76. Lic. Jorge Guerra G.Sistemas Distribuidos 76 Contexto inicial (1) • Punto de inicio para la resolución de nombres 1. Especificar el proveedor de servicio Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); • Otros proveedores: – Sistema de archivos: • com.sun.jndi.fscontext.RefFSContextFactory – Registro RMI: • com.sun.jndi.rmi.registry.RegistryContextFactory
  • 77. Lic. Jorge Guerra G.Sistemas Distribuidos 77 Contexto inicial (2) 2. Especificar otra configuración: env.put(Context.PROVIDER_URL, "ldap://ldap.wiz.com:389"); env.put(Context.SECURITY_PRINCIPAL, "user"); env.put(Context.SECURITY_CREDENTIALS, "password"); 3. Creación del contexto inicial: Context ctx = new InitialContext(env); DirContext ctx = new InitialDirContext(env);
  • 78. Lic. Jorge Guerra G.Sistemas Distribuidos 78 Contexto inicial (3) • Uso del fichero de propiedades jndi.properties java.naming.provider.url="ldap://localhost:389/o=jnditutorial“ java.naming.factory.initial="com.sun.jndi.ldap.LdapCtxFactory" • jndi.properties en: – algún directorio del classpath – JAVA_HOME/lib/ • Constructor sin parámetros Context ctx = new InitialContext();
  • 79. Lic. Jorge Guerra G.Sistemas Distribuidos 79 Ejemplo servicio de nombres try { // Contexto inicial Context ctx = new InitialContext(env); // Buscar un objeto Object obj = ctx.lookup(name); // Casting y uso System.out.println(name + " ligado a: " + obj); } catch (NamingException e) { System.err.println(“Problemas con " + name + ": " + e); }
  • 80. Lic. Jorge Guerra G.Sistemas Distribuidos 80 Ejemplo servicio de directorio (1) try { // Contexto indicial de directorio DirContext ctx = new InitialDirContext(env); // Atributos del objeto Attributes attrs = ctx.getAttributes("cn=Eduardo Martinez, ou=DIIC"); // Encontrar el nombre de pila ("sn") e imprimirlo System.out.println("sn: " + attrs.get("sn").get()); } catch (NamingException e) { System.err.println(“Problemas recuperando atributo:" + e); }
  • 81. Lic. Jorge Guerra G.Sistemas Distribuidos 81 Ejemplo servicio de directorio (2) DirContext ctx = new InitialDirContext(env); String base = “o=UM, c=ES”; String filter = “(|(cn=Mart*)(cn=Per*))”; SearchControls contraints = new SearchControls(); contraints.setSearchScope( searchControls.SUBTREE_SCOPE); NamingEnumeration results = ctx.search(base,filter,contraints);
  • 82. Lic. Jorge Guerra G.Sistemas Distribuidos 82 Ejemplo servicio de directorio (3) while (results.hasMore()) { SearchResult sr = (SearchResult)results.next(); System.out.println(sr.getName()); Attributes attrs = sr.getAttributes(); if (attrs != null) { for (NamingEnumeration ne=attrs.getAll(); ne.hasMore();) { Attribute attr = (Attribute)ne.next(); String id = attr.getID();
  • 83. Lic. Jorge Guerra G.Sistemas Distribuidos 83 Ejemplo servicio de directorio (4) for (Enumeration vals = attr.getAll(); vals.hasMoreElements(); System.out.println(id + “:” +vals.nextElement()) ); } // for attrs.getAll() } // if attrs!=null } // while results.hasMore()
  • 84. Lic. Jorge Guerra G.Sistemas Distribuidos 84
  • 85. Lic. Jorge Guerra G. Servicios de Directorio de Windows 2000 Active Directory
  • 86. Lic. Jorge Guerra G.Sistemas Distribuidos 86 ¿ Por qué tener un Directorio Activo ? • Componente importante de un sistema distribuido • Búsqueda de recursos en la red • Reforzar la seguridad definida por el Administrador • Distribuir un directorio en varios servidores a través de una red • Replicar un directorio para hacerlo disponible a más usuarios • Dividir un directorio en varios puntos de almacenamiento
  • 87. Lic. Jorge Guerra G.Sistemas Distribuidos 87 Directorio Activo • Objetivos del Directorio Activo – Facilitar el uso a los administradores – Hacerlo más útil y potente para los usuarios • Localizar información • Localizar servicios • Búsqueda – Facilitar el uso de las aplicaciones, conectar con directorio de aplicaciones – Interoperar con otros directorios
  • 88. Lic. Jorge Guerra G.Sistemas Distribuidos 88 Directorio Activo Conceptos importantes • Scope – Incluye cualquier objeto • NameSpace – Area delimitada de resolución de nombres • Object – Conjunto de atributos que representan algo en concreto • Container – Contenedor de objetos
  • 89. Lic. Jorge Guerra G.Sistemas Distribuidos 89 Servicios de Directorio Schema • Contiene una definición formal de contenidos y estructura del AD, con atributos, clases y propiedades de cada clase  Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)  Se almacena en el propio directorioSe almacena en el propio directorio
  • 90. Lic. Jorge Guerra G.Sistemas Distribuidos 90 Directorio Activo Conceptos importantes • Árbol – Describe una jerarquía de objetos y contenedores
  • 91. Lic. Jorge Guerra G.Sistemas Distribuidos 91 Directorio Activo Conceptos importantes • Nombre – Distinguished (DN) • /O=Internet/DC=COM/DC=Microsoft/CN=Users/CN=Francisco Serrano – Relative Distinguished Name (RDN) • CN=Francisco Serrano • Dominio – Area de seguridad dentro de una red • Árbol de Dominios – Grupo de Dominios que comparten mismo esquema
  • 92. Lic. Jorge Guerra G.Sistemas Distribuidos 92 Árbol de Dominios Ver Relaciones de Confianza DominioDominio AA DominioDominio CC DominioDominio BB ConfianzaConfianza ImplícitaImplícita ConfianzaConfianza ExplícitaExplícita
  • 93. Lic. Jorge Guerra G.Sistemas Distribuidos 93 Árbol de Dominios Ver NameSpace root.com sub.root.com other.sub.root.com
  • 94. Lic. Jorge Guerra G.Sistemas Distribuidos 94 Servicios de Directorio Global Catalog • Repositorio central de información sobre objetos en un tree o en un forest • Un Global Catalog Server es un DC que almacena una copia del Global Catalog
  • 95. Lic. Jorge Guerra G.Sistemas Distribuidos 95 Global Catalog DC1, Global Catalog DC2, Domain Controller DC3, Domain Controller DC4, Global Catalog DC5, Domain Controller • Mínimo, uno por dominio (checking) • GCs adicionales en DCs dependiendo del nº de usuarios y del nº de consultas • GCs requieren memoria adicional
  • 96. Lic. Jorge Guerra G.Sistemas Distribuidos 96 Global Catalog - Logon • La máquina cliente contacta con el Controlador de Dominio (DC) • DC busca la dirección IP en la máquina cliente • Si el cliente no está en la subred local, el DC mira en el Global Catalog para buscar otro DC cercano al cliente • Se notifica al cliente si no se ha conectado al DC más cercano • Evita el tráfico WAN cuando es posible
  • 97. Lic. Jorge Guerra G.Sistemas Distribuidos 97 P: ¿Qué es un grupo de árboles? Respuesta: Un bosque
  • 98. Lic. Jorge Guerra G.Sistemas Distribuidos 98 Directorio Activo Conceptos importantes • Bosque – Unión de árboles de dominio que: • Usan el mismo esquema • Comparten el mismo Global Catalog • Unidos por relaciones de confianza Kerberos – Muy útil para grupos de empresas subsidiarias que quieren autonomía en los aspectos administrativos • Site – Lugar en la red que contiene servidores Active Directory – Subredes TCP/IP ‘bien conectadas’ • Conexión de red altamente fiable y rápida
  • 99. Lic. Jorge Guerra G.Sistemas Distribuidos 99 Servicios de DirectorioServicios de Directorio EstructuraEstructura TreesTrees DomainsDomains ForestsForests SitesSites DomainDomain controlescontroles FísicaFísicaLógicaLógica OUOU Contenedor usado para organizar objetos en un dominio. Puede contener otros OusContenedor usado para organizar objetos en un dominio. Puede contener otros Ous DomainDomain unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios).unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios). 1Millon+1Millon+ TreeTree agrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Compartenagrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Comparten globalglobal catalog (repositorio central) y schema (definición de los objetos del AD)catalog (repositorio central) y schema (definición de los objetos del AD) ForestForest grupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operangrupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operan independientemente pero necesitan comunicarse éntre si (comparten catalogo global)independientemente pero necesitan comunicarse éntre si (comparten catalogo global) Domain ControlersDomain Controlers PC que almacena una replica de la DBase del dominio local.Todo Server es un DCPC que almacena una replica de la DBase del dominio local.Todo Server es un DC
  • 100. Lic. Jorge Guerra G.Sistemas Distribuidos 100 Servicios de Directorio Modelos de dominio NYC example1.com TOKLON BIZ1 . BIZ2 Example1.com Biz 1 Biz3Biz2 Biz4 Biz6Biz5 Dominio Único Dominios por negocios: Forest Extendido Modelo Geográfico
  • 101. Lic. Jorge Guerra G.Sistemas Distribuidos 101 Ejemplo: Jerarquía OUs widgets.org executive adm in usuarioss usuarios recursos recursos im presoras ordenadores im presoras ordenadores tem porales em pleados tem porales em pleados
  • 102. Lic. Jorge Guerra G.Sistemas Distribuidos 102 widgets.org . executive adm in usuarios usuarios recursos recursos GP1 GP1 GP1 Grupo Política 1 Asignar Aplicaciones financieras al menu Quitar “Run” del menu Inicio im presoras ordenadores im presoras ordenadores tem porales em pleados tem porales em pleados gp2 GP1,2 Grupo Política 2
  • 103. Lic. Jorge Guerra G.Sistemas Distribuidos 103 Sites widgets.org na.widgets.org euro.widgets.org asia.widgets.org of.na.widgets.org Oeste Centro Este España Alemania Francia Japón Australia Nueva Zelanda oe.na.widgets.org ce.na.widgets.org es.na.widgets.org sp.euro.widgets.org al.euro.widgets.org fr.euro.widgets.org jp.asia.widgets.org au.asia.widgets.org nz.asia.widgets.org Ofic. Centrales
  • 104. Lic. Jorge Guerra G.Sistemas Distribuidos 104 Directorio Activo Schema • Contiene una definición formal de contenidos y estructura del AD, con atributos, clases y propiedades de cada clase  Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)  Se almacena en el propio directorioSe almacena en el propio directorio
  • 105. Lic. Jorge Guerra G.Sistemas Distribuidos 105 Actualización a Active Directory Single Domain PDCPDC Windows NT4Windows NT4 •Upgrade del PDCUpgrade del PDC Mixed ModeMixed Mode BDCBDC BDCBDC BDCBDC BDCBDC Native ModeNative Mode •Cambiar a modoCambiar a modo nativonativo •Upgrade de los BDCsUpgrade de los BDCs
  • 106. Lic. Jorge Guerra G.Sistemas Distribuidos 106 Modo Nativo y Modo Mixto  Active Directory soporta DC en modo mixto  Una vez actualizados todos los BDC cambiamos a modo nativo  Características disponibles sólo en modo Nativo:  Grupos universales  Admin. InterDominios  Consultas en los DCs
  • 107. Lic. Jorge Guerra G.Sistemas Distribuidos 107 us.company.comus.company.com uk.company.comuk.company.com company.comcompany.com na.company.comna.company.com eu.company.comeu.company.com Opciones Integración DNS Windows 2000 controla Raiz • Pros – No hay dependencia de DNS existentes – No se necesita testing de integración AD – Nombres más familiares • Cons – Requiere esfuerzos para sustituir DNS existentes
  • 108. Lic. Jorge Guerra G.Sistemas Distribuidos 108 company.comcompany.com us.company.comus.company.com uk.company.comuk.company.com cool.company.comcool.company.com na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com Opciones Integración DNS Subdominio delegado • Pros – No requiere upgrade DNS existentes – Minimiza impacto del AD en servidores DNS existentes • Cons – Nombres son más largos – Contínua dependencia de DNS
  • 109. Lic. Jorge Guerra G.Sistemas Distribuidos 109 company.comcompany.com us.company.comus.company.com uk.company.comuk.company.com cool.company.comcool.company.com na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com Opciones integración DNS No hay Windows 2000 DNS • Pros – No hay cambios • Cons – Unico punto de fallo – Upgrade DNS para soporte de SRV records (RFC 2052) – Pruebas de integración con MS DHCP server
  • 110. Lic. Jorge Guerra G.Sistemas Distribuidos 110 Actualización Active Directory Consolidación de Directorios • Active Directory Connector – Replica usuarios de Exchange 5.5 – Replica Exchange Distribution Lists y direcciones personalizadas – Third Parties • Post Windows 2000 – Exchange utilizará Active Directory