You are on page 1of 10

Tecnologa Cliente / Servidor UNT

Ingeniera de Sistemas
docenteunt@yahoo.es Pgina 1 de 10

Tecnologa
Cliente/Servidor
_________________________
Universidad Nacional de Trujillo
Escuela de Ingeniera de Sistemas
docenteunt@yahoo.es
CIiente/Servidor ReaImente somos conscientes de Io que esta paIabra significa?
CuI es Ia visin reaI de CIiente/Servidor?
(Este documento ha sido elaborado en base a las referencias bibliogrfica del Curso)

Antecedentes
Las tecnologas informticas han jugado un papel cada
vez ms relevante en el desarrollo de las organizaciones,
pues no slo han permitido disminuir el tiempo en la
ejecucin de sus operaciones, sino tambin en general
aumentar la competitividad de la empresa.
En los ltimos tiempos se ha venido haciendo un nfasis
cada vez mayor en este aspecto, lo cual ha modificado
substancialmente el papel que juega la informtica en la
empresa, pues adems de ser un elemento de apoyo a
las operaciones bsicas se ha constituido en un medio de
obtenerlas para no estar en desventaja competitiva.
Adems de lo expuesto anteriormente, los tiempos
actuales han modificado de manera sustancial la forma
de operar de las organizaciones, y esto, de pasada, ha
inducido modificaciones en el quehacer de la tecnologa
computacional dentro de ellas. Algunos de los aspectos
que han cambiado son los siguientes:
Las aplicaciones deben ser desarrolladas ms rpido
pues los requerimientos organizacionales cambian al
mismo ritmo y las aplicaciones deben adaptarse a
ellos. Actualmente se dice, por ejemplo, que una
aplicacin debe ser desarrollada en un tiempo no
mayor de cuatro meses, lo cual contrasta con los
dilatados tiempos de desarrollo que usualmente se
requeran anteriormente.
Ultimamente se ha hecho mucho nfasis en la
importancia de contar con una buena informacin lo
cual ha conducido a destacar el importante papel
que juegan los sistemas de informacin ejecutivos y
los sistemas de soporte a las decisiones. Esto
contrasta con el nfasis que antiguamente se le daba
al procesamiento de datos.
Cada vez es ms importante el poder hacer que la
informacin est disponible en donde se necesita.
Para conseguir esto, tanto la informacin como los
sistemas para procesarla deben ser distribuidos a
una larga audiencia.
A medida que va creciendo la competencia, las
organizaciones tienen cada vez menos recursos
disponibles para los proyectos internos, incluyendo
los sistemas de informacin. Por esta razn las
nuevas aplicaciones deben basarse en tecnologas
que disminuyan los costos de desarrollo y
mantenimiento, en aspectos de hardware, software,
operacin, entrenamiento, personal y mantenimiento.
Adems se requiere que las nuevas aplicaciones se
puedan comunicar con las existentes.
Con el fin de aumentar la productividad y de facilitar
el uso de las aplicaciones por parte de los usuarios,
se requieren interfaces simples e intuitivas, y que
proporcionen acceso transparente a la informacin.
Cada vez ha sido mayor la tendencia hacia la
integracin de los sistemas. Lo usual es encontrar
"islas de informacin" en las diferentes dependencias
de una empresa, pero se tiende hacia la integracin
y hacia la comunicacin entre las aplicaciones de las
diferentes empresas. Esto conduce a la necesidad
de la interoperabilidad, la cual debe existir entre
computadores de diferentes clases y marcas. Cabe
destacar que el mundo tiende a la estandarizacin y
para eso se han hecho muchos esfuerzos para que
las aplicaciones se integren en todos los niveles.
Las aplicaciones informticas deben adaptarse al
ritmo vertiginoso de desarrollo de la tecnologa, para
que puedan aprovechar sus potencialidades. Cada
da nacen nuevas tecnologas
Las tecnologas computacionales modernas buscan
responder a las necesidades de las organizaciones
y para ello plantean nuevas formas de hacer las
cosas; entre ellas una de las ms importantes es la
llamada Tecnologa Cliente /Servidor.

Arquitecturas ComputacionaIes
El termino Arquitectura puede hacer referencia al diseo
de una computadora. Sin embargo, en el contexto
empresarial significa ms comnmente la distribucin,
tanto fsica como lgica, de los recursos de cmputo.
Fsicamente se establece cuales tipos de computadores
se utilizarn y donde estarn ubicados. Lgicamente se
define como se distribuir la carga de procesamiento. Las
aplicaciones informticas se apoyan en arquitecturas
computacionales que generalmente responden al modelo
de la organizacin.
Tradicionalmente, las organizaciones han tenido una
estructura centralizada y jerrquica. Bajo esta estructura
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
la relacin entre departamentos estaba perfectamente
definida. En modelos actuales de organizacin, por el
contrario, se articula segn unidades ms operativas y
autnomas, que funcionan por cumplimiento de objetivos.
Existen menos niveles jerrquicos y las relaciones que
existen entre las distintas unidades son ms
pueden variar con el tiempo. Pero, por otra parte se
tiende a centralizar los datos corporativos que son
importantes desde el punto de vista estratgico.
Debido a esto, las arquitecturas computacionales
dividido histricamente en dos tipos de arquitecturas,
extremos opuestos: a decir Arquitectura
Arquitectura Distribuida.

1. Arquitectura CentraIizada
La arquitectura est centralizada en un servidor
que tienen acceso las estaciones de trabajo
un modelo de un solo nodo.



Caractersticas funcionales
El computador central es el nico de la
que contiene toda la data.
Desde el computador central se controla el acceso a
mltiples terminales que estn conectados a travs
de productos integrados en la arquitectura de red del
suministrador.
Los terminales funcionan como
"esclavos" del computador central.
Cada usuario tiene un nmero asignado, y derechos
y prioridades de ejecucin en la estacin de trabajo
de sus programas o peticiones.
Caractersticas fsicas
Un nico computador corporativo dimensionado para
soportar todos los procesos de la organizacin,
todos los datos y las posibles comunicaciones con
las estaciones de trabajo.
Una gran base de datos donde residen todos los
datos de la organizacin.
Impresoras y terminales (computadores
con emulacin de terminal) como puestos de trabajo
conectados en grupos (clusters), al
central.
Caractersticas lgicas
Ejecucin de todos los procesos en el
central.
Si la organizacin est dispersa geogrficamente y
dispone de comunicaciones, todos los puestos de
trabajo estn interconectados al computador central
formando una "estrella".
Principales ventajas
Alto rendimiento transaccional.
Alta disponibilidad.
Entorno probado y personal experimentado.
UNT

estaba perfectamente
de organizacin, por el
segn unidades ms operativas y
cumplimiento de objetivos.
las relaciones que
existen entre las distintas unidades son ms directas y
pueden variar con el tiempo. Pero, por otra parte se
tiende a centralizar los datos corporativos que son
desde el punto de vista estratgico.
arquitecturas computacionales se han
en dos tipos de arquitecturas, de
Arquitectura Centralizada y
La arquitectura est centralizada en un servidor central al
las estaciones de trabajo. Se configura

central es el nico de la organizacin
central se controla el acceso a
conectados a travs
la arquitectura de red del
Los terminales funcionan como una especie de

mero asignado, y derechos
estacin de trabajo,
corporativo dimensionado para
todos los procesos de la organizacin,
posibles comunicaciones con
Una gran base de datos donde residen todos los
computadores personales
emulacin de terminal) como puestos de trabajo
en grupos (clusters), al computador
Ejecucin de todos los procesos en el computador
est dispersa geogrficamente y
comunicaciones, todos los puestos de
computador central
Entorno probado y personal experimentado.
Control total del computador central
en el Centro de Procesamiento
Concentracin de todo el personal de explotacin y
administracin del sistema en un nico Centro de
Proceso de Datos.
Principales Inconvenientes
Considerable precio del
requerirse mucha potencia de
servicio a todos los usuarios que estn
gran espacio en disco para albergar todos los
del organismo.
Alta dependencia de las comunicaciones, si existen.
En caso de cada de una lnea, todos los puestos de
trabajo dependientes de dicha lnea
inoperantes.
Interfaces de usuario de caracteres (no grficos) y,
por lo tanto, poco amigables.
Arquitecturas propietarias.

2. Arquitectura Distribuida
Una arquitectura distribuida es un caso especial de una
red de computadoras. Interconecta los l
recursos computacionales, para capturar y almacenar
datos, procesarlos y enviar datos e informacin a otros
sistemas, tales como un sistema central



Caractersticas funcionales
Cada usuario trabaja con su terminal local
inteligente, con lo que obtiene mejores tiempos de
respuesta.
Los recursos necesarios que no estn disponibles
sobre el terminal local (ordenador personal o
estacin de trabajo), pueden tomarse del ordenador
central a travs de la red de
Caractersticas fsicas
Sistemas informticos distribuidos en los que los
ordenadores, a travs de la organizacin, estn
conectados por medio de una red de
telecomunicaciones.
Cada ordenador sobre la red tiene capacidad de
tratamiento autnomo que permite servir a l
necesidades de los usuarios locales.
Tambin proporciona acceso a otros elementos de la
red o a servidores centrales.
Toma importancia la red de comunicacin de datos.
Caractersticas lgicas
Cada tarea individual puede ser analizada para
determinar si puede distribuirse o no. En general, las
tareas ms complejas o de carcter estratgico para
la organizacin se mantienen en el ordenador
central. Tareas de complejidad media o especfica
para un determinado grupo
distribuyen entre las mquinas locales de
Pgina 2 de 10
computador central, al ser el nico
amiento de Datos.
Concentracin de todo el personal de explotacin y
administracin del sistema en un nico Centro de
precio del computador central, al
requerirse mucha potencia de tratamiento para dar
vicio a todos los usuarios que estn conectados y
gran espacio en disco para albergar todos los datos
Alta dependencia de las comunicaciones, si existen.
caso de cada de una lnea, todos los puestos de
dependientes de dicha lnea quedan
Interfaces de usuario de caracteres (no grficos) y,
tanto, poco amigables.

es un caso especial de una
computadoras. Interconecta los lugares que tienen
computacionales, para capturar y almacenar
enviar datos e informacin a otros
sistema central

