Módulo I:
Introducción a las redes IP
Objetivos ........................................................ pág 2
Redes TCP/IP .................................................. pág 2
Arquitecturas TCP/IP y OSI................................ pág 4
Diagramas de la capa de aplicación ..................... pág 5
Datagrama IP .................................................. pág 7
Datagrama UDP ............................................... pág 8
Datagrama TCP ............................................... pág 9
Protocolos de aplicación TCP/IP ..........................pág 10
Telnet ............................................................pág 11
FTP y TFTP......................................................pág 13
SMTP .............................................................pág 15
SNMP-Entorno de gestión de red.........................pág 16
ICMP Internet Control Messages Protocol..............pág 17
Direcciones IP .................................................pág 19
Encaminamiento IP ..........................................pág 20
1
Objetivos
En el primer módulo de este curso, vamos a comenzar por la descripción de las
principales características de las redes basadas en los protocolos TCP/IP.
También realizaremos una comparación entre éstas y el modelo OSI.
Recordaremos las características de los datagramas IP, TCP y UDP y analizaremos
sus principales protocolos de aplicación, como por ejemplo TELNET; FTP; SMTP y
SNMP.
Redes TCP/IP
Todos empleamos el protocolo IP y todos sabemos, al menos en parte, que es lo
que este significa.
El protocolo IP no está orientado a conexión y no es confiable, por lo tanto se utiliza
conjuntamente con TCP que es si es confiable y orientado a conexión, y tiene un
fuerte contenido Unix.
El protocolo IP es como un contenedor, por lo tanto siempre necesita ser llevado
por algo, y en este caso el protocolo de transporte es TCP.
2
Internet trabaja en modo datagrama y no con circuitos virtuales, permitiendo un
crecimiento muy elástico de la red, sin sufrimientos.
El estándar de hecho TCP/IP (Transmision Control Protocol/Internet Protocol) es un
conjunto de protocolos programados para la interconexión de computadores, que
ofrece un sistema de intercambio de información en redes de las más variadas
arquitecturas y sistemas operativos.
Existen productos TCP/IP para la mayoría de los entornos informáticos, que
proveen transferencia de archivos, correo electrónico, emulación de terminales,
servicios de transporte, administración de redes, etc..
TCP/IP es un conjunto de protocolos (no-propietarios) cuya arquitectura es la que
se muestra en la figura.
Como veremos más adelante, aunque no cumple estrictamente con la arquitectura
OSI, los protocolos TCP/IP se pueden agrupar dentro de las capas de OSI.
Los protocolos más importantes incluyen:
§ TCP (Transmision Control Protocol)
§ IP (Internet Protocol)
§ UDP (User Datagram Protocol)
§ ICMP (Internet Control Message Protocol)
§ Mientras que en lo que respecta a los servicios tenemos:
§ Telnet
§ FTP (File Transfer protocol) y
§ SMTP (Simple Mail Transfer Protocol)
La historia del TCP/IP se remonta a fines de la década del 60, cuando el
Departamento de Defensa de los Estados Unidos inició la construcción de una red
de ordenadores para el apoyo de proyectos de investigación militar y científica. Esta
red creció, incluyendo a varias de las universidades más importantes de ese país.
Para 1980, y ya con varias versiones, el conjunto TCP/IP era estable y confiable,
facilitando la interconectividad de los computadores de la red denominada Arpanet.
Para 1983, ya se encontraba instalada en todos los ordenadores de esta red, que
luego daría origen a la Internet.
Este protocolo, desde un principio fue desarrollado con el objeto de atender a
aspectos tales como interconectividad entre redes, gestión de redes, conectividad
LAN-WAN, gestión de redes y la provisión de servicios de información.
Como su patrocinador fue el gobierno, los códigos fuente pertenecen al dominio
público, lo que ha incentivado a través de los años su uso por parte de cientos de
proveedores de equipos y de software.
Dada su estructura multinivel, en la que una red central une varias redes y hosts
independientes, permite que los usuarios de las redes puedan comunicarse entre sí
sin afectar el funcionamiento del resto de la red.
3
Arquitecturas TCP/IP y OSI
Como anticipábamos previamente, en esta transparencia se observa la analogía que
existe entre las redes con arquitectura OSI, según el modelo de 7 capas y la
arquitectura de transporte de TCP/IP.
Estos modelos solo pueden compararse funcionalmente, ya que existen diferencias
básicas entre ellos, tales como:
§ En la pila de protocolos de Internet, una capa representa un
encapsulamiento de la función, mientras que ISO trata a las capas como
grupos funcionales bastante reducidos, intentando forzar la modularidad al
requerir capas adicionales para funciones adicionales.
En TCP/IP un protocolo dado puede ser usado por otros protocolos en la
misma capa, mientras que en el modelo OSI se definirían dos capas. Como
ejemplo de esta dependencia horizontal, podemos citar el FTP, que usa la
misma representación común que TELNET sobre la capa de aplicación, ó
ICMP que usa IP para el envío de datagramas en el nivel de red.
Desde un punto de vista práctico, el entorno TCP/IP por ser un estándar de
hecho, se trata de establecer de común acuerdo un protocolo estándar que
pueda funcionar en una diversidad de redes heterogéneas. Mientras que en
el modelo OSI, con un estándar ya establecido y unificado se le ha dado
mayor importancia al estándar que a su implementación.
§ Eficiencia y viabilidad. En este aspecto, los protocolos TCP/IP tienden a ser
descriptivos, dejando la máxima libertad a los implementadores, mientras
que la normativa OSI tiende a ser prescriptiva (por ejemplo, la capa N debe
atravesar todas las capas por debajo de ella). La mayoría de los protocolos
de Internet se han desarrollado primero (codificados y probados) y después
han sido descritos en una norma, lo que muestra claramente su viabilidad.
Si el objetivo es la coexistencia de TCP/IP, tendiente a una hegemonía
eventual de OSI, hay cinco diferentes opciones, divididas en dos categorías
generales basadas en protocolos y basadas en servicios.
4
Los enfoques basados en protocolos incluyen pilas duales y pasarelas para
los niveles de aplicación y de transporte. Los basados en servicios incluyen
puentes en el nivel de transporte y túneles de red. Estas alternativas son:
§ Pilas duales, colocando OSI y TCP/IP en una misma máquina de la red
§ Pasarelas en el nivel de aplicaciones, con lo que se obtiene una mayor
interoperabilidad que en el caso anterior,
§ Pasarelas a nivel de transporte, donde se encuentra un protocolo TCP en
un extremo y OSI en el otro, donde es necesario un software intermedio
para traducir los paquetes TCP a paquetes TP4. Lo que se considera
inviable.
§ Puentes del servicio de transporte, que en definitiva son routers que
copian PDU’s en lugar de traducirlos.
§ Túneles de Red, que proporcionan checksums origen – destino, pero son
difíciles de implementar.
Los tres primeros enfoques se centran en la concentración de protocolos. Sin
embargo, es posible ignorar virtualmente el protocolo en sí y concentrarse
en emular los servicios, y es en este punto donde entran en juego los
puentes del servicio de transporte y los túneles de red.
Diagramas de la capa de aplicación
5
El conjunto TCP/IP no cuenta con protocolos de soporte, por lo que cuando se
requiere un servicio en particular, éste se integra directamente al protocolo de
aplicación específico, el que se comunica directamente con los protocolos de
transporte.
Se denomina proceso de aplicación a los programas/software que realizan funciones
de proceso reales asociadas a una aplicación (distribuida). Por ejemplo, un
programa que se ejecuta en un computador que necesita tener acceso a un proceso
de aplicación servidor de archivos, en ejecución en otro computador.
En este contexto, los protocolos de aplicación específicos proporcionan el soporte
necesario para que un cliente pueda acceder a los distintos procesos de aplicación
en forma abierta, como si se estuviera ejecutando en el mismo computador.
En el caso de un conjunto OSI se define para cada aplicación distribuida un
dispositivo virtual junto con un conjunto definido de sus primitivas de servicio de
usuario. El protocolo de aplicación asociado a un servicio específico se implementa
suponiendo que los procesos de aplicación cliente y servidor, se comunican
mediante primitivas iguales a las asociadas al dispositivo virtual definido. De esta
manera, todas las primitivas de solicitud y respuesta en la interfaz con cada
protocolo de aplicación tienen un formato estándar.
Cada protocolo de aplicación opera en una forma definida, y que es independiente
de las diferencias que pudieran existir con los procesos de aplicación reales. Si los
servicios asociados a los procesos de aplicación son diferentes de los asociados al
dispositivo virtual, se adiciona otra capa de software independiente para realizar las
funciones de transformación necesarias. Esto permite utilizar el software de
aplicación y los servidores existentes sin tener que modificarlos.
6
Este software de transformación se denomina Elemento de Usuario (UE) o Agente
de Usuario (UA) y se implementa como un proceso independiente, o como un
conjunto de procedimientos o funciones de biblioteca, que se enlaza al protocolo de
aplicación.
Pero en el caso de TCP/IP cada protocolo de aplicación, además de implementar el
protocolo asociado al servicio de aplicación definido, ejecuta todas las restantes
funciones de soporte, incluidas las de transformación. Los protocolos, en general,
ofrecen una interfaz de terminal además de la interfaz de proceso de aplicación de
usuario.
En reglas generales, los protocolos de aplicación TCP/IP son más complejos que los
de la plataforma ISO.
Datagrama IP
En las filminas siguientes analizaremos de manera resumida los datagramas IP,
UDP y TCP con el objeto de comprender más acabadamente los temas relacionados
con este curso.
El datagrama IP está representado por palabras de 32 bits, y puede tener una
longitud total de 65.536 bytes.
Veremos que es lo que significan los principales segmentos que se incluyen en un
datagrama IP.
§ Versión: le sirve a los routers para identificar la longitud y características de
cada uno de los campos
§ Tamaño de la cabecera: da el número de palabras de 32 bits
§ Tipo de servicio: normalmente los routers tienen que estar configurados
especialmente para identificar esta información. Son 6 bits, 3 dan la
prioridad y los otros tres dan el delay, la tasa de transmisión y la
confiabilidad.
§ Identificación – Banderas – Desplazamiento de Segmento: dependiendo del
MTU (Maximum Transfer Unit) se deben fragmentar los datagramas. Si debe
ser dividido por ejemplo en 1500 bytes, esto va a dar alrededor de 44
datagramas (65.536 bytes dividido 1.500). Estos datagramas van a ir por
diferentes caminos y estos campos de identificación permiten reconstituir la
información.
7
En el caso de la identificación, es un número al azar que genera el router y es el
mismo para todos los datagramas. El desplazamiento del segmento da la posición
en el bloque original para poder armar nuevamente la trama. Por último, las
banderas normalmente están compuestas por tres bits. El primero no se utiliza, el
segundo indica si hay fragmentos del mismo bloque y el último me dice si el
datagrama se puede fragmentar.
La tercera palabra del datagrama identifica el tiempo de vida, el protocolo y la
suma de verificación de la cabecera.
§ El tiempo de vida: cuando un datagrama llega a un router, este hace tres
preguntas. Si tiene la dirección de destino, si no la tiene, va en la siguiente
pregunta a verificar la tabla de ruteo. Si no la tiene, la envía al router por
default. La única manera de evitar que un datagrama siga dando vueltas
indefinidamente es fijar un tiempo de vida. Cada vez que pasa por un router
se le descuenta 1, y si hay tiempo de espera, también se lo descuenta. El
router que lo pone en cero, lo destruye y le manda la cabecera del
datagrama al router de origen.-
§ Protocolo: indica el protocolo del campo de datos (TCP, IP, UDP, etc.)
§ Suma de Verificación de la cabecera: se utiliza para detectar errores de la
cabecera y no del campo de datos, porque al IP lo único que le importa es
llegar al host correspondiente. Si se detecta error, destruye el datagrama.
Esta suma debe ser hecha en cada router, porque el tiempo de vida varía de
router a router.
La cabecera IP tiene un total de 5 palabras. A continuación de las cinco palabras
aparecen las opciones, que pueden estar o no. No obstante esto el tamaño de la
cabecera IP podría llegar a emplear hasta 15 palabras. Luego de la cabecera viene
el campo de datos, es decir lo que generan TCP, UDP ó ICMP.
Datagrama UDP
Los procesos, se identifican por un número de puerto, que identifica el proceso en
la memoria de la máquina. Esto es un puerto UDP, y los hay de origen y de destino.
Pero no basta con ubicar el proceso, primero se debe ubicar la red y luego el host
(Nivel 3 OSI). Cuando estoy en el host, recién allí se busca al proceso dentro de la
máquina, entendiendo por host a todo dispositivo que tiene dirección IP.
Existen puertos para aplicaciones estándar, cuyos números siempre se repiten.
Generalmente por debajo de los 1024 están los puertos WELLKNOWN, que se
identifican por sockets y que tienen número de puerto más número de dirección IP.
La dirección IP esta dada por la dirección del host más la dirección de la red.
8
Cuando se trabaja con UDP, el primer proceso le envía un datagrama al de destino.
Si usa TCP, primero se comunican entre procesos y le pregunta si quieren
comunicarse, luego se sincronizan y empiezan a transmitir. Posteriormente se hace
algo similar para la desconexión.
La suma de verificación no es obligatoria. Si se utiliza, al llegar al proceso de
destino este ve si hay errores, si los hay tira el datagrama. Para computar la suma
de verificación se tiene en cuenta un Pseudo Encabezado en el que se incluyen las
direcciones IP fuente y de destino. De esta forma es posible controlar en el receptor
que el datagrama llegó al destino correcto.
En el caso de los datos, si el protocolo no tiene más campos vienen los datos.
Este servicio no es confiable. El datagrama se puede perder, duplicar, desechar sin
que el otro se entere.
Datagrama TCP
Por último el datagrama TCP, que es más complejo ya que realiza más funciones.
En lo que respecta al puerto de origen y de destino es igual que en el datagrama
UDP.
§ El número de secuencia es un número aleatorio, a partir del cual van a empezar
a sincronizarse. A partir de ese número empieza a contar octetos. Se utiliza
para saber a partir de donde va a empezar a contar.
§ Número de acuse de recibo. Supongamos que se deben transmitir 10
segmentos. . Primero deben llegar y luego ordenarlos en secuencia. Esto implica
que no solo debe identificarlos, sino que además debe controlar el flujo en el
proceso con el objeto de evitar la existencia de overflow, evitando que la
máquina de origen envíe más de lo que la máquina de destino esta en
condiciones de recibir o almacenar en un momento dado. Para esto, y como las
máquinas ya se encuentran conectadas, le va a mandar cada vez un acuse de
recibo con indicación en la ventana de la capacidad.
§ Ventana. son 16 bits y se utilizan para el control de flujo. Le dice que capacidad
de buffer tienen disponible en función de lo que le informó la máquina de
destino en el intercambio anterior.
§ HLEN (Header Lenght): indica la longitud de la cabecera.
§ Reservado: campo aún no utilizado
9
§ Code Bits: son seis flags o banderas:
§ Sincronismo (SYN), se activa cuando se le pide al otro extremo que se
sintonice, por lo que en el primer segmento TCP está siempre activado.
§ Reconocimiento (ACK), negado en el primer segmento. Es utilizado por
los firewalls para bloquear las comunicaciones con TCP. Si se programa
para que no pase ningún ACK con el primer segmento negado, no deja
pasar ninguno de los posteriores.
§ Urgente (URG), si esta activado, presta atención al puntero de urgencia,
y si es cero ignora este campo de la cabecera.
§ Reset (RST), pone a cero la conexión e inicia la secuencia de
sincronismo nuevamente.
§ Push (PSH), si esta activado, todo el campo de datos hay que entregarlo
a la aplicación urgente
§ Fin (END), activado tiene valor 1, y en esta condición indica que es el
último segmento del bloque a transmitir.
§ La suma verificadora es obligatoria en TCP. Como en el caso del UDP. Para
computar la suma de verificación también se tiene en cuenta un Pseudo
Encabezado en el que se incluyen las direcciones IP fuente y de destino. De esta
forma es posible controlar en el receptor que el datagrama arribó al destino
correcto.
§ El puntero de urgencia está asociado a la bandera “URG”. Indica un byte a partir
del cual los datos son de urgente entrega.
§ Opciones, si las hay
§ Relleno: se utiliza porque siempre tienen que ser palabras de 32 bytes
Protocolos de aplicación TCP/IP
Entre los principales protocolos de aplicación en TCP/IP podemos destacar:
§ TELNET, que permite al usuario de una terminal de una máquina
comunicarse interactivamente con un proceso de aplicación; como por
10
ejemplo un editor de textos ejecutado en una máquina remota, como si
estuviera conectada a él directamente.
§ FTP, protocolo de transferencia de archivos, permite al usuario de una
terminal tener acceso a un sistema de archivo remoto e interactuar con él.
§ SMTP ó protocolo simple de transferencia de correo, que ofrece un servicio
de transferencia de correo a nivel de toda la red entre los sistemas de correo
asociados a diferentes máquinas.
§ SNMP, o protocolo simple de gestión de red, que posibilita a un usuario
recabar datos de rendimiento o controlar el funcionamiento de un elemento
de red (por ejemplo un puente o una pasarela) a través de la misma red.
Todas las interacciones cliente/servidor deben establecer previamente un camino
de comunicación entre los dos protocolos/procesos de aplicación intervinientes.
Todos los procesos de aplicación servidores tienen asociado un nombre, que se
traduce en una dirección de red. La traducción la realiza un proceso denominado
Servidor de Nombres de Dominio. La dirección de red resultante consta de la
dirección IP, a nivel del sistema de red anfitrión en el que se está ejecutando el
proceso, y un número de puerto local.
El IP de cada pasarela utiliza la dirección IP para enrutar los datagramas por la
Interred hasta el sistema anfitrión de destino solicitado. El número de puerto sirve
para que el TCP, o el UDP, del sistema identifique el proceso específico en ese
sistema al cual debe entregarse el mensaje recibido.
En lo que respecta al esquema:
§ RSE, es el Entorno del Sistema Real,
§ OSIE, Entorno de Interconexión de Sistemas Abiertos
§ ASE, Elemento de Servicio de Aplicación
§ UE, Elemento de Usuario
TELNET
11
En un proceso de aplicación de usuario, o un usuario en una terminal, tiene acceso
al protocolo/proceso cliente TELNET a través del sistema operativo local. TELNET
proporciona servicios que le permiten a un usuario comunicarse con el sistema
operativo de una máquina remota, iniciar un proceso/programa en ella y luego
interactuar con él como si la terminal estuviera conectada a la misma máquina o
ejecutándose en ella.
12
El sistema operativo transfiere las órdenes y datos introducidos en la terminal del
usuario al proceso TELNET del cliente, el cual a su vez utiliza el servicio de
transporte de TCP para pasar las órdenes y datos al TELNET del servidor
correspondie nte. Este último, procesa las órdenes a nombre del usuario, utilizando
el sistema operativo local, al proceso interactivo.
Como consecuencia de esto, el TELNET servidor recibe el nombre de
“pseudoterminal”.
Todo los datos de salida del proceso interactivo se devuelven por el mismo camino,
y se muestran en la terminal del cliente o para ser interpretados por el proceso de
aplicación usuario.
Ambos protocolos TELNET interactúan entre sí mediante órdenes, que pueden ser
caracteres únicos o cadenas de caracteres, codificadas en un formato estándar
denominado NVT (Network Virtual Terminal) ó Terminal Virtual de Red. Este
conjunto de caracteres es ASCII. Todos los datos de entrada y salida relacionados
con una interacción se transfieren como cadenas ASCII. Si los caracteres locales
son diferentes, el TELNET efectuará las funciones de transformación necesarias.
Por lo tanto, ambas partes del protocolo TELNET cumplen también el papel de capa
de presentación de una pila OSI.
Dentro de estas funciones existe un grupo de Bytes de órdenes NVT y un grupo de
códigos de opción de NVT con los cuales se realizan las operaciones entre los
protocolos TELNET de ambas máquinas.
FTP y TFTP
En muchas aplicaciones distribuidas, es necesario acceder a servidores de archivos
remotos, siendo probable en algunos casos que más de un usuario tenga acceso a
un mismo servidor, o bien que un mismo archivo se encuentre en varios servidores.
13
A un FTP (Protocolo de Transferencia de Archivos) cliente puede tener acceso un
usuario en su terminal o bien un proceso de aplicación, y generalmente un solo
cliente puede administrar varios usuarios simultáneamente, ofreciendo a cada uno
de ellos un conjunto de servicios similar al que proporciona cualquier sistema de
archivos.
Con el mismo criterio, un FTP servidor puede atender las solicitudes de varios
clientes de manera simultánea, interactuando con su sistema local de archivos ante
cada requerimiento como si hubiera sido solicitada localmente.
En FTP se manejan tres estructuras de archivos y cuatro tipos de datos:
§ Binario de ocho bits
§ Texto ASCII
§ Texto EBCDIC
§ Binario de Longitud variable
En lo que respecta a las estrucutras de archivos, debemos mencionar:
§ Archivos no estructurados, este tipo de archivo puede contener cualquier
tipo de datos (texto o binario) y se transfiere entre dos entidades de
protocolo FTP como un flujo de bits transparente, siendo interpretados por el
usuario en función de los datos contenidos.
§ Archivos estructurados, que están formados por una secuencia de registros
de tamaño fijo y de un tipo definido, por lo que sus contenidos se transfieren
como cadenas de bloques de tamaño fijo, o como alternativa puede ser
transferido en forma comprimida.
§ Archivos de acceso aleatorio, que están compuestos por registros de tamaño
variable, comúnmente denominados “páginas” y “archivos paginados” a los
archivos. Cada página tiene asociada una cabecera que indica su ubicación
en relación con el contenido total del archivo. Estas se transfieren entre las
dos entidades de protocolo en la misma forma.
Cuando hay transferencias comprimidas y en modo de bloques, ambas entidades de
protocolo FTP establecen puntos de verificación para poder transferir archivos
grandes en forma controlada, de manera similar a lo que sucede en la capa de
sesión de una pila OSI.
El FTP contiene todas las características necesarias para manejar diversos tipos de
archivos y algoritmos de compresión, lo que lo hace bastante complejo. Estas
funcionalidades son necesarias cuando se vinculan varias redes, pero en las LAN’s
pueden no ser necesarias.
Para estos casos TCP/IP proporciona un protocolo de archivos adicional, el TFTP
(Trivial File Transfer Protocol), para su uso en aplicaciones LAN.
Como generalmente la tasa de error en un entorno LAN es muy baja, TFTP emplea
para la transferencia de mensajes UDP en lugar de TCP. Este protocolo maneja
solamente cuatro tipos de mensajes, que se codifican en ASCII y son:
§ Solicitud de lectura, generada por un cliente para iniciar una operación de
lectura de archivo;
§ Solicitud de escritura, para iniciar una operación de escritura de un archivo;
§ Bloque de datos, empleado para comunicar el contenido del archivo
§ Confirmación, enviado por un cliente o un servidor para confirmar la
recepción de un bloque de datos.
14
SMTP
El protocolo simple de transferencia de correo SMTP (Simple Mail Transfer Protocol)
gestiona la transferencia de correo del sistema de correo de un computador a otro.
La interrelación entre el protocolo y el sistema de correo local está representada en
la filmina.
Este protocolo no realiza funciones de aceptación de correo de usuarios locales, ni
distribución de correo a sus destinatarios, ya que estas son funciones del sistema
de correo local.
El SMTP esta oculto para los usuarios, ya que interactúa con el sistema de correo
local o nativo. El sistema de correo local mantiene un buzón para cada usuario en el
que este puede depositar y recibir correo. Cada buzón tiene un nombre único que
comprende una parte local, o nombre del usuario (único dentro del sistema local), y
una parte global que es única dentro de toda la Interred.
El formato del correo consiste de una cabecera y un cuerpo con varias líneas ASCII.
El SMTP cliente que ha de enviar el correo determina primero la dirección IP del
sistema anfitrión de destino a partir del servicio de directorio o sistema de nombres
de dominio, y utiliza esa dirección, junto con la del puerto “wellknown” de SMTP
(25) para el inicio de una conexión de transporte con el SMTP servidor del anfitrión
de destino, iniciando la transferencia del correo al servidor.
Hay muchas redes que usan protocolos distintos del SMTP, y en estos casos es
necesario utilizar una pasarela de correo para realizar el intercambio, como por
ejemplo una pasarela TCP/IP a OSI. En este caso, el correo recibido en SMTP en un
puerto de red se reenvía empleando MOTIS (protocolo de correo de la OSI) en el
otro puerto de red. De esta misma forma se realizan otros servicios de pasarela
para otros protocolos.
15
SNMP- Entorno de gestión de Red
El protocolo simple de gestión de red SNMP (Simple Network Management Protocol)
se ocupa de la gestión de todos los protocolos de comunicación dentro de cada
sistema y de los equipos de red, es decir, de la gestión del entorno total de la red.
El SNMP se definió para ayudar a un gestor de red a realizar las funciones de
gestión de fallas y de rendimiento.
La gestión de fallas es cuando se interrumpe el servicio en un entorno de red, la
determinación de las causas y el restablecimiento del servicio con el mínimo
retardo. Mientras que la gestión de rendimiento de la red esta relacionada con el
nivel de tráfico, los cuellos de botella y la solución de los mismos con el agregado
de nuevos equipamientos, etc..
Otras funciones de gestión existentes en una red son las gestiones de: capas,,
nombres, seguridad, contabilidad. Etc..
El concepto de gestión de red estándar considera a todos los elementos de la red a
administrar (protocolos, puentes, pasarelas, etc) como elementos gestionados. Y a
cada uno de ellos se le asocia un conjunto definido de información relacionada con
la gestión. Esta información está compuesta de variables o atributos, que son
modificables por el gestor a través de la red, y generalmente también por un
conjunto de informes de fallos.
Como SNMP es un protocolo de aplicación, debe existir una plataforma de
comunicación estándar para hacer posible la transferencia de los mensajes
16
asociados. Para ello, utiliza también el TCP/IP con un esquema de funcionamiento
similar al detallado en la placa.
EL SNMP tiene la función de permitir que el proceso gestor de la estación gestora,
intercambie mensajes relacionados con los procesos de gestión en ejecución en
cada uno de los elementos gestionados.
Cada uno de estos procesos de gestión realiza una serie de funciones
administrativas relacionadas con ellos, como la respuesta a solicitudes de variables
especificadas, recepción de variables operativas o generación y envío de informes
de fallas.
La información de gestión asociada a una red ó interred, se mantiene en el gestor
de red en una base de información de gestión MIB (Management Information
Base). Esta base de datos es generalmente relacional, debido a que la información
relacionada con un objeto gestionado suele ser empleada en varias partes de la
base de datos. La definición de la estructura y contenido de esta MIB es una función
básica de los gestores de una red.
Por encima de todo se encuentra la Interred, conformada por varias entidades
mayores (servicios de directorio, elementos de red y servicios de seguridad). Los
elementos de red están formados por las redes, pasarelas, enrutadores y puentes,
y por último están los elementos gestionados.
Los objetos gestionados, y la información de gestión, reales asociados a una
interred pueden variar de un sistema abierto a otro. Para esto se definió al SNMP
de modo de poder recoger información de gestión en diversos entornos de red. De
esta manera la información recabada es transparente para el SNMP, el que solo
ofrece un conjunto definido de servicios, cada uno con sus correspondientes
parámetros.
ICMP Internet Control Messages Protocol
Los mensajes ICMP son un tipo de mensajes que envían los routers, encapsulados
en datagramas IP, al originante de algún mensaje con problemas (inconvenientes
para encaminar el datagrama, congestión de red, etc.).
17
Estos mensajes ofrecen mayor robustez, pero no mayor fiabilidad, ya que si un
mensaje ICMP se pierde no se vuelve a enviar otro mensaje de error.
Estos datagramas tienen básicamente dos funciones:
§ Informar sobre errores y
§ Diagnosticar y obtener información
El esquema general que se sigue a la hora de empaquetar o encapsular un
datagrama ICMP en un datagrama IP.
Los mensajes de ICMP son del tipo de:
§ Errores,
§ Diagnóstico.
§ Los mensajes de error tienen un formato común como el de la figura
central. Dentro de estos mensajes analizaremos a su vez tres tipos:
- Destination Unreachable (tipo=3), que se envía cuando se descarta un
mensaje. En este tipo de mensaje, el campo de código (code) define la
causa del rescate.
- 0 Network Unreacheable, cuando la red dentro de la cual está el destino
es inalcanzable;
- 1 Host Unreachable, cuando el host de destino es inalcanzable;
- 2 Protocol Unreachable, este mensaje se utiliza cuando el host de
destino está bien, pero el campo de protocolo del datagrama no coincide
con ninguno de los protocolos del host.
En el campo opcional, se incluye la cabecera IP y los primeros 64 bits del
datagrama que se descartó.
- Source Quench (tipo=4), que utiliza el mismo formato aunque el código
es siempre 0 y se emplea para avisar el descarte por congestión.-
- Time Exceeded for Datagram (tipo=11), avisa de un descarte por exceso
de tiempo en el sistema y emplea el mismo formato, con dos códigos
posibles:
- 0, descarte por TTL y
- 1, timeout de reensamblado, es decir que no han llegado todos los
trozos al destino en el tiempo esperado.-
§ Los mensajes de diagnóstico que se analizaran son los de echo request y
reply. Estos mensajes responden al mismo formato con los tipos 8 y 0
respectivamente. El esquema es el que se representa en último término en
la filmina.
Estos mensajes se utilizan para saber si el destino es accesible (por ejemplo
con las utilidades Ping y Trace Route).
El objetivo es que al mandar un request se obliga al destino a responder con
un replay.
La utilidad Ping. Una vez que el destino devuelve el mismo mensaje que se
le envió, el origen comprueba el campo de datos recibido con el transmitido
y si coinciden es que el destino es perfectamente alcanzable.
La utilidad Trace Route, nos dice que la ruta seguida por los datagramas en
una conexión. Para hacer esto, envía ecos con TTL=1. Esto ocasiona que el
primer router envíe un ICMP de descarte con TTL=0, pero además incluirá su
dirección IP.
18
Luego envía otro con TTL = 1,2 .... Hasta que se reciba un reply, indicando
que el mensaje llegó a destino.
De esta manera, se van recibiendo progresivamente los mensajes de error
de todos los routers atravesados.
Direcciones IP
En primer lugar, debemos mencionar que las direcciones IP deben ser
independientes de la subred en que se encuentre el host. Sus longitudes son de 32
bits, lo que en teoría permitiría administrar una capacidad de 4 millones de
direcciones diferentes, pero muchas de ellas se desperdician por la manera en que
estas son asignadas.
Los 32 bits se subdividen en dos campos. El de Subred, que identifica a la subred a
la que está conectado el sistema y el campo Sistema, que identifica al host dentro
de la subred.
Existen cinco tipos de direcciones, para dar mayor flexibilidad a la asignación. Estos
tipos o clases, se diferencian en la longitud de los campos.
§ Clase A:
En este tipo el primer bit es más significativo, va a cero indicando la dirección de
tipo A. Esta clase permite tener muchos sistemas conectados en una misma
subred, lo que la hace apta para grandes redes con muchos equipos, pero no
seria práctica para su utilización en pequeñas redes locales con pocos hosts,
porque se produciría un gran desperdicio de direcciones.
Una dirección podría ser [Link]
§ Clase B:
En este caso el primer bit debe ir a 1 y el segundo a cero. Un ejemplo de
dirección es [Link].
§ Clase C:
Para los tipo C, los tres bits más significativos deben ser “110”. Esta clase de
direcciones esta pensada para subredes pequeñas y con baja capacidad de
equipos, ya que permite hasta 255 subdirecciones para cada subred. Un ejemplo
de este tipo de direcciones podría ser [Link]
19
§ Clase D:
Esta clase de direcciones está pensada para multicast o multidestino. Con una
dirección de este tipo se envía un mismo datagrama a un grupo de hosts
previamente definidos. De esta manera, nos ahorraremos tener que generar un
datagrama para cada uno de los destinatarios con cada una de las direcciones
individuales, con un datagrama de idéntico contenido. Esto no es lo mismo que
broadcast, ya que con broadcast, estaríamos enviando el mensaje a todos los
usuarios y no sólo a un grupo de estos. Las direcciones multicast, comienzan
con los bits “1110”
§ Clase E, está reservada para usos futuros.
Los puntos en las direcciones tienen por objeto traducir, cada octeto por
separado.
Pero como esto sigue siendo muy incómodo, se utilizan los nombres IP, que
consiste en asignar a los sistemas nombres con un significado comprensible
para el usuario, y que suele estar relacionado con su ubicación. La traducción se
realiza internamente, por ejemplo con el empleo de DNS, que traduce las
direcciones IP a nombres IP, con el empleo de una base de datos distribuida.
Una dirección IP no identifica a un sistema, sino a una conexión de un sistema a
una subred. Por lo tanto, un sistema conectado a dos subredes, como podría ser
por ejemplo un router, tendrá dos direcciones.
Encaminamiento IP
Analizaremos los casos de transmisión directa y de transmisión indirecta.
En la transmisión directa el primer host conoce tanto la dirección IP1 como IP2 y
las incluye en la cabecera del datagrama IP a enviar.
20
Pero para encapsular a nivel 2, es necesario conocer ET2. Esto, se realiza a través
de un traductor de direcciones, que me de ET2. Desde la dirección IP conocida. El
encargado de realizar esta función es el protocolo ARP.
En el caso de la transmisión indirecta, el host de origen, que coloca como destino a
IP3, sabe que otras máquinas existen en su subred, así como sus direcciones IP,
incluido el router.
Por lo tanto, sabe que IP3 no pertenece a su subred, y entonces se la envía al
router. Esto lo hace con la misma dirección IP3 de destino, pero encapsulado en
una trama Ethernet con destino ET2, también obtenida con el protocolo ARP.
En el router se consultan las tablas de encaminamiento, las que nos indican a partir
de una dirección IP de destino, a que dirección IP de su subred debe ser enviado.
Esta nueva dirección IP, o nuevo router, a su vez hará lo mismo y lo reenviará, y
así hasta llegar a destino.
El router emplea las tablas de encaminamiento o de enrutamiento para enviar el
mensaje hacia su destino final. Existen las tablas:
§ Estáticas. En este caso hay una en cada host, lo que complica las operaciones si
la red tiene muchos sistemas. Además es necesario rehacer todas las tablas
cada vez que se quita, se agrega o se descompone una máquina.
§ Asociación directa. En este caso, la dirección IP contiene a la dirección de la
subred. Pero esto puede también traer inconvenientes, ya que la dirección IP es
de 32 bits, y la de la subred podría ser de otro valor. No es conveniente mezclar
direcciones de varios niveles.
§ Asociación Dinámica. Esta forma de enrutamiento emplea protocolos de
resolución. Como el ARP o el RARP.
En el caso del ARP ( Address Routing Protocol), solo es posible su uso si en la red
hay broadcast. Mantiene independientes las direcciones IP de las direcciones de
subred. Se utiliza en FDDI, Token Ring, Ethernet, ATM, y en general en todas la que
tienen broadcast).
El RARP (Reverse Address Routing Protocol) se utiliza por ejemplo para el caso de
PC’s que no tienen disco duro y trabajan contra un servidor. El inconveniente es
que la PC no entienda nada de direcciones, y las ventajas son la sencillez en la
modificación de la configuración, el evitar los problemas de virus, permitiendo en
general una mejor administración del sistema.
Otros protocolos de este tipo que podemos mencionar son el DHCP (Dinamic Host
Configuration Protocol), el PPP (Point to Point Protocol) ó SLIP (Serial Line
Protocol).
21