Cliente servidor

Preview:

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