Cada usuario trabaja con su terminal local
que obtiene mejores tiempos de
Los recursos necesarios que no estn disponibles
terminal local (ordenador personal o
pueden tomarse del ordenador
central a travs de la red de telecomunicaciones.
Sistemas informticos distribuidos en los que los
ordenadores, a travs de la organizacin, estn
por medio de una red de
Cada ordenador sobre la red tiene capacidad de
autnomo que permite servir a las
usuarios locales.
Tambin proporciona acceso a otros elementos de la
servidores centrales.
Toma importancia la red de comunicacin de datos.
Cada tarea individual puede ser analizada para
puede distribuirse o no. En general, las
complejas o de carcter estratgico para
mantienen en el ordenador
complejidad media o especfica
para un determinado grupo de usuarios, se
mquinas locales de ese grupo.
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
La plataforma fsica seleccionada puede ajustarse a
las necesidades del grupo de usuarios, con lo que
surgen los ordenadores especializados para
determinados tipos de tareas.
Principales Ventajas
Funcionamiento autnomo de los sistemas locales,
lo que origina un buen tiempo de respuesta.
Los sistemas de informacin llegan a todos los
departamentos de la empresa.
Abre posibilidades de trabajo mucho ms flexibles y
potentes.
Principales Inconvenientes
Requiere un intenso flujo de informaciones (muchas
veces no tiles, como pantallas y datos incorrectos)
dentro de la red, lo que puede elevar los costos de
comunicaciones.
Supone una mayor complejidad.
Si los sistemas no estn integrados, pueden
producirse problemas de inconsistenc
En una arquitectura de este tipo el rango de recursos
computacionales es variado. Algunos lugares
terminales, otros microcomputadoras, otros incluso,
grandes sistemas de cmputo. No existe el requisito de
que todo el equipo sea del mismo fabricante. De hecho
se espera que estn implicadas varias marcas de
hardware. Esto permite al usuario tener el tipo ms
adecuado a sus necesidades.
Todos los lugares (reciben el nombre de nodos en el
procesamiento distribuido) tienen la capacidad de
capturar y procesar datos en donde ocurran los eventos.
En otras palabras, si un lugar especfico usa una
microcomputadora, los usuarios capturan y procesan
datos en su minicomputadora. Reciben
rpidas a sus consultas, almacenan datos en el
preparan reportes cuando se necesitan. Sin embargo,
tambin pueden transmitir datos o reportes desde su
sistema a otro enlazado en la red, compuesta por todos
los sistemas interconectados.
Un sistema de procesamiento distribuido incluye:
Mltiples componentes de procesamiento de
propsito general. Pueden asignarse tareas
especficas a los sistemas de procesamiento sobre
una base dinmica. Los sistemas
de una misma marca o tamao.
Sistema operativo de alto nivel. Los nodos
procesamiento individual tienen su propio sistema
operativo, el cual est diseado para la computadora
especfica. Pero tambin hay un sistema operativo
que los enlaza e integra al
componentes distribuidos.
Distribucin fsica de los com
computadoras y otras unidades de procesamiento
estn separadas fsicamente. Interactan entre s
por medio de una red de comunicaciones.
Transparencia del sistema.- Los usuarios no
conocen la ubicacin de un componente en el
sistema distribuido o nada de su fabricante, modelo,
sistema operativo local, velocidad o
los servicios se piden por su nombre. El sistema
operativo distribuido lleva a cabo todas las
actividades que implican la ubicacin fsica y
atributos de procesamiento para
demanda del usuario.
Papel dual de los componentes.- Los componentes
individuales de procesamiento pueden operar
independientemente del marco
sistema distribuido

UNT

La plataforma fsica seleccionada puede ajustarse a
necesidades del grupo de usuarios, con lo que
ordenadores especializados para
s sistemas locales,
origina un buen tiempo de respuesta.
Los sistemas de informacin llegan a todos los
Abre posibilidades de trabajo mucho ms flexibles y
de informaciones (muchas
no tiles, como pantallas y datos incorrectos)
red, lo que puede elevar los costos de
Si los sistemas no estn integrados, pueden
problemas de inconsistencia de datos.
l rango de recursos
. Algunos lugares utilizan
terminales, otros microcomputadoras, otros incluso,
grandes sistemas de cmputo. No existe el requisito de
smo fabricante. De hecho
estn implicadas varias marcas de
usuario tener el tipo ms
Todos los lugares (reciben el nombre de nodos en el
procesamiento distribuido) tienen la capacidad de
procesar datos en donde ocurran los eventos.
si un lugar especfico usa una
capturan y procesan
datos en su minicomputadora. Reciben respuestas
rpidas a sus consultas, almacenan datos en el sistema y
preparan reportes cuando se necesitan. Sin embargo,
tambin pueden transmitir datos o reportes desde su
otro enlazado en la red, compuesta por todos
Un sistema de procesamiento distribuido incluye:
Mltiples componentes de procesamiento de
general. Pueden asignarse tareas
de procesamiento sobre
no necesitan ser
Sistema operativo de alto nivel. Los nodos de
procesamiento individual tienen su propio sistema
el cual est diseado para la computadora
tambin hay un sistema operativo
control de los
Distribucin fsica de los componentes.- Las
otras unidades de procesamiento
fsicamente. Interactan entre s
comunicaciones.
Los usuarios no
ubicacin de un componente en el
su fabricante, modelo,
sistema operativo local, velocidad o tamao. Todos
los servicios se piden por su nombre. El sistema
operativo distribuido lleva a cabo todas las
implican la ubicacin fsica y
para satisfacer la
Los componentes
de procesamiento pueden operar
de trabajo del
EI ModeIo de Sistema Abierto
En los primeros aos de la computacin empresarial
cuando una empresa decida comprar un
poda evitar quedar casada con la compaa
pues esta era la nica que poda prestar servicios de
mantenimiento y actualizacin. Dado que los equip
diferentes vendedores no tenan nada en comn,
cualquier desarrollo posterior a la primera compra
implicaba compras al mismo vendedor, por factores de
compatibilidad. Por esta razn
competencia, pues las grandes compaas
mercado y los clientes no podan cambiar de
Con este panorama surgi la idea de la implantacin de
estndares, porque ellos posibilitan el intercambio de
informacin de manera coherente entre productos de
diferentes vendedores.
Esto permite a nuevos proveedores la oportunidad de
entrar al mercado y a los clientes la oportunidad de
cambiar de proveedor.
Con el establecimiento de estndares aparecieron los
sistemas abiertos. Un sistema abierto es un medio en
donde es posible el intercambio de compo
software y hardware, dndonos
productos de acuerdo a nuestras
fomentando la competencia entre proveedores,
deben mejorar sus servicios para ganar nuestras
preferencias. Un sistema abierto cuenta con las
siguientes propiedades:
Interoperabilidad: Componentes de mltiples
proveedores pueden intercambiar informacin, por
medio de interfaces bien definidas, reduciendo el
costo de interconexin e integracin.
Portabilidad: Permite a un sistema instalado en un
medio, ser instalado en otro, minimizando el costo de
la migracin.
Integracin: Permite el compartir e intercambiar
informacin, con consistencia de comportamiento y
presentacin.
Los sistemas abiertos son la plataforma adecuada para
desarrollo de aplicaciones distribuidas, porque se pueden
combinar las ventajas de diferentes mquinas y sistemas
operacionales. Para implementar el intercambio de
informacin el modelo de comunicacin ms popular es
el modelo cliente servidor, el cual permite que el us
invoque servicios de forma transparente.

TecnoIoga CIiente/Servidor
Actualmente Cliente/Servidor es un trmino muy utilizado
en el terreno informtico, an as
el significado del trmino. Sin embargo la siguiente
definicin puede servir de partida para formarnos luego
nuestra propia definicin. Cliente/
computacional en donde existe
Cliente que solicita un servicio a otro elemento llamado
Servidor, quien se va a encargar d
solicitado. En este modelo, la solicitud del servicio y la
respuesta al mismo se denomina mensaje


Pgina 3 de 10
EI ModeIo de Sistema Abierto
En los primeros aos de la computacin empresarial
cuando una empresa decida comprar un equipo no
poda evitar quedar casada con la compaa vendedora,
pues esta era la nica que poda prestar servicios de
mantenimiento y actualizacin. Dado que los equipos de
diferentes vendedores no tenan nada en comn,
desarrollo posterior a la primera compra
mismo vendedor, por factores de
compatibilidad. Por esta razn se reduca la
competencia, pues las grandes compaas acaparaban el
mercado y los clientes no podan cambiar de proveedor.
Con este panorama surgi la idea de la implantacin de
estndares, porque ellos posibilitan el intercambio de
de manera coherente entre productos de
evos proveedores la oportunidad de
mercado y a los clientes la oportunidad de
Con el establecimiento de estndares aparecieron los
abiertos. Un sistema abierto es un medio en
intercambio de componentes de
software y hardware, dndonos la posibilidad de escoger
productos de acuerdo a nuestras necesidades y
fomentando la competencia entre proveedores, que
deben mejorar sus servicios para ganar nuestras
preferencias. Un sistema abierto cuenta con las
Interoperabilidad: Componentes de mltiples
pueden intercambiar informacin, por
bien definidas, reduciendo el
integracin.
Portabilidad: Permite a un sistema instalado en un
instalado en otro, minimizando el costo de
compartir e intercambiar la
consistencia de comportamiento y
Los sistemas abiertos son la plataforma adecuada para
aplicaciones distribuidas, porque se pueden
combinar las ventajas de diferentes mquinas y sistemas
operacionales. Para implementar el intercambio de
modelo de comunicacin ms popular es
el cual permite que el usuario
forma transparente.
ecnoIoga CIiente/Servidor: Definicin
ervidor es un trmino muy utilizado
as no hay un consenso en
trmino. Sin embargo la siguiente
partida para formarnos luego
liente/Servidor es un modelo
computacional en donde existe un elemento llamado
Cliente que solicita un servicio a otro elemento llamado
Servidor, quien se va a encargar de atender el servicio
. En este modelo, la solicitud del servicio y la
respuesta al mismo se denomina mensaje

Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es Pgina 4 de 10
Debemos observar que, el concepto cliente/servidor es
muy genrico, y que puede ser entendido incluso en el
mbito de una sola mquina, donde unas aplicaciones
pueden prestar servicio a otras. Sin embargo, su
significado desde el punto de vista informtico suele
presuponer la existencia de varias mquinas (al menos
dos) unidas en una red.
Desde el punto de vista funcional se puede decir que el
modelo cliente/servidor responde como una arquitectura
distribuida que permite a los usuarios finales obtener
acceso a la informacin en forma transparente aun en
entornos multiplataforma.
Fsicamente en un sistema distribuido cada mquina
puede cumplir el rol de servidor para algunas tareas y el
rol de cliente para otras. La idea es tratar a una
computadora como un instrumento, que por s sola pueda
realizar muchas tareas, pero con la consideracin de que
realice aquellas que son ms adecuadas a sus
caractersticas. Si esto se aplica tanto a clientes como
servidores se entiende que la forma ms estndar de
aplicacin y uso de sistemas clientes/servidores es
mediante la explotacin de las PC a travs de interfaces
grficas de usuario; mientras que la administracin de
datos y su seguridad e integridad se deja a cargo de
computadoras centrales tipo mainframe.
Los Clientes interactan con el usuario, usualmente
en forma grfica. Frecuentemente se comunican con
procesos auxiliares que se encargan de establecer
conexin con el servidor, enviar el pedido, recibir la
respuesta, manejar las fallas y realizar actividades
de sincronizacin y de seguridad.
Los Servidores proporcionan un servicio al cliente y
devuelven los resultados. En algunos casos existen
procesos auxiliares que se encargan de recibir las
solicitudes del cliente, verificar la proteccin, activar
un proceso servidor para satisfacer el pedido, recibir
su respuesta y enviarla al cliente. Adems deben
manejar los interbloqueos, la recuperacin ante
fallas, y otros aspectos afines. Por las razones
anteriores la plataforma computacional asociada con
los servidores es ms poderosa que la de los
clientes. Por esta razn se utilizan PCs poderosos,
estaciones de trabajo, minicomputadores o sistemas
grandes. Adems deben manejar servicios como
administracin de la red, mensajes, control y
administracin de la entrada al sistema ("login"),
auditora y recuperacin y contabilidad. Usualmente
en los servidores existe algn tipo de servicio de
bases de datos.
Para que los clientes y los servidores puedan
comunicarse se requiere una infraestructura de
comunicaciones, la cual proporciona los mecanismos
bsicos de direccionamiento y transporte. La
mayora de los sistemas Cliente/Servidor actuales se
basan en redes locales y por lo tanto utilizan
protocolos no orientados a conexin, lo cual implica
que las aplicaciones deben hacer las verificaciones.
La red debe tener caractersticas adecuadas de
desempeo, confiabilidad, transparencia y
administracin.
Como ejemplos de clientes pueden citarse interfaces de
usuario para enviar comandos a un servidor, APIs para el
desarrollo de aplicaciones distribuidas, herramientas en
el cliente para hacer acceso a servidores remotos (por
ejemplos servidores de SQL) o aplicaciones que solicitan
acceso a servidores para algunos servicios.
Como ejemplos de servidores pueden citarse servidores
de ventanas como X-windows, servidores de archivos
como NFS, servidores para el manejo de bases de datos,
como los servidores de SQL, servidores de diseo y
manufactura asistidos por computador, etc.

Caractersticas de CIiente/Servidor
Como se desprende de las definiciones anteriores, tanto
clientes como servidores son entidades independientes
que operan conjuntamente a travs de una red para
realizar una tarea. Pero para hacer la distincin respecto
de otras formas de arquitecturas o software distribuidos,
se presenta una lista de caractersticas que debieran
cumplir los sistemas cliente/servidor:
Servicio: Cliente/servidor es fundamentalmente una
relacin entre procesos ejecutados en aparatos
distintos. El proceso del servidor hace de ste un
proveedor de servicios. El cliente es un consumidor
de servicios. En esencia, cliente/servidor aporta una
clara distincin de funciones con base en la idea del
servicio.
Recursos compartidos: Un servidor puede atender a
muchos clientes al mismo tiempo y regular su
acceso a recursos compartidos.
Protocolos asimtricos: Entre clientes y servidores
se establece una relacin de muchos a uno Son
siempre los clientes lo que inician el dilogo al
solicitar un servicio. Los servidores aguardan
pasivamente las solicitudes de los clientes.
Transparencia de ubicacin: El servidor es un
proceso que puede residir en el mismo aparato que
el cliente o en un aparato distinto a lo largo de una
red. El software de cliente/servidor suele ocultarles a
los clientes la ubicacin del servidor mediante un
redireccionamiento de las llamadas a servicios en
caso necesario. Un programa puede ser un cliente,
un servidor o ambos.
Mezcla e igualdad: El software ideal de
cliente/servidor es independiente del hardware o de
las plataformas de software del sistema operativo.
Debemos estar en condiciones de mezclar e igualar
plataformas de cliente y de servidor.
Intercambios basados en mensajes: Clientes y
servidores son sistemas holgadamente acoplados
que interactan a travs de un mecanismo de
transmisin de mensajes. El mensaje es el
mecanismo de entrega para las solicitudes y
respuestas de servicio.
Encapsulamiento de servicio: El servidor es un
especialista. Un mensaje le indica a un servidor
qu servicio se solicita; ste se le enva luego al
servidor para determinar el cumplimiento de la tarea.
Los servidores pueden ser sustituidos sin afectar a
los clientes, siempre y cuando la interfaz para la
publicacin del mensaje no cambie.
Facilidad de escalabilidad: Los sistemas de
cliente/servidor pueden escalar horizontal o
verticalmente. La escalabilidad horizontal significa la
adicin o eliminacin de estaciones de trabajo del
cliente con apenas un ligero impacto en el
desempeo. La escalabilidad vertical significa migrar
a un aparato servidor ms grande y ms veloz a
servidores mltiples.
Integridad: El cdigo del servidor y los datos del
servidor se conservan centralmente, lo que resulta
en un mantenimiento de menor costo y en la
proteccin de la integridad de los datos compartidos.
Al mismo tiempo, los clientes mantienen su
individualidad e independencia.
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es Pgina 5 de 10
CIiente/Servidor: Ventajas Desventajas
Entre las primeras cosas que decir de cliente/servidor, es
poder destacar que estamos frente a una plataforma
abierta por excelencia. Ciertamente las posibilidades de
igualar o nivelar distintos productos o aplicaciones o
componentes de distintos proveedores nos brinda la
oportunidad de hacer una muy amplia variedad de
combinaciones de clientes y servidores.
Pero esta gran variedad de posibilidades de combinacin
implica que debemos tener en cuenta tambin una gran
cantidad de elementos a considerar y evaluar al
momento de enfrentar una solucin informtica basada
en la arquitectura cliente/servidor.
Podemos agrupar bsicamente en dos aspectos la
problemtica cliente/servidor:
Qu plataforma elegir?
Qu herramientas de desarrollo elegir?.
La primera pregunta tiene relacin con la respuesta a
cuestiones aun ms especficas como ser Qu
plataforma cliente elegir? Qu plataforma servidor?
Qu clase de middleware? Qu administrador o
servidor de base de datos? Sobre qu arquitectura de
computacin distribuida se tendr que montar la
solucin?.
El segundo aspecto tiene relacin con la toma de
decisiones sobre el rea de desarrollo y herramientas de
cliente/servidor. Si bien es cierto que la mayor ventaja de
esta tecnologa es la flexibilidad en cuanto a que
podemos elegir entre muchas opciones, esto mismo nos
obliga a tener conocimientos importantes para la
integracin de las mismas, dado que el desarrollo de
aplicaciones cliente/servidor requiere del manejo de
elementos en el rea de diseos de bases de datos,
comunicacin entre procesos, procesamiento de
transacciones, generacin de GUI (interfaces grficas de
usuarios) y para que hablar de Internet, con clientes y
servidores distribuidos a lo largo de la Web.
Ventajas:
Uno de los aspectos que ms ha promovido el uso
de sistemas Cliente/Servidor es la existencia de
plataformas de hardware cada vez ms baratas.
Esta constituye a su vez una de las ms palpables
ventajas de este esquema, la posibilidad de utilizar
mquinas considerablemente ms baratas que las
requeridas por una solucin centralizada, basada en
sistemas grandes. Adems de lo anterior, se pueden
utilizar componentes, tanto de hardware como de
software, de varios fabricantes, lo cual contribuye
considerablemente a la reduccin de costos y
favorece la flexibilidad en la implantacin y
actualizacin de soluciones.
Adems de lo anterior, el esquema Cliente/Servidor
facilita la integracin entre sistemas diferentes y
compartir informacin, permitiendo, por ejemplo que
las mquinas ya existentes puedan ser utilizadas
pero utilizando interfaces ms amigables al usuario.
De esta manera podemos, por ejemplo, integrar PCs
con sistemas medianos y grandes, sin que todas las
mquinas tengan que utilizar el mismo sistema
operacional.
Al favorecer el uso de interfaces grficas
interactivas, los sistemas construidos con este
esquema tienen una interaccin ms intuitiva con el
usuario. Si se utilizan interfaces grficas para
interactuar con el usuario, el esquema
Cliente/Servidor presenta la ventaja, con respecto a
uno centralizado, de que no es siempre necesario
transmitir informacin grfica por la red pues esta
puede residir en el cliente, lo cual permite
aprovechar mejor el ancho de banda de la red.
Una ventaja adicional del uso del esquema Cliente /
Servidor es que es ms rpido el mantenimiento y el
desarrollo de aplicaciones pues se pueden emplear
las herramientas existentes (por ejemplo los
servidores de SQL o las herramientas de ms bajo
nivel como los sockets o el RPC ).
La estructura inherentemente modular facilita
adems la integracin de nuevas tecnologas y el
crecimiento de la infraestructura computacional,
favoreciendo as la escalabilidad de las soluciones.
El esquema Cliente/Servidor contribuye adems a
proporcionar a los diferentes departamentos de una
empresa soluciones locales, pero permitiendo
adems la integracin de la informacin relevante a
nivel global
Desventajas:
Por una parte, el mantenimiento de los sistemas es
ms difcil pues implica la interaccin de diferentes
partes de hardware y de software, distribuidas por
distintos proveedores, lo cual dificulta el diagnstico
de fallas.
Adems de lo anterior, se cuenta con muy escasas
herramientas para la administracin y ajuste del
desempeo de los sistemas.
En el desarrollo de aplicaciones Cliente/Servidor se
deben tener en cuenta diferentes aspectos, que se
mencionan a continuacin.
o Por un lado, es importante que los clientes y los
servidores utilicen el mismo mecanismo (por
ejemplo sockets o RPC), lo cual implica que se
deben tener mecanismos generales que existan
en diferentes plataformas.
o Adems 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
otra preocupacin importante. En este caso los
mecanismos son distintos que en el caso de los
sistemas centralizados. Por ejemplo, se deben hacer
verificaciones en el cliente y en el servidor. Tambin
se puede recurrir a otras tcnicas como el
encriptamiento.
El desempeo es otro de los aspectos que se deben
tener en cuenta en el esquema Cliente/Servidor.
Problemas de este estilo pueden presentarse por
congestin en la red, dificultad de predecir el trfico,
etc.
Un aspecto directamente relacionado con el anterior
es el de cmo distribuir los datos en la red. En el
caso de una empresa, por ejemplo, este puede ser
hecho por departamentos, geogrficamente, o de
otras maneras. Adems 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 simultneas.
A otro nivel, una de las decisiones que deben tomar
las organizaciones es la de si compran o desarrollar
los diferentes componentes.

Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
CIiente/Servidor: EIementos
Como se ha venido diciendo, cliente/servidor es un
modelo basado en la idea del servicio, en el que el cliente
es un proceso consumidor de servicios y el servidor es
un proceso proveedor de servicios. La siguiente figura
muestra los elementos que conforman el modelo


Adems esta relacin est establecida en funcin del
intercambio de mensajes que es el nico elemento de
acoplamiento entre ambos. De estas lneas se
desprenden los tres elementos fundamentales sobre los
cuales se desarrollan e implantan los
cliente/servidor: el proceso cliente que es quien inicia el
dilogo, el proceso servidor que pasivamente espera a
que lleguen peticiones de servicio y el middleware que
corresponde a la interfaz que provee la conectividad
entre el cliente y el servidor para poder intercambiar
mensajes.

EI CIiente
El cliente es el proceso que permite al usuario formular
los requerimientos y pasarlos al servidor, se lo conoce
con el trmino front-end. Este normalmente maneja todas
las funciones relacionadas con la manipulacin y
despliegue de datos, por lo que estn desarrollados
sobre plataformas que permiten construir
grficas de usuario (GUI), adems de acceder a los
servicios distribuidos en cualquier parte de la red. Las
funciones que lleva a cabo el proceso cliente se resumen
en los siguientes puntos:
Administrar la interfaz de usuario.
Interactuar con el usuario.
Procesar la lgica de la aplicacin y hacer
validaciones
locales.
Generar requerimientos de bases de datos.
Recibir resultados del servidor.
Formatear resultados.
Tipos de Clientes
a. Clientes sin GUI. Estos clientes presentan una interfaz
simple y generan solicitudes al servidor con un mnimo
de interacciones humanas. Son ejemplos de este tipo de
clientes las mquinas de fax, los telfonos celulares.
b. Clientes con GUI. Presentan una interfaz grfica q
se basa en la ejecucin previa de dilogos como mens,
ventanas desplegables y barras de desplazamiento. Son
ejemplo de estos clientes los terminales que ejecutan
aplicaciones visuales.
c. Clientes con OOUI. Se trata de una interfaz altamente
icnica que ofrece acceso a informacin en formatos
sumamente visuales. Como ejemplo tenemos las
consolas de administracin de sistemas y los sistemas de
capacitacin basados en multimedia.

EI Servidor
Es el proceso encargado de atender a mltiples clientes
que hacen peticiones de algn recurso administrado por
l. Al proceso servidor se lo conoce con el trmino back
end. El servidor normalmente maneja todas las funciones
UNT

EIementos deI ModeIo
Como se ha venido diciendo, cliente/servidor es un
idea del servicio, en el que el cliente
consumidor de servicios y el servidor es
La siguiente figura
muestra los elementos que conforman el modelo

Adems esta relacin est establecida en funcin del
de mensajes que es el nico elemento de
ambos. De estas lneas se
fundamentales sobre los
cuales se desarrollan e implantan los sistemas
cliente/servidor: el proceso cliente que es quien inicia el
dilogo, el proceso servidor que pasivamente espera a
lleguen peticiones de servicio y el middleware que
la interfaz que provee la conectividad
para poder intercambiar
proceso que permite al usuario formular
requerimientos y pasarlos al servidor, se lo conoce
end. Este normalmente maneja todas
relacionadas con la manipulacin y
que estn desarrollados
sobre plataformas que permiten construir interfaces
grficas de usuario (GUI), adems de acceder a los
servicios distribuidos en cualquier parte de la red. Las
que lleva a cabo el proceso cliente se resumen
Procesar la lgica de la aplicacin y hacer
Generar requerimientos de bases de datos.
Estos clientes presentan una interfaz
y generan solicitudes al servidor con un mnimo
humanas. Son ejemplos de este tipo de
fax, los telfonos celulares.
b. Clientes con GUI. Presentan una interfaz grfica que
en la ejecucin previa de dilogos como mens,
desplegables y barras de desplazamiento. Son
clientes los terminales que ejecutan
c. Clientes con OOUI. Se trata de una interfaz altamente
e ofrece acceso a informacin en formatos
visuales. Como ejemplo tenemos las
de sistemas y los sistemas de
Es el proceso encargado de atender a mltiples clientes
en peticiones de algn recurso administrado por
proceso servidor se lo conoce con el trmino back-
servidor normalmente maneja todas las funciones
relacionadas con la mayora de las reglas del negocio y
los recursos de datos.
Las funciones que lleva a cabo el proceso servidor se
resumen en los siguientes puntos:
Aceptar y procesar los requerimientos que hacen los
clientes sobre archivos, pginas web, objetos de
bases de datos..
Formatear datos para trasmitirlos a los clientes.
Procesar la lgica de la aplicacin y realizar
validaciones a nivel de bases de datos.
Tipos de Servidores
Por la naturaleza del servicio podemos clasificar a los
servidores de la siguiente manera:
a. Servidor de Archivos.
El cliente enva solicitudes de registros de
al servidor de archivos a travs de una red.
El servidor hace llegar todos los registros al cliente
para que este encuentre sus propios datos.
Son tiles para compartir archivos por medio de una
red.
Son indispensables para compartir documentos,
imgenes,
planos y objetos de gran dimensin
b. Servidor de Base de Datos
El Cliente enva solicitudes de SQL en calidad de
mensajes al servidor de bases de datos. Los
resultados de cada orden SQL son devueltos por la
red.
El cdigo que procesa la solicitud
residen en el servidor
El servidor hace uso de su propia capacidad de
procesamiento para encontrar los datos solicitados,
en lugar de hacer llegar todos los registros al cliente.
El resultado es un uso ms eficiente de la capacidad
de procesamiento distribuido
c. Servidor de Transacciones
El Cliente invoca procedimientos remotos que
residen en el servidor con un mecanismo de base de
datos SQL.
El intercambio por la red consiste en un solo
mensaje de solicitud/respuesta a diferencia del
Servidor de Bases de Datos que utiliza un mensaje
de solicitud/respuesta para
una transaccin.
En el servidor los enunciados de SQL aciertan o
fallan todos como una sola unidad. (Transacciones)
d. Servidor de Groupware
El groupware dirige la administracin de informacin
semiestructurada como texto, imagen, correo y flujos
de trabajo. (Contacto directo entre personas)
El servidor aloja un software que entre varias
aplicaciones ms permite la administracin de
documentos, el proceso de
las aplicaciones multicompartida y
Los ejemplos ms conocidos son los productos
software como Lotus Notes y MS Echange Server
e. Servidor de Objetos
Con un servidor de objetos, las aplicaciones se
generan como un conjunto de objetos de
comunicacin.
Los objetos del cliente se comunican con los objetos
del servidor por medio de un corredor de solicitudes
de objetos (ORB: Object Request Broker).
El cliente invoca un mtodo de un objeto remoto. El
ORB localiza una instancia de esta clase de servidor
de objetos, invoca el mtodo solicitado y devuelve
Pgina 6 de 10
con la mayora de las reglas del negocio y
e lleva a cabo el proceso servidor se
en los siguientes puntos:
Aceptar y procesar los requerimientos que hacen los
clientes sobre archivos, pginas web, objetos de
Formatear datos para trasmitirlos a los clientes.
lgica de la aplicacin y realizar
nivel de bases de datos.
Por la naturaleza del servicio podemos clasificar a los
de la siguiente manera:
El cliente enva solicitudes de registros de archivos
servidor de archivos a travs de una red.
El servidor hace llegar todos los registros al cliente
este encuentre sus propios datos.
Son tiles para compartir archivos por medio de una
Son indispensables para compartir documentos,
planos y objetos de gran dimensin
El Cliente enva solicitudes de SQL en calidad de
al servidor de bases de datos. Los
orden SQL son devueltos por la
El cdigo que procesa la solicitud SQL y los datos
El servidor hace uso de su propia capacidad de
procesamiento para encontrar los datos solicitados,
de hacer llegar todos los registros al cliente.
El resultado es un uso ms eficiente de la capacidad
esamiento distribuido
El Cliente invoca procedimientos remotos que
servidor con un mecanismo de base de
El intercambio por la red consiste en un solo
solicitud/respuesta a diferencia del
Datos que utiliza un mensaje
de solicitud/respuesta para cada instruccin SQL en
En el servidor los enunciados de SQL aciertan o
como una sola unidad. (Transacciones)
ge la administracin de informacin
semiestructurada como texto, imagen, correo y flujos
trabajo. (Contacto directo entre personas)
El servidor aloja un software que entre varias
ms permite la administracin de
documentos, el proceso de imgenes, correo interno,
las aplicaciones multicompartida y el flujo de trabajo.
Los ejemplos ms conocidos son los productos
como Lotus Notes y MS Echange Server
Con un servidor de objetos, las aplicaciones se
n conjunto de objetos de
Los objetos del cliente se comunican con los objetos
servidor por medio de un corredor de solicitudes
(ORB: Object Request Broker).
El cliente invoca un mtodo de un objeto remoto. El
instancia de esta clase de servidor
invoca el mtodo solicitado y devuelve
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
los resultados al objeto del cliente. Ejm: CORBA,
DCOM de Microfost
f. Servidor Web
En este modelo cliente/servidor est integrado por
clientes universales en comunica
servidores superamplios.
En su modalidad ms simple, el servidor Web enva
documentos cuando los clientes lo solicitan por su
nombre.
Clientes y servidores se comunican mediante un
protocolo HTTP.
Este servidor combina el Web con los Objetos
Distribuidos. (Object Web)

EI MiddIeware
En su definicin ms simple, middleware es la interfaz
que provee la conectividad entre aplicaciones clientes y
aplicaciones servidoras, y entre aplicaciones y bases de
datos. Es una capa de software que protege a
desarrolladores de tener que manejar detalles de bajo
nivel de diferentes protocolos de comunicacin, sistemas
operativos y arquitecturas de bases de
de interfaces incluyen APIs, PRCs, Pipes,
red y accesos a bases de datos.
Tipos de Middleware
a. Middleware de servicio general. Es el sustrato de la
mayora de las interconexiones de cliente/servidor.
Incluye las pilas de comunicacin, directorios distribuidos,
servicios de autenticacin, llamadas a procedimientos
remotos y servicios en cola. Esta categora incluye
tambin las extensiones del sistema operativo
redes, como los servicios distribuidos de archivos e
impresin. Entre los productos que pertenecen a esta
categora tenemos: NetWare, Named Pipes, TCP/IP y
NetBios.
b. Middleware de servicios especficos. Es necesario
para cumplir con tipos particulares de servicios.
Pertenecen a esta categora: El middleware para base de
datos como ODBC, el middleware para OLTP como ATMI
y TxRPC. El middleware para Groupware
las Llamadas de Lotus Notes. El middleware para
como CORBA de OMG y DCOM de Microsoft. El
middleware para Internet como http

CIiente/Servidor: CIasificacin
Uno de los aspectos claves para entender
cliente/servidor, y por lo tanto contar con la capacidad de
proponer, promocionar y llevar a cabo soluciones de este
tipo, es llegar a conocer la arquitectura de este modelo y
los conceptos o ideas asociados al mismo. Ms all de
comprender los componentes Cliente
Servidor, es preciso analizar ciertas relaciones entre
stos, que pueden definir el tipo de solucin que se
ajusta de mejor forma a las estadsticas y restricciones
acerca de los eventos y requerimientos de informacin
que se obtuvieron en la etapa de anlisis de un
determinado proyecto.
De hecho el analista o lder deber conocer estos
eventos/restricciones del negocio para, a partir de all,
hacer las consideraciones y estimaciones de la futura
configuracin, teniendo en cuenta aspectos como
ejemplo, la oportunidad de la informacin,
respuesta, tamaos de registros, tamao de bases de
datos, estimaciones del trfico de red, distribucin
geogrfica tanto de los procesos como los datos, etc.
En tal sentido se presenta, en primer lugar, un esquema
de clasificacin en funcin de los aspectos funcionales
UNT

objeto del cliente. Ejm: CORBA,
En este modelo cliente/servidor est integrado por
universales en comunicacin con
En su modalidad ms simple, el servidor Web enva
documentos cuando los clientes lo solicitan por su
Clientes y servidores se comunican mediante un
Este servidor combina el Web con los Objetos
En su definicin ms simple, middleware es la interfaz
provee la conectividad entre aplicaciones clientes y
servidoras, y entre aplicaciones y bases de
de software que protege a los
manejar detalles de bajo
comunicacin, sistemas
operativos y arquitecturas de bases de datos. Este tipo
de interfaces incluyen APIs, PRCs, Pipes, mensajera de
a. Middleware de servicio general. Es el sustrato de la
de las interconexiones de cliente/servidor.
comunicacin, directorios distribuidos,
llamadas a procedimientos
categora incluye
tambin las extensiones del sistema operativo para
redes, como los servicios distribuidos de archivos e
impresin. Entre los productos que pertenecen a esta
tenemos: NetWare, Named Pipes, TCP/IP y
b. Middleware de servicios especficos. Es necesario
con tipos particulares de servicios.
El middleware para base de
para OLTP como ATMI
y TxRPC. El middleware para Groupware como MAPI y
las Llamadas de Lotus Notes. El middleware para objetos
como CORBA de OMG y DCOM de Microsoft. El
CIasificacin
Uno de los aspectos claves para entender la tecnologa
lo tanto contar con la capacidad de
llevar a cabo soluciones de este
arquitectura de este modelo y
mismo. Ms all de
- Middleware -
ervidor, es preciso analizar ciertas relaciones entre
stos, que pueden definir el tipo de solucin que se
mejor forma a las estadsticas y restricciones
eventos y requerimientos de informacin
etapa de anlisis de un
analista o lder deber conocer estos
negocio para, a partir de all,
estimaciones de la futura
aspectos como por
ejemplo, la oportunidad de la informacin, tiempo de
respuesta, tamaos de registros, tamao de bases de
datos, estimaciones del trfico de red, distribucin
tanto de los procesos como los datos, etc.
ugar, un esquema
en funcin de los aspectos funcionales
que conforman forman las aplicaciones informticas:
Presentacin, Lgica y Datos. Veremos como se pueden
encontrar hasta 5 clasificaciones segn las funciones que
asuman el Cliente y el Servidor. Seguidamente se
estudiara una clasificacin basada
Fat Client (Thin Server) y Fat Server/Thin
luego exponer una tercera forma de clasificar al modelo
bajo el concepto de Capas o Plano:
Multi Tier.
Cabe sealar que todos estos criterios y conceptos
bastante generalizados y sobrecargados de definiciones,
pero que se consideran necesarios y tiles para la
aplicacin del modelo cliente/servidor.

1. Por Aspectos FuncionaIes
Este tipo de clasificacin se basa en los grados de
libertad que brinda el modelo cliente/servidor para
balancear la carga de proceso entre los niveles de
presentacin, aplicacin y base de
Para entender en forma ms ordenada y clara los
conceptos y elementos involucrados en esta tecnologa
se puede aplicar una descomposicin o arquitectura de
niveles. Esta descomposicin principalmente consiste en
separar los elementos estructurales
en funcin de aspectos ms funcionales de la
Nivel de Presentacin: Agrupa a los elementos
asociados al componente Cliente. Se centra en la
interaccin con el usuario. GUIs y orientada cada
vez ms a objetos


Nivel de Aplicacin: Agrupa a todos los elementos
asociados al cdigo que ejecuta y hace
polticas del sistema. Calcula y determina el flujo de
la aplicacin.


Nivel de base de datos: Agrupa a todas las
actividades asociadas al acceso de los datos.
Administra informacin que debe permanecer entre
sesiones o compartirse entre


Este modelo de descomposicin en niveles, permite
introducir la discusin del desarrollo de aplicaciones en
arquitecturas de software en
funciones que asumen el cliente y el servidor
Pgina 7 de 10
que conforman forman las aplicaciones informticas:
Presentacin, Lgica y Datos. Veremos como se pueden
encontrar hasta 5 clasificaciones segn las funciones que
el Servidor. Seguidamente se
estudiara una clasificacin basada en los conceptos de
Fat Server/Thin Client) para
luego exponer una tercera forma de clasificar al modelo
bajo el concepto de Capas o Plano: Two Tier, Three Tier,
Cabe sealar que todos estos criterios y conceptos estn
bastante generalizados y sobrecargados de definiciones,
que se consideran necesarios y tiles para la
modelo cliente/servidor.
Aspectos FuncionaIes
e clasificacin se basa en los grados de
brinda el modelo cliente/servidor para
proceso entre los niveles de
presentacin, aplicacin y base de datos.
Para entender en forma ms ordenada y clara los
involucrados en esta tecnologa
descomposicin o arquitectura de
principalmente consiste en
separar los elementos estructurales de esta tecnologa
en funcin de aspectos ms funcionales de la misma:
de Presentacin: Agrupa a los elementos
componente Cliente. Se centra en la
usuario. GUIs y orientada cada

