52
1 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.

Cliente - Servidor

Embed Size (px)

DESCRIPTION

Módulo Cliente - Servidor

Citation preview

Page 1: Cliente - Servidor

1

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.

Page 2: Cliente - Servidor

2

5. TABLA DE CONTENIDOS

UNIDAD # 1 .................................................................................................................... 3

REDES ............................................................................................................................. 3

EL CABLEADO DE LA RED ......................................................................................... 4

REDES LAN SIN CABLEADO ...................................................................................... 8

TOPOLOGÍAS FÍSICAS DE RED .................................................................................. 9

REDES LAN .................................................................................................................. 12

PRINCIPALES COMPONENTES DE RED ................................................................. 17

EL MODELO DE REDES OSI ...................................................................................... 21

EL NIVEL FÍSICO ......................................................................................................... 22

EL NIVEL DE ENLACE DE DATOS .......................................................................... 23

EL NIVEL DE RED ....................................................................................................... 24

EL NIVEL DE TRANSPORTE ..................................................................................... 25

EL NIVEL DE APLICACIÓN ....................................................................................... 28

UNIDAD # 2 .................................................................................................................. 30

SERVICIOS BÁSICOS DE INTERNET ....................................................................... 30

WWW ............................................................................................................................. 30

CORREO ELECTRÓNICO ........................................................................................... 31

LISTAS DE CORREO ................................................................................................... 32

GRUPOS DE NOTICIAS .............................................................................................. 32

UNIDAD # 3 .................................................................................................................. 34

MODELO CLIENTE SERVIDOR ................................................................................ 34

TCP ................................................................................................................................. 35

APROXIMACIONES TRADICIONALES DE COSTOS CLIENTE/SERVIDOR ...... 37

ATRIBUCIÓN DEL COSTO. ........................................................................................ 39

FUNCIONES DEL CLIENTE ....................................................................................... 42

FUNCIONES GENERALES DE UN SERVIDOR ....................................................... 42

HARDWARE CLIENTE-SERVIDOR .......................................................................... 42

UNIDAD # 4 ................................................................................................................. 44

ORDENADOR LOCAL Y REMOTO: .......................................................................... 44

LAN CLIENTE/SERVIDOR ......................................................................................... 50

6. COMPETENCIAS a. 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.com www.lafacu.com www.rincondelvago.com

Page 3: Cliente - Servidor

3

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.

Page 4: Cliente - Servidor

4

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

Page 5: Cliente - Servidor

5

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

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.

Page 6: Cliente - Servidor

6

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.

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

Page 7: Cliente - Servidor

7

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

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

Page 8: Cliente - Servidor

8

REDES LAN SIN CABLEADO

No 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.

Page 9: Cliente - Servidor

9

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.

Page 10: Cliente - Servidor

10

Los datos en estas redes fluyen del emisor hasta el concentrador. Este controla realiza todas las funciones de red además de actuar como 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

Page 11: Cliente - Servidor

11

Topología de Arbol / Tree

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

Bus

Coaxial

Par Trenzado Fibra óptica

Ethernet LocalTalk

Estrella Par trenzado Fibra óptica

Ethernet LocalTalk

Estrella en Anillo Par trenzado Token Ring

Arbol Coaxial

Par trenzado Fibra óptica

Ethernet

Page 12: Cliente - Servidor

12

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

Page 13: Cliente - Servidor

13

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.

Page 14: Cliente - Servidor

14

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 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.

Page 15: Cliente - Servidor

15

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.

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

Page 16: Cliente - Servidor

16

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

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

Page 17: Cliente - Servidor

17

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.

Page 18: Cliente - Servidor

18

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 información. Están

Page 19: Cliente - Servidor

19

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.

Page 20: Cliente - Servidor

20

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".

Page 21: Cliente - Servidor

21

EL MODELO DE REDES OSI

Aunque 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

Page 22: Cliente - Servidor

22

EL NIVEL FÍSICO

El 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. Consiste en las oficinas de conmutación, los alambres entres los

clientes y las oficinas (los local loops), y los alambres de las conexiones

Page 23: Cliente - Servidor

23

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 DATOS

El 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.

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).

Page 24: Cliente - Servidor

24

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 RED

Este 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 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.

Page 25: Cliente - Servidor

25

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 TRANSPORTE

El 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. Las aplicaciones pueden usar estas funciones para funcionar en cualquier tipo de red.

Page 26: Cliente - Servidor

26

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.

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

Page 27: Cliente - Servidor

27

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.

Page 28: Cliente - Servidor

28

EL NIVEL DE APLICACIÓN

El 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 electrónico que cumpla con el estandar SMTP será capaz de sacar por pantalla nuestro mensaje.

Page 29: Cliente - Servidor

29

Page 30: Cliente - Servidor

30

UNIDAD # 2

SERVICIOS BÁSICOS DE INTERNET

WWW

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.

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

Page 31: Cliente - Servidor

31

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.

Page 32: Cliente - Servidor

32

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.

Page 33: Cliente - Servidor

33

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

news Para comunicaciones relacionadas con la red de

grupos (Usenet)

soc

Cuestiones 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

alt La anarquía (puede haber grupos sobre cualquier tema)

humanities Humanidades

es fr Nacionales (españolas, francesas)

Page 34: Cliente - Servidor

34

UNIDAD # 3

MODELO CLIENTE SERVIDOR

El 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.

Page 35: Cliente - Servidor

35

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

TCP

TCP 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.

Page 36: Cliente - Servidor

36

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

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.

Page 37: Cliente - Servidor

37

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.

Page 38: Cliente - Servidor

38

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.

Page 39: Cliente - Servidor

39

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

Definir los requerimientos de una manera funcional

Page 40: Cliente - Servidor

40

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 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.

Page 41: Cliente - Servidor

41

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.

Page 42: Cliente - Servidor

42

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 peticiones de

Page 43: Cliente - Servidor

43

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.

Page 44: Cliente - Servidor

44

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.

Page 45: Cliente - Servidor

45

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 para

crear una red de área local parecen ridículos. Con frecuencia sucede que el

Page 46: Cliente - Servidor

46

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.

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

Page 47: Cliente - Servidor

47

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.

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.

Page 48: Cliente - Servidor

48

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 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

Page 49: Cliente - Servidor

49

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).

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

Page 50: Cliente - Servidor

50

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.

Uso del modelo Cliente-Servidor

Page 51: Cliente - Servidor

51

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).

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.

Page 52: Cliente - Servidor

52

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.