790 likes | 1.18k Views
Nombrando Entidades Nombres Direcciones Identificadores Espacio de Nombres Resolución de Nombres Mecanismo de Cierre Ligamiento Montaje. Nombrando Entidades. Nombres Definición: Un nombre en un sistema distribuido es un conjunto de caracteres o bits que representan a una entidad.
E N D
Nombrando Entidades • Nombres • Direcciones • Identificadores • Espacio de Nombres • Resolución de Nombres • Mecanismo de Cierre • Ligamiento • Montaje
Nombrando Entidades • Nombres • Definición: Un nombre en un sistema distribuido es un conjunto de caracteres o bits que representan a una entidad. • Las Entidades pueden ser operadas. • Ejemplo: Nombre “Impresora” Entidad Interfaz Donde se puede Operar
Nombrando Entidades • Nombres • Existe un tipo importante de nombres, denominados Nombres Humanos. Consisten en nombres destinados a ser utilizados por los seres humanos. • Ejemplos: • Nombres de archivo • Nombres de las Variables en un Código.
Nombrando Entidades • Direcciones • Punto de Acceso: • Consiste en una entidad especial, cuyo nombre se denomina Dirección, y siempre esta asociada a una entidad. Es decir, el punto de acceso representa la dirección del cual se puede acceder la entidad al cual esta asociado. • Una entidad puede tener asociado varios puntos de acceso. • Ejemplo: Nombre “Host” 255.255.255 Entidad Punto de Acceso
Nombrando Entidades • Direcciones • Una entidad puede cambiar su punto de acceso; es decir, es asociada a un punto de acceso diferente. • Ejemplo: Nombre Independiente de la Localidad “Servidor Manejador de Peticiones FTP” 100.100.100 255.255.255 “Host” “Host”
Nombrando Entidades • Identificadores • Definición: Un identificador es un nombre que cumple con las siguiente propiedades: • Representa a lo sumo una entidad. • Cada entidad es representada por a lo sumo un identificador. • Siempre se refiere a la misma entidad. • Con el uso de Identificadores se puede representar a entidades sin ambigüedades. • Ejemplos: Numero de cedula de una entidad “Persona”, y el RIF de una entidad “Empresa”.
Nombrando Entidades • Espacio de Nombres • Definición: Los nombres en un sistema distribuido se organizan en lo que se llama un Espacio de Nombres. • Se representa mediante un grafo dirigido que reúne el conjunto de las entidades de un sistema distribuido. Por lo tanto cada nodo tiene asociado un identificador. • En dicho grafo pueden haber 3 tipos de nodos: • Nodo Terminal: Representa una entidad nombrada y tiene la propiedad de no tener sucesor alguno. • Nodo Directorio: Representa una entidad nombrada y tiene la propiedad de tener uno o mas sucesores. • Nodo Raíz: Nodo con la propiedad de no tener antecesor alguno. Por simplicidad se debería tener un solo nodo raíz.
Nombrando Entidades • Espacio de Nombres • Cada nodo tiene asociado una etiqueta y un identificador asociado a la entidad que representa. • Cada nodo directorio tiene asociado una tabla que contiene los pares (etiqueta,identificador) de cada uno de sus sucesores. • Ejemplo: N1: “bin” N2: “home” Nodo Terminal Nodo Directorio N0 bin home N1 N2 java config Maverick N8 N3 N4 File0 javax javac N9 N5 N6
Nombrando Entidades • Espacio de Nombres • Cada ruta en el grafo puede ser representada por una secuencia de etiquetas que corresponden a los nodos por los cuales ella atraviesa. • Cada ruta puede ser relativa o absoluta. • Ejemplo: N0 bin home N1 N2 java config Maverick Ruta Absoluta N8 N3 N4 Archivo1 javax javac N0:<N2,N8,N9> N9 N5 N6 N3:<N6> Ruta Relativa
Nombrando Entidades • Espacio de Nombres • Pueden haber 2 tipos de nombres en el grafo: • Nombre Global • Nombre Local • Ejemplo: N0 bin home N1 N2 java Andross Maverick N7 N8 N3 Archivo1 Archivo1 javax javac N4 N9 N5 N6 Nombre Global Nombres Locales
Nombrando Entidades • Resolución de Nombres • Definición: Dado una ruta, al proceso de obtener el contenido del nodo que dicha ruta apunta, se le denomina Resolución de Nombres. • Ejemplo: Dado la ruta N0:<N2,N8,N9>, N1: “bin” N2: “home” N7: “Andross” N8: “Maverick” N0 home bin N2 N9: “Archivo1” N1 Andross Maverick N7 N8 Archivo1 La ruta original queda resuelta a “/home/Maverick/Archivo1” Archivo1 N4 N9
Nombrando Entidades • Mecanismo de Cierre • Definición: Mecanismo que indica donde se debe comenzar el proceso de resolución de nombres y como se debe hacer. • Ejemplo: • El mecanismo de cierre asegura que los nombres locales siempre se resuelven en el nodo directorio asociado a ella. N0 home N2 Andross Maverick N7 N8 Archivo1 Archivo1 N4 N9
Nombrando Entidades • Ligamiento • Un Alias consiste en el uso de otro nombre para una entidad. • Ejemplos: • Las variables de entorno que se usan en Windows tal como: • Classpath = C:\Archivos de programa\Java\clases
Nombrando Entidades • Ligamiento • Hay 2 maneras de representar un alias en el grafo: • Permitir que varias rutas resuelvan al mismo nodo. • Ejemplo: Ruta original: “/home/Maverick/Archivo1” Ruta Añadida: “/bin/java/Archivo1” N0 bin home N2 N1 Maverick java N7 Archivo1 Archivo1 N3 javax javac “Hard Links” N4 N5 N6
Nombrando Entidades • Ligamiento • Hay 2 maneras de representar un alias en el grafo: • 2) Utilización de “Symbolic Link” • Ejemplo: Se dice que “N5 es un link simbólico a N4” N0 bin home N2 N1 Maverick java N7 Archivo1 N3 Archivo1 N4 N5 “/home/Maverick/Archivo1”
Nombrando Entidades • Montaje • El proceso de resolución de nombres también puede ser utilizado para unir diferentes espacios de nombres. • Un “Mount Point” es un nodo directorio que en su tabla contiene una entrada que hace referencia a un nodo en otro espacio de nombres. • Un “Mounting Point” consiste en el nodo que esta siendo referenciado por algún nodo en otro espacio de nombres.
Nombrando Entidades • Montaje • Ejemplo: Espacio de Nombres Foráneo EN2 Espacio de Nombres EN1 N0 L0 home home N2 L2 Andross Andora Maverick N9:”Archivo1” L4:”code.cpp” N7 N8 L7 Archivo1 Archivo1 code.cpp N4 N9 L4 “Mounting Point” “Mount Point”
Nombrando Entidades • Montaje • Considere un par de espacios de nombres que se encuentran distribuidos en diferentes máquinas. Si se desea montar un “mount point” en EN1 que haga referencia a EN2, se necesita: • El nombre de un protocolo de acceso • El nombre de la maquina que maneja EN2. • El nombre del mounting point en el espacio de nombres foráneo, EN2.
Nombrando Entidades • Montaje • Ventaja del uso del Montaje: N0 L0 home home N2 L2 Andross Maverick Andora N9:”Archivo1” L4:”code.cpp” N7 N8 L7 Archivo1 Archivo1 code.cpp N4 N9 L4 >>cd /home/Maverick >>ls –l >>Archivo1 code.cpp
Distribución de un Espacio de Nombres • Cheriton y Mann (1989) • Capa global: Está formada por el nodo raíz y sus nodos hijos. Los nodos pertenecientes a esta capa se caracterizan por su estabilidad, dado que sus tablas de directorio cambian poco. estos nodos pueden representar organizaciones o grupo de organizaciones. • Capa Administrativa: Está formada por nodos directorio que juntos son manejados dentro de una organización. ellos se caracterizan porque ellos representan grupos de entidades que pertenecen a la misma organización o unidad de administración. • Capa Directiva: Está formada por nodos que cambian con regularidad. Su principal característica es que dichos nodos no son mantenidos solo por administradores del sistema, sino también por usuarios finales; Ya que esta capa contiene los directorios y archivos de dichos usuarios.
Implementación de Resolución de Nombres • La distribución del Espacio de nombres a través de muchos servidores de nombres afecta la implementación de Resolución de Nombre. Dos métodos: • Resolución de nombres iterativa • Resolución de nombres recursiva
El Domain Name System (DNS) • DNS es uno de los mas grandes servicios de naming distribuidos usados en la actualidad. • Es utilizado principalmente para conocer direcciones de hosts y de servidores de correos.
El Espacio de Nombres de DNS baraka.ldc.usb.ve. • Esta organizado jerárquicamente como un árbol con raíz. Una etiqueta es un String (case-insensitive) de caracteres alfanuméricos. Con un largo máximo de 63 caracteres. • El largo máximo de un nombre de camino completo no puede exceder los 255 caracteres. • La representación de un nombre de camino consiste de una lista de etiquetas separadas por puntos, comenzando con la que se encuentra mas a la derecha. • Como cada nodo en el espacio de nombres de DNS tiene exactamente un solo arco entrante (excepto la raíz que no tiene ninguno) la etiqueta del arco que llega al nodo se usa como nombre del nodo. • Un subárbol se denomina Dominio • El camino al nodo raíz es denominado Nombre del Dominio. • El contenido de un nodo esta formado por una colección de "registros de recursos"
Implementación de DNS • La implementación de DNS es muy similar a lo descrito anteriormente. En esencia este servicio puede ser dividido en una capa global y una capa de administración. la capa de manejo esta formada por sistemas de archivos locales, esta no es formalmente parte de DNS y por lo tanto no es manejada por dicho servicio. • Cada zona es implementada por un servidor de nombres, el cual es siempre replicado para mayor disponibilidad. Los cambios en una zona especifica son manejados por el servidor de nombres primario. Los cambios se realizan modificando la base de datos local de DNS del servidor primario. Los servidores de nombre secundarios no acceden a la base de datos directamente, sino que solicitan al servidor primario que transfiera su contenido. • Una base de datos de DNS es implementada como una pequeña colección de archivos , de los cuales el mas importante contiene todos los registros de recursos de todos los nodos de una zona particular. • Esto permite que los nodos sean identificados simplemente a través de su nombre de dominio.
Entidades Móviles Los mecanismos de resolución de nombres vistos hasta ahora se utilizan para entidades “fijas”, y no soportan asociaciones de nombre-dirección que cambian periódicamente
Naming vs. Locating Entities • Tipos de nombres • Nombre “amistoso” humano • Identificadores • Direcciones • DNS • Nombre “amistoso” humano Dirección
Naming vs. Locating Entities cs.vu.nl ftp
Naming vs. Locating Entities cs.vu.nl cs.unisa.edu.au ftp ftp
Naming vs. Locating Entities • Soluciones • Guardar la dirección de la nueva maquina DNS cs.vu.nl ftp.cs.unisa.edu.au ftp.cs.berkely.edu …
Naming vs. Locating Entities • Soluciones (continuación) • Guardar el nombre de la nueva maquina ftp ftp.cs.unisa.edu.au DNS cs.vu.nl ftp cs.unisa.edu.au ftp.cs.berkely.edu
Naming vs. Locating Entities nombre nombre nombre nombre dirección dirección dirección dirección
Naming vs. Locating Entities nombre nombre nombre nombre Servicio de nombres identificador Servicio de localización dirección dirección dirección dirección
Soluciones Simples • Broadcasting y Multicasting • Apuntadores: cadena de pares stub - scion
Broadcasting y Multicasting Principio usado en Address Resolution Protocol (ARP) A B Quien es “X”? X
Proceso P2 Proceso P1 Proceso P3 Proceso P4 Apuntadores: pares (stub, scion) Usado en SSPC (Stub Scion Pairs Chains)
Proceso P1 Proceso P2 Proceso P3 Apuntadores: pares (stub, scion) • Provee un mecanismo para cortar la cadena
Home-Based Approaches • Broadcasting y Multicasting díficiles de implementar eficientemente en grandes escalas de redes donde largas cadenas de apuntadores introducen problemas de desempeño y son suceptibles a enlaces rotos • Solución home location
Ejemplo Ubicación “home” del host • Manda paquete a la • ubicación “home” del host 2. Retorna dirección de ubicación actual Ubicación del cliente 3. Desvío del paquete a la ubicación actual 4. Manda próximos paquetes a la ubicación actual Ubicación actual del host
Aproximaciones de jerarquía • Mecanismo general • La red está dividida en un conjunto de dominios similar a la organización del DNS Raíz de T Nivel tope del dominio T Nodo del dominio Subdominio S de T Hoja del dominio, contenida en S
Aproximaciones de jerarquía • Mecanismo general (Continuación…) • Cada entidad es representada por un “record de ubicación” en el nodo • En una hoja se almacena la dirección actual de la entidad • En los niveles externos se guarda un apuntador al nodo del nivel inferior que contiene la entidad
Ejemplo: Búsqueda de ubicación El nodo conoce a E, la petición es mandada al hijo M El nodo no tiene record de E, la petición es mandada al padre Dominio D Pedido de búsqueda