SlideShare una empresa de Scribd logo
1
Sistemas Cliente Servidor
Introducción
Redes II
2
Sistemas Cliente/Servidor
La siguiente presentación, es solo una guía.
Para estudiar, utilice la siguiente Bibliografía:
Título Autor(es) Editorial Edición
Redes de Computadoras. Un enfoque
descendente. 5ª Ed.
Kurose, James F; Ross, Keiith
W
Pearson 2010,
España
Redes de Computadoras. 5ª Ed. Tanenbaum, Andrew S.;
Wetherall David J.
Pearson 2012,
México
Sistemas Distribuidos. Conceptos y
Diseño. 3ª Ed.
Coulouris, George; Dollimore,
Jean; Kindberg, Tim
Pearson
Educación
2001,
España
Sistemas Distribuidos. Principios y
Paradigmas. 2ª Ed.
Tanenbaum, Andrew S.; Van
Steen, Maarten
Pearson
Educación
2008,
México
3
Contenido
 Definición de Sistemas Distribuidos.
 Fundamentos de arquitectura cliente servidor
 Elementos de la Arquitectura Cliente/Servidor
 Características del modelo Cliente/Servidor
 Ventajas y Desventajas del modelo
Cliente/Servidor
 Servicios basados en Cliente/Servidor
Sistemas Cliente/Servidor
4
Cliente Servidor, Intro
Dentro de los sistemas distribuidos están:
El modelo Cliente Servidor
El modelo igual a igual (peer to peer o P2P)
Sistemas Cliente/Servidor
5
Definición de Sistema Distribuido
 “Un sistema en el cual componentes conectados a través de
una red de computadoras se comunican y coordinan sus
acciones mediante el intercambio de mensajes” [Coulouris]
 Concurrencia de componentes.
 Ausencia de reloj global
 Independencia de fallos en sus componentes.
 “Un sistema distribuido es una colección de computadoras
independientes que dan al usuario la impresión de constituir
un único sistema coherente.” [Tanenbaum]
 Computadoras independientes y autónomas interconectadas por una red.
 Software especialmente diseñado para proveer la visión de un único
sistema.
Sistemas Cliente/Servidor
6
Definición (ii)
 Una red de computadoras NO es un sistema
distribuido.
 Red de computadoras
 Infraestructura que sirve a un conjunto de computadoras
interconectadas que usan un conjunto común de protocolos
de comunicaciones.
 Sistema Distribuido
 Sistema compuesto por un conjunto de computadoras
interconectadas que usan un conjunto común de protocolos
distribuidos que los asisten en la ejecución de actividades
distribuidas.
Sistemas Cliente/Servidor
8
Características
 Concurrencia: Esta característica de los sistemas
distribuidos permite que los recursos disponibles en la red
puedan ser utilizados simultáneamente por los usuarios y/o
agentes que interactúan en la red.
 Carencia de reloj global: Las coordinaciones para la
transferencia de mensajes entre los diferentes componentes
para la realización de una tarea, no tienen una temporización
general, está más bien distribuida en los componentes.
 Fallos independientes de los componentes: Cada
componente del sistema pudiera fallar de manera
independientemente, y los demás continuar ejecutando sus
acciones. Esto permite el logro de las tareas con mayor
efectividad, pues el sistema en su conjunto continua
trabajando.
Sistemas Cliente/Servidor
10
Desafíos en la construcción de
los sistemas distribuidos (i)
 Heterogeneidad
 Extensibilidad
 Seguridad
 Tratamiento de Concurrencia
 Transparencia
Sistemas Cliente/Servidor
11
Desafíos en la construcción de
los sistemas distribuidos (i)
 Heterogeneidad: debe construirse desde una variedad de
diferentes redes, sistemas operativos, hardware de
computador y lenguajes de programación. Los protocolos de
comunicación de Internet enmascaran las diferencias entre
redes y el middleware puede tratar con las diferencias
restantes.
 Extensibilidad: los sistemas distribuidos deberían ser
extensibles, el primer paso es la publicación de las interfaces
de sus componentes, pero la integración de componentes
escritos por diferentes programadores es un auténtico reto.
 Seguridad: se puede emplear encriptación para proporcionar
una protección adecuada a los recursos compartidos y
mantener secreta la información sensible cuando se
transmite un mensaje a través de la red. Los ataques de
denegación de servicio son aún un problema.
Sistemas Cliente/Servidor
12
Característica: Heterogeneidad
 Es una capa de software entre el sistema operativo,
comunicaciones, etc y la capa de aplicación/usuario, para
proveer una vista única del sistema (Middleware)
Sistemas Cliente/Servidor
13
Desafíos en la construcción de
los sistemas distribuidos (ii)
 Escalabilidad: un sistema distribuido es escalable si el coste
de añadir un usuario es una cantidad constante en términos
de recursos que se deberán añadir. Los algoritmos empleados
para acceder a los datos compartidos deberían evitar cuellos
de botella y los datos deberían estar estructurados
jerárquicamente para dar los mejores tiempos de acceso. Los
datos frecuentemente accedidos pudieran estar replicados.
 Tratamiento de fallos: cualquier proceso, computador o red
puede fallar independientemente de los otros. En
consecuencia cada componente necesita estar al tanto de las
formas posibles en que pueden fallar los componentes de los
que depende y estar diseñado para tratar apropiadamente
con cada uno de estos fallos.
Sistemas Cliente/Servidor
14
Desafíos en la construcción de
los sistemas distribuidos (iii)
 Concurrencia: la presencia de múltiples usuarios en un
sistema distribuido es una fuente de peticiones concurrentes
a sus recursos. Cada recurso debe estar diseñado para ser
seguro en un entorno concurrente.
 Transparencia: el objetivo es que ciertos aspectos de la
distribución sean invisibles al programador de aplicaciones de
modo que sólo necesite ocuparse del diseño de su aplicación
particular. Por ejemplo, no debe ocuparse de su ubicación o
los detalles sobre cómo se accede a sus operaciones por
otros componentes, o si será replicado o migrado. Incluso los
fallos de las redes y los procesos pueden presentarse a los
programadores de aplicaciones en forma de excepciones,
aunque deban de ser tratados.
Sistemas Cliente/Servidor
16
Arquitectura Cliente Servidor
 Definición desde un punto de vista conceptual:
 Es un modelo para construir sistemas de información,
que se sustenta en la idea de repartir el tratamiento
de la información y los datos por todo el sistema
informático, permitiendo mejorar el rendimiento del
sistema global de información.
Sistemas Cliente/Servidor
17
Arquitectura Cliente Servidor
 Definición en términos de arquitectura:
 Los distintos aspectos que caracterizan a una