Nivel de Aplicacin: Agrupa a todos los elementos
asociados al cdigo que ejecuta y hace cumplir las
del sistema. Calcula y determina el flujo de

Nivel de base de datos: Agrupa a todas las
asociadas al acceso de los datos.
que debe permanecer entre
sesiones o compartirse entre los usuarios

Este modelo de descomposicin en niveles, permite
discusin del desarrollo de aplicaciones en
software en cinco niveles segn las
el cliente y el servidor. Tenemos
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
Presentacin Distribuida
Presentacin Remota
Proceso Distribuido
Base de Datos Remota y
Base de Datos Distribuida


2. Por eI Tamao de Ios Componentes
Dependiendo de que segmento de las capas de software
tenga que soportar la mayor o menor carga de
procesamiento, se habla de Fat Cliente (Thin Server) o
Fat server (Thin Client).
Consideraciones de este tipo son muy
momento de tomar la decisin sobre una plataforma de
desarrollo/explotacin, al punto que pueden definir la
viabilidad o no de las mismas para enfr
nmero de restricciones impuestas por una problemtica.
Fat Client (Thin Server)
En este esquema de arquitectura el grueso de la
aplicacin es ejecutada en el cliente, es decir, el nivel de
presentacin y el nivel de aplicacin corren en un
proceso cliente, y el servidor es relegado a realizar las
funciones que provee un administrador de

