Anatomía de los paquetes TCP/IP: UDP
Introducción
Una de las características clave de las redes es la agrupación de datos en paquetes. Estos paquetes viajan por el edificio o por todo el mundo y son desagrupados por otro nodo en la red. Los administradores e ingenieros que solucionan problemas y analizan redes a veces necesitan utilizar un analizador de protocolos para abrir estos paquetes y examinar de cerca su contenido para ver qué está sucediendo en la red.
![Anatomía de los paquetes TCP/IP: UDP - Video](https://i.ytimg.com/vi/YwKJ7x3cfNc/hqdefault.jpg)
Tipos de paquetes TCP/IP
En este artículo, examinaremos la anatomía de los tres tipos más comunes de paquetes TCP/IP que viajan a través de la mayoría de los cables (o fibra óptica, en caso de tener cable de fibra). También discutiremos algunos errores comunes en los paquetes y sus causas típicas.
Usuario Datagram Protocol (UDP)
El Protocolo de Datagramas de Usuario (UDP, por sus siglas en inglés) es un protocolo sin conexión que no contiene funciones de confiabilidad, control de flujo o recuperación de errores. Debido a su simplicidad, los encabezados de UDP contienen menos bytes y consumen menos ancho de banda de red que TCP. UDP es útil en situaciones donde los mecanismos de confiabilidad de TCP no son necesarios, como en casos en los que un protocolo de capa superior podría proporcionar control de flujo y errores. UDP proporciona a los usuarios servicios similares a los de TCP. A diferencia de TCP, los paquetes UDP pueden descartarse antes de llegar a su destino. UDP es útil cuando TCP sería demasiado complejo, lento o innecesario.
UDP es el protocolo de transporte para varios protocolos de capa de aplicación conocidos, incluyendo Network File System (NFS - puertos UDP 1021/1022), Simple Network Management Protocol (SNMP - puertos UDP 161/162), Domain Name System (DNS - puerto UDP 53) y Trivial File Transfer Protocol (TFTP - puerto UDP 69).
La figura A muestra el formato del paquete UDP.
El formato del paquete UDP consta de cuatro campos:
- Campos de puerto de origen y destino (16 bits cada uno) identifican los puntos finales de la conexión.
- El campo de longitud (16 bits) especifica la longitud del encabezado y los datos.
- El campo de suma de comprobación (16 bits) permite verificar la integridad del paquete (opcional).
Protocolo de Control de Transmisión (TCP)
TCP es un protocolo orientado a la conexión de la Capa 4 que brinda un servicio de flujo completo dúplex y controlado por acuse de recibo a los protocolos de capa superior. Mueve los datos en una secuencia continua de bytes no estructurados. Los números de secuencia identifican los bytes dentro de esa secuencia. TCP también puede admitir numerosas conversaciones simultáneas de capa superior.
La figura B muestra el formato del paquete TCP.
Figura B
![](https://newsmatic.com.ar/wp-content/uploads/como-utilizar-la-utilidad-netstat-para-solucionar-problemas-de-conectividad-tcp-ip-en-windows-150x150.jpg)
Paquete TCP
El formato del paquete TCP consta de varios campos:
- Campos de puerto de origen y destino (16 bits cada uno) identifican los puntos finales de la conexión.
- El campo de número de secuencia (32 bits) especifica el número asignado al primer byte de datos en el mensaje actual.
- El campo de número de acuse de recibo (32 bits) contiene el valor del próximo número de secuencia que el remitente del segmento espera recibir, si el indicador de acuse de recibo (ACK) está configurado. Es importante tener en cuenta que el número de secuencia se refiere al flujo en la misma dirección que el segmento, mientras que el número de acuse de recibo se refiere al flujo en la dirección opuesta al segmento.
- El campo de longitud de datos (a.k.a. Longitud del encabezado) (longitud variable) indica cuántas palabras de 32 bits contiene el encabezado TCP. Esta información es necesaria porque el campo de opciones tiene una longitud variable, por lo que la longitud del encabezado también es variable.
- El campo reservado (6 bits) debe ser cero. Esto es para uso futuro.
- El campo de indicadores (6 bits) contiene varios indicadores: URG - indica que se ha colocado algún dato urgente, ACK - indica que el número de acuse de recibo es válido, PSH - indica que los datos deben ser pasados a la aplicación lo antes posible, RST - restablece la conexión, SYN - sincroniza los números de secuencia para iniciar una conexión y FIN - significa que el remitente del indicador ha terminado de enviar datos.
- El campo de ventana (16 bits) especifica el tamaño de la ventana de recepción del remitente (es decir, el espacio de almacenamiento disponible para recibir datos entrantes).
- El campo de suma de comprobación (16 bits) indica si el encabezado se dañó en tránsito.
- El campo de puntero urgente (16 bits) apunta al primer byte de datos urgente en el paquete.
- El campo de opciones (longitud variable) especifica varias opciones de TCP.
- El campo de datos (longitud variable) contiene información de capa superior.
Protocolo de Internet (IP)
IP es el protocolo de Capa 3 que proporciona fragmentación y reensamblaje de datagramas y reporte de errores. Junto con TCP, IP representa el núcleo del conjunto de protocolos de Internet. La figura C muestra el formato del paquete IP.
Figura C
![](https://newsmatic.com.ar/wp-content/uploads/cual-es-el-mejor-protocolo-de-enrutamiento-para-su-red-analisis-y-recomendaciones-150x150.jpg)
Paquete IP
El formato del paquete IP consta de varios campos:
- El campo de versión (4 bits) indica la versión de IP que se está utilizando actualmente.
- El campo de longitud del encabezado IP (IHL) (4 bits) indica cuántas palabras de 32 bits hay en el encabezado IP.
- El campo de tipo de servicio (8 bits) especifica cómo un protocolo de capa superior particular desea que se maneje el datagrama actual. Los datagramas pueden asignarse varios niveles de importancia a través de este campo.
- El campo de longitud total (16 bits) especifica la longitud total del paquete IP, incluidos los datos y el encabezado, en bytes.
- El campo de identificación (16 bits) contiene un número entero que identifica el datagrama actual. Este campo se utiliza para ayudar a reconstruir los fragmentos del datagrama.
- El campo de indicadores (4 bits; uno no se utiliza) controla si los enrutadores tienen permitido fragmentar un paquete e indica las partes de un paquete al receptor.
- El campo de tiempo de vida (8 bits) mantiene un contador que disminuye gradualmente hasta cero, momento en el cual se descarta el datagrama. Esto evita que los paquetes recorran infinitamente.
- El campo de protocolo (8 bits) indica qué protocolo de capa superior recibe los paquetes entrantes después de completar el procesamiento de IP.
- El campo de suma de comprobación del encabezado (16 bits) ayuda a garantizar la integridad del encabezado IP.
- El campo de dirección de origen (32 bits) especifica el nodo de envío.
- El campo de dirección de destino (32 bits) especifica el nodo de recepción.
- El campo de opciones (32 bits) permite a IP admitir varias opciones, como la seguridad.
- El campo de datos (32 bits) contiene información de capa superior.
Problemas comunes en los paquetes
Rastrear los problemas de rendimiento de la red puede ser demorado y extremadamente complicado. Todos estos paquetes pueden encontrarse con una variedad de problemas cuando se convierten en tramas y se transmiten a través de su red. Veamos algunas de las razones más comunes por las que no se entrega su información.
Colisiones fuera de ventana (tardías)
Las colisiones fuera de ventana ocurren cuando una estación recibe una señal de colisión mientras aún está transmitiendo, pero más de 51.2 microsegundos (el retardo máximo de propagación de Ethernet) después de comenzar la transmisión.
Causa: Hay dos condiciones que causan este tipo de error. O la longitud física del segmento de red excede las especificaciones IEEE 802.3 (100 metros) o un nodo en la red está transmitiendo sin escuchar primero el sentido del portador (y comenzando su transmisión ilegal más de 51.2 microsegundos después de que el primer nodo comenzó a transmitir).
Gigantes
Los gigantes son paquetes que son más largos que el tamaño máximo de Ethernet de 1,518 bytes (excluyendo preámbulo).
![](https://newsmatic.com.ar/wp-content/uploads/que-es-bluetooth-y-como-funciona-150x150.png)
Causa: Los paquetes gigantes suelen ocurrir cuando tienes un nodo defectuoso en tu red, lo que indica una tarjeta de red defectuosa. Es decir, un nodo que transmite continuamente o transmite de manera incorrecta durante ráfagas cortas, probablemente debido a un transmisor defectuoso en la tarjeta de interfaz de red (NIC). Los gigantes también pueden ser causados por paquetes que se corrompen al transmitirse, ya sea por la adición de señales de basura o por la corrupción de los bits que indican el tamaño del marco.
Desalineados
Los paquetes desalineados son aquellos que contienen cualquier unidad de bits que sea menor que un byte.
Causa: Los paquetes desalineados pueden resultar de un problema de formación de paquetes de la capa de enlace de datos o de algún problema en el medio de transmisión (cableado) que corrompa o pierda datos. También pueden resultar de paquetes que pasan por más de dos transceptores de múltiples puertos en cascada (un diseño de red que no cumple con las especificaciones de Ethernet). Los errores de paquete de desalineación típicamente también tienen errores de CRC.
CRC
Los errores de comprobación de redundancia cíclica (CRC) ocurren cuando los paquetes se dañan de alguna manera durante el tránsito. Cuando se transmite cada paquete, la capa de enlace de datos del dispositivo transmisor calcula un valor de secuencia de comprobación de trama (FCS, por sus siglas en inglés) según el contenido del paquete. La estación receptora realiza el mismo cálculo. Si los valores de FCS difieren, se asume que el paquete se ha corrompido y se cuenta como un error de CRC.
Causa: Los errores de CRC pueden resultar de un problema de hardware de la capa de enlace de datos que causa un cálculo inexacto del valor FCS o de otro problema de transmisión que ha corrompido los datos originales.
Runts
Un paquete runt es uno que es más pequeño que el tamaño mínimo de trama Ethernet de 64 bytes (excluyendo preámbulo). Este tamaño mínimo está relacionado con el tiempo máximo de propagación de un segmento de red Ethernet (51.2 microsegundos), y aproximadamente toma 51.2 microsegundos transmitir 64 bytes de datos. Por lo tanto, cada nodo en el segmento debería tener en cuenta que otro nodo está transmitiendo antes de que se complete la transmisión, lo que permite una detección de colisiones más precisa.
![](https://newsmatic.com.ar/wp-content/uploads/solucionando-los-efectos-de-la-despromocion-fallida-del-controlador-de-dominio-imagen-1-150x107.webp)
Causa: Los runts a veces pueden ser el resultado de colisiones, por lo que pueden ser el subproducto natural de un segmento Ethernet ocupado. Sin embargo, también pueden indicar un problema con el hardware (formación de paquetes), la transmisión (datos corruptos) o el diseño de la red (más de cuatro repetidores en cascada).
Conclusión
Si su red sufre problemas de rendimiento y ha llegado a un callejón sin salida tratando de encontrar una solución, intente abrir un analizador de protocolos, también conocido como un rastreador de paquetes, y comience a examinar el tráfico en su red. Con los conocimientos que ha adquirido aquí, debería poder formular algunas ideas sobre cuál podría ser el problema.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Redes, allí encontraras muchos artículos similares a Anatomía de los paquetes TCP/IP: UDP , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados