Upload
alejandro-dominguez
View
347
Download
2
Embed Size (px)
Citation preview
15/10/1998 PRINCIPIA INFORMATICA 1
C/S:CLIENTE/SERVIDOR
ALEJANDRO DOMÍNGUEZ
Curso impartido en la Universidad Autónoma de Ciudad del Carmen, Campeche
15/10/1998 PRINCIPIA INFORMATICA 2
Temario
La computación C/S
¿Qué es C/S?
Tipos de C/S
Clasificación de los clientes y servidores
Modelos de C/S
Dentro de C/S
15/10/1998 PRINCIPIA INFORMATICA 3
LA COMPUTACIÓN C/S
Las diferentes versiones de C/S
La visión real de C/S
El servidor
Sistemas de información y C/S
15/10/1998 PRINCIPIA INFORMATICA 4
Las diferentes visiones de C/S
• Para los adoradores de las PC’s significa
– el abandono de toda macro computadora
incapaz de adaptarse al entorno de escritorio
– la desaparición de la computadora centralizada
• Para los fanáticos de las macro
computadoras significa
– el surgimiento de una nueva especie de macro
computadoras en red “renacidas” que harán
volver al redil a las PC’s de las empresas
15/10/1998 PRINCIPIA INFORMATICA 5
La visión real de C/S
• Para los ecuánimes significa
– una nueva era de coexistencia y apertura en la que todos pueden participar
• La realidad es...
– C/S proporciona un entorno abierto y flexible en el que mezclar e igualar es la regla
– Las aplicaciones del cliente corren en PC’s y otras máquinas de redes LAN
– Los servidores también corren en LAN y saben cómo comunicarse con PC’s
15/10/1998 PRINCIPIA INFORMATICA 6
El servidor
• Las PC’s mas potentes representan super
servidores naturales
• Para que las macro computadoras tengan éxito
como servidores deben aprender a convivir en la
LAN con las PC’s
– Los servidores con base a macro computadoras ya no
podrán tratar a las PC’s como terminales tontas
• La mejor plataforma de servidores es la tenga el
mejor costo/desempeño y la mayor calidad de
servicios
15/10/1998 PRINCIPIA INFORMATICA 7
Sistemas de información y C/S
(1)
• El desarrollo de aplicaciones C/S requiere
de habilidades híbridas...
– Procesamiento de transacciones
– Diseño de bases de datos
– Experiencia en comunicación
– Conocimiento de GUI’s
– Conocimiento de objetos distribuidos e Internet
15/10/1998 PRINCIPIA INFORMATICA 8
Sistemas de información y C/S
(2)
• La computación C/S puede rendir
mejores resultados en organizaciones de
SI en dos direcciones
– SI de línea para la administración y
despliegue de sistemas departamentales
– SI empresarial para la administración de la
red global y el establecimiento de los
estándares de interoperabilidad
– Así las LAN locales pueden formar parte de
la red global de servicios y proveedores
múltiples
15/10/1998 PRINCIPIA INFORMATICA 9
¿QUÉ ES C/S?
Visión conjunta
Servicio
Recursos compartidos
Protocolos asimétricos
Transparencia de ubicación
Mezcla e igualdad
Intercambios basados en mensajes
Encapsulamiento de servicios
Facilidad de escalabilidad
Integridad
15/10/1998 PRINCIPIA INFORMATICA 10
Visión conjunta
• No existe consenso sobre el significado de cada
término
• Definición a seguir:
– Clientes y servidores son entidades lógicas
independientes que operan en conjunto a través de una
red para realizar una tarea
• Sus características distintivas son...
– Servicio, recursos compartidos, protocolos asimétricos,
transparencia de ubicación, mezcla e igualdad,
intercambios basados en mensajes, encapsulamiento de
servicios, facilidad de escalabilidad, integridad
15/10/1998 PRINCIPIA INFORMATICA 11
Servicio
• C/S es una relación entre procesos
ejecutados en equipos distintos
• El proceso del servidor hace de éste
un proveedor de servicios
• El cliente es un consumidor de
servicios
• Conclusión:
– C/S aporta una clara distinción de
funciones con base a la idea de servicio
15/10/1998 PRINCIPIA INFORMATICA 12
Recursos compartidos
• Un servidor puede...
– Atender a muchos clientes al mismo tiempo
– regular el acceso de clientes a recursos
compartidos
15/10/1998 PRINCIPIA INFORMATICA 13
Protocolos asimétricos
• Entre clientes y servidor se
establece una relación de
“muchos a uno”
• Son siempre los clientes los que
inician el diálogo al solicitar un
servicio
• Los servidores aguardan
pasivamente las solicitudes de los
clientes
15/10/1998 PRINCIPIA INFORMATICA 14
Transparencia de ubicación
• El servidor puede residir en el mismo equipo del cliente o en uno distinto a lo largo de una red
• En caso necesario, el software de C/S suele ocultarles a los clientes la ubicación del servidor mediante el redireccionamiento de las llamadas de servicio
• Un programa puede ser un cliente, un servidor o ambos
15/10/1998 PRINCIPIA INFORMATICA 15
Mezcla e igualdad
• El software ideal de C/S es independiente
del hardware o de las plataformas de
software del sistema operativo
• Se debe estar en condiciones de mezclar e
igualar plataformas de cliente y de servidor
15/10/1998 PRINCIPIA INFORMATICA 16
Intercambios basados en
mensajes
• Clientes y servidores son sistemas
acoplados que interactúan a través de un
mecanismo de transmisión de mensajes
• El mensaje es el mecanismo de entrega para
las solicitudes y respuestas de servicio
15/10/1998 PRINCIPIA INFORMATICA 17
Encapsulamiento de servicios
• Un mensaje le indica a un servidor qué
servicio se solicita
• Los servidores pueden ser sustituidos sin
afectar a los clientes
– siempre y cuando la interfaz para la publicación
del mensaje no cambie
15/10/1998 PRINCIPIA INFORMATICA 18
Facilidad de escalabilidad
• Los sistemas C/S pueden escalarse
horizontal o verticalmente
• Escalabilidad horizontal
– La adición o la eliminación de estaciones de
trabajo del cliente con apenas un ligero impacto
en el desempeño
• Escalabilidad vertical
– Significa migrar a un equipo servidor mas
grande y veloz o a servidores múltiples
15/10/1998 PRINCIPIA INFORMATICA 19
Integridad
• El código y los datos del servidor se
conservan centralmente, resultando en...
– un mantenimiento de menor costo
– la protección de la integridad de los datos
compartidos
• Al mismo tiempo los clientes mantienen su
individualidad e independencia
15/10/1998 PRINCIPIA INFORMATICA 20
TIPOS DE C/SVisión global
Servidores de archivos
Servidores de bases de datos
Servidores de transacciones
Servidores de groupware
Servidores de objetos
Servidores de Web
Middleware
Middleware de servidores específicos
15/10/1998 PRINCIPIA INFORMATICA 21
Visión global
• A muchos sistemas con muy diferentes
arquitecturas se les ha llamado “C/S”
• Las arquitecturas mas comunes son– Servidores de archivos
– Servidores de bases de datos
– Servidores de transacciones
– Servidores de groupware
– Servidores de objetos
– Servidores Web
15/10/1998 PRINCIPIA INFORMATICA 22
Servidores de archivosS
ervid
or
Cliente
Cliente
Aplicación
Aplicación
Servidor de
archivos
Llamadas de
archivos
C/S con servidores de
archivos
15/10/1998 PRINCIPIA INFORMATICA 23
Servidores de bases de datosS
ervid
or
Cliente
Cliente
Aplicación
Aplicación
Servidor de
DBMS
Llamadas
de SQL
C/S con servidores de bases de datos
15/10/1998 PRINCIPIA INFORMATICA 24
Servidores de transaccionesS
ervid
or
Cliente
Cliente
Aplicación
Aplicación
DBMS
Transacciones
Monitor deTP
C/S con servidores de transacciones
15/10/1998 PRINCIPIA INFORMATICA 25
Servidores de groupwareS
ervid
or
Cliente
Cliente
Aplicación
Aplicación
Servidor de
groupware
Mensajes de
groupware
C/S con servidores de
groupware
15/10/1998 PRINCIPIA INFORMATICA 26
Servidores de objetosS
ervid
or
Cliente
Cliente
Aplicación
Aplicación
Invocación de método remoto
Objeto
Objeto
ORB
ORB
ORB
ObjetoObjeto
ObjetoObjetoObjetoC/S con objetos distribuidos
15/10/1998 PRINCIPIA INFORMATICA 27
Servidores de Web
C/S con servidores Web
Serv
idor
Browser
Java
HTTP sobre TCP/IP
Browser Internet
Documentos
de HTML
Aplicación
CGI
HTML yformas
15/10/1998 PRINCIPIA INFORMATICA 28
Middleware
• Es un término vago que abarca todo el software
distribuido necesario para el soporte entre clientes
y servidores
• Es el componente diagonal (/) de C/S
• El middleware general incluye
– Pilas de comunicación, directorios distribuidos,
servicios de autenticación, horario de la red, llamadas a
procedimientos remotos, servicios en cola
– Extensiones del NOS, como los servicios distribuidos
de archivos e impresión
15/10/1998 PRINCIPIA INFORMATICA 29
Middleware de servicios
específicos
• Para BD:– ODBC, DRDA,
EDA/SQL, SAG/CLI y Oracle Glue
• Para OLTP:– ATMI y /WS de Tuxedo,
Transactional RPC de Encina y TxRPC y XATMI de X/Open
• Para groupware:– MAPI, VIM, VIC, SMTP
y las llamadas de Lotus notes
• Para objetos– CORBA de OMG y
Network OLE (o DCOM) de Microsoft)
• Para Internet– HTTP, S-HTTP, SSL
• Para administración de sistemas– SNMP, CMIP, ORB
15/10/1998 PRINCIPIA INFORMATICA 30
CLASIFICACIÓN DE LOS
CLIENTES Y SERVIDORESServidores amplios y clientes grandes
Servidores amplios
Clientes grandes
Arquitecturas de 2 y 3 planos
C/S de 2 planos
C/S de 3 planos
C/S Web vs. C/S tradicional
15/10/1998 PRINCIPIA INFORMATICA 31
Servidores amplios y clientes
grandes
AplicaciónGUI Datos
Cliente Servidor
Clientegrande
Servidoramplio
15/10/1998 PRINCIPIA INFORMATICA 32
Servidores amplios (1)
• En el modelo de servidor amplio se le atribuyen mas funciones al servidor– Ejemplos: servidores de groupware ,
transacciones y Web
15/10/1998 PRINCIPIA INFORMATICA 33
Servidores amplios (2)
• Los servidores amplios son mas fáciles de administrar y desplegar en red– ya que la mayor parte del código corre en los
servidores
– reducen al mínimo los intercambios en red mediante la creación de niveles de servicio mas abstractos
• Por ejemplo, los servidores de transacciones y de objetos encapsulan la base de datos, en lugar de exportar datos en bruto, exportan procedimientos
– El cliente aporta el GUI e interactúa con el servidor a través de llamadas a procedimientos remotos
15/10/1998 PRINCIPIA INFORMATICA 34
Clientes grandes (1)
• En el modelo de cliente grande se procede a la inversa– Ejemplos: servidores de bases
de datos y de archivos
• Son la modalidad mas común de C/S
• La mayor parte de la aplicación corre del lado del cliente
15/10/1998 PRINCIPIA INFORMATICA 35
Clientes grandes (2)
• Se emplean en software de apoyo de decisiones y personal
• Ofrece flexibilidad y oportunidades para crear herramientas frontales que les permita a los usuarios finales crear sus propias aplicaciones
• Los objetos distribuidos pueden ser de ambas clases
15/10/1998 PRINCIPIA INFORMATICA 36
Arquitecturas de 2 y 3 planos (1)
• Arquitecturas de 2 y 3 planos son términos
alternativos para designar los modelos de
clientes grandes y servidores amplios– Todo se reduce a la forma en el que la
aplicación C/S se divide en unidades
funcionales que se asignan al cliente o a uno o
mas de los servidores• Ejemplos de unidades funcionales son la interfaz
gráfica del usuario, la lógica de negocios, datos
compartidos
15/10/1998 PRINCIPIA INFORMATICA 37
Arquitecturas de 2 y 3 planos (2)
• La existencia de arquitecturas en planos
múltiples depende de– la forma en que divida la aplicación
– del middleware que se emplee para la
comunicación entre los planos
15/10/1998 PRINCIPIA INFORMATICA 38
C/S de 2 planos
• La lógica de aplicación está integrada en...
– La interfaz del usuario en el cliente, ó
– La base de datos en el servidor, ó
– En ambas
• Ejemplos
– Servidores de archivos
– Servidores de bases de datos con
procedimientos almacenados
2 tier
15/10/1998 PRINCIPIA INFORMATICA 39
C/S de 3 planos
• La lógica o proceso de la aplicación ocupa el plano intermedio– Está separada tanto de los datos como de la interfaz del usuario
– Los procesos se pueden desplegar y administrar de forma autónoma, sin relación con la GUI y la base de datos
• En teoría, son de mas fácil ampliación y mas robustos y flexibles
• Pueden integrar datos de múltiples fuentes
• Ejemplos– Los monitores de TP
– Los objetos distribuidos
– El Web
15/10/1998 PRINCIPIA INFORMATICA 40
C/S Web vs. C/S tradicionalCaracterística de aplicación Cliente/servidor de
Ethernet
Cliente/servidor Web
# de clientes por aplicación Menor a 100 Millones
# de servidores por aplicación 1 ó 2 Mayor a 100 000
Geografía Local Global
Interacciones servidor a servidor No Sí
Middleware SQL y procedimientos ORB sobre Internet
Arquitectura cliente/servidor 2 planos 3 o n planos
Actualizaciones para transacciones Poco frecuentes Amplias
Contenido de multimedia Bajo Alto
Agentes móviles No Sí
Interfaz del cliente GUI OOUI
Horizonte temporal 1985 a la fecha 1997-2000
15/10/1998 PRINCIPIA INFORMATICA 41
MODELOS DE C/SVisión global
Modelo para micro empresas
Modelo para pequeñas empresas y
departamentos
Modelo para empresas grandes
Modelo para empresas sin limitaciones
15/10/1998 PRINCIPIA INFORMATICA 42
Visión global
• Modelos de C/S para
– Micro empresas
– Pequeñas empresas y departamentos
– Para empresas grandes
– Para empresas sin limitaciones
Cliente Servidor
Los tres elementos básicos de C/S
15/10/1998 PRINCIPIA INFORMATICA 43
Modelo para micro empresas
• En la misma máquina corren– el software
– el middleware
– la mayoría de los servicios de negocios
• Se sugiere para– empresas individuales
– oficinas domesticas
– usuarios móviles
Cliente Servidor
15/10/1998 PRINCIPIA INFORMATICA 44
Modelo para pequeñas empresas
y departamentos
• Implementación clásica de elementos de C/S único de Ethernet
• Se le emplea en
– pequeñas empresas
– departamentos
– sucursales
• Es la modalidad que predomina en la actualidad
Cliente Servidor
15/10/1998 PRINCIPIA INFORMATICA 45
Modelo para empresas grandes
• Implementación de elementos de C/S de servidores múltiples
• Los servidores le presentan al cliente una imagen de sistema único
• Se le puede dispersar a todo lo largo de la empresa
ClienteServidores
15/10/1998 PRINCIPIA INFORMATICA 46
Modelo para empresas sin
limitaciones (1)
• Transforma todas la máquinas en cliente y
servidor al mismo tiempo
• Los agentes personales de cada máquina
manejarán todas las negociaciones con otros
agentes en cualquier parte del mundo
• Este sueño está a punto de hacerse realidad
15/10/1998 PRINCIPIA INFORMATICA 47
Modelo para empresas sin
limitaciones (2)
Cliente Servidor Cliente Servidor
Cliente ServidorCliente Servidor
15/10/1998 PRINCIPIA INFORMATICA 48
DENTRO DE C/S
Infraestructura del software de C/S
Infraestructura del middleware servidor a
servidor
15/10/1998 PRINCIPIA INFORMATICA 49
Infraestructura del software de
C/S
Cliente Servidor
Servicios específicos
DSM
Pilas de transporte
ODBC TxRCP Correo
ORB HTTP
SNMP CMIP Tivoli/ORB
NOSDirectorio Seguridad
Archivos
Dist.
RPCManejo de
mensajes
Igual a
igual
NetBios TCP/IP IPX/SPX SNA
GUI/OOUI
OS
DSM
Visualizador Web
OBJETOS
OS
DSM
Web
Groupware
OLTP
DBMS
15/10/1998 PRINCIPIA INFORMATICA 50
Infraestructura del middleware
servidor a servidor
Servidor Servidor
Servicios específicos
DSM
Pilas de transporte
ODBC TxRCP Correo
ORB HTTP
SNMP CMIP Tivoli/ORB
NOSDirectorio Seguridad
Archivos
Dist.
RPCManejo de
mensajes
Igual a
igual
NetBios TCP/IP IPX/SPX SNA
OBJETOS
OS
DSM
Web
Groupware
OLTP
DBMS
OBJETOS
OS
DSM
Web
Groupware
OLTP
DBMS