En general este tipo de arquitectura tiene mejor
aplicacin en sistemas de apoyo de decisiones (DSS:
Decision Support System) y sistemas de informacin
ejecutiva (EIS: Executive Information System), y como se
concluir ms adelante, tiene pocas posibilidades de
aplicarse en sistemas de misin crtica.
Fat Server (Thin Client)
Este es el caso opuesto al anterior, el proceso cliente
restringido a la presentacin de la interfaz de usuario,
UNT


eI Tamao de Ios Componentes
Dependiendo de que segmento de las capas de software
tenga que soportar la mayor o menor carga de
de Fat Cliente (Thin Server) o
muy importantes al
una plataforma de
pueden definir la
viabilidad o no de las mismas para enfrentar un cierto
nmero de restricciones impuestas por una problemtica.
En este esquema de arquitectura el grueso de la
ejecutada en el cliente, es decir, el nivel de
de aplicacin corren en un nico
relegado a realizar las
funciones que provee un administrador de base de datos.

En general este tipo de arquitectura tiene mejor
sistemas de apoyo de decisiones (DSS:
sistemas de informacin
Information System), y como se
pocas posibilidades de

Este es el caso opuesto al anterior, el proceso cliente es
restringido a la presentacin de la interfaz de usuario,
mientras que el grueso de la aplicacin corre por el lado
del servidor de aplicacin.

