Opciones SACK y Timestamps en TCP: funcionamiento y amenazas

InformáticaActualizado el 3,37 KB

Resumen

El documento explica dos opciones de TCP orientadas a mejorar la transmisión: SACK, que permite confirmar bloques de datos recibidos aunque haya huecos, y Timestamps, que sirven para calcular el RTT y ajustar los plazos de retransmisión. Incluye tipos, tamaños y campos de cada opción. Además, presenta una clasificación genérica de las amenazas en comunicaciones de red, entre ellas la interrupción y la interceptación.

Puntos clave

  • La opción SACK-Permitted (tipo 4, 2 bytes) se envía en segmentos con el indicador SYN activo para indicar que se puede usar SACK.
  • La opción SACK (tipo 5) informa de bloques recibidos correctamente mediante pares de números de secuencia: inicio y fin inmediatamente posterior al último byte.
  • El tamaño de la opción SACK es variable: 10, 18, 26 o 34 bytes según se reporten 1, 2, 3 o 4 bloques no contiguos.
  • La opción Timestamps (tipo 8, 10 bytes) incluye el Valor de TS y la Respuesta de Eco de TS, y permite calcular el RTT comparando la marca devuelta con la hora local.
  • Las amenazas en comunicaciones de red se clasifican en cuatro grandes grupos; el documento describe la interrupción (afecta a la disponibilidad) y la interceptación (afecta a la confidencialidad).

Ponte a prueba

Opción SACK Permitido (SACK-Permitted)

Se envía en los segmentos con el indicador SYN activo para indicar que el extremo de la conexión TCP puede recibir e interpretar la opción SACK durante la transmisión de datos.

Detalles de la Opción SACK Permitido

  • Tipo: 4
  • Tamaño: 2 bytes

Opción SACK (Selective Acknowledgment)

Se envía según sea necesario en segmentos durante la conexión, siempre que el indicador ACK esté activo. Permite al receptor informar al emisor sobre bloques de datos específicos que se han recibido correctamente, incluso si hay huecos.

Detalles de la Opción SACK

  • Tipo: 5
  • Tamaño: Variable. Depende del número de bloques reportados:
    • 10 bytes (para 1 bloque no contiguo)
    • 18 bytes (para 2 bloques no contiguos)
    • 26 bytes (para 3 bloques no contiguos)
    • 34 bytes (para 4 bloques no contiguos)
  • Campos por bloque: Contiene dos campos de 4 bytes por cada bloque que se confirma:
    • Parte Izquierda del Bloque n: Número de secuencia del primer byte del bloque.
    • Parte Derecha del Bloque n: Número de secuencia inmediatamente posterior al último byte del bloque.

Marcas de Tiempo TCP (Timestamps)

Para establecer un plazo de retransmisión adecuado en los segmentos TCP enviados, TCP monitoriza continuamente el tiempo de ida y vuelta (RTT, Round Trip Time). Normalmente, TCP calcula el RTT para un segmento y su confirmación (ACK) por cada ventana completa de datos transmitida.

La opción de marcas de tiempo inserta un valor temporal, basado en el reloj local, en el segmento TCP saliente. La confirmación (ACK) de los datos de ese segmento devuelve dicha marca de tiempo. El RTT se puede calcular entonces comparando la marca de tiempo devuelta en la confirmación con la hora local (según el reloj local) en que se recibe esa confirmación.

Detalles de la Opción Timestamps

  • Tipo: 8
  • Tamaño: 10 bytes
  • Campos:
    • Valor de TS (Timestamp Value - 4 bytes)
    • Respuesta de Eco de TS (Timestamp Echo Reply - 4 bytes)

Valor de TS (Timestamp Value)

Indica el valor de la marca de tiempo para este segmento TCP. Este valor se obtiene de un reloj interno, que puede o no estar directamente relacionado con el reloj de tiempo real. El valor de TS generalmente aumenta monotónicamente con el tiempo.

Respuesta de Eco de TS (Timestamp Echo Reply)

Se incluye en los segmentos de confirmación (con el indicador ACK activo). Contiene el valor del campo 'Valor de TS' del segmento que se está confirmando. Es decir, refleja ('hace eco') el valor de la marca de tiempo del segmento recibido.

Amenazas Genéricas en Comunicaciones

De forma genérica, las amenazas en las comunicaciones de red se pueden clasificar en cuatro grandes grupos:

Interrupción

Un recurso (objeto, servicio del sistema o datos) en una comunicación se pierde, queda inutilizable o no disponible. Afecta a la disponibilidad.

Interceptación

Un ente no autorizado consigue acceder a un recurso determinado. Afecta a la confidencialidad.

Descargar

PDF Word HTML

Preguntas frecuentes

¿Para qué sirve la opción SACK en TCP?

Permite al receptor informar al emisor sobre bloques de datos recibidos correctamente, incluso si existen huecos en la secuencia. Así el emisor solo retransmite los datos que realmente faltan.

¿Cómo calcula TCP el RTT con la opción Timestamps?

El emisor inserta un valor temporal en el segmento saliente y, al recibir el ACK, compara la marca de tiempo devuelta en la confirmación con la hora local de recepción. La diferencia permite estimar el tiempo de ida y vuelta.

¿Qué diferencia hay entre interrupción e interceptación?

La interrupción hace que un recurso se pierda o quede no disponible, afectando a la disponibilidad. La interceptación permite a un ente no autorizado acceder a un recurso, afectando a la confidencialidad.

Ponte a prueba

Tarjetas de repaso

Pulsa una tarjeta para ver la respuesta.

Test

1. ¿En qué segmentos se envía la opción SACK-Permitted?
2. ¿Cuál es el tamaño de la opción SACK con 2 bloques no contiguos?
3. ¿Qué tipo de opción es Timestamps en TCP?
4. ¿Qué campo de la opción Timestamps contiene el valor del campo TS del segmento confirmado?
5. ¿Qué amenaza afecta a la confidencialidad según el documento?
6. ¿Qué sucede en una interrupción?

Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.