aplicación (proceso, almacenamiento, control y
operaciones de entrada y salida de datos) en el
sentido más amplio, están situados en más de un
computador, los cuales se encuentran
interconectados mediante una red de comunicaciones.
Sistemas Cliente/Servidor
18
Arquitectura Cliente Servidor
IBM define al modelo Cliente/Servidor
Es la tecnología que proporciona al usuario final el
acceso transparente a las aplicaciones, datos, servicios
de cómputo o cualquier otro recurso del grupo de
trabajo y/o, a través de la organización, en múltiples
plataformas.
El modelo soporta un medio ambiente distribuido en el
cual los requerimientos de servicio hechos por
estaciones de trabajo inteligentes o "clientes'', resultan
en un trabajo realizado por otros computadores
llamados servidores.
Sistemas Cliente/Servidor
19
Arquitectura Cliente Servidor
Análisis de algunos conceptos mencionados en las definiciones:
Un Cliente es el que inicia un requerimiento de servicio. El
requerimiento inicial puede convertirse en múltiples requerimientos
de trabajo a través de redes LAN o WAN. La ubicación de los datos
o de las aplicaciones es totalmente transparente para el cliente.
Un Servidor es cualquier recurso de cómputo dedicado a responder
a los requerimientos del cliente. Los servidores pueden estar
conectados a los clientes a través de redes LANs o WANs, para
proveer de múltiples servicios a los clientes tales como impresión,
acceso a bases de datos, fax, procesamiento de imágenes, etc.
Un servidor no es necesariamente un dispositivo físico (una
computadora) sino que hay que entender al servidor como un
proceso que se encarga de atender las peticiones de un cliente.
Sistemas Cliente/Servidor
20
Elementos de la Arquitectura
Cliente/Servidor
Una arquitectura es un entramado de componentes
funcionales que aprovechando diferentes estándares,
convenciones, reglas y procesos, permite integrar una
amplia gama de productos y servicios informáticos, de
manera que pueden ser utilizados eficazmente dentro
de la organización.
Sistemas Cliente/Servidor
21
Elementos de la Arquitectura
Cliente/Servidor
La aplicación de un sistema de información está caracterizada
por tres componentes básicos:
• Presentación/Captación de Información
• Procesos
• Almacenamiento de la Información
Estos componentes se integran en una arquitectura
Cliente/Servidor en base a los siguientes elementos que la
caracterizan:
• Puestos de Trabajo
• Comunicaciones
• Servidores
Sistemas Cliente/Servidor
22
Elementos de la Arquitectura
Cliente/Servidor
• El Puesto de Trabajo o Cliente “Una Estación de trabajo o
microcomputador (PC: Computador Personal) conectado a una
red, que le permite acceder y gestionar una serie de recursos”,
el cual se perfila como un puesto de trabajo universal. Nos
referimos a un microcomputador conectado al sistema de
información y en el que se realiza una parte mayoritaria de los
procesos.
Sistemas Cliente/Servidor
23
Elementos de la Arquitectura
Cliente/Servidor
• Los Servidores o Back-End. «Una máquina que suministra una
serie de servicios como Bases de Datos, Archivos,
Comunicaciones,...)». Los Servidores, según la especialización y
los requerimientos de los servicios que debe suministrar pueden
ser:
o Mainframes
o Minicomputadoras
o Especializados (dispositivos de red, imagen, etc.)
Una característica a considerar es que los diferentes servicios,
según el caso, pueden ser suministrados por un único Servidor o
por varios Servidores especializados.
Sistemas Cliente/Servidor
24
Elementos de la Arquitectura
Cliente/Servidor
Las Comunicaciones en sus dos vertientes:
• Infraestructura de redes
Componentes Hardware y Software que garantizan la conexión
física y la transferencia de datos entre los distintos equipos de
la red.
• Infraestructura de comunicaciones
Componentes Hardware y Software que permiten la
comunicación y su gestión, entre los clientes y los servidores.
Sistemas Cliente/Servidor
25
Características del modelo
Cliente/Servidor
En el modelo Cliente/Servidor podemos encontrar las siguientes
características:
1. El Cliente y el Servidor pueden actuar como una sola entidad y
también pueden actuar como entidades separadas, realizando
actividades o tareas independientes.
2. Las funciones de Cliente y Servidor pueden estar en
plataformas separadas, o en la misma plataforma.
3. Un servidor proporciona servicio a múltiples clientes en forma
concurrente.
4. Cada plataforma puede ser escalable independientemente. Los
cambios realizados en las plataformas de los Clientes o de los
Servidores, ya sean por actualización o por reemplazo tecnológico,
se realizan de una manera transparente para el usuario final.
Sistemas Cliente/Servidor
26
Características del modelo
Cliente/Servidor
5. La interrelación entre el hardware y el software están
basados en una infraestructura poderosa, de tal forma que el
acceso a los recursos de la red no muestra la complejidad de los
diferentes tipos de formatos de datos y de los protocolos.
Un sistema de servidores realiza múltiples funciones al mismo
tiempo que presenta una imagen de un sólo sistema a las
estaciones Clientes.
Esto se logra combinando los recursos de cómputo que se
encuentran físicamente separados en un sistema lógico,
proporcionando de esta manera el servicio más efectivo para el
usuario final.
Las funciones Cliente/Servidor pueden ser dinámicas. Ejemplo,
un servidor puede convertirse en cliente cuando realiza la
solicitud de servicios a otras plataformas dentro de la red.
Sistemas Cliente/Servidor
27
Características del modelo
Cliente/Servidor
6. Además se constituye como el nexo de unión más adecuado
para reconciliar los sistemas de información basados en
mainframes o minicomputadoras, con aquellos otros sustentados
en entornos informáticos pequeños y estaciones de trabajo.
7. Designa un modelo de construcción de sistemas informáticos
de carácter distribuido.
Sistemas Cliente/Servidor
28
Características del modelo
Cliente/Servidor
8. Su representación típica es un centro de trabajo (PC), en
donde el usuario dispone de sus propias aplicaciones de oficina y
sus propias bases de datos, sin dependencia directa del sistema
central de información de la organización, al tiempo que puede
acceder a los recursos de este host central y otros sistemas de
la organización ponen a su servicio.
En consecuencia, parte del control de las aplicaciones se
transfieren del computador central (servidor) a los PCs o
estaciones de trabajo (clientes), adquiriendo estas plataformas,
entonces, un papel protagonista en conjunto del sistema de
información.
Sistemas Cliente/Servidor
29
Características del modelo
Cliente/Servidor
En conclusión, Cliente/Servidor puede incluir múltiples
plataformas, bases de datos, redes y sistemas operativos. Estos
pueden ser de distintos proveedores, en arquitecturas
propietarias y no propietarias y funcionando todos al mismo
tiempo. Por lo tanto, su implantación involucra diferentes tipos
de estándares:
APPC, TCP/IP, OSI, NFS, DRDA corriendo sobre DOS, OS/2,
Windows o PC UNIX, en Token-Ring, Ethernet, FDDI o medio
coaxial, sólo por mencionar algunas de las posibilidades.
Dependiendo de estas características y de su combinación, es el
grado de complejidad de una solución C/S.
Sistemas Cliente/Servidor
30
Modelo Cliente/Servidor
El modelo cliente/servidor admite varias modificaciones debido
a:
 La partición de datos o la replicación en servidores
cooperativos.
 El uso de caché para los datos en clientes y servidores proxy.
 El uso de código y agentes móviles.
 Los requisitos para añadir o eliminar dispositivos móviles de
forma conveniente.
Sistemas Cliente/Servidor
31
Modelo Cliente/Servidor
 La arquitectura cliente/servidor es la más importante, y
continúa siendo la más ampliamente utilizada.
Sistemas Cliente/Servidor
32
Modelo Cliente/Servidor
 La replicación se utiliza
para aumentar las
prestaciones y
disponibilidad y para
mejorar la tolerancia a
fallos.
 Proporciona múltiples
copias consistentes de
datos en proceso que se
ejecutan en diferentes
computadoras. Por
ejemplo, servidores con
la base de datos
replicada en memoria..
Sistemas Cliente/Servidor
Servicios proporcionados por múltiples servidores
33
Memoria caché
 Un caché es un almacén de objetos de datos utilizados
recientemente, y que se encuentra más próximo que los objetos
en sí. Al recibir un objeto nuevo en una computadora se añade
al almacén del caché, reemplazando, si fuera necesario, algunos
objetos existentes.
 Cuando se necesita un objeto en un proceso cliente, el servicio
caché comprueba inicialmente la caché y le proporciona el
objeto de una copia actualizada. Si no, se buscará una copia
actualizada.
 Los cachés pueden estar ubicados en cada cliente o en un
servidor proxy que puede compartirse desde varios clientes.
Sistemas Cliente/Servidor
34
Cliente/Servidor: ejemplo
 Un ejemplo podría ser el funcionamiento de un juego online. Si
existen dos servidores de juego, cuando un usuario lo descarga
y lo instala en su computadora pasa a ser un cliente.
 Si tres personas juegan en un solo computador.
 ¿Cuantos servidores existirían?
 ¿Cuantos clientes?
 ¿Cuantos usuarios?
 Existirían: dos servidores, un cliente y tres usuarios.
 Si cada usuario instala el juego en su propio computador.
 ¿Cuantos servidores existirían?
 ¿Cuantos clientes?
 ¿Cuantos usuarios?
 Existirían dos servidores, tres clientes y tres usuarios.
Sistemas Cliente/Servidor
35
Ventajas y Desventajas del
modelo Cliente/Servidor
El esquema Cliente/Servidor posee las siguientes ventajas:
a) Uno de los aspectos que más ha promovido el uso de sistemas
Cliente/Servidor, es la existencia de plataformas de hardware
cada vez más baratas.
Además, se pueden utilizar componentes, tanto de hardware como
de software, de varios fabricantes, lo cual contribuye
considerablemente a la reducción de costos y favorece la
flexibilidad en la implantación y actualización de soluciones.
b) El esquema Cliente/Servidor facilita la integración entre
sistemas diferentes y comparte información permitiendo, por
ejemplo que las máquinas ya existentes puedan ser utilizadas pero
con interfaces más amigables al usuario. De esta manera, podemos
integrar PCs con sistemas medianos y grandes, sin necesidad de que
todos tengan que utilizar el mismo sistema operacional.
Sistemas Cliente/Servidor
36
Ventajas y Desventajas del
modelo Cliente/Servidor
c) Al favorecer el uso de interfaces gráficas interactivas, los
sistemas construidos bajo este esquema tienen mayor interacción
más intuitiva con el usuario. El uso de interfaces gráficas para el
usuario, el esquema Cliente/Servidor presenta la ventaja, con
respecto a uno centralizado, de que no es siempre necesario
transmitir información gráfica por la red pues esta puede residir
en el cliente, lo cual permite aprovechar mejor el ancho de banda
de la red.
d) Una ventaja adicional del uso del esquema Cliente/Servidor es
que es más rápido el mantenimiento y el desarrollo de aplicaciones,
pues se pueden emplear las herramientas existentes (por ejemplo
los servidores de SQL o las herramientas de más bajo nivel como
los sockets o el RPC).
Sistemas Cliente/Servidor
37
Ventajas y Desventajas del
modelo Cliente/Servidor
e) La estructura inherentemente modular facilita además la
integración de nuevas tecnologías y el crecimiento de la
infraestructura computacional, favoreciendo así la escalabilidad de
las soluciones.
f) El esquema Cliente/Servidor contribuye además, a proporcionar,
a los diferentes departamentos de una organización, soluciones
locales, pero permitiendo la integración de la información relevante
a nivel global.
Sistemas Cliente/Servidor
38
Ventajas y Desventajas del
modelo Cliente/Servidor
El esquema Cliente/Servidor tiene algunos inconvenientes que se
mencionan a continuación:
a) Tiene escasas herramientas para la administración y ajuste del
desempeño de los sistemas.
b) En el desarrollo de aplicaciones Cliente/Servidor se deben
considerar los aspectos, que se mencionan a continuación:
· Los clientes y los servidores deberán utilizar el mismo
mecanismo (por ejemplo sockets o RPC), lo cual implica que se
deben tener mecanismos generales que existan en diferentes
plataformas.
· Además, hay que tener estrategias para el manejo de errores y
para mantener la consistencia de los datos. La seguridad de un
esquema Cliente/Servidor es muy importante. Por ejemplo, se
deben hacer verificaciones en el cliente y en el servidor. También
se puede recurrir a otras técnicas como el encripción.
Sistemas Cliente/Servidor
39
Ventajas y Desventajas del
modelo Cliente/Servidor
· El desempeño. Problemas de este estilo pueden presentarse por
congestión en la red, dificultad de tráfico de datos, etc.
· Un aspecto directamente relacionado con lo anterior es el de
cómo distribuir los datos en la red. En el caso de una
organización, por ejemplo, éste puede ser hecho por
departamentos, geográficamente, o de otras maneras. Hay que
tener en cuenta que en algunos casos, por razones de
confiabilidad o eficiencia, se pueden tener datos replicados, y
que puede haber actualizaciones simultáneas.
· A otro nivel, una de las decisiones que deben tomar las
organizaciones es la de si comprar o desarrollar los diferentes
componentes.
Sistemas Cliente/Servidor
40
Servicios basados en
Cliente/Servidor
IBM ha orientado sus esfuerzos de desarrollo de productos ha
satisfacer los siguientes servicios:
a) Servicios de Datos e Impresión:
Servicios que permiten compartir archivos, bases de datos,
impresoras y graficadores (plotters). Administración de las
colas de impresión en diferentes dispositivos.
b) Servicios de Comunicaciones:
Aseguran que cada componente físico de la red sea capaz de
comunicarse exitosamente con otros componentes, tales como
LAN a LAN y LAN a WAN. El sistema puede incluir dispositivos
de comunicaciones que manejen diferentes tipos de protocolos
para conectar sistemas heterogéneos.
Sistemas Cliente/Servidor
41
Servicios basados en
Cliente/Servidor
c) Servicio de Administración:
 Administración de Sistemas
 Administración de Cambios
 Administración de Problemas
 Administración de Operaciones
 Administración de Configuración
 Administración del Rendimiento
