cliente_servidor

63
MÓDULO CLIENTE – SERVIDOR 1. PRESENTACIÓN DEL MÓDULO La asignatura pretende dar los conocimientos necesarios en el campo de las redes informáticas, funcionamiento, hardware, software de red, así como la aplicación y uso, del modelo cliente servidor utilizado, en redes locales y en los servicios de Internet 2. ORIENTACIONES PARA EL AUTOAPRENDIZAJE Recopilación de datos a través de Internet Realizar constantes lecturas acerca del material científico tratado Si se trabaja, aplicar los conocimientos adquiridos en el lugar de trabajo Utilización de organizadores gráficos para simplificar ideas 3. PROPÓSITO Dominio en el ámbito de redes computacionales LAN, así coma la aplicación de un modelo cliente – servidor que cubra servicios informáticos. 4. OBJETIVOS Dominar conceptos generales y específicos de Sistemas Distribuidos. Comprender el modelo cliente servidor. Identificar ya adaptar las redes computacionales y modelos necesarios dentro de una LAN. 1

Upload: javier-navarro-macias

Post on 16-Mar-2016

214 views

Category:

Documents


0 download

DESCRIPTION

2. ORIENTACIONES PARA EL AUTOAPRENDIZAJE 4. OBJETIVOS 3. PROPÓSITO La asignatura pretende dar los conocimientos necesarios en el campo de las redes informáticas, funcionamiento, hardware, software de red, así como la aplicación y uso, del modelo cliente servidor utilizado, en redes locales y en los servicios de Internet • Dominio en el ámbito de redes computacionales LAN, así coma la aplicación de un modelo cliente – servidor que cubra servicios informáticos. 1. 1 2

TRANSCRIPT

Page 1: cliente_servidor

MÓDULOCLIENTE – SERVIDOR

1. PRESENTACIÓN DEL MÓDULO

La asignatura pretende dar los conocimientos necesarios en el campo de las redes informáticas, funcionamiento, hardware, software de red, así como la aplicación y uso, del modelo cliente servidor utilizado, en redes locales y en los servicios de Internet

2. ORIENTACIONES PARA EL AUTOAPRENDIZAJE

Recopilación de datos a través de Internet Realizar constantes lecturas acerca del material científico

tratado Si se trabaja, aplicar los conocimientos adquiridos en el lugar de

trabajo Utilización de organizadores gráficos para simplificar ideas

3. PROPÓSITO

Dominio en el ámbito de redes computacionales LAN, así coma la aplicación de un modelo cliente – servidor que cubra servicios informáticos.

4. OBJETIVOS

Dominar conceptos generales y específicos de Sistemas Distribuidos.

Comprender el modelo cliente servidor. Identificar ya adaptar las redes computacionales y modelos

necesarios dentro de una LAN.

1

Page 2: cliente_servidor

5. TABLA DE CONTENIDOS

UNIDAD # 1.....................................................................................................................3REDES..............................................................................................................................3EL CABLEADO DE LA RED..........................................................................................4REDES LAN SIN CABLEADO.......................................................................................8TOPOLOGÍAS FÍSICAS DE RED...................................................................................9REDES LAN...................................................................................................................12PRINCIPALES COMPONENTES DE RED..................................................................17EL MODELO DE REDES OSI.......................................................................................21EL NIVEL FÍSICO..........................................................................................................22EL NIVEL DE ENLACE DE DATOS...........................................................................23EL NIVEL DE RED........................................................................................................24EL NIVEL DE TRANSPORTE......................................................................................25EL NIVEL DE APLICACIÓN........................................................................................28UNIDAD # 2...................................................................................................................29SERVICIOS BÁSICOS DE INTERNET........................................................................29WWW.............................................................................................................................29CORREO ELECTRÓNICO............................................................................................30LISTAS DE CORREO....................................................................................................31GRUPOS DE NOTICIAS...............................................................................................31UNIDAD # 3...................................................................................................................33MODELO CLIENTE SERVIDOR.................................................................................33TCP..................................................................................................................................34APROXIMACIONES TRADICIONALES DE COSTOS CLIENTE/SERVIDOR.......36ATRIBUCIÓN DEL COSTO..........................................................................................38FUNCIONES DEL CLIENTE........................................................................................41FUNCIONES GENERALES DE UN SERVIDOR........................................................41HARDWARE CLIENTE-SERVIDOR...........................................................................41UNIDAD # 4..................................................................................................................43ORDENADOR LOCAL Y REMOTO:...........................................................................43LAN CLIENTE/SERVIDOR..........................................................................................49

6. COMPETENCIASa. Correcta utilización de equipos físicos y lógicos dentro de

un sistema distribuido.b. Adaptación de un correcto modelo cliente - servidor.c. Actualización de una Red tipo LAN

7. BIBLIOGRAFÍA RECOMENDADA

www.monografias.comwww.lafacu.comwww.rincondelvago.com

2

Page 3: cliente_servidor

UNIDAD # 1

REDES

¿QUÉ ES UNA RED?

Una red consiste en dos o más computadoras unidas que comparten recursos (ya sea archivos, CD-ROM´s o impresoras) y que son capaces de realizar comunicaciones electrónicas. Las redes pueden estar unidas por cable, líneas de teléfono, ondas de radio, satélites, etc.

La clasificación básica de redes es:

Red de Área Local / Local Área Network (LAN) Red de Área Metropolitana / Metropolitan Área Network (MAN)

Red de Área Extensa / Wide Área Network (WAN)

Red de área Local / Local Área Network (LAN)

Se trata de una red que cubre una extensión reducida como una empresa, una universidad, un colegio, etc. No habrá por lo general dos ordenadores que disten entre sí más de un kilómetro.

Una configuración típica en una red de área local es tener una computadora llamada servidor de ficheros en la que se almacena todo el software de control de la red así como el software que se comparte con los demás ordenadores de la red. Los ordenadores que no son servidores de ficheros reciben el nombre de estaciones de trabajo. Estos suelen ser menos potentes y suelen tener software personalizado por cada usuario. La mayoría de las redes LAN están conectadas por medio de cables y tarjetas de red, una en cada equipo.

Red de área Metropolitana / Metropolitan Área Network (MAN)

Las redes de área metropolitana cubren extensiones mayores como puede ser una ciudad o un distrito. Mediante la interconexión de redes LAN se distribuye la información a los diferentes puntos del distrito. Bibliotecas, universidades u organismos oficiales suelen interconectarse mediante este tipo de redes.

3

Page 4: cliente_servidor

 

Redes de área Extensa / Wide Área Network (WAN)

Las redes de área extensa cubren grandes regiones geográficas como un país, un continente o incluso el mundo. Cable transoceánico o satélites se utilizan para enlazar puntos que distan grandes distancias entre sí.

Con el uso de una WAN se puede contactar desde España con Japón sin tener que pagar enormes cantidades de teléfono. La implementación de una red de área extensa es muy complicada. Se utilizan multiplexadores para conectar las redes metropolitanas a redes globales utilizando técnicas que permiten que redes de diferentes características puedan comunicarse sin problemas. El mejor ejemplo de una red de área extensa es Internet.

EL CABLEADO DE LA RED El cable es el medio a través del cual fluye la información a través de la red. Hay distintos tipos de cable de uso común en redes LAN. Una red puede utilizar uno o más tipos de cable, aunque el tipo de cable utilizado siempre estará sujeto a la topología de la red, el tipo de red que utiliza y el tamaño de esta.

Estos son los tipos de cable más utilizados en redes LAN:

Cable de par trenzado sin apantallar / UTP Unshielded twisted pair Cable de par trenzado apantallado / STP Shielded twisted pair Cable coaxial Cable de fibra óptica LAN´s sin cableado

4

Page 5: cliente_servidor

Cable de par trenzado sin apantallar / Unshielded Twisted Pair (UTP) Cable

Este tipo de cable es el más utilizado. Tiene una variante con apantallamiento pero la variante sin apantallamiento suele ser la mejor opción para una PYME.

UTP

La calidad del cable y consecuentemente la cantidad de datos que es capaz de transmitir varían en función de la categoría del cable. Las gradaciones van desde el cable de teléfono, que solo transmite la voz humana a el cable de categoría 5 capaz de transferir 100 Megabits por segundo.

  Categorías UTP

Tipo Uso

Categoría1 Voz (Cable de teléfono)

Categoría 2 Datos a 4 Mbps (LocalTalk)

Categoría 3 Datos a10 Mbps (Ethernet)

Categoría 4 Datos a 20 Mbps/16 Mbps Token Ring

Categoría 5 Datos a 100 Mbps (Fast Ethernet)

 La diferencia entre las distintas categorías es la tirantez. A mayor tirantez mayor capacidad de transmisión de datos. Se recomienda el uso de cables de Categoría 3 o 5 para la implementación de redes en PYMES (pequeñas y medianas empresas). Es conveniente sin embargo utilizar cables de categoría 5 ya que estos permitirán migraciones de tecnologías 10Mb a tecnología 100 Mb.

 Conector UTP

5

Page 6: cliente_servidor

El estandar para conectores de cable UTP es el RJ-45. Se trata de un conector de plástico similar al conector del cable telefónico. La siglas RJ se refieren al estandar Registerd Jack, creado por la industria telefónica. Este estandar define la colocación de los cables en su pin correspondiente.

Cable de par trenzado pantallado / Shielded Twisted Pair (STP) Cable

Una de las desventajas del cable UTP es que es susceptible a las intereferencias eléctricas. Para entornos con este problema existe un tipo de cable UTP que lleva apantallamiento, esto es, protección contra interferencias eléctricas. Este tipo de cable se utiliza con frecuencia en redes con topología Token Ring.

Cable Coaxial

El cable coaxial contiene un conductor de cobre en su interior. Este va envuelto en un aislante para separarlo de un apantallado metálico con forma de rejilla que aisla el cable de posibles interferencias externas.

Cable Coaxial

Aunque la instalación del cable coaxial es más complicada que la del UTP, este tiene un alto grado de resistencia a las interferencias. Por otra parte también es posible conectar distancias mayores que con los cables de par trenzado. Existen dos tipos de cable coaxial, el fino y el grueso conocidos como thin coaxial y thick coaxial.

Con frecuencia se pueden escuchar referencias al cable coaxial fino como thinnet o 10Base2. Esto hace referencia a una red de tipo Ethernet con un cableado coaxial fino, donde el 2 significa que el mayor segmento posible es de 200 metros, siendo en la práctica reducido a 185 m. El cable coaxial es muy popular en las redes con topología de BUS.

Con frecuencia se pueden escuchar referencias al cable coaxial grueso como thicknet o 10Base5. Esto hace referencia a una red de tipo Ethernet con un cableado coaxial grueso, donde el 5 signfica que el mayor segmento posible es de 500 metros. El cable coaxial es muy popular en las redes con topología de BUS. El cable coaxial grueso tiene una capa plástica adicional que protege de la humedad al conductor de cobre. Esto hace de este tipo de cable una gran opción para redes de BUS extensas, aunque hay que tener en cuenta que este cable es difícil de doblar.

6

Page 7: cliente_servidor

Conector para cable coaxial

El más usado es el conector BNC. BNC son las siglas de Bayone-Neill-Concelman. Los conectores BNC pueden ser de tres tipos: normal, terminadores y conectores en T.  

BNC connector

Cable de fibra óptica

El cable de fibra óptica consiste en un centro de cristal rodeado de varias capas de material protector. Lo que se transmite no son señales eléctricas sino luz con lo que se elimina la problemática de las interferencias. Esto lo hace ideal para entornos en los que haya gran cantidad de interferencias eléctricas. También se utiliza mucho en la conexión de redes entre edificios debido a su inmunidad a la humedad y a la exposición solar.

Con un cable de fibra óptica se pueden transmitir señales a distancias mucho mayores que con cables coaxiales o de par trenzado. Además, la cantidad de información capaz de transmitir es mayor por lo que es ideal para redes a través de las cuales se desee llevar a cabo videoconferencia o servicios interactivos. El coste es similar al cable coaxial o al cable UPT pero las dificultades de instalación y modificación son mayores. En algunas ocasiones escucharemos 10BaseF como referencia a este tipo de cableado. En realidad estas siglas hablan de una red Ethernet con cableado de fibra óptica.

Cable de fibra óptica

Características:

El aislante exterior está hecho de teflón o PVC. Fibras Kevlar ayudan a dar fuerza al cable y hacer más difícil su

ruptura. Se utiliza un recubrimiento de plástico para albergar a la fibra central. El centro del cable está hecho de cristal o de fibras plásticas.

Conectores para fibra óptica

El conector de fibra óptica más utilizado es el conector ST. Tiene una apariencia similar a los conectores BNC. También se utilizan, cada vez con más frecuencia conectores SC, de uso más fácil.

Resumen de tipos de cables empleados

7

Page 8: cliente_servidor

Especificación

Tipo de Cable

Longitud Máxima

10BaseT U T P 100 meters

10Base2 Thin Coaxial 185 meters

10Base5 Thick Coaxial 500 meters

10BaseF Fibra Optica 2000 meters

REDES LAN SIN CABLEADONo todas las redes se implementan sobre un cableado. Existen redes que utilizan señales de radio de alta frecuencia o haces infrarrojos para comunicarse. Cada punto de la red tiene una antena desde la que emite y recibe. Para largas distancias se pueden utilizar teléfonos móviles o satélites.

Este tipo de conexión está especialmente indicada para su uso con portátiles o para edificios viejos en los que es imposible instalar un cableado.

Las desventajas de este tipo de redes es sus altos costes, su susceptibilidad a las interferencias electromagnéticas y la baja seguridad que ofrecen. Además son más lentas que las redes que utilizan cableado.

8

Page 9: cliente_servidor

TOPOLOGÍAS FÍSICAS DE RED Topología de Bus / Linear Bus Topología de Estrella / Star Topología de Estrella Cableada / Star-Wired Ring Topología de Arbol / Tree Resumen

Topología de Bus / Linear Bus

Consiste en un cable con un terminador en cada extremo del que se "cuelgan" todos los elementos de una red. Todos los Nodos de la Red están unidos a este cable. Este cable recibe el nombre de "Backbone Cable". Tanto Ethernet como LocalTalk pueden utilizar esta topología.

Topología de Bus

Ventajas de la topología de Bus Es fácil conectar nuevos nodos a la red. Requiere menos cable que una topología estrella.

Desventajas de la topología de Bus Toda la red se caería si hubiera una ruptura en el cable principal. Se requieren terminadores. Es difícil detectar el origen de un problema cuando toda la red "cae". No se debe utilizar como única solución en un gran edificio.

Topología de estrella / Star

En una topología estrella todos y cada uno de los nodos de la red se conectan a un concentrador o hub.

Los datos en estas redes fluyen del emisor hasta el concentrador. Este controla realiza todas las funciones de red además de actuar como

9

Page 10: cliente_servidor

amplificador de los datos. Esta configuración se suele utilizar con cables de par trenzado aunque también es posible llevarla a cabo con cable coaxial o fibra óptica.

Tanto Ethernet como LocalTalk utilizan este tipo de tipología.

Tipología estrella

Ventajas de la topología de estrella Gran facilidad de instalación. Posibilidad de desconectar elementos de red sin causar problemas. Facilidad para la detección de fallo y su reparación.

Inconvenientes de la topología de estrella Requiere más cable que la topología de bus. Un fallo en el concentrador provoca el aislamiento de todos los nodos

a él conectados. Se han de comprar hubs o concentradores.

Topología de Estrella cableada / Star-Wired Ring

Físicamente parece una topología estrella pero el tipo de concentrador utilizado, la MAU se encarga de interconectar internamente la red en forma de anillo.

Esta tipología es la que se utiliza en redes Token-Ring.

Topología de estrella cableada

Topología de Arbol / Tree

10

Page 11: cliente_servidor

La topología de árbol combina características de la topología de estrella con la de bus. Consiste en un conjunto de subredes estrella conectadas a un bus. Esta topología facilita el crecimiento de la red.

Fig.4. Topología de árbol.

Ventajas de la topología de árbol Cableado punto a punto para segmentos individuales. Soportado por multitud de vendedores de software y de hardware.

Inconvenientes de la topología de árbol La medida de cada segmento viene determinada por el tipo de cable

utilizado. Si se viene abajo el segmento principal todo el segmento se viene

abajo. Es más difícil la configuración.

Resumen :

Topología Cableado Protocolo

BusCoaxial

Par TrenzadoFibra óptica

EthernetLocalTalk

Estrella Par trenzadoFibra óptica

EthernetLocalTalk

Estrella en Anillo Par trenzado Token Ring

ArbolCoaxial

Par trenzadoFibra óptica

Ethernet

11

Page 12: cliente_servidor

REDES LAN Un protocolo es un conjunto de normas que rigen la comunicación entre las computadoras de una red. Estas normas especifican que tipo de cables se utilizarán, que topología tendrá la red, que velocidad tendrán las comunicaciones y de que forma se accederá al cana de transmisión.

Los estándares más populares son:

Ethernet LocalTalk Token Ring FDDI

Ethernet

General

Ethernet es hoy en día el standard para la redes de área local. Tanto Ethernet (Versión 2) como el muy similar estándar IEEE802.3 definen un modo de acceso múltiple y de detección de colisiones, es el conocido carrier sense multiple access/collision detection (CSMA/CD). Cuando una estación quiere acceder a la red escucha si hay alguna transmisión en curso y si no es así transmite. En el caso de que dos redes detecten probabilidad de emitir y emitan al mismo tiempo se producirá una colisión pero esto queda resuelto con los sensores de colisión que detectan esto y fuerzan una retransmisión de la información. Puedes ver un ejemplo de esto último pulsando en el siguiente esquema.

 Ilustración de un bus Ethernet

12

Page 13: cliente_servidor

Cableados

Velocidades de transmisión  

Tipo de Ethernet Velocidad (Mbps)

Distancia (m) Media

10Base5 (IEEE 802.3) 10 500 Coaxial Grueso

10Base2 (IEEE 802.3) 10 185 Coaxial Fino

10BaseT (IEEE 802.3) 10 100 UTP

10BaseF(IEEE 802.3) 10 2000 Fibra Optica

 Topología

El protocolo Ethernet permite tres tipos de topología: Bus, Estrella y Arbol.(Linear Bus, star y Tree).

Formatos de Trama

Formatos de trama Ethernet IEEE 802.3

Ethernet define de que manera se introducirán los datos en la red. Donde se indicará el receptor, el emisor donde irán los datos, donde irá el checksum, etc.. Esto se define en la trama Ethernet. En la figura superior se puede ver la distribución de las información en cada paquete enviado. Se comienza con un preámbulo que termina al que sigue la trama en sí. El inicio de la trama es la información de la dirección de destino seguido de la dirección de procedencia a lo que sigue el tipo o la longitud de la información los datos y el checksun de la trama. El checksun (FCS) se comprueba en la llegada para asegurarse de la correcta recepción de la información.

13

Page 14: cliente_servidor

 

Fast Ethernet

Para aumentar la velocidad de la red de 10Mbs a 100Mbs se han definido nuevos estándares de Ethernet denominados en conjunto FastEthernet (IEE802.3u).Tres nuevos tipos de redes Ethernet han visto la luz. Las topologías posibles quedan reducidas a la topología estrella.

 

Tipo de Ethernet Velocidad (Mbps) Media

100BaseTX (IEEE 802.3u) 100 UTP de categoría 5

100BaseFX (IEEE 802.3u) 100 Fibra óptica

100BaseT4 (IEEE 802.3u) 100 UTP de categoría 3

modificado *

 * Se añaden dos líneas al cable UTP de categoría 3.

LocalTalk

El protocolo LocalTalk fue desarrollado por Apple Computer, Inc. para ordenadores Macintosh. El método de acceso al medio es el CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance). Este método, similar al de Ethernet (CSMA/CD) se diferencia en que el ordenador anuncia su transmisión antes de realizarla. Mediante el uso de adaptadores LocalTalk y cables UTP especiales se puede crear una red de ordenadores Mac a través del puerto serie. El sistema operativo de estos establece relaciones punto a punto sin necesidad de software adicional aunque se puede crear una red cliente servidor con el sofware AppleShare.

Con el protocolo LocalTalk se pueden utilizar topologías bus, estrella o árbol usando cable UTP pero la velocidad de transmisión es muy inferior a la de Ethernet.

Token Ring

 El protocolo Token Ring fue desarrollado por IBM a mediados de los 80. El modo de acceso al medio esta basado en el traspaso del testigo (token passing). En una red Token Ring los ordenadores se conectan formando un anillo. Un testigo (token) electrónico pasa de un ordenador a otro. Cuando

14

Page 15: cliente_servidor

se recibe este testigo se está en disposición de emitir datos. Estos viajan por el anillo hasta llegar a la estación receptora. Las redes Token Ring se montan sobre una tipología estrella cableada (star-wired) con par trenzado o fibra óptica. Se puede transmitir información a 4 o 16 Mbs. Cabe decir que el auge de Ethernet está causando un descenso cada vez mayor del uso de esta tecnología.

Pincha aquí para ver un esquema animado del funcionamiento de este tipo de Protocolo.

Formatos de Trama

Tramas en Token Ring

Como se puede ver, la trama de Token Ring es similar a la de Ethernet, la principal diferencia consiste en que a los datos se le agrega un Token, que es el que marca la prioridad de transimisión.

FDDI

FDDI son las siglas de Fiber Distributed Data Interface . Este protocolo de red se utiliza principalmente para interconectar dos o más redes locales que con frecuencia distan grandes distancias.

15

Page 16: cliente_servidor

El método de acceso al medio utilizado por FDDI está basado también en el paso de testigo. La diferencia es que en este tipo de redes la topología es de anillo dual. La transmisión se da en uno de los anillos pero si tiene lugar un error en la transmisión el sistema es capaz de utilizar una parte del segundo anillo para cerrar el anillo de transmisión. Se monta sobre cables de fibra óptica y se pueden alcanzar velocidades de 100 Mbps.

Resumen de Protocolos

16

Page 17: cliente_servidor

Protocolo Cable Velocidad Topología

Ethernet Par trenzado,coaxial, fibra óptica 10 Mbps Linear Bus, Star,

Tree

Fast Ethernet Par trenzado, fibra óptica 100 Mbps Star

LocalTalk Par trenzado .23 Mbps Linear Bus o Star

Token Ring Par trenzado 4 Mbps - 16 Mbps Star-Wired Ring

FDDI Fibra óptica 100 Mbps Anillo duall ring

 

17

Page 18: cliente_servidor

PRINCIPALES COMPONENTES DE RED Las redes de ordenadores se montan con una serie de componentes de uso común y que en mayor o menor medida siempre aparecerán en cualquier instalación.

Comentaremos:

Servidores o File servers Estaciones de trabajo o Workstations Tarjetas de Red (NIC) Concentradores y Hubs Repetidores Puentes o Bridges Routers Cortafuegos o Firewalls

Servidores

Los servidores de ficheros conforman el corazón de la mayoría de las redes. Se trata de ordenadores con mucha memoria RAM, un enorme disco duro (o varios) y una rápida tarjeta de red. El sistema operativo de red se ejecuta sobre estos servidores así como las aplicaciones compartidas.

Un servidor de impresión se encargará de controlar gran parte del tráfico de red ya que será el que acceda a las demandas de las estaciones de trabajo, y el que les proporciones los servicios que pidan, impresión, ficheros, Internet, etc... Está claro que necesitamos un ordenador con capacidad de guardar información de forma muy rápida y de compartirla con la misma celeridad.

Estaciones de trabajo

Son los ordenadores conectados al servidor. Las estaciones de trabajo no han de ser tan potentes como el servidor, simplemente necesitan una tarjeta de red, el cableado pertinente y el software necesario para comunicarse con el servidor. Una estación de trabajo puede carecer de disquetera y de disco duro y trabajar directamente sobre el servidor. Prácticamente cualquier ordenador puede actuar como una estación de trabajo.

Tarjeta de Red

La tarjeta de red (NIC) es la que conecta físicamente al ordenador a la red. Son tarjetas que se pinchan en el ordenador como si de una tarjeta de video se tratase o cualquier otra tarjeta. Puesto que todos los accesos a red se realizan a través de ellas se deben utilizar tarjetas rápidas si queremos comunicaciones fluidas.

Las tarjetas de red más populares son por supuesto las tarjetas Ethernet, existen también conectores LocalTalk así como tarjetas TokenRing.

18

Page 19: cliente_servidor

Tarjetas Ethernet

 Tarjeta Ethernet

con conectores RJ-45, AUI, BNC

 Conectores LocalTalk

Se utilizan para ordenadores Mac, conectándose al puerto paralelo. En comparación con Ethernet la velocidad es muy baja, de 230KB frente a los 10 o 100 MB de la primera.

Pincha aquí si quieres ver un ejemplo de como son los conectores LocalTalk.

Tarjetas Token Ring

Son similares a las tarjetas Ethernet aunque el conector es diferente. Suele ser un DIN de nueve pines.

Concentradores o Hubs

Un concentrador o Hub es un elemento que provee una conexión central para todos los cables de la red. Los hubs son "cajas" con un número determinado de conectores, habitualmente RJ45 más otro conector adicional de tipo diferente para enlazar con otro tipo de red. Los hay de tipo inteligente que envian la información solo a quien ha de llegar mientras que los normales envian la información a todos los puntos de la red siendo las estaciones de trabajo las que decidirán si se quedan o no con esa

19

Page 20: cliente_servidor

información. Están provistos de salidas especiales para conectar otro Hub a uno de los conectores permitiendo así ampliaciones de la red.

Repetidores

Cuando una señal viaja a lo largo de un cable va perdiendo "fuerza" a medida que avanza. Esta pérdida de fuerza puede desembocar en una pérdida de información. Los repetidores amplifican la señal que reciben permitiendo así que la distancia entre dos puntos de la red sea mayor que la que un cable solo permite.

 Bridges

Los bridges se utilizan para segmentar redes grandes en redes más pequeñas. De esta forma solo saldrá de la red pequeña el tráfico destinado a otra red pequeña diferente mientras que todo el tráfico interno seguirá en la misma red. Con esto se consigue una reducción del tráfico de red.

Routers

Un router dirige tráfico de una red a otra, se podría decir que es un bridge superinteligente ya que es capaz de calcular cual será el destino más rápido para hacer llegar la información de un punto a otro. Es capaz también de asignar diferentes preferencias a los mensajes que fluyen por la red y enrutar unos por caminos más cortos que otros así como de buscar soluciones alternativas cuando un camino está muy cargado.

Pincha aquí si quieres ver un sencillo ejemplo del funcionamiento de un Router. 

20

Page 21: cliente_servidor

Mientras un bridge conoce la dirección de las computadoras a cada uno de sus extremos un router conoce la dirección tanto de las computadoras como de otros routers y bridges y es capaz de "escanear" toda la red para encontrar el camino menos congestionado.

Cortafuegos o Firewalls

Un firewall es un elemento de seguridad que filtra el tráfico de red que a él llega. Con un cortafuegos podemos aislar un ordenador de todos los otros ordenadores de la red excepto de uno o varios que son los que nos interesa que puedan comunicarse con él. En la figura se ve como el cortafuegos aisla al ordenador de la izquierda del ordenador "Foe" mientras que permite la comunicación con el ordenador "Friend".

21

Page 22: cliente_servidor

EL MODELO DE REDES OSIAunque al final a nosotros nos parezca sencillo, conectar en red dos equipos es un complicado problema de ingeniería. Cuando se abordan problemas de esta magnitud, la forma de solucionarlos suele ser dividir el problema grande en problemas pequeños. Esto es lo que propone el modelo de redes OSI (Open Systems Interconnection), publicado por la organización internacional ISO. Este modelo divide el "gran problema" en 7 pequeños problemas a los que se conoce como los siete niveles de red OSI.

Veamos los siete niveles:

1. Físico : Conecta físicamente a dos transmisores 2. Datos : Controla posibles errores entre dos puntos 3. Red : Encamina la información a través de la red 4. Transporte : Propicia la comunicación entre dos puntos no

adyadcentes 5. Sesión : Gestiona problemas ajenos a la comunicación 6. Presentación : Convierte la información 7. Aplicación : Proporciona servicios a la aplicaciones

Estos siete niveles se pueden reagrupar en una variante de 5 donde el nivel aplicación engloba a los niveles 5 y 6

22

Page 23: cliente_servidor

EL NIVEL FÍSICOEl nivel físico viene a ser básicamente el "cable" que permite la comunicación y transmisión de datos, y que define la transmisión de bits a través de un canal. Esto quiere decir que se ha de asegurar que cuando un punto de la comunicación envía un bit 1, este se reciba como un bit 1, no como un bit 0. Las cuestiones que se tratarán será como cuantos voltios representan el 1, cuantos el 0, cuantos microsegundos dura un bit, si la transmisión se puede efectuar en los dos sentidos del canal, como se inicia una conexión, como se acaba, cuantos pins deben tener los conectores de red y que señal transporta cada uno de ellos. En esta capa se tratan conceptos mecánicos eléctricos, y procedimientos de interface así como el medio de transmisión.

Medios de transmisión

Par trenzado (twisted pair). Consiste en dos alambres de cobre enroscados (para reducir interferencia eléctrica).

Cable coaxial. Un alambre dentro de un conductor cilíndrico. Tiene un mejor blindaje y puede cruzar distancias mayores con velocidades mayores

Fibra óptica. Hoy tiene un ancho de banda de 50.000 Gbps, pero es limitada por la conversión entre las señales ópticas y eléctricas (1 Gbps). Los pulsos de luz rebotan dentro de la fibra.

  Además de estos hay también medios inalámbricos de transmisión. Cada uno usa una banda de frecuencias en alguna parte del espectro electromagnético. Las ondas de longitudes más cortas tienen frecuencias más altas, y así apoyan velocidades más altas de transmisión de datos. Veamos algunos ejemplos :

Radio. 10 KHz-100 MHz. Las ondas de radio son fáciles de generar, pueden cruzar distancias largas, y entrar fácilmente en los edificios. Son omnidireccionales, lo cual implica que los transmisores y recibidores no tienen que ser alineados.

Las ondas de frecuencias bajas pasan por los obstáculos, pero el poder disminuye con la distancia.

Las ondas de frecuencias más altas van en líneas rectas. Rebotan en los obstáculos y la lluvia las absorbe.

Microondas. 100 MHz-10 GHz. Van en líneas rectas. Antes de la fibra formaban el centro del sistema telefónico de larga distancia. La lluvia las absorbe.

Infrarrojo. Se usan en la comunicación de corta distancia (por ejemplo, controlo remoto de televisores). No pasan por las paredes, lo que implica que sistemas en distintas habitaciones no se interfieren. No se pueden usar fuera.

Ondas de luz. Se usan lasers. Ofrecen un ancho de banda alto con costo bajo, pero el rayo es muy angosto, y el alineamiento es difícil.

El sistema telefónico En general hay que usarlo para redes más grandes que un LAN.

23

Page 24: cliente_servidor

Consiste en las oficinas de conmutación, los alambres entres los clientes y las oficinas (los local loops), y los alambres de las conexiones de larga distancia entre las oficinas (los troncales). Hay una jerarquía de las oficinas.

La tendencia es hacia la señalización digital. Ventajas: La regeneración de la señal es fácil sobre distancias largas. Se pueden entremezclar la voz y los datos. Los amplificadores son más baratos porque solamente tienen

que distinguir entre dos niveles. La manutención es más fácil; es fácil detectar errores.

Satélites Funcionan como repetidores de microondas. Un satélite contiene

algunos transponedores que reciben las señales de alguna porción del espectro, las amplifican, y las retransmiten en otra frecuencia.

Hay tres bandas principales: C (que tiene problemas de interferencia terrenal), Ku, y Ka (que tienen problemas con la lluvia).

Un satélite tiene 12-20 transponedores, cada uno con un ancho de banda de 36-50 MHz. Una velocidad de transmisión de 50 Mbps es típica. Se usa la multiplexación de división de tiempo.

La altitud de 36.000 km sobre el ecuador permite la órbita geosíncrona, pero no se pueden ubicar los satélites con espacios de menos de 1 o 2 grados.

Los tiempos de tránsito de 250-300 milisegundos son típicos. Muy útil en la comunicación móvil, y la comunicación en las áreas con

el terreno difícil o la infraestructura débil.

EL NIVEL DE ENLACE DE DATOSEl tema principal son los algoritmos para la comunicación confiable y eficiente entre dos máquinas adyacentes.

Problemas: los errores en los circuitos de comunicación, sus velocidades finitas de transmisión, y el tiempo de propagación.

Marcos

El nivel de enlace trata de detectar y corregir los errores. Normalmente se parte el flujo de bits en marcos y se calcula un checksum (comprobación de datos) para cada uno.

Las tramas contendrán información como:

Número de caracteres (un campo del encabezamiento guarda el número. Pero si el número es cambiado en una transmisión, es difícil recuperar.)

Caracteres de inicio y fin.

24

Page 25: cliente_servidor

Servicios para el nivel de red

Servicio sin acuses de recibo. La máquina de fuente manda marcos al destino. Es apropiado si la frecuencia de errores es muy baja o el tráfico es de tiempo real (por ejemplo, voz).

Servicio con acuses de recibo. El recibidor manda un acuse de recibo al remitente para cada marco recibido.

Control de flujo

Se usan protocolos que prohíben que el remitente pueda mandar marcos sin la permisión implícita o explícita del recibidor.

Por ejemplo, el remitente puede mandar un número indeterminado de marcos pero entonces tiene que esperar.

Detección y corrección de errores

Ejemplo : HDLC

En este ejemplo se verá un protocolo que se podría identificar con el segundo nivel OSI. Es el HDLC (High-level Data Link Control). Este es un protocolo orientado a bit, es decir, sus especificaciones cubren que información lleva cada uno de los bits de la trama.

  BITS 8 8 8 >=0 16 8

01111110 Adress Control Datos Checksum 01111110

 Como se puede ver en la tabla, se definen unos campos que se agregan a la información (Datos). Estos campos se utilizan con distintos fines. Con el campo Checksum se detectan posibles errores en la transmisión mientras que con el campo control se envían mensajes como datos recibidos correctamente, etc...

EL NIVEL DE REDEste nivel encamina los paquetes de la fuente al destino final a través de encaminadores (routers) intermedios. Tiene que saber la topología de la subred, evitar la congestión, y manejar saltos cuando la fuente y el destino están en redes distintas.

El nivel de red en la Internet

Funcionamiento del protocolo IP

El protocolo de IP (Internet Protocol) es la base fundamental de Internet. Hace posible enviar datos de la fuente al destino. El nivel de transporte

25

Page 26: cliente_servidor

parte el flujo de datos en datagramas. Durante su transmisión se puede partir un datagrama en fragmentos que se montan de nuevo en el destino.

Paquetes de IP:

Versión. Es la 4. Permite las actualizaciones. IHL. La longitud del encabezamiento en palabras de 32 bits. El valor

máximo es 15, o 60 bytes. Tipo de servicio. Determina si el envío y la velocidad de los datos es

fiable. No usado. Longitud total. Hasta un máximo de 65.535 bytes. Identificación. Para determinar a qué datagrama pertenece un

