
Los protocolos de red son normas que permiten a los ordenadores comunicarse. Un protocolo define la forma en que los ordenadores deben identificarse entre si en una red, la forma en que los datos deben transitar por la red, y cómo esta información debe procesarse una vez que alcanza su destino final. Los protocolos también definen procedimientos para gestionar transmisiones o "paquetes" perdidos o dañados. IPX (para Novell NetWare), TCP/IP (para UNIX, WindowsNT, Windows 95/98 y otras plataformas), DECnet (para conectar una red de ordenadores Digital), AppleTalk (para los ordenadores Macintosh), y NetBIOS/NetBEUI (para redes LAN Manager y WindowsNT) son algunos de los protocolos más populares en la actualidad.
Aunque cada protocolo de la red es diferente, todos pueden compartir el mismo cableado físico. Este concepto es conocido como "independencia de protocolos," lo que significa que dispositivos que son compatibles en las capas de los niveles físico y de datos permiten al usuario ejecutar muchos protocolosdiferentes sobre el mismo medio físico.
PROTOCOLO CSMA/CD
Definición de CSMA/CD
CSMA/CD son siglas que corresponden a las siglas Carrier Sense Multiple Access with Collision Detection, que corresponden a Acceso Múltiple por Detección de Portadora con Detección de Colisiones, es una técnica usada en las redes para mejorar las prestaciones. Antes de usar estas técnicas se usaron las de Aloha puro y Aloha ranurado, pero ambas tenían muy bajas prestaciones. Por esto, primero se creó el CSMA, luego se mejoró y surgió el CSMA/CD.
La meta de este protocolo es de evitar al máximo las colisiones. La diferencia principal con el protocolo de AlohaNet es que todos los equipos escuchan el medio y se detectan las colisiones.
A continuación se presenta un esquema del protocolo CSMA, que es muy parecido al de AlohaNet:

Funcionamiento
Su funcionamiento es:
1. Una estación que tiene un mensaje para enviar escucha al medio para ver si otra estación está transmitiendo un mensaje.
2. Si el medio esta tranquilo (ninguna otra estación esta transmitiendo), se envía la transmisión y se espera el ACK (acuse de recibo). La estación que recibe comprueba el CRC (detección de errores) y si es correcto envía el ACK. Si tras un tiempo no ha sido recibido el ACK, se pasa al paso 1. Si se recibe, la operación ha sido un éxito.
3. Cuando dos o más estaciones tienen mensajes para enviar, es posible que transmitan casi en el mismo instante, resultando en una colisión en la red.
4. Cuando se produce una colisión, todas las estaciones receptoras ignoran la transmisión confusa.
5. Si un dispositivo de transmisión detecta una colisión, envía una señal de expansión para notificar a todos los dispositivos conectados que ha ocurrido una colisión.
6. Las estaciones transmisoras detienen sus transmisiones tan pronto como detectan la colisión.
7. Cada una de las estaciones transmisoras espera un periodo de tiempo aleatorio e intenta transmitir otra vez.
En redes inalámbricas, resulta a veces complicado llevar a cabo el primer paso. Por este motivo, surgen dos problemas, que son los que siguen:
1. Problema del nodo oculto: la estación cree que el medio está libre cuando en realidad no lo está, pues está siendo utilizado por otro nodo al que la estación no "oye".
2. Problema del nodo expuesto: la estación cree que el medio está ocupado, cuando en realidad lo está ocupando otro nodo que no interferiría en su transmisión a otro destino.
Para resolver estos problemas se propone MACA que significa: Evasión de Colisión por Acceso Múltiple.
A continuación se muestra el funcionamiento mediante dos figuras.