Sistemas Cliente/Servidor
42
Servicios basados en
Cliente/Servidor
d) Servicios de Aplicación:
Si el recurso compartido es una parte de una aplicación (una
función de la aplicación), estamos hablando de servicios de
aplicación. Cada uno de los procesadores participantes en un
ambiente Cliente/Servidor puede mantener parte del código de la
aplicación, el cual debe ser compartido por todos ellos
(interoperabilidad). Esto significa que las partes de una aplicación
pueden ser distribuidas en varios procesadores, locales o remotos.
Sistemas Cliente/Servidor
43
Middleware
Algunos ejemplos:
 Sun RPC: Sun Remote Procedure Call
 CORBA: Common Object Request Broker Architecture
 Java RMI: Java Remote Method Invocation
 SOAP: Simple Object Access Protocol
 REST: REpresentational State Transfer
 Otros
 ISIS
 DCOM
 RM-OPD
Sistemas Cliente/Servidor
44
Cliente-Servidor, evolución
Sistemas Cliente/Servidor
45
Cliente-Servidor, evolución
Sistemas Cliente/Servidor
46
¿Preguntas?
Sistemas Cliente/Servidor

Más contenido relacionado

La actualidad más candente

Metodología WEB NDT
Metodología WEB NDTMetodología WEB NDT
Metodología WEB NDT
Universidad Técnica del Norte
 
Usuarios y Grupos en Windows 2003 Server
Usuarios y Grupos en Windows 2003 ServerUsuarios y Grupos en Windows 2003 Server
Usuarios y Grupos en Windows 2003 Server
japeimo
 
Sistemas críticos - Ingeniería de Sistemas
Sistemas críticos - Ingeniería de SistemasSistemas críticos - Ingeniería de Sistemas
Sistemas críticos - Ingeniería de Sistemas
Uniminuto - San Francisco
 
Análisis coste - beneficio en Software
Análisis coste - beneficio en SoftwareAnálisis coste - beneficio en Software
Análisis coste - beneficio en Software
Victor Samaniego Neyra
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Sergio Sanchez
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
Boris Salleg
 
Modelo e r
Modelo e rModelo e r
Firewall
FirewallFirewall
Firewall
nachosport
 
Administracion de redes (clase 1 a)
Administracion de redes (clase 1 a)Administracion de redes (clase 1 a)
Administracion de redes (clase 1 a)
Aldo Manzaneda
 
Arquitectura de cliente-servidor de tres capas
Arquitectura de cliente-servidor de tres capasArquitectura de cliente-servidor de tres capas
Arquitectura de cliente-servidor de tres capas
anibalsmit
 
¿En qué lenguaje esta desarrollado postgresql?
¿En qué lenguaje esta desarrollado postgresql?¿En qué lenguaje esta desarrollado postgresql?
¿En qué lenguaje esta desarrollado postgresql?
IsabelAlisson
 
Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
Angel Morocho
 
1. Modelo de Datos
1. Modelo de Datos1. Modelo de Datos
1. Modelo de Datos
MSc Aldo Valdez Alvarado
 
Ingenieria de requerimientos-05
Ingenieria de requerimientos-05Ingenieria de requerimientos-05
Ingenieria de requerimientos-05
Juana Rodríguez
 
Basesde datos
Basesde datosBasesde datos
Basesde datos
yakiraq
 
Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)
Miguel Miranda
 
Ejercicio privilegios
Ejercicio privilegiosEjercicio privilegios
Ejercicio privilegios
María Luisa Velasco
 
Enfoque estructurado y Enfoque OO - Ingenieria de software
Enfoque estructurado y Enfoque OO  - Ingenieria de softwareEnfoque estructurado y Enfoque OO  - Ingenieria de software
Enfoque estructurado y Enfoque OO - Ingenieria de software
Kola Real
 
9.laravel
9.laravel9.laravel
Herramientas case
Herramientas caseHerramientas case
Herramientas case
Leidy Galindo
 

La actualidad más candente (20)

Metodología WEB NDT
Metodología WEB NDTMetodología WEB NDT
Metodología WEB NDT
 
Usuarios y Grupos en Windows 2003 Server
Usuarios y Grupos en Windows 2003 ServerUsuarios y Grupos en Windows 2003 Server
Usuarios y Grupos en Windows 2003 Server
 
Sistemas críticos - Ingeniería de Sistemas
Sistemas críticos - Ingeniería de SistemasSistemas críticos - Ingeniería de Sistemas
Sistemas críticos - Ingeniería de Sistemas
 
Análisis coste - beneficio en Software
Análisis coste - beneficio en SoftwareAnálisis coste - beneficio en Software
Análisis coste - beneficio en Software
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
 
Modelo e r
Modelo e rModelo e r
Modelo e r
 
Firewall
FirewallFirewall
Firewall
 
Administracion de redes (clase 1 a)
Administracion de redes (clase 1 a)Administracion de redes (clase 1 a)
Administracion de redes (clase 1 a)
 
Arquitectura de cliente-servidor de tres capas
Arquitectura de cliente-servidor de tres capasArquitectura de cliente-servidor de tres capas
Arquitectura de cliente-servidor de tres capas
 
¿En qué lenguaje esta desarrollado postgresql?
¿En qué lenguaje esta desarrollado postgresql?¿En qué lenguaje esta desarrollado postgresql?
¿En qué lenguaje esta desarrollado postgresql?
 
Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
 
1. Modelo de Datos
1. Modelo de Datos1. Modelo de Datos
1. Modelo de Datos
 
