Este documento presenta una introducción al modelo de computación cliente-servidor (C/S). Explica conceptos clave como tipos de C/S, clasificación de clientes y servidores, y modelos de C/S de dos y tres planos. También resume las características distintivas de C/S, incluyendo servicio, recursos compartidos y protocolos asimétricos.
1. 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
2. 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
3. 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
4. 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
5. 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
6. 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
7. 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
8. 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
9. 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
10. 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
11. 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
12. 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
13. 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
14. 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. 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
16. 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
17. 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
18. 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
19. 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
20. 15/10/1998 PRINCIPIA INFORMATICA 20
TIPOS DE C/S
Visió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
21. 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
22. 15/10/1998 PRINCIPIA INFORMATICA 22
Servidores de archivos
Servidor
Cliente
Cliente
Aplicación
Aplicación
Servidor de
archivos
Llamadas de
archivos
C/S con
servidores de
archivos
23. 15/10/1998 PRINCIPIA INFORMATICA 23
Servidores de bases de datos
Servidor
Cliente
Cliente
Aplicación
Aplicación
Servidor de
DBMS
Llamadas
de SQL
C/S con
servidores de
bases de datos
24. 15/10/1998 PRINCIPIA INFORMATICA 24
Servidores de transacciones
Servidor
Cliente
Cliente
Aplicación
Aplicación
DBMS
Transacciones
Monitor de
TP
C/S con
servidores de
transacciones
25. 15/10/1998 PRINCIPIA INFORMATICA 25
Servidores de groupware
Servidor
Cliente
Cliente
Aplicación
Aplicación
Servidor de
groupware
Mensajes de
groupware
C/S con
servidores de
groupware
26. 15/10/1998 PRINCIPIA INFORMATICA 26
Servidores de objetos
Servidor
Cliente
Cliente
Aplicación
Aplicación
Invocación de
método
remoto
Objeto
Objeto
ORB
ORB
ORB
ObjetoObjeto
ObjetoObjetoObjetoC/S con objetos
distribuidos
27. 15/10/1998 PRINCIPIA INFORMATICA 27
Servidores de Web
C/S con
servidores Web
Servidor
Browser
Java
HTTP sobre
TCP/IP
Browser Internet
Documentos
de HTML
Aplicación
CGI
HTML y
formas
28. 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
29. 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
30. 15/10/1998 PRINCIPIA INFORMATICA 30
CLASIFICACIÓN DE LOS
CLIENTES Y SERVIDORES
Servidores 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
31. 15/10/1998 PRINCIPIA INFORMATICA 31
Servidores amplios y clientes
grandes
AplicaciónGUI Datos
Cliente Servidor
Cliente
grande
Servidor
amplio
32. 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
33. 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
34. 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
35. 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
36. 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
37. 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
38. 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
39. 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
40. 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
41. 15/10/1998 PRINCIPIA INFORMATICA 41
MODELOS DE C/S
Visión global
Modelo para micro empresas
Modelo para pequeñas empresas y
departamentos
Modelo para empresas grandes
Modelo para empresas sin limitaciones
42. 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
43. 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
44. 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
45. 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
Cliente
Servidores
46. 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
47. 15/10/1998 PRINCIPIA INFORMATICA 47
Modelo para empresas sin
limitaciones (2)
Cliente Servidor Cliente Servidor
Cliente ServidorCliente Servidor
48. 15/10/1998 PRINCIPIA INFORMATICA 48
DENTRO DE C/S
Infraestructura del software de C/S
Infraestructura del middleware servidor a
servidor
49. 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
NOS
Directorio Seguridad
Archivos
Dist.
RPC
Manejo de
mensajes
Igual a
igual
NetBios TCP/IP IPX/SPX SNA
GUI/OOUI
OS
DSM
Visualizador Web
OBJETOS
OS
DSM
Web
Groupware
OLTP
DBMS
50. 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
NOS
Directorio Seguridad
Archivos
Dist.
RPC
Manejo 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