Las figuras 1 y 2 muestran los dos posibles estados de transmisión de datos de Ethernet. Si el medio está ocupado, el intento de transmisión será diferido hasta que éste se desocupe. Si el medio está ocioso, entonces el intento de transmisión puede realizarse inmediatamente, como se muestra en la figura 1.
Si otros nodos intentan transmitir al mismo tiempo, se produce una colisión. El medio es agolpado durante el tiempo Jam para alertar a todas las estaciones que ha ocurrido una colisión. Las estaciones que colisionan entran a Backoff para que su reintento de transmisión sea planeado. Esto se muestra en la figura 2.
Detección de portadora y Detección de colisiones
La detección de portadora es utilizada para escuchar al medio para ver si se encuentra libre. Si la portadora se encuentra libre, los datos son pasados a la capa física para su transmisión. Si la portadora está ocupada, se monitorea hasta que se libere.
Tras la transmisión, continúa el monitoreo del medio de transmisión. Cuando dos señales colisionan, sus mensajes se mezclan y se vuelven ilegibles. cuando esto ocurre, las estaciones afectadas detienen su transmisión y envían una señal de expansión, asegura que todas las demás estaciones de la red se enteren de que ha ocurrido una colisión.
Cada segmento de una red Ethernet, entre dos router, bridges o switches, constituye lo que se denomina dominio de tiempo de colisiones o dominio de colisiones Ethernet.
Se supone que cada bit permanece en el dominio un tiempo máximo de 25.6 µs, lo que significa que en este tiempo debe haber llegado al final del segmento.
Si en este tiempo la señal no ha salido del segmento, puede ocurrir que una segunda estación en la parte del segmento aún no alcanzado por la señal, pueda comenzar a transmitir, puesto que su detección de portadora indica que la línea está libre, dado que la primera señal aún no ha alcanzado a la segunda estación. En este caso ocurre un acceso múltiple MA y la colisión entre ambos es inevitable.
Los síntomas de una colisión dependen del medio de transmisión utilizado. En el caso de cable coaxial, la señal del cable contiene estados intermedios. La interferencia produce en algunos puntos un debilitamiento de la señal mientras que en otros se produce un reforzamiento; esta condición de sobretensión es detectada por los nodos. En cambio, cuando se utiliza cable de par trenzado, el síntoma es que existe señal en el par TX mientras que simultáneamente se recibe también señal por el par RX.
Estos estados en que la calidad de la señal no es adecuada, son detectados como errores SQEs ("Signal Quality Errors"), y el dispositivo emisor envía un mensaje de error.

