Articulo de referencia

Reconocimiento (redes de datos)

En redes de datos , telecomunicaciones y buses de computadoras , un acuse de recibo [ 1 ] [ 2 ] ( ACK ) o acuse de recibo [ 3 ] [ 4 ] es una señal que se transmite entre proceso...

En redes de datos , telecomunicaciones y buses de computadoras , un acuse de recibo [ 1 ] [ 2 ] ( ACK ) o acuse de recibo [ 3 ] [ 4 ] es una señal que se transmite entre procesos , computadoras o dispositivos que se comunican para indicar el acuse de recibo o la recepción de un mensaje, como parte de un protocolo de comunicación . De manera similar, un acuse de recibo negativo ( NAK o NACK [ 5 ] ) es una señal que se envía para rechazar un mensaje recibido previamente o para indicar algún tipo de error. Los acuses de recibo y los acuses de recibo negativos informan al emisor del estado del receptor para que este pueda ajustar su propio estado en consecuencia.

Tipos de señales de confirmación

El punto de código ASCII para ACK es 0x06 (binario 0000 0110). Por convención, un dispositivo receptor envía un ACK para indicar que recibió un mensaje correctamente. ASCII también proporciona un punto de código NAK (0x15, binario 0001 0101), que se puede usar para indicar que el dispositivo receptor no puede o no quiere procesar el mensaje. [ 6 ] Unicode proporciona símbolos visibles para estos caracteres ASCII, U+2406 (␆) y U+2415 (␕).

Los símbolos ACK y NAK también pueden adoptar la forma de bits individuales o campos de bits, dependiendo de la definición de la capa de enlace de datos del protocolo , o incluso como un cable dedicado en la capa física .

Uso del protocolo

Muchos protocolos se basan en el acuse de recibo, lo que significa que confirman positivamente la recepción de los mensajes. El Protocolo de Control de Transmisión (TCP) de Internet es un ejemplo de protocolo basado en el acuse de recibo. Cuando las computadoras se comunican a través de TCP, los paquetes recibidos se confirman enviando un paquete de respuesta con el bit ACK activado. [ 7 ]

Si bien algunos protocolos envían una confirmación por cada paquete recibido, otros, como TCP y ZMODEM , permiten que se transmitan muchos paquetes antes de enviar una confirmación para el conjunto de ellos, un procedimiento necesario para llenar enlaces con un alto producto ancho de banda-retardo con una gran cantidad de bytes en tránsito.

Algunos protocolos se basan en NAK, lo que significa que solo responden a los mensajes si hay un problema. Algunos ejemplos incluyen muchos protocolos de multidifusión confiables que envían un NAK cuando el receptor detecta paquetes faltantes [ 8 ] o protocolos que utilizan sumas de verificación para verificar la integridad de la carga útil y el encabezado .

Otros protocolos utilizan tanto NAK como ACK. La comunicación binaria síncrona (Bisync) y la velocidad de enlace adaptativa (para Ethernet de bajo consumo energético ) son algunos ejemplos.

La función de acuse de recibo se utiliza en la función de solicitud de repetición automática (ARQ). Los paquetes de acuse de recibo se numeran en función de los paquetes recibidos y se envían al transmisor. Esto permite al transmisor evitar la sobrecarga o la falta de paquetes en el receptor y detectar cualquier paquete perdido .

En IBM Binary Synchronous Communications , el NAK se utiliza para indicar que se detectó un error de transmisión en el bloque recibido previamente y que el receptor está listo para aceptar la retransmisión de dicho bloque. Bisync no utiliza un único carácter ACK, sino que dispone de dos secuencias de control para el acuse de recibo alterno de bloques pares e impares.

Las metodologías basadas en ACK y NAK no son los únicos paradigmas de diseño de protocolos. Algunos protocolos, como RC-5 , el Protocolo de Datagramas de Usuario (UDP) y X10 , realizan transmisiones ciegas sin acuse de recibo, transmitiendo a menudo el mismo mensaje varias veces con la esperanza de que al menos una copia llegue a su destino.

Reconocimiento del hardware

Algunos buses de computadora tienen un cable de reconocimiento dedicado en el bus de control que se utiliza para reconocer las operaciones del bus: DACK utilizado para ISA DMA ; DATACK utilizado en el STEbus , el pin de reconocimiento de transferencia de datos del Motorola 68000 que inspiró el título de DTACK Grounded , etc. Algunos buses de computadora no esperan el reconocimiento de cada transmisión; vea, por ejemplo, escritura publicada .

El bus serie I²C tiene una ranura de tiempo para un bit de acuse de recibo después de cada byte. [ 9 ] [ 10 ]

Véase también

Referencias

  1. DD Clark (julio de 1982). Estrategia de ventana y acuse de recibo en TCP . IETF . doi : 10.17487/RFC0813 . RFC 813 .Histórico. Obsoleto según RFC 7805 . 
  2. S. Floyd; J. Mahdavi; M. Mathis; M. Podolsky (julio de 2000). Una extensión de la opción de acuse de recibo selectivo (SACK) para TCP . Grupo de trabajo de transporte y servicios. doi : 10.17487/RFC2883 . RFC 2883 .Norma propuesta.
  3. S. Floyd; J. Mahdavi; M. Mathis; A. Romanow (octubre de 1996). Opciones de acuse de recibo selectivo de TCP . Grupo de trabajo IETF TCP Large Windows. doi : 10.17487/RFC2018 . RFC 2018 .Norma propuesta. Sustituye a RFC 1072 . 
  4. E. Blanton; M. Allman; L. Wang; I. Jarvinen; M. Kojo; Y. Nishida (agosto de 2012). Un algoritmo conservador de recuperación de pérdidas basado en acuse de recibo selectivo (SACK) para TCP . Mantenimiento de TCP y extensiones menores. doi : 10.17487/RFC6675 . RFC 6675 .Norma propuesta. Sustituye a RFC 3517 . 
  5. Bloques de construcción de multidifusión confiable orientada al acuse de recibo negativo (NACK) (NORM) . IETF . Noviembre de 2004. doi : 10.17487/RFC3941 . RFC 3941 .
  6. "Caracteres de control en ASCII y Unicode" . Consultado el 4 de marzo de 2020 .
  7. Postel, Jon (septiembre de 1981). Protocolo de control de transmisión . IETF . doi : 10.17487/RFC0793 . RFC 793 .
  8. Diot, C.; Dabbous, W.; Crowcroft, J. (abril de 1997). "Comunicación multipunto: una revisión de protocolos, funciones y mecanismos" (PDF) . IEEE Journal on Selected Areas in Communications . 15 (3): 277– 290. doi : 10.1109/49.564128 .
  9. "Especificación del bus I2C" .
  10. "Comprendiendo el bus I2C" (PDF) . Figura 8.
  • Pedro Rukavina. "ACK contra NAK" . Consultado el 4 de marzo de 2020 .