Ingenieria de requerimientos-05
Ingenieria de requerimientos-05Ingenieria de requerimientos-05
Ingenieria de requerimientos-05
 
Basesde datos
Basesde datosBasesde datos
Basesde datos
 
Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)
 
Ejercicio privilegios
Ejercicio privilegiosEjercicio privilegios
Ejercicio privilegios
 
Enfoque estructurado y Enfoque OO - Ingenieria de software
Enfoque estructurado y Enfoque OO  - Ingenieria de softwareEnfoque estructurado y Enfoque OO  - Ingenieria de software
Enfoque estructurado y Enfoque OO - Ingenieria de software
 
9.laravel
9.laravel9.laravel
9.laravel
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 

Similar a Clase rii 10 11 u3 sistemas cliente servidor

Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
Juan Pablo Bustos Thames
 
Seguridad de sistemas distribuidos
Seguridad de sistemas distribuidosSeguridad de sistemas distribuidos
Seguridad de sistemas distribuidos
Javierialv
 
Arquitectura servidores
Arquitectura servidoresArquitectura servidores
Arquitectura servidores
rulo182
 
Arquitecturas de software
Arquitecturas de software Arquitecturas de software
Arquitecturas de software
Anel Sosa
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
mi casa
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
Chulinneitor
 
Arquitectura cliente
Arquitectura cliente Arquitectura cliente
Arquitectura cliente
TWIGGY Ramirez
 
Cliente servidor
Cliente servidorCliente servidor
Cliente servidor
AndersonPerezRojas
 
Arquitectura web
Arquitectura webArquitectura web
Arquitectura web
Rene Guaman-Quinche
 
Introducción a SOR
Introducción a SORIntroducción a SOR
Introducción a SOR
rafacicloinfo2a
 
diseño de arquitectura de un sistema de informacion
diseño de arquitectura de un sistema de informaciondiseño de arquitectura de un sistema de informacion
diseño de arquitectura de un sistema de informacion
zulaymaylin
 
Arquitectura software
Arquitectura softwareArquitectura software
Arquitectura software
Jesus Campos Villar
 
Aplicaciones Distribuídas
Aplicaciones DistribuídasAplicaciones Distribuídas
Aplicaciones Distribuídas
Javierialv
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
albertoisaacs13
 
Base expo
Base expoBase expo
Base expo
Sergio Carreño
 
Arquitectura de sistemas
Arquitectura de sistemasArquitectura de sistemas
Arquitectura de sistemas
Tensor
 
bd
bdbd
Arquitectura de un sistema de informacion
Arquitectura de un sistema de informacionArquitectura de un sistema de informacion
Arquitectura de un sistema de informacion
Mauricio Duero
 
Modelos de sistemas distribuidos
Modelos de sistemas distribuidosModelos de sistemas distribuidos
Modelos de sistemas distribuidos
Tensor
 
Modelos de sistemas distribuidos
Modelos de sistemas distribuidosModelos de sistemas distribuidos
Modelos de sistemas distribuidos
Tensor
 

Similar a Clase rii 10 11 u3 sistemas cliente servidor (20)

Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
 
Seguridad de sistemas distribuidos
Seguridad de sistemas distribuidosSeguridad de sistemas distribuidos
Seguridad de sistemas distribuidos
 
Arquitectura servidores
Arquitectura servidoresArquitectura servidores
Arquitectura servidores
 
Arquitecturas de software
Arquitecturas de software Arquitecturas de software
Arquitecturas de software
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
Arquitectura cliente
Arquitectura cliente Arquitectura cliente
Arquitectura cliente
 
Cliente servidor
Cliente servidorCliente servidor
Cliente servidor
 
Arquitectura web
Arquitectura webArquitectura web
Arquitectura web
 
Introducción a SOR
Introducción a SORIntroducción a SOR
Introducción a SOR
 
diseño de arquitectura de un sistema de informacion
diseño de arquitectura de un sistema de informaciondiseño de arquitectura de un sistema de informacion
diseño de arquitectura de un sistema de informacion
 
Arquitectura software
Arquitectura softwareArquitectura software
Arquitectura software
 
Aplicaciones Distribuídas
Aplicaciones DistribuídasAplicaciones Distribuídas
Aplicaciones Distribuídas
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Base expo
Base expoBase expo
Base expo
 
Arquitectura de sistemas
Arquitectura de sistemasArquitectura de sistemas
Arquitectura de sistemas
 
bd
bdbd
bd
 
Arquitectura de un sistema de informacion
Arquitectura de un sistema de informacionArquitectura de un sistema de informacion
Arquitectura de un sistema de informacion
 
Modelos de sistemas distribuidos
Modelos de sistemas distribuidosModelos de sistemas distribuidos
Modelos de sistemas distribuidos
 
Modelos de sistemas distribuidos
Modelos de sistemas distribuidosModelos de sistemas distribuidos
Modelos de sistemas distribuidos
 

Último

Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
renzocruz180310
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
larapalaciosmonzon28
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
Modo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdfModo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdf
ranierglez
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
codesiret
 
Flows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos FeaturesFlows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos Features
Paola De la Torre
 
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDADEXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
AngelCristhianMB
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
yuberpalma
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
Manuel Diaz
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
jgvanessa23
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
leia ereni
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
al050121024
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
70244530
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
luiscohailatenazoa0
 

Último (20)

Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
Modo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdfModo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdf
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
 
Flows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos FeaturesFlows: Mejores Prácticas y Nuevos Features
Flows: Mejores Prácticas y Nuevos Features
 
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDADEXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
 