En general este tipo de arquitectura presenta una
flexibilidad mayor como para desarrollar un gran espectr
de aplicaciones, incluyendo los sistemas de misin crtica
a travs de servidores de transacciones.

3. Por pIanos o capas (Tier)
Una de las ms comunes y discutidas distinciones entre
las diferentes arquitecturas cliente/servidor se basan en
la idea de planos (tier), la cual es una variacin sobre la
divisin o clasificacin por tamao de componentes
(clientes grandes y servidores amplios). Esto se debe a
que se trata de definir el modo en que las prestaciones
funcionales de la aplicacin sern
proporcin, tanto al cliente como al servidor.
Dichas prestaciones se deben agrupar entre los tres
componentes clsicos para cliente/servidor: interfaz de
usuario, lgica de negocios y los datos compartidos, cada
uno de los cuales corresponde a
esta categora tenemos las aplicaciones en dos planos
(two-tier), tres planos (three-tier) y multi planos (multi
tier).
Este enfoque o clasificacin es el ms generalizado y el
que ms se ajusta a los enfoques modernos, dado que
se fundamenta en los componentes lgicos de la
estructura cliente/servidor y en la
de la computacin distribuida. Por
hablar de servidores de aplicacin
de una red, y no tiene mucho sentido
equipo de hardware como servidor, si no ms bien
entenderlo como una plataforma fsica sobre la cual
pueden operar uno o ms servidores de aplicaciones.

a. CIiente/Servidor Dos PIanos.
Esta estructura se caracteriza por la conexin directa
entre el proceso cliente y un administrador de bases de
datos. Dependiendo de donde se localice el grupo de
tareas correspondientes a la lgica de negocios se
pueden tener a su vez dos tipos distintos dentro de esta
misma categora:
Implementado con SQL Remoto
En este esquema el cliente enva mensajes con
solicitudes SQL al servidor de bases de datos y el
resultado de cada instruccin SQL es devuelto por la red,
no importando si son uno, diez, cien
mismo cliente quien debe procesar todo
que le fueron devueltos por el servidor de base de
segn el requerimiento que l mismo hizo.

Pgina 8 de 10
que el grueso de la aplicacin corre por el lado

En general este tipo de arquitectura presenta una
mayor como para desarrollar un gran espectro
incluyendo los sistemas de misin crtica
de transacciones.
. Por pIanos o capas (Tier)
Una de las ms comunes y discutidas distinciones entre
diferentes arquitecturas cliente/servidor se basan en
planos (tier), la cual es una variacin sobre la
clasificacin por tamao de componentes
servidores amplios). Esto se debe a
modo en que las prestaciones
funcionales de la aplicacin sern asignadas, y en que
proporcin, tanto al cliente como al servidor.
Dichas prestaciones se deben agrupar entre los tres
componentes clsicos para cliente/servidor: interfaz de
lgica de negocios y los datos compartidos, cada
cuales corresponde a un plano. Dentro de
esta categora tenemos las aplicaciones en dos planos
tier) y multi planos (multi-
Este enfoque o clasificacin es el ms generalizado y el
se ajusta a los enfoques modernos, dado que
los componentes lgicos de la
estructura cliente/servidor y en la madurez y popularidad
de la computacin distribuida. Por ejemplo, esto permite
hablar de servidores de aplicacin distribuidos a lo largo
de una red, y no tiene mucho sentido identificar a un
equipo de hardware como servidor, si no ms bien
entenderlo como una plataforma fsica sobre la cual
operar uno o ms servidores de aplicaciones.
a. CIiente/Servidor Dos PIanos.
Esta estructura se caracteriza por la conexin directa
proceso cliente y un administrador de bases de
Dependiendo de donde se localice el grupo de
correspondientes a la lgica de negocios se
vez dos tipos distintos dentro de esta
to
En este esquema el cliente enva mensajes con
al servidor de bases de datos y el
SQL es devuelto por la red,
no importando si son uno, diez, cien o mil registros. Es el
mismo cliente quien debe procesar todos los registros
que le fueron devueltos por el servidor de base de datos,
segn el requerimiento que l mismo hizo.
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es

Esto hace que este tipo de estructura se adecue a los
requerimientos de aplicaciones orientadas a los sistemas
de apoyo y gestin, pero resultan inadecuados para los
sistemas crticos en que se requieran bajos tiempos de
respuesta.
Ventajas:
Presenta una estructura de desarrollo bastante
simple por cuanto el programador tpicamente
maneja un nico ambiente de desarrollo (es ms
simple respecto de cliente/servidor en tres planos,
puesto que reduce una capa de programacin, como
se ver ms adelante).
Desventajas:
La gran cantidad de informacin que viaja al cliente
congestiona demasiado el trfico de red, lo que se
traduce en bajo rendimiento.
Por su bajo rendimiento esta estructura tiene un bajo
espectro de aplicacin, limitndose a la construccin
de sistemas no crticos.
Implementado con Procedimientos Almacenados
En este esquema el cliente enva llamadas a funciones
que residen en la base de datos, y es sta quien resuelve
y procesa la totalidad de las instrucciones SQL
agrupadas en la mencionada funcin.
Ventajas:
Presenta las mismas ventajas de una arquitectura
dos planos con procedimientos almacenados, pero
mejora considerablemente el rendimiento sobre sta,
dado que reduce el trfico por la red al procesar los
datos en la misma base de datos, haciendo viajar
slo el resultado final de un
instrucciones SQL.
Desventajas:
Si bien la complejidad de desarrollo se ve
disminuida, se pierde flexibilidad y escalabilidad en
las soluciones implantadas (especialmente respecto
de cliente/servidor en tres planos, como se ver mas
adelante).
Obliga a basar el grueso de la aplicacin en SQL
extendido, propios del proveedor de la base de
que se elija.
Debiera considerarse que s bien los procedimientos
almacenados (stored procedures), los desencadenantes
(triggers) y las reglas (constraint) son tiles, en rigor son
ajenos al estndar de SQL:
No existen dos implementaciones de
iguales.
El lenguaje para la descripcin de los procedimientos
almacenados y probablemente su funcionalidad
vara de un proveedor a otro. Lo que implica que los
procedimientos almacenados no son totalmente
exportables entre plataformas de dist
proveedores.
UNT


Esto hace que este tipo de estructura se adecue a los
requerimientos de aplicaciones orientadas a los sistemas
resultan inadecuados para los
crticos en que se requieran bajos tiempos de
Presenta una estructura de desarrollo bastante
cuanto el programador tpicamente
ambiente de desarrollo (es ms
cliente/servidor en tres planos,
de programacin, como
La gran cantidad de informacin que viaja al cliente
congestiona demasiado el trfico de red, lo que se
Por su bajo rendimiento esta estructura tiene un bajo
espectro de aplicacin, limitndose a la construccin
Implementado con Procedimientos Almacenados
En este esquema el cliente enva llamadas a funciones
base de datos, y es sta quien resuelve
la totalidad de las instrucciones SQL
Presenta las mismas ventajas de una arquitectura
planos con procedimientos almacenados, pero
el rendimiento sobre sta,
reduce el trfico por la red al procesar los
base de datos, haciendo viajar
slo el resultado final de un conjunto de
Si bien la complejidad de desarrollo se ve
pierde flexibilidad y escalabilidad en
implantadas (especialmente respecto
tres planos, como se ver mas
Obliga a basar el grueso de la aplicacin en SQL
propios del proveedor de la base de datos
Debiera considerarse que s bien los procedimientos
almacenados (stored procedures), los desencadenantes
(triggers) y las reglas (constraint) son tiles, en rigor son
No existen dos implementaciones de proveedores
El lenguaje para la descripcin de los procedimientos
almacenados y probablemente su funcionalidad
proveedor a otro. Lo que implica que los
almacenados no son totalmente
plataformas de distintos
Se pierde la independencia entre el cdigo de la
aplicacin (conocimiento y reglas del negocio) y los
datos.

b. CIiente/Servidor Tres PIanos.
Esta estructura se caracteriza por elaborar la aplicacin
en base a dos capas principales de s
capa correspondiente al servidor de base de datos. Al
igual que en la arquitectura dos capas, y segn las
decisiones de diseo que se tomen, se puede balancear
la carga de trabajo entre el proceso
proceso correspondiente al servidor de


En este esquema el cliente enva mensajes directamente
al servidor de aplicacin el cual debe administrar y
responder todas las solicitudes. Es el servidor,
dependiendo del tipo de solicitud,
conecta con la base de datos.
Ventajas:
Reduce el trfico de informacin en la red por lo que
mejora el rendimiento de los sistemas
(especialmente respecto de la estructura en dos
planos).
Brinda una mayor flexibilidad de desarrollo y de
eleccin de plataformas sobre la
aplicaciones.
Provee escalabilidad horizontal y vertical.
Se mantiene la independencia entre el cdigo de la
aplicacin (reglas y conocimiento del negocio) y los
datos, mejorando la portabilidad de las aplicaciones.
Los lenguajes sobre los
aplicaciones son estndares lo que hace ms
exportables las aplicaciones entre plataformas.
Dado que mejora el rendimiento al optimizar el flujo
de informacin entre componentes, permite construir
sistemas crticos de alta confiab
El mismo hecho de localizar las reglas del negocio
en su propio ambiente, en vez de distribuirlos en la
capa de interfaz de usuario, permite reducir el
impacto de hacer mantenimiento, cambios urgentes
de ltima hora o mejoras al sistema.
Disminuye el nmero de usuarios (licencias)
conectados a la base de datos.
Desventajas:
Dependiendo de la eleccin de los lenguajes de
desarrollo, puede presentar mayor complejidad en
comparacin con cliente/servidor dos planos.
Pgina 9 de 10
Se pierde la independencia entre el cdigo de la
(conocimiento y reglas del negocio) y los
b. CIiente/Servidor Tres PIanos.
Esta estructura se caracteriza por elaborar la aplicacin
a dos capas principales de software, ms la
correspondiente al servidor de base de datos. Al
arquitectura dos capas, y segn las
tomen, se puede balancear
la carga de trabajo entre el proceso cliente y el nuevo
al servidor de aplicacin.

En este esquema el cliente enva mensajes directamente
servidor de aplicacin el cual debe administrar y
las solicitudes. Es el servidor,
dependiendo del tipo de solicitud, quien accede y se

Reduce el trfico de informacin en la red por lo que
mejora el rendimiento de los sistemas
respecto de la estructura en dos
Brinda una mayor flexibilidad de desarrollo y de
eleccin de plataformas sobre la cual montar las
Provee escalabilidad horizontal y vertical.
Se mantiene la independencia entre el cdigo de la
aplicacin (reglas y conocimiento del negocio) y los
datos, mejorando la portabilidad de las aplicaciones.
Los lenguajes sobre los cuales se desarrollan las
aplicaciones son estndares lo que hace ms
exportables las aplicaciones entre plataformas.
Dado que mejora el rendimiento al optimizar el flujo
informacin entre componentes, permite construir
sistemas crticos de alta confiabilidad.
El mismo hecho de localizar las reglas del negocio
su propio ambiente, en vez de distribuirlos en la
de interfaz de usuario, permite reducir el
hacer mantenimiento, cambios urgentes
o mejoras al sistema.
el nmero de usuarios (licencias)
conectados a la base de datos.
Dependiendo de la eleccin de los lenguajes de
desarrollo, puede presentar mayor complejidad en
comparacin con cliente/servidor dos planos.
Tecnologa Cliente / Servidor UNT
Ingeniera de Sistemas
docenteunt@yahoo.es
Existen pocos proveedores de herrami
integradas de desarrollo con relacin al modelo
cliente/servidor dos planos, y normalmente son de
alto costo.
Debido a estas desventajas es aqu la mayor
importancia del Generador (aplicacin creada en el
presente trabajo).
La siguiente figura muestra la evolucin de los modelos
de procesamiento.


CIiente/Servidor: Para todo tamao
El modelo cliente/servidor satisface un amplio espectro
de necesidades con solo tres elementos: el cliente, el
middleware y el servidor. Podemos tener la disposicin
de estos tres elementos en cuatro situaciones:
Cliente/servidor para microempresas.
Es una implementacin de elementos en la que el
cliente, el middleware y la mayora de los servicios
de negocios corren en la misma mquina. Esta
implementacin se sugiere pa
individuales, oficinas domsticas y usuarios
con laptops bien dotadas.
Cliente/servidor para pequeas empresas y
departamentos.
Implementacin clsica de elementos
cliente/servidor nico de Ethernet. Se emplea en
pequeas empresas, departamentos y sucursales.
Es la modalidad de cliente/servidor que predomina
en la actualidad.
Cliente/servidor para empresas intergalcticas.
Implementacin de elementos de cliente/servidor de
servidores mltiples. Los servidores le presentan al
cliente una imagen de sistema nico. Se les puede
dispersar a todo lo largo de la empresa, a pesar de
lo cual es posible lograr que parezca formar parte del
escritorio local.
Cliente/servidor para un mundo post
Implementacin que transforma a todas las
mquinas del mundo en cliente y servidor al mismo
tiempo. Los agentes personales de cada mquina
manejarn todas las negociaciones con otros
agentes en cualquier punto del universo.

Perspectiva actuaI de CIiente/Servidor
En esta era de cliente/servidor habr clientes por todas
partes. Adoptarn todas las formas y tamaos, desde
escritorios, microcomputadoras de bolsillo, aparatos
elctricos inteligentes, comunicadores personales
mviles, televisores, robots, tableros de instrumentos de
automvil y PC en Internet hasta la inimaginable
constelacin de dispositivos necesitados de informacin
an por inventar. Dondequiera que se encuentren, estos
clientes obtendrn los servicios de millones de
servidores.
UNT

Existen pocos proveedores de herramientas
de desarrollo con relacin al modelo
dos planos, y normalmente son de
Debido a estas desventajas es aqu la mayor
importancia del Generador (aplicacin creada en el
a la evolucin de los modelos

tamao
El modelo cliente/servidor satisface un amplio espectro
necesidades con solo tres elementos: el cliente, el
el servidor. Podemos tener la disposicin
en cuatro situaciones:
Cliente/servidor para microempresas.
implementacin de elementos en la que el
middleware y la mayora de los servicios
en la misma mquina. Esta
implementacin se sugiere para empresas
individuales, oficinas domsticas y usuarios mviles
Cliente/servidor para pequeas empresas y
Implementacin clsica de elementos
de Ethernet. Se emplea en
departamentos y sucursales.
cliente/servidor que predomina
Cliente/servidor para empresas intergalcticas.
Implementacin de elementos de cliente/servidor de
servidores mltiples. Los servidores le presentan al
una imagen de sistema nico. Se les puede
lo largo de la empresa, a pesar de
que parezca formar parte del
Cliente/servidor para un mundo post-caresta.
Implementacin que transforma a todas las
mundo en cliente y servidor al mismo
personales de cada mquina
negociaciones con otros
universo.
Perspectiva actuaI de CIiente/Servidor
habr clientes por todas
Adoptarn todas las formas y tamaos, desde
microcomputadoras de bolsillo, aparatos
elctricos inteligentes, comunicadores personales
televisores, robots, tableros de instrumentos de
Internet hasta la inimaginable
necesitados de informacin
encuentren, estos
clientes obtendrn los servicios de millones de

En este valeroso mundo nuevo, cada cliente podr
mismo tiempo servidor. El entorno cliente/servidor es una
forma lgica de trabajar: el cliente utiliza una informacin
que est en un servidor. Esto va a existir siempre como
concepto; lo que ocurre es que esa tecnologa se
desarrolla y entra en escena Internet, que funciona en
modo cliente/servidor. Lo que ocurre es que cuando se
hablaba antes de cliente/servidor se hablaba tambin de
las famosas LANs y de Ethernet como una de las
tecnologas de comunicaciones de redes locales. Cuando
lleg la Web fue cuando las comunicaciones, sin huir del
concepto cliente/servidor, tuvieron que comenzar a
encararse a nuevos problemas, como el hecho de que ya
no hay un concepto servidor nico. Pero esto no significa
que un entorno haya sustituido al otro, sino que la
siempre mantendr el concepto cliente/servidor, aunque
s es claro que se ha reorganizado la lgica de las
aplicaciones en distintos niveles. La Web tapa el
concepto de entorno cliente/servidor, pero est ah.

CIiente/Servidor: Ofertas ComerciaIes
Cliente/servidor, el gran igualador del ramo de la
computacin, alienta la apertura y representa un campo
de juego nivelado en el que puede participar una amplia
variedad de plataformas de cliente y servidor. El entorno
de cliente/servidor abierto acta
para la conversin en mercancas del
software del sistema. La PC es un buen ejemplo de
mercanca de cmputo, puede obtenrsele con mltiples
proveedores y se le vende en situaciones de mercado de
precios sumamente competitivos. Los adaptadores de
LAN, las pilas de protocolos de LAN, los enrutadores de
redes y los puentes tambin se estn convirtiendo en
mercancas. En lo que se refiere al software: los sistemas
operativos de PC, los sistemas
bases de datos y los servidores y
acercan cada vez ms a la categora de
CORBA, Network OLE y el entorno de computacin
distribuida (DCE: distributed computing environment)
convertirn rpidamente en mercancas a los objetos
distribuidos, el software de directorio en red, los servicios
de seguridad y la administracin
Pero.dnde se encuentran los grandes diferenciadores
que distinguirn a los proveedores en este entorno de
mercancas altamente competitivo?.
los proveedores cuando la computacin cliente/servidor
con precios de mercancas satisfaga la necesidad de la
computacin tal como la conocemos ahora?


Pgina 10 de 10

En este valeroso mundo nuevo, cada cliente podr ser al
El entorno cliente/servidor es una
forma lgica de trabajar: el cliente utiliza una informacin
que est en un servidor. Esto va a existir siempre como
concepto; lo que ocurre es que esa tecnologa se
na Internet, que funciona en
modo cliente/servidor. Lo que ocurre es que cuando se
hablaba antes de cliente/servidor se hablaba tambin de
las famosas LANs y de Ethernet como una de las
tecnologas de comunicaciones de redes locales. Cuando
e cuando las comunicaciones, sin huir del
concepto cliente/servidor, tuvieron que comenzar a
encararse a nuevos problemas, como el hecho de que ya
no hay un concepto servidor nico. Pero esto no significa
que un entorno haya sustituido al otro, sino que la Web
siempre mantendr el concepto cliente/servidor, aunque
s es claro que se ha reorganizado la lgica de las
aplicaciones en distintos niveles. La Web tapa el
concepto de entorno cliente/servidor, pero est ah.
Ofertas ComerciaIes
liente/servidor, el gran igualador del ramo de la
alienta la apertura y representa un campo
que puede participar una amplia
cliente y servidor. El entorno
de cliente/servidor abierto acta como un catalizador
para la conversin en mercancas del hardware y el
software del sistema. La PC es un buen ejemplo de
mercanca de cmputo, puede obtenrsele con mltiples
proveedores y se le vende en situaciones de mercado de
itivos. Los adaptadores de
protocolos de LAN, los enrutadores de
tambin se estn convirtiendo en
refiere al software: los sistemas
operativos de PC, los sistemas de administracin de
datos y los servidores y visualizadores Web se
acercan cada vez ms a la categora de mercancas.
CORBA, Network OLE y el entorno de computacin
distribuida (DCE: distributed computing environment)
rpidamente en mercancas a los objetos
de directorio en red, los servicios
de seguridad y la administracin de los sistemas.
Pero.dnde se encuentran los grandes diferenciadores
distinguirn a los proveedores en este entorno de
altamente competitivo?. Qu suceder con
los proveedores cuando la computacin cliente/servidor
precios de mercancas satisfaga la necesidad de la
tal como la conocemos ahora?

You might also like