fragmento. DF (Don't Fragment). El destino no puede montar el datagrama de

nuevo. MF (More Fragments). No establecido en el fragmento último. Desplazamiento del fragmento. A qué parte del datagrama

pertenece este fragmento. El tamaño del fragmento elemental es 8 bytes.

Tiempo de vida. Se decrementa cada salto. Protocolo. Protocolo de transporte en que se debiera basar el

datagrama. Las opciones incluyen el enrutamiento estricto (se especifica la ruta completa), el enrutamiento suelto (se especifican solamente algunos routers en la ruta), y grabación de la ruta.

EL NIVEL DE TRANSPORTEEl quinto nivel utiliza los servicios del nivel de red para proveer un servicio eficiente y confiable a sus clientes, que normalmente son los procesos en el nivel de aplicación. El hardware y software dentro del nivel de transporte se llaman la entidad de transporte. Puede estar en el corazón del sistema operativo, en un programa, en una tarjeta, etc. Sus servicios son muy semejantes a los del nivel de red. Las direcciones y el control de flujo son semejantes también. Por lo tanto, ¿por qué tenemos un nivel de transporte? ¿Por qué no solamente el nivel de red? La razón es que el nivel de red es una parte de la subred y los usuarios no tienen ningún control sobre ella. El nivel de transporte permite que los usuarios puedan mejorar el servicio del nivel de red (que puede perder paquetes, puede tener routers que no funcionan a veces, etc.). El nivel de transporte permite que tengamos un servicio más confiable que el nivel de red. También, las funciones del nivel de transporte pueden ser independiente de las funciones del nivel de red.

26

Page 27: cliente_servidor

Las aplicaciones pueden usar estas funciones para funcionar en cualquier tipo de red.

 Protocolos de transporte

Los protocolos de transporte se parecen los protocolos de enlace. Ambos manejan el control de errores, el control de flujo, la secuencia de paquetes, etc. Pero hay diferencias:

En el nivel de transporte, se necesita una manera para especificar la dirección del destino. En el nivel de enlace está solamente el enlace.

En el nivel de enlace es fácil establecer la conexión; el host en el otro extremo del enlace está siempre allí. En el nivel de transporte este proceso es mucho más difícil.

Establecimiento de una conexión

Desconexión

La desconexión asimétrica puede perder datos. La desconexión simétrica permite que cada lado pueda liberar una dirección de la conexión a la vez.

Control de flujo

Se debe controlar que el número de paquetes enviados a un destino para que no colapse a este.

Multiplexación

A veces el nivel de transporte tiene que multiplexar las conexiones. Si se desea una transmisión de datos muy rápida se abrirán varias conexiones y los datos se dividirán para hacerlos pasar por estas.

Si solo se tiene una conexión pero se quieren pasar varios datos se deberá multiplexar el canal. Por tiempos transmitirá una conexión u otra.

Recuperación de caídas

Si una parte de la subred se cae durante una conexión, el nivel de transporte puede establecer una conexión nueva y recuperar de la situación.

El encabezamiento de TCP

TCP (Protocolo de control de transmisión) es el método usado por el protocolo IP (Internet protocol) para enviar datos a través de la red. Mientras IP cuida del manejo del envío de los datos, TCP cuida el trato individual de cada uno de ellos (llamados comúnmente "paquetes") para el correcto enrutamiento de los mismos a través de Internet.

27

Page 28: cliente_servidor

El encabezamiento de TCP para la transmisión de datos tienen este aspecto :

 

La puerta de la fuente y del destino identifican la conexión. El número de secuencia y el número de acuse de recibo son normales. El último especifica el próximo byte esperado. La longitud (4 bits) indica el número de palabras de 32 bits en el encabezamiento, ya que el campo de opciones tiene una longitud variable. Los flags:

URG. Indica que el segmento contiene datos urgentes. El puntero urgente punta al desplazamiento del número de secuencia corriente donde están los datos urgentes.

ACK. Indica que hay un número de acuse en el campo de acuse.

PSH (Push). El recibidor no debiera almacenar los datos antes de entregarlos.

RST (Reset). Hay un problema en la conexión.

SYN. Se usa para establecer las conexiones. Una solicitud de conexión tiene SYN = 1 y ACK = 0, mientras que la aceptación de una conexión tiene SYN = 1 y ACK = 1.

FIN. Indica que el mandador no tiene más datos a mandar. La desconexión es simétrica.

TCP usa una ventana de tamaño variable. Este campo indica cuantos bytes se pueden mandar después del byte de acuse.El checksum provee más confiabilidad.Las opciones permiten que los hosts puedan especificar el segmento máximo que están listos para aceptar (tienen que poder recibir segmentos de 556 bytes), usar una ventana mayor que 64K bytes, y usar repetir selectivamente en vez de repetir un número indeterminado de veces.

28

Page 29: cliente_servidor

EL NIVEL DE APLICACIÓNEl nivel de aplicación es siempre el más cercano al usuario. Por nivel de aplicación se entiende el programa o conjunto de programas que generan una información para que esta viaje por la red. El ejemplo más inmediato sería el del correo electrónico. Cuando procesamos y enviamos un correo electrónico este puede ir en principio a cualquier lugar del mundo, y ser leído en cualquier tipo de ordenador. Los juegos de caracteres utilizados por el emisor y el receptor pueden ser diferentes por lo que alguien se ha de ocupar de llevar a cabo estos ajustes. También se ha de crear un estándar en lo que la asignación de direcciones de correo se refiere. De todas estas funciones se encarga el nivel de aplicación. El nivel de aplicación mediante la definición de protocolos asegura una estandarización de las aplicaciones de red. En nuestro ejemplo del correo electrónico esto es lo que sucedería.....

Supongamos que escribimos un mensaje como el siguiente :

 

 En nuestro caso hemos escrito este e-mail en un ordenador PC con Windows98 con el programa de correo Microsoft Outlook. Fuese cual fuese el ordenador, sistema operativo o programa de correo que utilizásemos, lo que finalmente viajaría por la red cuando enviáramos el correo sería algo como esto :

El estándar que define esta codificación de mensajes es el protocolo SMTP. Cualquier ordenador del mundo que tenga un programa de correo

29

Page 30: cliente_servidor

electrónico que cumpla con el estandar SMTP será capaz de sacar por pantalla nuestro mensaje.

30

Page 31: cliente_servidor

UNIDAD # 2

SERVICIOS BÁSICOS DE INTERNETWWW

La World Wide Web consiste en ofrecer una interface simple y consistente para acceder a la inmensidad de los recursos de Internet. Es la forma más moderna de ofrecer información. El medio más potente. La información se ofrece en forma de páginas electrónicas.

El World Wide Web o WWW o W3 o simplemente Web, permite saltar de un lugar a otro en pos de lo que nos interesa. Lo más interesante es que con unas pocas órdenes se puede uno mover por toda Internet.

Para entender lo que es la Web debemos tener una idea de lo que es el Hipertexto.

Hipertexto son datos que contienen enlaces (links) a otros datos.

Para ver un documento en la Web hace falta disponer de un visualizador o navegador ('browser').

Los documentos que se muestran con el navegador están escritos utilizando un lenguaje denominado HTML.

Los programas más utilizados para navegar por la Web son el Internet Explorer de Microsoft y el Mozilla, que es un proyecto libre; también existen otros como el Avant Browser, Opera, etc.

Para visitar una sede Web sólo es preciso conocer su dirección o URL (localizador uniforme de recursos); puede ser http://www.netscape.com/ por ejemplo.

31

Page 32: cliente_servidor

Si no sabemos la dirección donde queremos ir, se puede buscar a través de los servicios de los buscadores.

CORREO ELECTRÓNICO

Es un servicio que permite que los usuarios envíen y reciban mensajes.

Es probablemente el servicio más utilizado en Internet.

Su funcionamiento es análogo al correo postal tradicional.

Cuando se quiere enviar un mensaje (carta o paquete) por el sistema tradicional de correo lo primero que habría que hacer es escribir el mensaje y posteriormente introducirlo en un sobre postal (el contenedor) a fin de diferenciarlo del resto de los mensajes que van a circular por el Sistema Nacional de Correos (el canal elegido para su envío). El contenedor ('sobre') permitirá añadirle tanto la dirección de origen como la de destino.

Ambas direcciones no se colocan de forma caprichosa, sino siguiendo un 'protocolo' que establece tanto la forma de escribir la dirección de destino en la parte delantera del sobre y el remite en la trasera, como también cuales son los tamaños máximos y mínimos del mismo. Una vez completado este proceso, buscará el buzón de correos más cercano (el nodo de entrada en la red) y depositará su envío, momento en que finalizará su intervención en el proceso.

En este momento los empleados de las distintas oficinas de Correos irán trasladando el mensaje hasta que el cartero lo lleve al domicilio del destinatario.

Son muchas las analogías que existen entre el envío de cartas por correo tradicional y el envío de correos electrónicos a través de Internet, incluyendo el hecho de que cuando una oficina pierde un envío no hay posibilidad de recuperarlo.

32

Page 33: cliente_servidor

LISTAS DE CORREO

Es un grupo de personas que comparten intereses y que intercambian mensajes por correo electrónico.

Si un usuario desea recibir información sobre un tema determinado, puede suscribirse a la lista que trate sobre el mismo y recibir, de esta forma, todos los mensajes que circulen relacionados con ese tema.

Por ejemplo, si estás interesado en los festivales de música, te puedes suscribir a una lista que trate sobre

este tema. Existe una lista llamada festivalesmusica que te avisa en tu correo electrónico de todas las novedades, noticias, avances, programación, etc. que se producen en todos los festivales.

GRUPOS DE NOTICIAS

Son conjuntos de usuarios que comparten un mismo interés por un tema determinado, e intercambian mensajes relacionados con el mismo a través de un servidor de noticias. Se llaman también foros de discusión o news.

Una vez suscrito a un grupo de noticias, el usuario puede leer los mensajes que le interesen, además de, si lo desea, responder a cuantos quiera.

A diferencia de lo que ocurre en una lista de correo, los mensajes de los grupos no llegan a cada uno de los componentes del grupo sino que quedan alojados en el servidor al que acceden todos ellos. Por esta razón no es necesario tener una cuenta de correo (al contrario que en las listas) para poder participar en un grupo de noticias.

Dada la gran cantidad de grupos que hay, se ha hecho necesaria su clasificación. Se han creado una serie de niveles identificativos.

33

Page 34: cliente_servidor

El primer nivel es un identificador genérico que permite saber si el grupo es de carácter técnico, social, recreativo, etc.

Las jerarquías principales son:

Jerarquía Utilización Jerarquía Utilización

biz Negocios comp Informática y ciencias afines

newsPara comunicaciones relacionadas con la red de grupos (Usenet)

socCuestiones culturales de grupos humanos nacionales o de cualquier otro tipo

sci Para el resto de las ciencias rec Para actividades

recreativas (ocio y arte)

talk Para conversaciones más informales y debate misc Miscelánea

altLa anarquía (puede haber grupos sobre cualquier tema)

humanities Humanidades

es fr Nacionales (españolas, francesas)    

34

Page 35: cliente_servidor

UNIDAD # 3

MODELO CLIENTE SERVIDOREl término ordenador local se utiliza para referirse al ordenador que el usuario utiliza para conectarse a la red Internet.

Desde ese ordenador el usuario establece conexiones con otros ordenadores, denominados ordenadores remotos, a los que solicita algún servicio.

Estos ordenadores remotos que ofrecen servicios reciben también el nombre de servidores o host.

Ordenador local o cliente es un sistema que solicita a otros sistemas que le presten un servicio.

Ordenador remoto o servidor es un sistema que proporciona servicios o información a los ordenadores cliente.

El esquema básico del modelo cliente-servidor es el siguiente:

Cuando un cliente necesita un servicio, envía un mensaje de petición al servidor

El servidor está esperando a que le lleguen peticiones. Cuando llega un mensaje de petición de un cliente, el servidor atiende el mensaje y devuelve una respuesta

Mientras se está atendiendo un mensaje, pueden llegar otros mensajes, que serán atendidos simultáneamente hasta un máximo prefijado.

Si hay demasiadas peticiones, se hará esperar al cliente.

Los términos cliente y servidor se utilizan tanto para los programas que realizan las peticiones y resolución de los servicios como a los ordenadores donde son ejecutados esos programas.

En este gráfico hay un servidor de páginas web que recibe peticiones por parte de los clientes y devuelve las páginas solicitadas.

35

Page 36: cliente_servidor

El funcionamiento normal de un sistema compuesto por uno o varios clientes y un servidor de páginas web:

1. El cliente contacta con el servidor 2. El servidor responde al cliente que puede solicitar la página 3. El cliente solicita una página concreta 4. El servidor devuelve la página y libera los recursos utilizados

Esta forma de trabajo puede (y a veces ha sido) aprovechada para atacar servidores web. Este ataque se llama de Denegación de Servicio (DoS - Denied of Service en inglés) y su esquema es el siguiente:

1. El cliente contacta con el servidor 2. El servidor responde al cliente que puede solicitar la página 3. El cliente NO solicita ninguna página 4. El servidor espera la petición de la página 5. Nuevos clientes realizan el mismo proceso hasta saturar los recursos

del servidor

TCPTCP es un protocolo orientado a conexión. No hay relaciones maestro/esclavo. Las aplicaciones, sin embargo, utilizan un modelo cliente/servidor en las comunicaciones.

Un servidor es una aplicación que ofrece un servicio a usuarios de Internet; un cliente es el que pide ese servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el mismo o en diferentes sistemas.

Los usuarios invocan la parte cliente de la aplicación, que construye una solicitud para ese servicio y se la envía al servidor de la aplicación que usa TCP/IP como transporte.

El servidor es un programa que recibe una solicitud, realiza el servicio requerido y devuelve los resultados en forma de una respuesta. Generalmente un servidor puede tratar múltiples peticiones(múltiples clientes) al mismo tiempo.

36

Page 37: cliente_servidor

El modelo de aplicación cliente/servidor

Algunos servidores esperan las solicitudes en puertos bien conocidos de modo que sus clientes saben a que zócalo IP deben dirigir sus peticiones. El cliente emplea un puerto arbitrario para comunicarse. Los clientes que se quieren comunicar con un servidor que no usa un puerto bien conocido tienen otro mecanismo para saber a qué puerto dirigirse. Este mecanismo podría usar un servicio de registro como Portmap, que utiliza.

Para las organizaciones en muchas ocasiones es necesario establecer una infraestructura de procesamiento de información, que cuente con los elementos requeridos para proveer información adecuada, exacta y oportuna en la toma de decisiones y para proporcionar un mejor servicio a los clientes.

El modelo Cliente/Servidor reúne las características necesarias para proveer esta infraestructura, independientemente del tamaño y complejidad de las operaciones de las organizaciones públicas o privadas y, consecuentemente desempeña un papel importante en el proceso de evolución de las organizaciones.

IBM define al modelo Cliente/Servidor como 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".

Los sistemas Cliente/Servidor se pueden ver de la siguiente manera, os clientes piden que una tarea sea realizada; El servidor realiza dicha tarea y

37

Page 38: cliente_servidor

regresa la información al cliente a través de la red. Cada componente dentro de estos sistemas se encarga de realizar su tarea exclusivamente.

Los cambios tecnológicos que se han venido dando son tan acelerados que las aplicaciones que las empresas pudieran tener, se están quedando obsoletas. Con este ambiente tan cambiante las organizaciones se deben ir adaptando a los nuevos retos e inclusive adelantarse y ellas mismas crear este cambio para no dejar escapar sus oportunidades de negocios.

La flexibilidad para maniobrar se puede expresar en términos de alcance y rango, lo cual en el caso del alcance es visualizar a quien puede llegar la información a través del uso de sistemas y en el rango se define la información de la organización que puede estar disponible.

Estos cambios que mencionaba anteriormente, han provocado que el uso de tecnología avanzada sea más común, por la reducción en los costos del equipo de cómputo, no así en los sistemas Cliente/Servidor.

APROXIMACIONES TRADICIONALES DE COSTOS CLIENTE/SERVIDOR

 Estos sistemas tradicionales para obtener el costo de un sistema Cliente/Servidor están basados en las funciones de todo el sistema, de tal manera que no se obtiene un costo real de las distintas actividades que se dan lugar en un sistema Cliente/Servidor, de tal manera que esta aproximación agrupa las distintas actividades en funciones y a estas se les asigna este costo, por lo tanto en la mayoría de las ocasiones estas funciones resultaban ser demasiado costosas para las organizaciones y no alcanzaban a ver el detalle de estos costos.

Normalmente se manejan 2 razones principales por las cuales las aproximaciones tradicionales a los costos no facilitan la adecuada cotización o costo de estos sistemas.

Alojan los costos por función en lugar de hacerlo por las actividades que lo generan.

Los costos en los que se incurren durante la planeación, diseño y prototipos que se deben realizar simplemente son muy caros, lo que no permite ver el detalle de estos costos para la organización.

38

Page 39: cliente_servidor

Dentro de esta aproximación tradicional al costo de los sistemas Cliente/Servidor existen costos ocultos de tecnología y algunos otros que no son de tecnología que presentaré a continuación.

Costos ocultos de tecnología:

Las habilidades que los empleados de una organización tengan en base a un sistema diferente a uno que sea Cliente/Servidor, requerirá que el personal se capacite para realizar sus nuevas funciones con este nuevo sistema, lo cual influye un costo alto para la organización, de la misma manera si se requiere de nuevo personal que tenga las habilidades para manejar este tipo de sistemas.

 Costos ocultos no relacionados con la tecnología:

Costos de la planeación de los sistemas, esto incluye costos relacionados con la administración de sistemas cada vez más complejos, así como las adecuaciones necesarias para las nuevas necesidades de la organización.Costos de pérdida de productividad, esto incluye el tiempo que le toma al personal para asistir a las sesiones de entrenamiento en el nuevo sistema, que le quitará horas de trabajo.

Costos de nuevas demandas de desarrollo, esto es el tiempo que los programadores ocuparán para desarrollar sistemas más complejos.

Costos de mantenimiento al sistema, esto implica buscar actualizaciones sobre el sistema y los efectos de esta nueva versión.

 Costos basados en Actividades

La organización "Computer Aided Manufacturing – International (CAM-I)" define esta técnica como una colección de información del funcionamiento operativo y financiero, trazando las actividades más significativas de la organización para los costos de los productos.

Las premisas en las que se basa esta técnica es que el objetivo de una organización es crear ciertas salidas, estas salidas tienen ciertas características que causan ciertas actividades y estas actividades cuestan dinero. Esta técnica ha sido muy utilizada por dos razones, la primera es que la medición de los costos de los productos y servicios es más adecuada y segundo que esta técnica ayuda a identificar y controlar los costos.

 

39

Page 40: cliente_servidor

Pasos para desarrollar un sistema de costos basados en actividades.

1. Conducir un análisis de actividades.

En esta actividad se describen las tareas, el tiempo asignado a cada tarea y las salidas que los procesos deben entregar.

2. Ligar los costos a las actividades.

Esta actividad incluye todos los factores de producción utilizados para realizar una actividad.

3. Identificar los conductores del costo.

Esta actividad identifica la demanda que cada actividad realiza en el costo total del proyecto. Cooper y Kaplan hacen una diferencia en estos conductores del costo que son:

Relacionado a la unidad: Dicen que se puede relacionar un costo a cada actividad a partir de una relación causa-efecto.

Relacionado a lotes: Dicen que los costos comunes a diferentes actividades son difíciles de identificar

Relacionado a la facilidad: El costo de una actividad que es difícil de identificar es alojado en otra actividad de manera arbitraria.

ATRIBUCIÓN DEL COSTO.

En esta actividad se desarrolla un costo por cada unidad de cada actividad como por ejemplo el costo de un empleado por hora.

Aplicando el costo basado en actividades a un sistema Cliente/Servidor

Identificar las actividades en el ciclo de vida de un sistema Cliente/Servidor

Primero se deben identificar las actividades más importantes que se realizan a lo largo del ciclo de vida. Estas actividades pueden ser vistas en el ambiente de desarrollo de los sistemas. Los principales son:

Definición de la solución: Identificación del problema y la determinación del problema (Esto se realiza por medio de entrevistas). Para realizar esta definición de una forma correcta se requieren los siguientes pasos:

Documentar el sistema existente. Determinar las necesidades de los usuarios

40

Page 41: cliente_servidor

Definir los requerimientos de una manera funcional

Determinar si existe una tecnología que le permita a la empresa cubrir sus necesidades

Desarrollo de la solución: Desarrollo de prototipos detallados de los nuevos flujos y procesos requeridos.

Implementación de la solución: Entrenamiento a los usuarios, validación de los datos e implementar los procesos y flujos cambiados.

Mejora continua: Extender y refinar la funcionalidad de la aplicación para que el usuario se sienta mejor utilizando el sistema.

Conducir un análisis de Actividades.

Ligar los costos a las actividades.

Entendiendo la naturaleza de las actividades que son realizadas para el sistema Cliente/Servidor resultarán en una mejor comprensión de los costos que genera cada tarea para la realización del sistema.

Identificar los conductores del costo.

Una vez que se han establecido los costos de las actividades, los conductores de estos costos deben ser identificados, la actividad que cada tarea representa en cada uno de los elementos de la organización debe ser identificado y este representa un costo en la realización del sistema.

 Atribución de los costos.

Se deben asignar costos a cada una de las actividades que hayan sido determinadas para la realización del sistema.

 Ajustes del nivel de complejidad.

Los costos que se han descrito con anterioridad pueden no dar toda la información relativa a su costo real, ya que cada una de las actividades tienen un nivel de complejidad distinto, de tal manera que una actividad que sea más compleja debe tener un costo mayor asignado a una actividad con un grado de complejidad menor.

 Monitoreo de funcionamiento.

Esta etapa permitirá identificar las áreas con un costo desproporcionado, las razones de este costo excesivo, y fincar responsabilidades. El análisis de todas las variaciones en los costos de cada actividad puede ser más costosa

41

Page 42: cliente_servidor

y tardada y podría no llevar a ninguna conclusión, por lo que no se recomienda realizar este tipo de análisis tan a detalle.

 

Conclusión.

 Los costos basados en actividades es una herramienta muy útil que nos sirve para identificar y asignar costos a cada una de las tareas que se realizan en un proyecto, este acercamiento a los costos nos permitirá tener un mayor control sobre los gastos que se realizan para el logro de un proyecto de tal manera que podamos identificar más fácilmente aquellas actividades que llevan una carga importante del costo total del proyecto y verificar la validez de esta información.

 

42

Page 43: cliente_servidor

FUNCIONES DEL CLIENTE

Los clientes en una red cliente-servidor son las máquinas o procesos que piden información, recursos y servicios a un servidor unido. Estas peticiones pueden ser cosas como proporcionar datos de una base de datos, aplicaciones, partes de archivos o archivos completos a la máquina cliente. Los datos, aplicaciones o archivos pueden residir en un servidor y ser simplemente accedidos por el cliente o pueden ser copiados o movidos físicamente a la máquina cliente. Esta disposición permite a la máquina cliente ser relativamente pequeña. Para cada tipo de entorno de cliente, hay habitualmente software específico (y a veces hardware) en el cliente, con algún software y hardware análogo en el servidor.

Los servidores pueden ser sistemas operativos diferentes como Windows NT, Windows 95, OS/2, Unix. Unix es popular porque como sistema operativo de servidores puede ser utilizado en muchos tipos de configuraciones sobre máquinas servidor además de como servidores de archivos y servidores de impresión.

FUNCIONES GENERALES DE UN SERVIDOR

Los servidores en una red cliente-servidor son los procesos que proporcionan información recursos y servicios a los clientes de la red. Cuando un cliente pide un recurso como, por ejemplo, un archivo, datos de una base de datos, acceso a aplicaciones remotas o impresión centralizada, el servidor proporciona estos recursos al cliente. Como se mencionó antes, los procesos del servidor pueden residir en una máquina que también actúa como cliente de otro servidor. Además de proporcionar este tipo de recursos, un servidor puede dar acceso a otras redes, actuando como un servidor de comunicaciones que conecta a otros servidores o mainframes o mini computadoras que actúan como hosts de la red.

También puede permitir enviar faxes o correo electrónico desde un cliente en una red a un cliente en otra red. Puede actuar como servidor de seguridad, como servidor de gestión de la red, como servidor multimedia, como servidor de directorios o de acceso.  [Rosen, 1997]

HARDWARE CLIENTE-SERVIDOR

La arquitectura cliente-servidor permite al usuario en una máquina, llamado el cliente, requerir algún tipo de servicio de una máquina a la que está unido, llamado el servidor, mediante una red como una LAN (Red de Area Local) o una WAN (Red de Area Mundial). Estos servicios pueden ser

43

Page 44: cliente_servidor

peticiones de datos de una base de datos, de información contenida en archivos o los archivos en sí mismos o peticiones de imprimir datos en una impresora asociada. Aunque clientes y servidores suelen verse como máquinas separadas, pueden, de hecho, ser dos áreas separadas en la misma máquina. Por tanto, una única máquina Unix puede ser al mismo tiempo cliente y servidor. Además una máquina cliente unida a un servidor puede ser a su vez servidor de otro cliente y el servidor puede ser un cliente de otro servidor en la red. También es posible tener el cliente corriendo en un sistema operativo y el servidor en otro distinto.

Hay varios tipos comunes de máquinas clientes en entornos cliente-servidor. Uno de los clientes mas populares es una computadora personal basada en Intel que ejecuta aplicaciones de DOS en un entorno Windows. Otra cliente popular es una terminal X; de hecho, el sistema X Windows es un modelo cliente-servidor clásico. Hay también clientes Unix que ejecutan sistemas operativos como UnixWare. Un servidor que pide cosas a otro servidor es un cliente de la máquina a la que está pidiendo. Sin considerar el tipo de cliente que se esté usando en una red cliente-servidor, se realizando al menos una de las funciones básicas descritas aquí como funciones del cliente.

44

Page 45: cliente_servidor

UNIDAD # 4

ORDENADOR LOCAL Y REMOTO:

MODELO CLIENTE-SERVIDOR

El término ordenador local se utiliza para referirse al ordenador que el usuario utiliza para entrar en la red Internet. Desde ese ordenador el usuario establece conexiones con otros ordenadores, denominados ordenadores remotos, a los que solicita algún servicio. Estos ordenadores remotos que ofrecen servicios reciben también el nombre de servidores o hosts.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Cuando se utiliza un servicio en Internet, como consultar una base de datos, transferir un fichero o participar en un foro de discusión, se establece un proceso en el que entran en juego dos partes. Por un lado, el usuario, quien ejecuta una aplicación en el ordenador local: el denominado programa cliente. Este programa cliente se encarga de ponerse en contacto con el ordenador remoto para solicitar el servicio deseado. El ordenador remoto por su parte responderá a lo solicitado por el programa cliente mediante otro programa, denominado  programa servidor. Los términos cliente y servidor se utilizan tanto para referirse a los programas que cumplen estas funciones, como a los ordenadores donde son ejecutados esos programas.

El programa o los programas cliente que el usuario utiliza para acceder a los servicios de Internet realizan dos funciones distintas. Por una parte, se encargan de gestionar la comunicación con el ordenador servidor, de solicitar un servicio concreto y de recibir los datos enviados por éste; y por otra, es la herramienta que presenta al usuario los datos en pantalla y que le ofrece los comandos necesarios para utilizar las prestaciones que ofrece el servidor.

45

Page 46: cliente_servidor

Un sistema Cliente/Servidor Suele Ejecutarse en al menos dos sistemas distintos (uno hace de cliente y el otro de servidor). No obstante, es posible que tanto el cliente como el servidor se encuentren en un único sistema. Generalmente un servidor proporciona servicios a varios sistemas clientes, aunque puede haber un único sistema. La función del cliente suele llevarla a cabo un servidor de archivos, excepto cuando se necesita el máximo rendimiento y debe utilizarse un servidor especializado. A menudo el cliente es un sistema de escritorio conectado en red. Siempre que el usuario necesite recuperar o almacenar información, la parte cliente de la aplicación ejecuta una solicitud, que se envía (generalmente por una red) al servidor. El servidor ejecuta entonces la solicitud y devuelve la información al cliente.

Los sistemas Cliente/Servidor se desarrollaron inicialmente para conseguir un rendimiento considerablemente superior con un aumento moderado del precio, pasando parte del procesamiento de la parte del cliente al servidor. De esta forma puede mejorar el rendimiento, pero apenas afecta al costo.

 Lo anterior suena bastante atractivo, pero en realidad en la practica existen elementos debemos de tomar en cuenta antes de decidirnos por este modelo; ya que al igual que cualquier otro modelo de programación, éste presenta ventajas y desventajas. A continuación presentamos algunas de ellas:

Ventajas:

Costos. El enfoque cliente/servidor es económico, sobre todo cuando está unido al concepto de racionalización. Los costos  de compra, arrendamiento y mantenimiento de macrocomputadoras centrales son tal elevados que los correspondientes a la compra de servidores, PCs y demás componentes

46

Page 47: cliente_servidor

para crear una red de área local parecen ridículos. Con frecuencia sucede que el costo de un sistema cliente/servidor completo es inferior al de la instalación de una computadora central para que pueda procesar una nueva aplicación.

Acceso a la información. Si bien el acceso a los datos es posible por otros medios, la arquitectura Cliente/Servidor constituye el ambiente ideal para facilitar el acceso a la información. El usuario no sólo puede tener un acceso transparente a toda la información que necesita, sino además está habilitado para procesarla como guste.

Ergonomía. Un buen sistema Cliente/Servidor no se concibe sin una interfaz gráfica de usuario y sin una transparencia total. De esta manera, el cliente puede trabajar en el ambiente que más le convenga sin preocuparse de la conversión de interfaces y protocolos. Se concentra en el trabajo que debe realizar más que en la tecnología.

Buena tecnología en el lugar adecuado. En teoría, un ambiente Cliente/Servidor puede conformarse de varias plataformas, sistemas operativos, SGBD, etc. De ahí que haya muchas opciones para cada aplicación; por ejemplo HP con UNIX y con estaciones de trabajo Macintosh para un servicio y un servidor Netware y estaciones de trabajo Windows para otro.

Modularidad. En un ambiente Cliente/Servidor, es factible agregar o eliminar estaciones de trabajo y servidores, puesto que el sistema puede ser más o menos fácil de volver a configurar. También es más sencillo implantar una aplicación nueva por medio de construir una extensión con un servidor y estaciones de trabajo nuevos.

Desventajas:

Incompatibilidad. El ambiente Cliente/Servidor supone que la época en que IBM tenía todo el mercado dominado ha concluido. Con el fin de esta etapa, se debe recurrir a varios proveedores. Todos sabemos lo que sucede en estos casos: cuando hay algún problema, el proveedor inicial lo remite a otro proveedor.

Si las especificaciones se ponen por escrito, no hay problema; pero en la practica cotidiana, las incompatibilidades mayores o menores entre computadoras, sistemas operativos, lenguajes, protocolos, interfaces y programas de aplicación superan las expectativas. Cuanto más elevado es el número de proveedores, las incompatibilidades son mayores.

47

Page 48: cliente_servidor

Capacitación. En casi todos los casos de implantación del modelo Cliente/Servidor, la principal dificultad es la capacitación de los usuarios. No se trata de sólo impartir cursos a los usuarios y a los ingenieros en computación, sino de cambiar toda una cultura, cual es más complicado y costoso. Es necesario redefinir todas las funciones computacionales; la visión de los sistemas de cómputo se debe cambiar por completo, la polivalencia debe ubicarse en el primer plano así como cambiar desarrollar nuevos expertos. El costo de una capacitación a fondo puede ser superior a la del conjunto del sistema. Sin embargo, se debemos considerar que la capacitación es una inversión a largo plazo.

Costos. Si bien el costo es uno de los principales factores que inclinan la balanza en favor de la arquitectura Cliente/Servidor, los inconvenientes antes mencionados conducen a reflexionar sobre la variedad de costos ocultos que conlleva: capacitación, solución de montones de pequeños problemas imprevistos, el tiempo perdido en reconciliarse con lo proveedores, la reorganización y el desarrollo de aplicaciones que aún no se encuentran en el mercado.

La implantación del modelo Cliente/Servidor  comprende varios elementos. En primer lugar, se debe contar con una arquitectura completa de telecomunicación; es decir, no basta tener un protocolo de comunicación común entre todos los sistemas llamados a cooperar, sino también se necesita toda una serie de funciones o aplicaciones de telecomunicación para retomar la terminología del modelo OSI de interconexión de sistemas abiertos.

 En efecto, es necesario disponer de funciones como administración de archivos en red, subordinación de trabajos, mensajería, comunicación entre aplicaciones, etc. Además, sería útil contar con una base de datos distribuida, lenguajes de consulta, bases de datos independientes de estos últimos y, por último, aplicaciones independientes de las bases de datos y de los tipos de terminales.

Después de haber mencionado algunas ventajas y desventajas de este modelo, es usted quien finalmente tomara la mejor decisión sobre implantar o no el tan mencionado modelo. Si elige implantarlo, deberá tomar en cuenta la importancia que tiene la planeación, el diseño y la administracion de este tipo de sistemas. Es por tal motivo que más adelante, de manera muy general, mencionaremos algunos elementos que están incluidos en la fase de la planeación.

48

Page 49: cliente_servidor

Antes de acometer el desarrollo de su primer proyecto, revise la siguiente lista, la cual dista mucho de ser completa, pero sirve para demostrar que en la construcción de una buena aplicación Cliente/Servidor hay que hacer algo más que escribir el código.

Defina los objetivos de negocios para el proyecto. Determine las reglas de negocios para la organización. Desarrolle un plan general para el proceso. Diseñe cuidadosamente la estructura de datos subyacente.

Es importante señalar que si no esta familiarizado con alguna de las herramientas que va ha utilizar, el riesgo de fallo aumenta enormemente. Existen varios métodos para mitigar ese riesgo, controle los procesos en los que trabaja para reducir el número de incógnitas, reservando los proyectos más complicados para más adelante. Si no dispone de todo el tiempo que requiere este enfoque, plantéese la posibilidad de contratar a alguien con experiencia. Si el proyecto es algo excepcional, puede que tenga sentido contratarlo externamente.

La cultura corporativa es una realidad en la vida. Buena, mala o indiferente, juega un papel importante en todo lo que hacemos. En lugar de permitirle que dirija su proyecto aprovéchese de ella a la hora de definir las funciones y las responsabilidades de las distintas partes implicadas en la planificación y el diseño de su sistema Cliente/Servidor, incluidos los usuarios finales, desarrolladores y la administración.

Y un tópico real: las culturas puede dar traste con su proyecto Cliente/Servidor, es por eso que es necesario que entienda la cultura de su empresa.

Uno de los factores claves para asegurar el éxito de un proyecto consiste en crear una asociación con los usuarios finales, o clientes, para aunar unos conocimientos y atributos complementarios. El usuario final suele ser el que mejor entiende el proceso actual y puede ofrecer la perspectiva necesaria, que puede ser de gran ayuda durante el desarrollo de la aplicación.

Esta asociación puede aplicarse igualmente en aquellas situaciones en las que la experiencia de los sistemas Cliente/Servidor viene de fuera de la organización. De hecho, la asociación es incluso más vital con vendedores externos, porque rara vez conocen por completo los procedimientos, costumbres, objetivos y otros factores de la empresa que los empleados han asimilado a lo largo de los años. Disponer de personas externas implicadas en el proceso es también recomendable porque una persona externa a menudo cuestiona los temas que las personas familiarizadas con el proceso

49

Page 50: cliente_servidor

actual pueden asumir como correctas de manera tácita. Si no puede disponer de un consultor para trabajar en el proyecto, puede utilizar a alguien de otro departamento para desempeña la misma función. Pero asegúrese de que no esté demasiado familiarizado con le proceso actual y de que no tenga miedo de hacer preguntas.

 Es muy importante implicar a los estamentos superiores de la administración en el proceso de establecimiento de asociaciones. Ya que es fundamental contar con el apoyo de los niveles altos de la organización, por la probabilidad de que un proyecto Cliente/Servidor cruce los límites departamentales o incluso plantee una reestructuración. La mayor parte de los proyectos que no consiguen ese apoyo nunca llegan a llevarse a cabo.

 Es casi imposible implementar con éxito un proyecto Cliente/Servidor sin contar con el apoyo de los sectores superiores de la administración para dar respaldo al proyecto y controlar la observancia de los planes del proyecto por parte de la organización. Conseguir el apoyo de la administración para el proyecto desde el principio es crucial porque los planes de los proyectos son dinámicos, cambian con el paso del tiempo según se va consiguiendo más información sobre el proyecto y sobre el entorno de negocios.

 Los desarrolladores en un entorno Cliente/Servidor deben asumir responsabilidades superiores a las que tenían en el pasado. Muchos grupos de desarrollo en los entornos tradicionales están  acostumbrados a tomar decisiones unilaterales con respecto a los sistemas. Los usuarios no cuentan demasiado, y la planificación se realiza en un nivel operativo o táctico, en lugar de a un nivel estratégico.

 Algunas organizaciones promueven un enfoque que especifica que cada grupo de desarrollo debe tomar sus propias decisiones, lo que suele dar como resultado sistemas de software que no pueden comunicarse entre ellos. A menudo estos sistemas están escritos en lenguajes distintos o utilizan distintas bases de datos como almacenamiento. Para la mayor parte de estas empresas la planificación estratégica es un idioma extranjero, mientras que quien dirige es el pensamiento táctico. Una característica común en las organizaciones con tasas altas de éxito en implementaciones Cliente/Servidor es que aprovechan los cambios. Evalúan constantemente las nuevas tecnologías y determinan de qué manera dichas tecnologías pueden ayudar a los objetivos de la organización. El desarrollador debe contribuir y participar en todos los niveles de la planificación e implementación (operativo, táctico y estratégico).

50

Page 51: cliente_servidor

 La mayor parte de las organizaciones descubren que, sin una ayuda bien informada, es difícil o imposible llevar a cabo proyectos Cliente/Servidor. La programación Cliente/Servidor es una nueva forma de vida y exige nuevas herramientas y técnicas, lo que puede ser inabordable sin ayuda externa. Esta es una experiencia para la empresa, y una fuente de experiencia oportuna y fiable puede superar la diferencia entre el éxito y el fracaso.  

LAN CLIENTE/SERVIDOR

En el sentido más estricto, el término cliente/servidor describe un sistema en el que una máquina cliente solicita a una segunda máquina llamada servidor que ejecute una tarea específica. El cliente suele ser una computadora personal común conectada a una LAN, y el servidor es, por lo general, una máquina anfitriona, como un servidor de archivos PC, un servidor de archivos de UNIX o una macrocomputadora o computadora de rango medio. El programa cliente cumple dos funciones distintas: por un lado gestiona la comunicación con el servidor, solicita un servicio y recibe los datos enviados por aquél. Por otro, maneja la interfaz con el usuario: presenta los datos en el formato adecuado y brinda las herramientas y comandos necesarios para que el usuario pueda utilizar las prestaciones del servidor de forma sencilla. El programa servidor en cambio, básicamente sólo tiene que encargarse de transmitir la información de forma eficiente. No tiene que atender al usuario. De esta forma un mismo servidor puede atender a varios clientes al mismo tiempo. Algunas de las principales LAN cliente/servidor con servidores especializados que pueden realizar trabajos para clientes incluyen a Windows NT, NetWare de Novell, VINES de Banyan y LAN Server de IBM entre otros. Todos estos sistemas operativos de red pueden operar y procesar solicitudes de aplicaciones que se ejecutan en clientes, mediante el procesamiento de las solicitudes mismas.

51

Page 52: cliente_servidor

Uso del modelo Cliente-Servidor

La mayoría de los programas en red son del modelo Cliente-Servidor, en dicho modelo el servidor proporciona algún tipo de servicio, desde los más simples como ser un espejo4.2, hasta una más compleja como hacer consultas a bases de datos, entre otros. En este modelo, el Cliente hace uso del Servidor para realizar sus tareas o acceder a información que solo el servidor tiene, y el servidor solo trata de responder a cada una de las consultas que le hace el cliente. Dicho modelo también nos permite simular el paralelismo, ya que podemos hacer uso de varios servidores para poder realizar cierta tarea. En java se pueden manejar dos tipos de protocolos el UDP y el TCP para la transferencia de datos. Cada uno con sus propias ventajas y desventajas. El UDP es rápido, pero no proporciona un canal de comunicación fiable, ya que no verifica si los datos fueron recibidos satisfactoriamente, este tipo de conexión es muy común cuando vemos un archivo de video en vivo en la red (unas partes se ve, otras parte no tan bien, otras ni se ve, etc.). El TCP es más lento, pero este si nos proporciona un canal de comunicación fiable punto a punto, y este es el protocolo más comunmente utilizado en las aplicaciones cliente-servidor. Un socket es un punto final en un enlace de comunicación de dos vías entre dos programa que se ejecutan en red. En un programa cliente-servidor un socket nos ayuda a representar las conexiones entre un programa cliente y uno servidor. En el lado del cliente se utiliza la clase Socket y en el del servidor el ServerSocket para representar dichas conexiones. Antes de entrarnos a fondo, cómo comunicarnos en java, primero veamos como actúa cada una de las partes (el cliente y el servidor) en el modelo Cliente-Servidor.

El Cliente actúa de la siguiente forma.

Establece una conexión con el servidor (Crea un socket con el servidor).

Mandar mensajes al servidor o Esperar un mensaje de él.(Consultas) Esperar su respuesta o contestarle(existen casos en que este paso no

es necesario). Repetir los pasos 2 y 3 mientras sea necesario. Cerrar la conexión con el servidor. El servidor actúa así. Inicializa un puerto de comunicación, en espera de clientes que

intenten conectarse a él (Crea un serverSocket).

52

Page 53: cliente_servidor

Una vez que se conecta alguien, crea un hilo de ejecución para este usuario mientras que el thread principal vuelve al paso 1. Esto comunmente se hace para que el servidor puede atender a varios clientes al mismo tiempo.

Se comunica con el cliente mediante el socket creado entre el cliente y él.

Espera que el cliente se vaya o lo bota el mismo servidor (Cierrra el socket entre ellos) y elimina el thread de comunicación entre ellos.

53