Tipos de CSMA/CD
En función de cómo actúe la estación, el método CSMA/CD se puede clasificar en:
- CSMA no-persistente: si el canal está ocupado espera un tiempo aleatorio y vuelve a escuchar. Si detecta el canal libre, emite.
- CSMA 1-persistente: con el canal ocupado, la estación pasa a escuchar constantemente el canal sin esperar ningún tiempo. Cuando lo detecta libre emite. Podría ocurrir que emitiera otra estación durante un retardo de propagación o latencia de la red posterior a la emisión de la trama, produciéndose una colisión.
- CSMA p-persistente: después de encontrar el canal ocupado y quedarse escuchando hasta encontrarlo libre, la estación decide si emite. Para ello ejecuta un algoritmo o programa que dará orden de transmitir con una probabilidad p, o de permanecer a la espera. Si no transmitiera, en la siguiente ranura o división de tiempo volvería a ejecutar el mismo algoritmo hasta transmitir. Así se reduce el número de colisiones.
Errores más comunes
Los tipos de errores que se pueden dar en Ethernet son los siguientes:
- “runt”: definidos antes de que expire la ranura temporal (slot). Suelen deberse a colisiones “legales” (se consideran ilegales las colisiones producidas fuera del slot, que indican una red fuera de parámetros). Las colisiones pueden ser locales (detectables por señales con voltajes duplicados o detección de señal en la recepción simultáneamente a la transmisión) o remotas (detectables porque la trama es inferior a la ranura, y son debidas a colisiones producidas más allá de un repetidor).
- Trama larga, jabber: Transmisión excesiva o ilegalmente larga.
- Error de FCS: Transmisión dañada.
- Error de alineamiento: Número insuficiente o excesivo de bits transmitidos (no son un múltiplo de 8).
- Error de intervalo o de rango: El número real y el informado de octetos en una trama no concuerda.
- Fantasma: Preámbulo inusualmente largo o evento de congestión. Es un ruido mal apantallado que parece trama.
AUTONEGOCIACIÓN
En Ethernet 10 Mbps cada estación emite un pulso cada 16 ms si no se está transmitiendo, denominado NLP. En Fast-Ethernet se transmiten ráfagas de varios NLPs, denominadas FLP. La autonegociación se establece emitiendo ráfagas al nivel superior e intentando enlazar a las mayores prestaciones posibles (full-duplex y Gigabit Ethernet). Si no es posible se va probando a prestaciones inferiores. Aunque es preferible configurar las NIC en modo autonegociación, es posible forzarlas para que operen a unos valores determinados. En este caso es importante forzar todas las tarjetas de la red para que operen con los mismos parámetros.
Protocolo tcp/ip:
En primer lugar vamos a empezar definiendo lo que es un protocolo, un protocolo no es mas que un conjunto de reglas establecidas entre dos dispositivos para permitir la comunicación entre ambos, en concreto los protocolos TCP/IP es un protocolo DARPA que permite la transmisión confiable de paquetes de datos mediante redes.
Este protocolo fue desarrollado por el departamento de defensa de los Estados Unidos, ejecutándolo por primera vez en 1972 en el ARPANET una red de área extensa del departamento de defensa.
En concreto, TCP/IP es un conjunto de protocolos, la sigla TCP/IP significa "Protocolo de control de transmisión/Protocolo de Internet" y se pronuncia "T-C-P-I-P". Proviene de los nombres de dos protocolos importantes del conjunto de protocolos, es decir, del protocolo TCP y del protocolo, en concreto, TCP se encarga de contabilizar las transmisión de datos entre computadores y registrar si hay o no errores, mientas que IP realiza la transferencia de datos, todos juntos llegan a ser más de 100 protocolos diferentes definidos en este conjunto.
Se considera la base del Internet ya que representa todas las reglas de comunicación para ello y se basa en la idea de brindar una dirección IP a cada equipo de la red para poder enrutar paquetes de datos.
Es utilizado para enlazar computadoras que utilizan diferentes sistemas operativos, incluyendo PC, mini computadoras, Mac`s y servidores de redes de área local y área extensa ya que no dependen del sistema operativo ni del computador, sino que cualquiera puede desarrollar productos que se ajusten a las especificaciones de TCP/IP.
Además también tiene otro tipo de características que caben destacar:
Buena recuperación de los fallos
Habilidad de añadir redes sin interrumpir los servicios ya existentes.
Manejo de alto porcentaje de errores
Bajos gastos indirectos de información
Como hemos nombrado anteriormente el origen de TCP/IP fue diseñado por propósitos relacionados al Departamento de Defensa de Estados Unidos, debido a esto lo que ahora hemos nombrado como características antes eran requisitos de diseño, la idea de “una buena recuperación de los fallos” fue que si una parte de la red fuera dañada durante un ataque, las piezas de red restantes deben seguir funcionando adecuadamente; lo mismo para la capacidad de añadir nuevas redes sin interrupción a los servicios ya existentes. La habilidad de manejar gran porcentaje de errores fue implantado para que si un paquete de información se pierde al recorrer una ruta habría un mecanismo que asegura que este llegará a su destino mediante otra ruta y por último la razón por la cual TCP/IP es tan eficiente son sus gastos indirectos bajos. Esto no tiene una contraparte en su simplicidad y rapidez.
Para poder aplicar el modelo TCP/IP en cualquier equipo, es decir, independientemente del sistema operativo, el sistema de protocolos TCP/IP se ha dividido en diversos módulos. Cada uno de éstos realiza una tarea específica. Además, estos módulos realizan sus tareas uno después del otro en un orden específico. Ésta es la razón por la cual se habla de modelo de capas.
El término capa se utiliza para reflejar el hecho de que los datos que viajan por la red atraviesan distintos niveles de protocolos. Durante una transmisión, los datos cruzan cada una de las capas en el nivel del equipo remitente. En cada capa, se le agrega información al paquete de datos. Esto se llama encabezado, es decir, una recopilación de información que garantiza la transmisión. En el nivel del equipo receptor, cuando se atraviesa cada capa, el encabezado se lee y después se elimina. Entonces, cuando se recibe, el mensaje se encuentra en su estado original.

En cada nivel, el paquete de datos cambia su aspecto porque se le agrega un encabezado. Por lo tanto, las designaciones cambian según las capas:
• el paquete de datos se denomina mensaje en el nivel de la capa de aplicación;
• el mensaje después se encapsula en forma de segmento en la capa de transporte;
• una vez que se encapsula el segmento en la capa de Internet, toma el nombre de datagrama;
• finalmente, se habla de trama en el nivel de capa de acceso a la red.
El objetivo de un sistema en capas es dividir el problema en diferentes partes (las capas), de acuerdo con su nivel de abstracción.
Cada capa del modelo se comunica con un nivel adyacente (superior o inferior). Por lo tanto, cada capa utiliza los servicios de las capas inferiores y se los proporciona a la capa superior.
Pensemos en los módulos del software de protocolos como una pila vertical constituida por capas. Cada capa tiene la responsabilidad de manejar una parte del problema.
Una vez que se toma la decisión de subdividir los problemas de comunicación en cuatro subproblemas y organizar el software de protocolo en módulos, de manera que cada uno maneja un problema, debemos plantearnos qué tipo de funciones debemos instalar en cada módulo, esta pregunta sería difícil de responder por varias razones. En primer lugar, un grupo de objetivos y condiciones determinan un problema de comunicación en particular, es posible elegir una organización que optimice un software de protocolos para ese problema. Segundo, incluso cuando se consideran los servicios generales al nivel de red, como un transporte confiable es posible seleccionar entre distintas maneras de resolver el problema. Tercero, el diseño de una arquitectura de red y la organización del software de protocolo esta interrelacionado; no se puede diseñar a uno sin considera al otro.
Descripción de las capas según orden de menor a mayor:
* CAPA DE ACCESO A LA RED:
Es la primera capa de la pila TCP/IP. consta de una capa de interfaz de red responsable de aceptar los datagramas IP y transmitirlos hacia una red específica, ofrece la capacidad de acceder a cualquier red física, es decir, brinda los recursos que se deben implementar para transmitir datos a través de la red.
Por lo tanto, la capa de acceso a la red contiene especificaciones relacionadas con la transmisión de datos por una red física, cuando es una red de área local, como es nuestro caso con Ethernet, conectada mediante línea telefónica u otro tipo de conexión a una red. Trata los siguientes conceptos:
• enrutamiento de datos por la conexión;
• coordinación de la transmisión de datos (sincronización);
• formato de datos;
• conversión de señal (análoga/digital);
• detección de errores a su llegada.
• Etcétera.
Afortunadamente, todas estas especificaciones son invisibles al ojo del usuario, ya que en realidad es el sistema operativo el que realiza estas tareas, mientras los drivers de hardware permiten la conexión a la red (por ejemplo, el driver de la tarjeta de red).
* LA CAPA DE INTERNET:
La capa de Internet es la capa "más importante" (si bien todas son importantes a su manera), ya que es la que define los datagramas y administra las nociones de direcciones IP. Esta maneja la comunicación de una máquina a otra, acepta una solicitud para enviar un paquete desde la capa de transporte, junto con una identificación de la máquina, hacia la que se debe enviar el paquete. La capa Internet también maneja la entrada de datagramas, verifica su validez y utiliza un algoritmo de ruteo para decidir si el datagrama debe procesarse de manera local o debe ser transmitido. Para el caso de los datagramas direccionados hacia la máquina local, el software de la capa de red de redes borra el encabezado del datagrama y selecciona, de entre varios protocolos de transporte, un protocolo con el que manejará el paquete. Por último, envía los mensajes ICMP de error y control necesarios y maneja todos los mensajes ICMP entrantes.
Permite el enrutamiento de datagramas (paquetes de datos) a equipos remotos junto con la administración de su división y ensamblaje cuando se reciben.
La capa de Internet contiene 5 protocolos:
• el protocolo IP;
• el protocolo ARP;
• el protocolo ICMP;
• el protocolo RARP;
• el protocolo IGMP.
Entre los que caben destacar los tres primeros.
**protocolo IP**
Su significado es Protocolo de Internet, de ahí sus siglas (IP), es un protocolo no orientado a conexión, usado tanto por el origen como por el destino para la comunicación de datos, a través de una red de paquetes conmutados no fiable y de mejor entrega posible sin garantías, además no corrige ni detecta errores en la información.
Los datos en una red basada en IP son enviados en bloques conocidos como paquetes o datagramas. En particular, en IP no se necesita ninguna configuración antes de que un equipo intente enviar paquetes a otro con el que no se había comunicado antes.
IP provee un servicio de datagramas no fiable (también llamado del mejor esfuerzo (best effort), lo hará lo mejor posible pero garantizando poco). IP no provee ningún mecanismo para determinar si un paquete alcanza o no su destino y únicamente proporciona seguridad de sus cabeceras y no de los datos transmitidos. Por ejemplo, al no garantizar nada sobre la recepción del paquete, éste podría llegar dañado, en otro orden con respecto a otros paquetes, duplicado o simplemente no llegar. Si se necesita fiabilidad, ésta es proporcionada por los protocolos de la capa de transporte.
Si la información a transmitir, es decir, los datagramas a transmitir supera el tamaño máximo "negociado" (MTU) en el tramo de red por el que va a circular podrá ser dividida en paquetes más pequeños, y re ensamblada luego cuando sea necesario. Estos fragmentos podrán ir cada uno por un camino diferente dependiendo de como estén de congestionadas las rutas en cada momento.
**Protocolo ARP**
Permite que se conozca la dirección física de una tarjeta de interfaz de red correspondiente a una dirección IP. Por eso se llama Protocolo de Resolución de Dirección (en inglés ARP significa Address Resolution Protocol).
Cada equipo conectado a la red tiene un número de identificación de 48 bits(Dirección física). Éste es un número único establecido en la fábrica en el momento de fabricación de la tarjeta. Sin embargo, la comunicación en Internet no utiliza directamente este número (ya que las direcciones de los equipos deberían cambiarse cada vez que se cambia la tarjeta de interfaz de red), sino que utiliza una dirección lógica asignada por un organismo, la dirección IP.
El funcionamiento del protocolo ARP es bastante simple, cuando una máquina desea enviar un mensaje a otra máquina que está conectada a través de una red ethernet se encuentra con un problema: la dirección IP de la máquina en cuestión es diferente a la dirección física de la misma. La máquina que quiere enviar el mensaje sólo conoce la dirección IP del destino, por lo que tendrá que encontrar un modo de traducir la dirección IP a la dirección física, para ello se utilizará el protocolo ARP.
Para que las direcciones físicas se puedan conectar con las direcciones lógicas, el protocolo ARP interroga a los equipos de la red para averiguar sus direcciones físicas y luego crea una tabla de búsqueda entre las direcciones lógicas y físicas en una memoria caché, esta tabla denominada Tabla de Direcciones ARP contiene la correspondencia entre direcciones IP y direcciones físicas utilizadas recientemente. Si la dirección solicitada se encuentra en esta tabla el proceso se termina en este punto, puesto que la máquina que origina el mensaje ya dispone de la dirección física de la máquina destino.
Si la dirección buscada no está en la tabla el protocolo ARP envía un mensaje a toda la red. Cuando un ordenador reconoce su dirección IP envía un mensaje de respuesta que contiene la dirección física. Cuando la máquina origen recibe este mensaje ya puede establecer la comunicación con la máquina destino, y esta dirección física se guarda en la Tabla de direcciones ARP y a continuación podrá establecerse la comunicación.
Por ejemplo Si queremos enviar un paquete de “A” a “B” que se encuentra en la misma red lo primero que hace “A” es comprobar en su tabla ARP si se encuentra la dirección MAC de “B” si es así se utiliza si no se enviara el correspondiente paquete broadcast esperando la respuesta de la maquina cuya dirección IP corresponda con la preguntada añadiendo un nuevo registro a la tabla. Estas entradas se borran cada cierto tiempo.
En un segundo caso si “A” quiere enviar un paquete a “B” que no esta en su misma red lo que hace “A” es enviarlo a través de la dirección física de su router de salida, para ello consulta la tabla ARP realizando el correspondiente intercambio de mensajes si dicha entrada no se encuentra en la tabla. Una vez en el router este consulta su tabla de encaminamiento enviando el paquete al próximo nodo y así sucesivamente hasta que le paquete llega a un router de la red en la que se encuentre la IP destino. Una vez allí el router se encarga de averiguar la dirección física consultando su tabla ARP o preguntando con mensajes correspondientes.
**Protocolo ICMP**
El Protocolo de Mensajes de Control y Error de Internet, ICMP, tiene un formato simple, su utilidad está en controlar si un paquete no puede alcanzar su destino, si su vida ha expirado, si el encabezamiento lleva un valor no permitido, si es un paquete de eco o respuesta, etc. Es decir, se usa para manejar mensajes de error y de control necesarios para los sistemas de la red, informando con ellos a la fuente original para que evite o corrija el problema detectado. ICMP proporciona así una comunicación entre el software IP de una máquina y el mismo software en otra, ya que el protocolo IP escasea de dichos controles.
El protocolo ICMP solamente informa de incidencias en la entrega de paquetes o de errores en la red en general, pero no toma decisión alguna al respecto (esto es tarea de las capas superiores que se explicará un poco mas adelante). Por lo tanto, el protocolo ICMP es usado por todos los routers para indicar un error (llamado un problema de entrega).

Como vemos en la imagen, los mensajes ICMP se transmiten como datagramas IP normales, con el campo de cabecera "protocolo" con un valor 1, y comienzan con un campo de 8 bits que define el tipo de mensaje de que se trata. A continuación viene un campo código, de o bits, que a veces ofrece una descripción del error concreto que se ha producido y después un campo suma de control, de 16 bits, que incluye una suma de verificación de errores de transmisión. Tras estos campos viene el cuerpo del mensaje, determinado por el contenido del campo "tipo". Contienen además los 8 primeros bytes del datagrama que ocasionó el error.
Los mensajes de error ICMP se envían a través de la red en forma de datagramas, como cualquier otro dato. Por lo tanto, los mismos mensajes de error pueden contener errores.
Sin embargo, si existe un error en un datagrama que lleva un mensaje ICMP, no se envía ningún mensaje de error para evitar el efecto "bola de nieve", si hay un incidente en la red.
Los principales tipos de mensaje ICMP son:
Mensajes informativos
Entre estos mensajes hay algunos de suma importancia, como los mensajes de petición de ECO (tipo 8) y los de respuesta de Eco (tipo 0). Las peticiones y respuestas de eco se usan en redes para comprobar si existe una comunicación entre dos host a nivel de capa de red, por lo que nos pueden servir para identificar fallos en este nivel, ya que verifican si las capas física (cableado), de enlace de datos (tarjeta de red) y red (configuración IP) se encuentran en buen estado y configuración.
Mensajes de error
En el caso de obtener un mensaje ICMP de destino inalcanzable, con campo "tipo" de valor 3, el error concreto que se ha producido vendrá dado por el valor del campo "código", pudiendo presentar los siguientes valores que se muestran en la parte derecha.
Este tipo de mensajes se generan cuando el tiempo de vida del datagrama a llegado a cero mientras se encontraba en tránsito hacia el host destino (código=0), o porque, habiendo llegado al destino, el tiempo de reensamblado de los diferentes fragmentos expira antes de que lleguen todos los necesarios (código=1).
Los mensajes ICMP de tipo= 12 (problemas de parámetros) se originan por ejemplo cuando existe información inconsistente en alguno de los campos del datagrama, que hace que sea imposible procesar el mismo correctamente, cuando se envían datagramas de tamaño incorrecto o cuando falta algún campo obligatorio.
Por su parte, los mensajes de tipo=5 (mensajes de redirección) se suelen enviar cuando, existiendo dos o más routers diferentes en la misma red, el paquete se envía al router equivocado. En este caso, el router receptor devuelve el datagrama al host origen junto con un mensaje ICMP de redirección, lo que hará que éste actualice su tabla de enrutamiento y envíe el paquete al siguiente router.
**Protocolo RARP**
El protocolo RARP (Protocolo de Resolución de Dirección Inversa) es mucho menos utilizado que el ARP, el protocolo RARP se usa esencialmente para las estaciones de trabajo sin discos duros que desean conocer su dirección física.
El protocolo RARP le permite a la estación de trabajo averiguar su dirección IP desde una tabla de búsqueda entre las direcciones MAC (direcciones físicas) y las direcciones IP alojadas por una pasarela ubicada en la misma red de área local (LAN).
Para poder hacerlo, el administrador debe definir los parámetros de la pasarela (router) con la tabla de búsqueda para las direcciones MAC/IP. A diferencia del ARP, este protocolo es estático lo que implica que la tabla de búsqueda debe estar siempre actualizada para permitir la conexión de nuevas tarjetas de interfaz de red.
El protocolo RARP tiene varias limitaciones:
Se necesita mucho tiempo de administración para mantener las tablas importantes en los servidores, esto se ve reflejado aún más en las grandes redes lo que plantea problemas de recursos humanos, necesarios para el mantenimiento de las tablas de búsqueda y de capacidad por parte del hardware que aloja la parte del servidor del protocolo RARP.
El protocolo RARP permite que varios servidores respondan a solicitudes, pero no prevé mecanismos que garanticen que todos los servidores puedan responder, ni que respondan en forma idéntica, por lo que, en este tipo de arquitectura, no podemos confiar en que un servidor RARP sepa si una dirección MAC se puede conectar con una dirección IP, porque otros servidores ARP pueden tener una respuesta diferente.
Otra limitación del protocolo RARP es que un servidor sólo puede servir a una LAN.
Para solucionar los dos primeros problemas de administración, el protocolo RARP se puede remplazar por el protocolo DRARP, que es su versión dinámica.
**Protocolo IGMP**
El protocolo de red IGMP (Protocolo de administración de grupos de Internet (IGMP)) se utiliza para intercambiar información acerca del estado de pertenencia entre enrutadores IP que admiten la multidifusión y miembros de grupos de multidifusión. Los hosts miembros individuales informan acerca de la pertenencia de hosts al grupo de multidifusión y los enrutadores de multidifusión sondean periódicamente el estado de la pertenencia.
Además de definir las extensiones de direcciones y hosts para la compatibilidad de los hosts IP con multidifusión, esta RFC también define la versión 1 del Protocolo de administración de grupos de Internet (IGMP). RFC 2236, "Internet Group Management Protocolo (IGMP), versión 2" (Protocolo de administración de grupos de Internet (IGMP), versión 2) define la versión 2 de IGMP. Ambas versiones de IGMP proporcionan un protocolo para intercambiar y actualizar información acerca de la pertenencia de hosts a grupos de multidifusión específicos. Además, la familia Windows Server 2003 admite IGMP versión 3, descrito en el borrador Internet "Internet Group Management Protocolo, versión 3" (Protocolo de administración de grupos de Internet, versión 3). Mediante IGPM versión 3, los hosts pueden especificar su interés en recibir tráfico de multidifusión de los orígenes especificados o de todos los orígenes a excepción de un conjunto específico de orígenes. La versión mas usada es la 2.
*Capa de transporte*
La principal tarea de la capa de transporte es proporcionar la comunicación entre un programa de aplicación y otro, (este tipo de comunicación se conoce frecuentemente como comunicación punto a punto) el problema es identificar estas aplicaciones, de hecho, según el equipo y su sistema operativo, la aplicación puede ser un programa, una tarea, un proceso, etc. Además, el nombre de la aplicación puede variar de un sistema a otro sistema, por ello, se ha implementado un sistema de numeración para poder asociar un tipo de aplicación con un tipo de datos, estos identificadores se le conocen como puertos.
Además esta capa regula el flujo de información, también puede proporcionar un transporte confiable, asegurando que los datos lleguen sin errores y en secuencia, para hacer esto, el software de protocolo de transporte tiene el lado de recepción enviando acuses de recibo de retorno y la parte de envío retransmitiendo los paquetes perdidos.
El software de transporte divide el flujo de datos que se está enviando en pequeños fragmentos (por lo general conocidos como paquetes) y pasa cada paquete, con una dirección de destino, hacia la siguiente capa de transmisión, aun cuando en el esquema anterior se utiliza un solo bloque para representar la capa de aplicación, una computadora de propósito general puede tener varios programas de aplicación accesando la red de redes al mismo tiempo.
La capa de transporte debe aceptar datos desde varios programas de usuario y enviarlos a la capa del siguiente nivel, para hacer esto, se añade información adicional a cada paquete, incluyendo códigos que identifican qué programa de aplicación envía y qué programa debe recibir, así como una suma de verificación para verificar que el paquete ha llegado intacto y utiliza el código de destino para identificar el programa de aplicación en el que se debe entregar.
La capa de transporte contiene dos protocolos que permiten que dos aplicaciones puedan intercambiar datos independientemente del tipo de red (es decir, independientemente de las capas inferiores). Estos dos protocolos son los siguientes:
**Protocolo TCP**
TCP, significa Protocolo de Control de Transmisión, en el nivel de aplicación, posibilita la administración de datos que vienen del nivel más bajo del modelo, o van hacia él, (es decir, el protocolo IP). Cuando se proporcionan los datos al protocolo IP, los agrupa en datagramas IP, fijando el campo del protocolo en 6 (para que sepa con anticipación que el protocolo es TCP).
TCP es un protocolo orientado a conexión, es decir, que permite que dos máquinas que están comunicadas controlen el estado de la transmisión.
Las principales características del protocolo TCP son las siguientes:
• Permite colocar los datagramas nuevamente en orden cuando vienen del protocolo IP.
• Permite que el monitoreo del flujo de los datos y así evitar la saturación de la red.
• Permite que los datos se formen en segmentos de longitud variada para "entregarlos" al protocolo IP.
• Permite multiplexar los datos, es decir, que la información que viene de diferentes fuentes en la misma línea pueda circular simultáneamente.
• Por último, permite comenzar y finalizar la comunicación amablemente.
Objetivos de TCP:
• Con el uso del protocolo TCP, las aplicaciones pueden comunicarse en forma segura (gracias al sistema de acuse de recibo del protocolo TCP) independientemente de las capas inferiores. Esto significa que los routers (que funcionan en la capa de Internet) sólo tienen que enviar los datos en forma de datagramas, sin preocuparse con el monitoreo de datos porque esta función la cumple la capa de transporte (o más específicamente el protocolo TCP).
• Durante una comunicación usando el protocolo TCP, las dos máquinas deben establecer una conexión. La máquina emisora (la que solicita la conexión) se llama cliente, y la máquina receptora se llama servidor. Por eso es que decimos que estamos en un entorno Cliente-Servidor.
Las máquinas de dicho entorno se comunican en modo en línea, es decir, que la comunicación se realiza en ambas direcciones.
• Para posibilitar la comunicación y que funcionen bien todos los controles que la acompañan, los datos se agrupan; es decir, que se agrega un encabezado a los paquetes de datos que permitirán sincronizar las transmisiones y garantizar su recepción.
• Otra función del TCP es la capacidad de controlar la velocidad de los datos usando su capacidad para emitir mensajes de tamaño variable. Estos mensajes se llaman segmentos.
**Protocolo UDP**
El protocolo UDP, Protocolo de datagrama de usuario, proporciona una comunicación muy sencilla entre las aplicaciones de dos ordenadores. Al igual que el protocolo IP, UDP no está orientado a conexión, es decir, no se establece una conexión previa con el otro extremo para transmitir un mensaje UDP. Los mensajes se envían sin más y éstos pueden duplicarse o llegar desordenados al destino, perderse o llegar dañados, por lo que no es fiable por lo que las aplicaciones, deberá programarse teniendo en cuenta que la información puede no llegar de forma correcta.
UDP utiliza el protocolo IP para transportar sus mensajes, no añade ninguna mejora en la calidad de la transferencia aunque si incorpora los puertos origen y destino en su formato de mensaje.
*Capa de aplicación:
La capa de aplicación se encuentra en la parte superior de las capas del protocolo TCP/IP. Contiene las aplicaciones de red que permiten la comunicación mediante las capas inferiores, por lo tanto, el software en esta capa se comunica mediante uno o dos protocolos de la capa inferior (la capa de transporte), es decir, TCP o UDP, (nombrados anteriormente), cada programa de aplicación selecciona el tipo de transporte necesario, el cual puede ser una secuencia de mensajes individuales o un flujo continuo de octetos, el programa de aplicación pasa los datos en la forma requerida hacia el nivel de transporte para su entrega.
Existen diferentes tipos de aplicaciones para esta capa, pero la mayoría son servicios de red o aplicaciones brindadas al usuario para proporcionar la interfaz con el sistema operativo. Se pueden clasificar según los servicios que brindan:
• servicios de administración de archivos e impresión (transferencia);
• servicios de conexión a la red;
• servicios de conexión remota;
• diversas utilidades de Internet.