Clase rii 10 11 u3 sistemas cliente servidor

  • 2. 2 Sistemas Cliente/Servidor La siguiente presentación, es solo una guía. Para estudiar, utilice la siguiente Bibliografía: Título Autor(es) Editorial Edición Redes de Computadoras. Un enfoque descendente. 5ª Ed. Kurose, James F; Ross, Keiith W Pearson 2010, España Redes de Computadoras. 5ª Ed. Tanenbaum, Andrew S.; Wetherall David J. Pearson 2012, México Sistemas Distribuidos. Conceptos y Diseño. 3ª Ed. Coulouris, George; Dollimore, Jean; Kindberg, Tim Pearson Educación 2001, España Sistemas Distribuidos. Principios y Paradigmas. 2ª Ed. Tanenbaum, Andrew S.; Van Steen, Maarten Pearson Educación 2008, México
  • 3. 3 Contenido  Definición de Sistemas Distribuidos.  Fundamentos de arquitectura cliente servidor  Elementos de la Arquitectura Cliente/Servidor  Características del modelo Cliente/Servidor  Ventajas y Desventajas del modelo Cliente/Servidor  Servicios basados en Cliente/Servidor Sistemas Cliente/Servidor
  • 4. 4 Cliente Servidor, Intro Dentro de los sistemas distribuidos están: El modelo Cliente Servidor El modelo igual a igual (peer to peer o P2P) Sistemas Cliente/Servidor
  • 5. 5 Definición de Sistema Distribuido  “Un sistema en el cual componentes conectados a través de una red de computadoras se comunican y coordinan sus acciones mediante el intercambio de mensajes” [Coulouris]  Concurrencia de componentes.  Ausencia de reloj global  Independencia de fallos en sus componentes.  “Un sistema distribuido es una colección de computadoras independientes que dan al usuario la impresión de constituir un único sistema coherente.” [Tanenbaum]  Computadoras independientes y autónomas interconectadas por una red.  Software especialmente diseñado para proveer la visión de un único sistema. Sistemas Cliente/Servidor
  • 6. 6 Definición (ii)  Una red de computadoras NO es un sistema distribuido.  Red de computadoras  Infraestructura que sirve a un conjunto de computadoras interconectadas que usan un conjunto común de protocolos de comunicaciones.  Sistema Distribuido  Sistema compuesto por un conjunto de computadoras interconectadas que usan un conjunto común de protocolos distribuidos que los asisten en la ejecución de actividades distribuidas. Sistemas Cliente/Servidor
  • 7. 8 Características  Concurrencia: Esta característica de los sistemas distribuidos permite que los recursos disponibles en la red puedan ser utilizados simultáneamente por los usuarios y/o agentes que interactúan en la red.  Carencia de reloj global: Las coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realización de una tarea, no tienen una temporización general, está más bien distribuida en los componentes.  Fallos independientes de los componentes: Cada componente del sistema pudiera fallar de manera independientemente, y los demás continuar ejecutando sus acciones. Esto permite el logro de las tareas con mayor efectividad, pues el sistema en su conjunto continua trabajando. Sistemas Cliente/Servidor
  • 8. 10 Desafíos en la construcción de los sistemas distribuidos (i)  Heterogeneidad  Extensibilidad  Seguridad  Tratamiento de Concurrencia  Transparencia Sistemas Cliente/Servidor
  • 9. 11 Desafíos en la construcción de los sistemas distribuidos (i)  Heterogeneidad: debe construirse desde una variedad de diferentes redes, sistemas operativos, hardware de computador y lenguajes de programación. Los protocolos de comunicación de Internet enmascaran las diferencias entre redes y el middleware puede tratar con las diferencias restantes.  Extensibilidad: los sistemas distribuidos deberían ser extensibles, el primer paso es la publicación de las interfaces de sus componentes, pero la integración de componentes escritos por diferentes programadores es un auténtico reto.  Seguridad: se puede emplear encriptación para proporcionar una protección adecuada a los recursos compartidos y mantener secreta la información sensible cuando se transmite un mensaje a través de la red. Los ataques de denegación de servicio son aún un problema. Sistemas Cliente/Servidor
  • 10. 12 Característica: Heterogeneidad  Es una capa de software entre el sistema operativo, comunicaciones, etc y la capa de aplicación/usuario, para proveer una vista única del sistema (Middleware) Sistemas Cliente/Servidor
  • 11. 13 Desafíos en la construcción de los sistemas distribuidos (ii)  Escalabilidad: un sistema distribuido es escalable si el coste de añadir un usuario es una cantidad constante en términos de recursos que se deberán añadir. Los algoritmos empleados para acceder a los datos compartidos deberían evitar cuellos de botella y los datos deberían estar estructurados jerárquicamente para dar los mejores tiempos de acceso. Los datos frecuentemente accedidos pudieran estar replicados.  Tratamiento de fallos: cualquier proceso, computador o red puede fallar independientemente de los otros. En consecuencia cada componente necesita estar al tanto de las formas posibles en que pueden fallar los componentes de los que depende y estar diseñado para tratar apropiadamente con cada uno de estos fallos. Sistemas Cliente/Servidor
  • 12. 14 Desafíos en la construcción de los sistemas distribuidos (iii)  Concurrencia: la presencia de múltiples usuarios en un sistema distribuido es una fuente de peticiones concurrentes a sus recursos. Cada recurso debe estar diseñado para ser seguro en un entorno concurrente.  Transparencia: el objetivo es que ciertos aspectos de la distribución sean invisibles al programador de aplicaciones de modo que sólo necesite ocuparse del diseño de su aplicación particular. Por ejemplo, no debe ocuparse de su ubicación o los detalles sobre cómo se accede a sus operaciones por otros componentes, o si será replicado o migrado. Incluso los fallos de las redes y los procesos pueden presentarse a los programadores de aplicaciones en forma de excepciones, aunque deban de ser tratados. Sistemas Cliente/Servidor
  • 13. 16 Arquitectura Cliente Servidor  Definición desde un punto de vista conceptual:  Es un modelo para construir sistemas de información, que se sustenta en la idea de repartir el tratamiento de la información y los datos por todo el sistema informático, permitiendo mejorar el rendimiento del sistema global de información. Sistemas Cliente/Servidor
  • 14. 17 Arquitectura Cliente Servidor  Definición en términos de arquitectura:  Los distintos aspectos que caracterizan a una aplicación (proceso, almacenamiento, control y operaciones de entrada y salida de datos) en el sentido más amplio, están situados en más de un computador, los cuales se encuentran interconectados mediante una red de comunicaciones. Sistemas Cliente/Servidor
  • 15. 18 Arquitectura Cliente Servidor IBM define al modelo Cliente/Servidor Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio hechos por estaciones de trabajo inteligentes o "clientes'', resultan en un trabajo realizado por otros computadores llamados servidores. Sistemas Cliente/Servidor
  • 16. 19 Arquitectura Cliente Servidor Análisis de algunos conceptos mencionados en las definiciones: Un Cliente es el que inicia un requerimiento de servicio. El requerimiento inicial puede convertirse en múltiples requerimientos de trabajo a través de redes LAN o WAN. La ubicación de los datos o de las aplicaciones es totalmente transparente para el cliente. Un Servidor es cualquier recurso de cómputo dedicado a responder a los requerimientos del cliente. Los servidores pueden estar conectados a los clientes a través de redes LANs o WANs, para proveer de múltiples servicios a los clientes tales como impresión, acceso a bases de datos, fax, procesamiento de imágenes, etc. Un servidor no es necesariamente un dispositivo físico (una computadora) sino que hay que entender al servidor como un proceso que se encarga de atender las peticiones de un cliente. Sistemas Cliente/Servidor
  • 17. 20 Elementos de la Arquitectura Cliente/Servidor Una arquitectura es un entramado de componentes funcionales que aprovechando diferentes estándares, convenciones, reglas y procesos, permite integrar una amplia gama de productos y servicios informáticos, de manera que pueden ser utilizados eficazmente dentro de la organización. Sistemas Cliente/Servidor
  • 18. 21 Elementos de la Arquitectura Cliente/Servidor La aplicación de un sistema de información está caracterizada por tres componentes básicos: • Presentación/Captación de Información • Procesos • Almacenamiento de la Información Estos componentes se integran en una arquitectura Cliente/Servidor en base a los siguientes elementos que la caracterizan: • Puestos de Trabajo • Comunicaciones • Servidores Sistemas Cliente/Servidor
  • 19. 22 Elementos de la Arquitectura Cliente/Servidor • El Puesto de Trabajo o Cliente “Una Estación de trabajo o microcomputador (PC: Computador Personal) conectado a una red, que le permite acceder y gestionar una serie de recursos”, el cual se perfila como un puesto de trabajo universal. Nos referimos a un microcomputador conectado al sistema de información y en el que se realiza una parte mayoritaria de los procesos. Sistemas Cliente/Servidor
  • 20. 23 Elementos de la Arquitectura Cliente/Servidor • Los Servidores o Back-End. «Una máquina que suministra una serie de servicios como Bases de Datos, Archivos, Comunicaciones,...)». Los Servidores, según la especialización y los requerimientos de los servicios que debe suministrar pueden ser: o Mainframes o Minicomputadoras o Especializados (dispositivos de red, imagen, etc.) Una característica a considerar es que los diferentes servicios, según el caso, pueden ser suministrados por un único Servidor o por varios Servidores especializados. Sistemas Cliente/Servidor
  • 21. 24 Elementos de la Arquitectura Cliente/Servidor Las Comunicaciones en sus dos vertientes: • Infraestructura de redes Componentes Hardware y Software que garantizan la conexión física y la transferencia de datos entre los distintos equipos de la red. • Infraestructura de comunicaciones Componentes Hardware y Software que permiten la comunicación y su gestión, entre los clientes y los servidores. Sistemas Cliente/Servidor
  • 22. 25 Características del modelo Cliente/Servidor En el modelo Cliente/Servidor podemos encontrar las siguientes características: 1. El Cliente y el Servidor pueden actuar como una sola entidad y también pueden actuar como entidades separadas, realizando actividades o tareas independientes. 2. Las funciones de Cliente y Servidor pueden estar en plataformas separadas, o en la misma plataforma. 3. Un servidor proporciona servicio a múltiples clientes en forma concurrente. 4. Cada plataforma puede ser escalable independientemente. Los cambios realizados en las plataformas de los Clientes o de los Servidores, ya sean por actualización o por reemplazo tecnológico, se realizan de una manera transparente para el usuario final. Sistemas Cliente/Servidor
  • 23. 26 Características del modelo Cliente/Servidor 5. La interrelación entre el hardware y el software están basados en una infraestructura poderosa, de tal forma que el acceso a los recursos de la red no muestra la complejidad de los diferentes tipos de formatos de datos y de los protocolos. Un sistema de servidores realiza múltiples funciones al mismo tiempo que presenta una imagen de un sólo sistema a las estaciones Clientes. Esto se logra combinando los recursos de cómputo que se encuentran físicamente separados en un sistema lógico, proporcionando de esta manera el servicio más efectivo para el usuario final. Las funciones Cliente/Servidor pueden ser dinámicas. Ejemplo, un servidor puede convertirse en cliente cuando realiza la solicitud de servicios a otras plataformas dentro de la red. Sistemas Cliente/Servidor
  • 24. 27 Características del modelo Cliente/Servidor 6. Además se constituye como el nexo de unión más adecuado para reconciliar los sistemas de información basados en mainframes o minicomputadoras, con aquellos otros sustentados en entornos informáticos pequeños y estaciones de trabajo. 7. Designa un modelo de construcción de sistemas informáticos de carácter distribuido. Sistemas Cliente/Servidor
  • 25. 28 Características del modelo Cliente/Servidor 8. Su representación típica es un centro de trabajo (PC), en donde el usuario dispone de sus propias aplicaciones de oficina y sus propias bases de datos, sin dependencia directa del sistema central de información de la organización, al tiempo que puede acceder a los recursos de este host central y otros sistemas de la organización ponen a su servicio. En consecuencia, parte del control de las aplicaciones se transfieren del computador central (servidor) a los PCs o estaciones de trabajo (clientes), adquiriendo estas plataformas, entonces, un papel protagonista en conjunto del sistema de información. Sistemas Cliente/Servidor
  • 26. 29 Características del modelo Cliente/Servidor En conclusión, Cliente/Servidor puede incluir múltiples plataformas, bases de datos, redes y sistemas operativos. Estos pueden ser de distintos proveedores, en arquitecturas propietarias y no propietarias y funcionando todos al mismo tiempo. Por lo tanto, su implantación involucra diferentes tipos de estándares: APPC, TCP/IP, OSI, NFS, DRDA corriendo sobre DOS, OS/2, Windows o PC UNIX, en Token-Ring, Ethernet, FDDI o medio coaxial, sólo por mencionar algunas de las posibilidades. Dependiendo de estas características y de su combinación, es el grado de complejidad de una solución C/S. Sistemas Cliente/Servidor
  • 27. 30 Modelo Cliente/Servidor El modelo cliente/servidor admite varias modificaciones debido a:  La partición de datos o la replicación en servidores cooperativos.  El uso de caché para los datos en clientes y servidores proxy.  El uso de código y agentes móviles.  Los requisitos para añadir o eliminar dispositivos móviles de forma conveniente. Sistemas Cliente/Servidor
  • 28. 31 Modelo Cliente/Servidor  La arquitectura cliente/servidor es la más importante, y continúa siendo la más ampliamente utilizada. Sistemas Cliente/Servidor
  • 29. 32 Modelo Cliente/Servidor  La replicación se utiliza para aumentar las prestaciones y disponibilidad y para mejorar la tolerancia a fallos.  Proporciona múltiples copias consistentes de datos en proceso que se ejecutan en diferentes computadoras. Por ejemplo, servidores con la base de datos replicada en memoria.. Sistemas Cliente/Servidor Servicios proporcionados por múltiples servidores
  • 30. 33 Memoria caché  Un caché es un almacén de objetos de datos utilizados recientemente, y que se encuentra más próximo que los objetos en sí. Al recibir un objeto nuevo en una computadora se añade al almacén del caché, reemplazando, si fuera necesario, algunos objetos existentes.  Cuando se necesita un objeto en un proceso cliente, el servicio caché comprueba inicialmente la caché y le proporciona el objeto de una copia actualizada. Si no, se buscará una copia actualizada.  Los cachés pueden estar ubicados en cada cliente o en un servidor proxy que puede compartirse desde varios clientes. Sistemas Cliente/Servidor
  • 31. 34 Cliente/Servidor: ejemplo  Un ejemplo podría ser el funcionamiento de un juego online. Si existen dos servidores de juego, cuando un usuario lo descarga y lo instala en su computadora pasa a ser un cliente.  Si tres personas juegan en un solo computador.  ¿Cuantos servidores existirían?  ¿Cuantos clientes?  ¿Cuantos usuarios?  Existirían: dos servidores, un cliente y tres usuarios.  Si cada usuario instala el juego en su propio computador.  ¿Cuantos servidores existirían?  ¿Cuantos clientes?  ¿Cuantos usuarios?  Existirían dos servidores, tres clientes y tres usuarios. Sistemas Cliente/Servidor
  • 32. 35 Ventajas y Desventajas del modelo Cliente/Servidor El esquema Cliente/Servidor posee las siguientes ventajas: a) Uno de los aspectos que más ha promovido el uso de sistemas Cliente/Servidor, es la existencia de plataformas de hardware cada vez más baratas. Además, se pueden utilizar componentes, tanto de hardware como de software, de varios fabricantes, lo cual contribuye considerablemente a la reducción de costos y favorece la flexibilidad en la implantación y actualización de soluciones. b) El esquema Cliente/Servidor facilita la integración entre sistemas diferentes y comparte información permitiendo, por ejemplo que las máquinas ya existentes puedan ser utilizadas pero con interfaces más amigables al usuario. De esta manera, podemos integrar PCs con sistemas medianos y grandes, sin necesidad de que todos tengan que utilizar el mismo sistema operacional. Sistemas Cliente/Servidor
  • 33. 36 Ventajas y Desventajas del modelo Cliente/Servidor c) Al favorecer el uso de interfaces gráficas interactivas, los sistemas construidos bajo este esquema tienen mayor interacción más intuitiva con el usuario. El uso de interfaces gráficas para el usuario, el esquema Cliente/Servidor presenta la ventaja, con respecto a uno centralizado, de que no es siempre necesario transmitir información gráfica por la red pues esta puede residir en el cliente, lo cual permite aprovechar mejor el ancho de banda de la red. d) Una ventaja adicional del uso del esquema Cliente/Servidor es que es más rápido el mantenimiento y el desarrollo de aplicaciones, pues se pueden emplear las herramientas existentes (por ejemplo los servidores de SQL o las herramientas de más bajo nivel como los sockets o el RPC). Sistemas Cliente/Servidor
  • 34. 37 Ventajas y Desventajas del modelo Cliente/Servidor e) La estructura inherentemente modular facilita además la integración de nuevas tecnologías y el crecimiento de la infraestructura computacional, favoreciendo así la escalabilidad de las soluciones. f) El esquema Cliente/Servidor contribuye además, a proporcionar, a los diferentes departamentos de una organización, soluciones locales, pero permitiendo la integración de la información relevante a nivel global. Sistemas Cliente/Servidor
  • 35. 38 Ventajas y Desventajas del modelo Cliente/Servidor El esquema Cliente/Servidor tiene algunos inconvenientes que se mencionan a continuación: a) Tiene escasas herramientas para la administración y ajuste del desempeño de los sistemas. b) En el desarrollo de aplicaciones Cliente/Servidor se deben considerar los aspectos, que se mencionan a continuación: · Los clientes y los servidores deberán utilizar el mismo mecanismo (por ejemplo sockets o RPC), lo cual implica que se deben tener mecanismos generales que existan en diferentes plataformas. · Además, hay que tener estrategias para el manejo de errores y para mantener la consistencia de los datos. La seguridad de un esquema Cliente/Servidor es muy importante. Por ejemplo, se deben hacer verificaciones en el cliente y en el servidor. También se puede recurrir a otras técnicas como el encripción. Sistemas Cliente/Servidor
  • 36. 39 Ventajas y Desventajas del modelo Cliente/Servidor · El desempeño. Problemas de este estilo pueden presentarse por congestión en la red, dificultad de tráfico de datos, etc. · Un aspecto directamente relacionado con lo anterior es el de cómo distribuir los datos en la red. En el caso de una organización, por ejemplo, éste puede ser hecho por departamentos, geográficamente, o de otras maneras. Hay que tener en cuenta que en algunos casos, por razones de confiabilidad o eficiencia, se pueden tener datos replicados, y que puede haber actualizaciones simultáneas. · A otro nivel, una de las decisiones que deben tomar las organizaciones es la de si comprar o desarrollar los diferentes componentes. Sistemas Cliente/Servidor
  • 37. 40 Servicios basados en Cliente/Servidor IBM ha orientado sus esfuerzos de desarrollo de productos ha satisfacer los siguientes servicios: a) Servicios de Datos e Impresión: Servicios que permiten compartir archivos, bases de datos, impresoras y graficadores (plotters). Administración de las colas de impresión en diferentes dispositivos. b) Servicios de Comunicaciones: Aseguran que cada componente físico de la red sea capaz de comunicarse exitosamente con otros componentes, tales como LAN a LAN y LAN a WAN. El sistema puede incluir dispositivos de comunicaciones que manejen diferentes tipos de protocolos para conectar sistemas heterogéneos. Sistemas Cliente/Servidor
  • 38. 41 Servicios basados en Cliente/Servidor c) Servicio de Administración:  Administración de Sistemas  Administración de Cambios  Administración de Problemas  Administración de Operaciones  Administración de Configuración  Administración del Rendimiento Sistemas Cliente/Servidor
  • 39. 42 Servicios basados en Cliente/Servidor d) Servicios de Aplicación: Si el recurso compartido es una parte de una aplicación (una función de la aplicación), estamos hablando de servicios de aplicación. Cada uno de los procesadores participantes en un ambiente Cliente/Servidor puede mantener parte del código de la aplicación, el cual debe ser compartido por todos ellos (interoperabilidad). Esto significa que las partes de una aplicación pueden ser distribuidas en varios procesadores, locales o remotos. Sistemas Cliente/Servidor
  • 40. 43 Middleware Algunos ejemplos:  Sun RPC: Sun Remote Procedure Call  CORBA: Common Object Request Broker Architecture  Java RMI: Java Remote Method Invocation  SOAP: Simple Object Access Protocol  REST: REpresentational State Transfer  Otros  ISIS  DCOM  RM-OPD Sistemas Cliente/Servidor