El protocolo de control de enlace de datos de alto nivel (HDLC) es un protocolo de comunicación utilizado para transmitir datos entre dispositivos en telecomunicaciones y redes . Desarrollado por la Organización Internacional de Normalización (ISO), está definido en la norma ISO/IEC 13239:2002.
HDLC garantiza una transferencia de datos fiable, permitiendo que un dispositivo entienda los datos enviados por otro. Puede funcionar con o sin conexión continua entre dispositivos, lo que la hace versátil para diversas configuraciones de red.
Originalmente, HDLC se utilizaba en redes multidispositivo, donde un dispositivo actuaba como maestro y los demás como esclavos, mediante modos como el Modo de Respuesta Normal (NRM) y el Modo de Respuesta Asíncrona (ARM). Actualmente, estos modos se utilizan con poca frecuencia. En la actualidad, HDLC se emplea principalmente en conexiones punto a punto , como entre enrutadores o interfaces de red , utilizando un modo denominado Modo Equilibrado Asíncrono (ABM).
Historia
HDLC se basa en el protocolo SDLC de IBM , que es el protocolo de capa 2 para la arquitectura de red de sistemas (SNA) de IBM. Fue extendido y estandarizado por la UIT como LAP (Link Access Procedure), mientras que ANSI denominó a su versión esencialmente idéntica ADCCP .
La especificación HDLC no define la semántica completa de los campos de trama. Esto permite que se deriven otros estándares totalmente compatibles, y desde entonces han aparecido innumerables derivados en otros estándares. Se incorporó a la pila de protocolos X.25 como LAPB , al protocolo V.42 como LAPM , a la pila de protocolos Frame Relay como LAPF y a la pila de protocolos ISDN como LAPD.
Las normas ISO originales para HDLC son las siguientes:
- ISO 3309-1979 – Estructura del bastidor
- ISO 4335-1979 – Elementos de procedimiento
- ISO 6159-1980 – Clases de procedimientos desequilibradas
- ISO 6256-1981 – Clases de procedimiento equilibradas
La norma ISO/IEC 13239:2002, la norma vigente, sustituyó a todas estas especificaciones.
HDLC fue la inspiración para el protocolo IEEE 802.2 LLC , y es la base del mecanismo de trama utilizado con PPP en líneas síncronas, como las que utilizan muchos servidores para conectarse a una WAN , generalmente Internet .
Se utiliza una versión similar como canal de control para las líneas telefónicas multicanal E-carrier (E1) y SONET . Cisco HDLC utiliza técnicas de tramado HDLC de bajo nivel, pero añade un campo de protocolo a la cabecera HDLC estándar.
Enmarcado
Las tramas HDLC se pueden transmitir a través de enlaces de comunicación serie síncronos o asíncronos . Estos enlaces no cuentan con un mecanismo para marcar el inicio o el final de una trama, por lo que es necesario identificarlos. Esto se logra utilizando una secuencia única de bits como delimitador de trama , o indicador , y codificando los datos para garantizar que dicha secuencia nunca se encuentre dentro de una trama. Cada trama comienza y termina con un delimitador de trama. Un delimitador de trama al final de una trama también puede marcar el inicio de la siguiente.
Tanto en los enlaces síncronos como en los asíncronos, la secuencia de indicadores es binaria "01111110" o hexadecimal 0x7E, pero los detalles son bastante diferentes.
Encuadre síncrono
Dado que una secuencia de bandera consta de seis bits 1 consecutivos, los demás datos se codifican para garantizar que nunca contengan más de cinco bits 1 seguidos. Esto se logra mediante el relleno de bits : cada vez que aparecen cinco bits 1 consecutivos en los datos transmitidos, la transmisión se pausa y se transmite un bit 0.
El dispositivo receptor sabe que esto está sucediendo y, tras detectar cinco bits 1 consecutivos, se elimina el siguiente bit 0 de los datos recibidos. Si, en cambio, el sexto bit es 1, esto se interpreta como una señal (si el séptimo bit es 0) o como un error (si el séptimo bit es 1). En este último caso, se interrumpe el procedimiento de recepción de la trama y se reiniciará cuando se detecte una señal nuevamente.
Este relleno de bits cumple una segunda función: garantizar un número suficiente de transiciones de señal. En los enlaces síncronos, los datos se codifican en NRZI , de modo que un bit 0 se transmite como un cambio en la señal de la línea, y un bit 1 se envía como ausencia de cambio. Así, cada bit 0 permite que el módem receptor sincronice su reloj mediante un bucle de enganche de fase . Si se producen demasiados bits 1 consecutivos, el receptor puede perder la cuenta. El relleno de bits garantiza un mínimo de una transición cada seis tiempos de bit durante la transmisión de datos, y una transición cada siete tiempos de bit durante la transmisión de una bandera.
Cuando no se transmiten tramas en un enlace síncrono simplex o dúplex completo, se transmite continuamente un delimitador de trama en el enlace. Esto genera una de dos formas de onda continuas, dependiendo del estado inicial:

La especificación HDLC permite que el bit 0 al final de un delimitador de trama se comparta con el inicio del siguiente delimitador de trama, es decir, "011111101111110". Algunos dispositivos no admiten esta función.
En la comunicación semidúplex o multipunto, donde varios transmisores comparten una línea, un receptor en la línea verá bits 1 inactivos de forma continua en el período entre tramas cuando ningún transmisor esté activo.
HDLC transmite bytes de datos con el bit menos significativo primero (que no debe confundirse con el orden little-endian , que se refiere al orden de los bytes dentro de un campo multibyte).
encuadre asíncrono
Cuando se utiliza comunicación serial asíncrona, como los puertos seriales RS-232 estándar , el relleno de bits de estilo síncrono es inapropiado por varias razones:
- No es necesario el relleno de bits para asegurar un número adecuado de transiciones, ya que los bits de inicio y parada lo proporcionan.
- Debido a que los datos están codificados en NRZ para su transmisión, en lugar de estar codificados en NRZI, la forma de onda codificada es diferente.
- RS-232 envía bits en grupos de 8, lo que hace que sumar bits individuales sea muy complicado, y
- Por la misma razón, solo es necesario codificar especialmente los bytes de bandera ; no es necesario preocuparse por el patrón de bits que abarca varios bytes.
En cambio, el encuadre asíncrono utiliza la "transparencia de octeto de control", también llamada " relleno de bytes " u "relleno de octetos". El octeto límite de la trama es 01111110 (0x7E en notación hexadecimal ). Un " octeto de escape de control " tiene el valor 0x7D (secuencia de bits '10111110', ya que RS-232 transmite primero el bit menos significativo). Si alguno de estos dos octetos aparece en los datos transmitidos, se envía un octeto de escape, seguido del octeto de datos original con el bit 5 invertido. Por ejemplo, el byte 0x7E se transmitiría como 0x7D 0x5E ("10111110 01111010"). Otros valores de octeto reservados (como XON o XOFF ) pueden escaparse de la misma manera si es necesario.
La secuencia de aborto 0x7D 0x7E finaliza un paquete con una secuencia de bytes incompleta, lo que obliga al receptor a detectar un error. Esto permite abortar la transmisión del paquete sin que el receptor pueda interpretarlo como válido.
Estructura
El contenido de una trama HDLC se muestra en la siguiente tabla:
Tenga en cuenta que el indicador de fin de un fotograma puede ser (pero no necesariamente) el indicador de inicio del siguiente fotograma.
Los datos suelen enviarse en múltiplos de 8 bits, pero solo algunas variantes lo requieren; otras permiten, en teoría, alineaciones de datos en límites distintos a los de 8 bits.
La secuencia de verificación de trama (FCS) es un CRC-CCITT de 16 bits o un CRC-32 de 32 bits calculado sobre los campos de dirección, control e información. Proporciona un medio para que el receptor detecte errores que se hayan producido durante la transmisión de la trama, como bits perdidos, bits invertidos y bits extraños. Sin embargo, dado que los algoritmos utilizados para calcular la FCS hacen que la probabilidad de que ciertos tipos de errores de transmisión pasen desapercibidos aumente con la longitud de los datos que se verifican, la FCS puede limitar implícitamente el tamaño práctico de la trama.
Si el cálculo de la FCS del receptor no coincide con el del emisor, lo que indica que la trama contiene errores, el receptor puede enviar un paquete de acuse de recibo negativo al emisor o no enviar nada. Tras recibir un paquete de acuse de recibo negativo o agotar el tiempo de espera para recibir un paquete de acuse de recibo positivo, el emisor puede retransmitir la trama fallida.
El FCS se implementó debido a que muchos enlaces de comunicación iniciales presentaban una tasa de error de bits relativamente alta, y el FCS podía calcularse fácilmente mediante circuitos o software sencillos y rápidos. Actualmente, otros protocolos utilizan ampliamente esquemas de corrección de errores hacia adelante más eficaces .
Tipos de estaciones (computadoras) y modos de transferencia de datos
El Control de Enlace de Datos Síncrono ( SDLC ) se diseñó originalmente para conectar un ordenador con múltiples periféricos mediante un bus multidrop . El modo de respuesta normal original es un modo primario-secundario en el que el ordenador (o terminal primario ) autoriza a cada periférico ( terminal secundario ) a comunicarse por turnos. Dado que toda la comunicación se realiza hacia o desde el terminal primario, las tramas incluyen una única dirección: la del terminal secundario; al terminal primario no se le asigna ninguna dirección. Existe una distinción entre los comandos enviados por el primario al secundario y las respuestas enviadas por el secundario al primario, pero esto no se refleja en la codificación; los comandos y las respuestas son indistinguibles, salvo por la diferencia en la dirección de transmisión.
El modo de respuesta normal permite compartir el enlace entre el dispositivo secundario y el primario sin conflictos , ya que el primario autoriza a los secundarios a transmitir de uno en uno. También permite el funcionamiento a través de enlaces de comunicación semidúplex , siempre que el primario sea consciente de que no puede transmitir cuando ha autorizado a un secundario a hacerlo.
El modo de respuesta asíncrona es una adición de HDLC [ 1 ] para su uso en enlaces dúplex completos . Si bien conserva la distinción entre primario y secundario, permite que el secundario transmita en cualquier momento. Por lo tanto, debe existir algún otro mecanismo para garantizar que varios secundarios no intenten transmitir simultáneamente (o que solo uno lo haga).
El modo balanceado asíncrono añade el concepto de terminal combinado , que puede funcionar como terminal principal y secundaria. Desafortunadamente, este modo de operación presenta algunas particularidades en su implementación. Si bien la mayoría de las tramas enviadas no distinguen entre tramas de comando y de respuesta, algunas esenciales sí lo hacen (en particular, la mayoría de las tramas sin numerar y cualquier trama con el bit P/F activado). Además, es necesario examinar el campo de dirección de una trama recibida para determinar si contiene un comando (la dirección recibida es la nuestra) o una respuesta (la dirección recibida es la de la otra terminal).
Esto significa que el campo de dirección no es opcional, incluso en enlaces punto a punto donde no es necesario para desambiguar la identidad del interlocutor. Algunas variantes de HDLC amplían el campo de dirección para incluir tanto la dirección de origen como la de destino, o un bit explícito de comando/respuesta.
Operaciones y tipos de tramas de HDLC
Se pueden distinguir tres tipos fundamentales de tramas HDLC:
- Los marcos de información, o I-frames , transportan datos de usuario desde la capa de red . También pueden incluir información de control de flujo y errores integrada en los datos.
- Las tramas de supervisión, o tramas S , se utilizan para el control de flujo y de errores cuando el piggybacking es imposible o inapropiado, como cuando una estación no tiene datos para enviar. Las tramas S no contienen campos de información.
- Los marcos sin numerar, o marcos U , se utilizan para diversos fines, incluida la gestión de enlaces. Algunos marcos U contienen un campo de información, según su tipo.
Campo de control
El formato general del campo de control es:
También existen formatos extendidos (de dos bytes) de tramas I y S. De nuevo, el bit menos significativo (el que está más a la derecha en esta tabla) se envía primero.
Bit P/F
El bit Poll/Final es un bit único con dos nombres. Se denomina Poll cuando forma parte de un comando (establecido por la estación principal para obtener una respuesta de una estación secundaria) y Final cuando forma parte de una respuesta (establecido por la estación secundaria para indicar una respuesta o el final de la transmisión). En todos los demás casos, el bit está desactivado.
El bit se utiliza como un token que se intercambia entre las estaciones. Solo debe existir un token a la vez. La estación secundaria solo envía un mensaje final cuando ha recibido un mensaje de sondeo de la estación primaria. La estación primaria solo envía un mensaje de sondeo cuando ha recibido un mensaje final de la estación secundaria o después de un tiempo de espera que indica que el bit se ha perdido.
- En NRM, la posesión del token de sondeo también otorga al receptor secundario autorizado para transmitir. El receptor secundario activa el bit F en su última trama de respuesta para renunciar a la autorización de transmisión. (Esto equivale a la palabra "Cambio" en el procedimiento de voz por radio ).
- En los modos ARM y ABM, el bit P fuerza una respuesta. En estos modos, el secundario no necesita esperar a que se realice una consulta para transmitir, por lo que el último bit puede incluirse en la primera respuesta después de la consulta.
- Si no se recibe respuesta a un bit P en un período de tiempo razonable, la estación principal agota el tiempo de espera y vuelve a enviar P.
- El bit P/F es fundamental para el esquema básico de retransmisión de puntos de control necesario para implementar HDLC; todas las demás variantes (como la trama S REJ) son opcionales y solo sirven para aumentar la eficiencia. Cuando una estación recibe un bit P/F, puede asumir que cualquier trama que haya enviado antes de la última transmisión de dicho bit y que aún no haya sido confirmada no llegará, por lo que deberá retransmitirse.
Cuando se opera como una estación combinada, es importante mantener la distinción entre los bits P y F, ya que pueden existir dos ciclos de punto de control operando simultáneamente. El bit AP que llega en un comando de la estación remota no responde a nuestro bit P; solo lo hace un bit F que llega en una respuesta.
N(R), el número de secuencia de recepción
Tanto las tramas I como las S contienen un número de secuencia de recepción N(R). N(R) proporciona una confirmación de recepción de las tramas I del otro extremo del enlace. Su valor siempre corresponde a la primera trama aún no recibida; confirma que se han recibido todas las tramas con valores N(S) hasta N(R)−1 (módulo 8 o módulo 128) e indica el N(S) de la siguiente trama que se espera recibir.
N(R) funciona de la misma manera, ya sea que forme parte de un comando o una respuesta. Una estación combinada solo tiene un espacio para el número de secuencia.
N(S), el número de secuencia del marco enviado
Este valor se incrementa para los fotogramas I sucesivos, módulo 8 o módulo 128. Dependiendo del número de bits en el número de secuencia, pueden estar pendientes de confirmación hasta 7 o 127 fotogramas I en cualquier momento.
I-Frames (datos de usuario)
Los marcos de información, o I-frames , transportan datos de usuario desde la capa de red. Además, incluyen información de control de flujo y errores integrada en los datos. Los subcampos del campo de control definen estas funciones.
El bit menos significativo (el primero en transmitirse) define el tipo de trama. Un valor de 0 indica una trama I. Salvo por la interpretación del campo P/F, no existe diferencia entre una trama I de comando y una trama I de respuesta; cuando P/F es 0, ambas son exactamente equivalentes.
Marcos S (control)
Los marcos de supervisión, o «marcos S», se utilizan para el control de flujo y errores cuando el piggybacking es imposible o inapropiado, como cuando una estación no tiene datos para enviar. Los marcos S en HDLC no tienen campos de información, aunque algunos protocolos derivados de HDLC utilizan campos de información para el «rechazo multiselectivo».
El campo de control de trama S incluye un "10" inicial que indica que se trata de una trama S. A continuación, se indica el tipo con 2 bits, un bit de sondeo/final y un número de secuencia de 3 bits. (O bien, un campo de relleno de 4 bits seguido de un número de secuencia de 7 bits).
Los dos primeros bits (los menos significativos) indican que se trata de una trama S. Todas las tramas S incluyen un bit P/F y un número de secuencia de recepción, como se describió anteriormente. Salvo por la interpretación del campo P/F, no hay diferencia entre una trama S de comando y una de respuesta; cuando P/F es 0, ambas son exactamente equivalentes.
Recibir listo (RR)
- Valor del bit = 00 (0x00 para que coincida con el orden de bits del campo de tipo de tabla anterior [ 2 ] )
- Indica que el remitente está listo para recibir más datos (cancela el efecto de un RNR anterior).
- Envíe este paquete si necesita enviar un paquete pero no tiene una trama I para enviar.
- Una estación primaria puede enviar esto con el bit P activado para solicitar datos de una estación secundaria.
- Un terminal secundario puede utilizar esta función con el bit F activado para responder a una consulta si no tiene datos que enviar.
Rechazar (REJ)
- Valor del bit = 01 (0x08 para que coincida con el orden de bits del campo de tipo de tabla anterior [ 3 ] )
- Solicita retransmisión inmediata comenzando con N(R).
- Enviado en respuesta a una brecha observada en el número de secuencia; por ejemplo, después de ver I1/I2/I3/I5, enviar REJ4.
- Generar es opcional; una implementación funcional puede usar solo RR.
Recepción no disponible (RNR)
- Valor del bit = 10 (0x04 para que coincida con el orden de bits del campo de tipo de tabla anterior [ 4 ] )
- Acusamos recibo de algunos paquetes, pero solicitamos que no se envíen más hasta nuevo aviso.
- Puede utilizarse como RR con el bit P activado para solicitar el estado de una estación secundaria.
- Se puede utilizar como RR con el bit F activado para responder a una consulta si la estación está ocupada.
Rechazo selectivo (SREJ)
- Valor del bit = 11 (0x0c para que coincida con el orden de bits del campo de tipo de tabla anterior)
- Solicita la retransmisión únicamente del marco N(R).
- No es compatible con todas las variantes de HDLC.
- Su generación es opcional; una implementación funcional puede usar solo RR, o solo RR y REJ.
Estructuras en forma de U
Las tramas sin numerar, o tramas U , se utilizan principalmente para la gestión de enlaces, aunque algunas se emplean para transferir datos de usuario. Intercambian información de control y gestión de sesiones entre dispositivos conectados, y algunas tramas U contienen un campo de información, utilizado para información de gestión del sistema o datos de usuario. Los dos primeros bits (11) indican que se trata de una trama U. Los cinco bits de tipo (dos antes del bit P/F y tres después) permiten crear 32 tipos diferentes de tramas U. En algunos casos, la misma codificación se utiliza para distintas funciones, como comando y respuesta.
Configuración del modo
Los distintos modos se describen en la sección « Configuraciones de enlace» . En resumen, existen dos modos no operativos (modo de inicialización y modo desconectado) y tres modos operativos (respuesta normal, respuesta asíncrona y modo asíncrono balanceado) con números de secuencia de 3 o 7 bits (extendido).
- Respuesta en modo desconectado (DM)
- Cuando el dispositivo secundario está desconectado (estado predeterminado al encenderse), envía esta respuesta genérica a cualquier sondeo (trama de comando con el indicador de sondeo activado), excepto a un comando de configuración de modo aceptable . Alternativamente, puede enviar una respuesta FRMR a un comando de configuración de modo inaceptable.
- Respuesta de acuse de recibo sin numerar (UA)
- Esta es la respuesta del módulo secundario a un comando de configuración de modo aceptable, lo que indica que ahora se encuentra en el modo solicitado.
- Comando de configuración... modo (SNRM, SARM, SABM)
- Configure el dispositivo secundario en el modo especificado, con números de secuencia de 3 bits (campo de control de 1 byte). El dispositivo secundario confirma la recepción con UA. Si el dispositivo secundario no implementa el modo, responde con DM o FRMR.
- Comando de configuración... modo extendido (SNRME, SARME, SABME)
- Coloque el módulo secundario en el modo especificado, con números de secuencia de 7 bits (campo de control de 2 bytes).
- Comando de modo de configuración (SM)
- Modo genérico, novedad de la norma ISO/IEC 13239, que utiliza un campo de información para seleccionar parámetros. La norma ISO/IEC 13239 añadió muchas opciones adicionales a HDLC, incluidos números de secuencia de 15 y 31 bits, que solo se pueden seleccionar con este comando.
- Comando de desconexión (DISC)
- Este comando hace que el servidor secundario confirme la recepción con un UA y se desconecte (entra en modo desconectado). Cualquier trama no confirmada se pierde.
- Respuesta de solicitud de desconexión (RD)
- Esta respuesta solicita al servidor principal que envíe un comando DISC. El servidor principal debe hacerlo con prontitud, pero puede demorarse lo suficiente como para garantizar que se confirmen todos los paquetes pendientes.
- Comando para establecer el modo de inicialización (SIM)
- Este comando, que se implementa con poca frecuencia, se utiliza para realizar alguna inicialización específica del sistema secundario, como la descarga de firmware . El estándar HDLC no especifica de otro modo lo que ocurre en el modo de inicialización.
- Respuesta del modo de inicialización de la solicitud (RIM)
- Esto solicita al dispositivo principal que envíe una tarjeta SIM e inicialice el dispositivo secundario. Se envía en lugar de un mensaje de mensaje directo si el dispositivo secundario requiere inicialización.
Transferencia de información
Estos marcos pueden utilizarse como parte de la transferencia normal de información.
- Información sin numerar (UI)
- Este paquete (comando o respuesta) comunica datos del usuario, pero sin acuse de recibo ni retransmisión en caso de error.
- Interfaz de usuario con comprobación de encabezado (UIH)
- Esta trama (comando o respuesta), una adición a la norma ISO/IEC 13239 y de uso poco frecuente, es similar a la interfaz de usuario, pero excluye la protección CRC. Solo un prefijo de longitud configurable ("encabezado") de la trama está cubierto por el polinomio CRC; los errores en el resto de la trama no se detectan.
- Comando de sondeo sin numerar (UP)
- Este comando solicita una respuesta del nodo secundario. Con el bit de sondeo activado, actúa como cualquier otra trama de sondeo, sin la confirmación que debe incluirse en las tramas I o S. Con el bit de sondeo desactivado, tiene un significado especial en el modo de respuesta normal: el nodo secundario puede responder, aunque no haya recibido el bit de sondeo. Esto se usa raramente en HDLC, pero se usaba en el SDLC original de IBM como sustituto de la falta de un modo de respuesta asíncrono; cuando el canal de comunicación podía gestionar respuestas simultáneas, el nodo primario enviaba periódicamente el mensaje UP a la dirección de difusión para recopilar las respuestas pendientes.
Recuperación de errores
- Respuesta de rechazo de trama (FRMR)
- La respuesta FRMR contiene una descripción de la trama inaceptable, en un formato estandarizado. Los primeros 1 o 2 bytes son una copia del campo de control rechazado, los siguientes 1 o 2 contienen los números de secuencia de envío y recepción actuales del secundario (y un indicador que señala que la trama fue una respuesta, aplicable solo en modo balanceado), y los siguientes 4 o 5 bits son indicadores de error que señalan el motivo del rechazo. El secundario repite la misma respuesta FRMR en cada sondeo hasta que el error se corrige mediante un comando de configuración de modo o RSET. Los indicadores de error son:
- W: el tipo de marco (campo de control) no se entiende o no está implementado.
- X: el tipo de marco no se entiende con un campo de información no vacío, pero había uno presente.
- Y: el marco incluía un campo de información que es más grande de lo que el secundario puede aceptar.
- Z: La trama incluía un número de secuencia de recepción no válido N(R), que no se encuentra entre el valor recibido previamente y el número de secuencia más alto transmitido. (Este error no se puede corregir recibiendo RSET, pero sí enviándolo ) .
- V: La trama incluía un número de secuencia de envío no válido N(S), mayor que el último número confirmado más el tamaño de la ventana de transmisión. Este error solo es posible si se ha negociado un tamaño de ventana de transmisión inferior al máximo.
- Normalmente, los indicadores de error se rellenan con bits 0 hasta un límite de 8 bits, pero HDLC permite tramas que no son múltiplos de un byte de longitud.
- Comando de reinicio (RSET)
- El comando RSET hace que un receptor secundario reinicie su número de secuencia de recepción, de modo que el siguiente fotograma esperado sea el número de secuencia 0. Esta es una posible alternativa al envío de un nuevo comando de configuración de modo, que reinicia ambos números de secuencia. Se confirma con un UA, al igual que un comando de configuración de modo.
descubrimiento entre pares
- Identificación de intercambio (XID)
- Un comando XID incluye un campo de información que especifica las capacidades del dispositivo principal; el secundario responde con una respuesta XID que especifica las suyas. Esto se suele hacer antes de enviar un comando de configuración de modo. La arquitectura de redes de sistemas (SNAR) definió un formato para el campo de información, en el que el bit más significativo del primer byte está desactivado (0), pero las implementaciones HDLC suelen implementar la variante definida en la norma ISO 8885, en la que el bit más significativo del primer byte está activado (1).
- PRUEBA
- Un comando TEST es simplemente un comando ping para fines de depuración . La carga útil del comando TEST se devuelve en la respuesta TEST.
Definido en otras normas
Existen varios marcos U que no forman parte de HDLC, sino que están definidos en otras normas relacionadas.
- No reservados (NR0, NR1, NR2, NR3)
- El estándar HDLC garantiza que los comandos y respuestas "no reservados" estarán disponibles para otros usos.
- Confirmación sin conexión (AC0, AC1)
- Estos parámetros se definen en el estándar de control de enlace lógico IEEE 802.2 .
- Configurar (CFGR)
- Este comando se definió en SDLC para la depuración. Tenía una carga útil de 1 byte que especificaba un modo de prueba no estándar para el servidor secundario. Los números pares desactivaban el modo, mientras que los impares lo activaban. Una carga útil de 0 desactivaba todos los modos de prueba. El servidor secundario normalmente confirmaba la recepción de un comando de configuración repitiéndolo como respuesta.
- Respuesta de baliza (BCN)
- Esta respuesta se definió en SDLC para indicar un fallo de comunicación. Un nodo secundario que no recibiera tramas durante un tiempo prolongado comenzaría a enviar una secuencia de respuestas de baliza, lo que permitiría localizar un fallo unidireccional. Cabe destacar que la norma ISO/IEC 13239 asigna a UIH la misma codificación que a BCN.
Configuraciones de enlace
Las configuraciones de enlace se pueden clasificar de la siguiente manera:
- Desequilibrado , que consta de un terminal primario y uno o más terminales secundarios.
- Balanced , que consta de dos terminales pares.
Las tres configuraciones de enlace son:
- El modo de respuesta normal (NRM) es una configuración desequilibrada en la que solo el terminal principal puede iniciar la transferencia de datos. Los terminales secundarios transmiten datos únicamente en respuesta a las órdenes del terminal principal. El terminal principal consulta a cada terminal secundario para darle la oportunidad de transmitir los datos que posee.
- El modo de respuesta asíncrona (ARM) es una configuración desequilibrada en la que los terminales secundarios pueden transmitir sin autorización del terminal principal. Sin embargo, existe un terminal principal que conserva la responsabilidad de la inicialización de la línea, la recuperación de errores y la desconexión lógica.
- El modo balanceado asíncrono (ABM) es una configuración balanceada en la que cualquiera de las estaciones puede inicializar, supervisar, recuperarse de errores y enviar tramas en cualquier momento. No existe una relación maestro/esclavo. El DTE ( equipo terminal de datos ) y el DCE ( equipo de terminación de circuito de datos ) se tratan como iguales. El iniciador del modo balanceado asíncrono envía un SABM.
Una configuración de enlace adicional es el modo Desconectado . Este es el modo en el que se encuentra una estación secundaria antes de ser inicializada por la principal, o cuando se desconecta explícitamente. En este modo, la secundaria responde a casi todas las tramas, excepto a las que indican un comando de configuración de modo, con la respuesta "Modo Desconectado". El propósito de este modo es permitir que la principal detecte de forma fiable si la secundaria se apaga o se reinicia.
Repertorio de comandos y respuesta de HDLC
El conjunto mínimo necesario para su funcionamiento es:
- Comandos: I, RR, RNR, DISC y uno de SNRM, SARM o SABM.
- Respuestas: I, RR, RNR, UA, DM, FRMR
Operaciones básicas
- La inicialización puede ser solicitada por cualquiera de las partes. Cuando el dispositivo principal envía uno de los seis comandos de configuración de modo, ocurre lo siguiente:
- Indica al otro lado que se solicita la inicialización.
- Especifica el modo, NRM, ABM, ARM
- Especifica si se utilizan números de secuencia de 3 o 7 bits.
El módulo HDLC del otro extremo transmite una trama (UA) cuando se acepta la solicitud. Si se rechaza la solicitud, envía una trama de modo de desconexión (DM).
Extensiones funcionales (opciones)
- Para circuitos conmutados
- Comandos: ADD – XID
- Respuestas: ADD – XID, RD
- Para comandos y respuestas simultáneos bidireccionales, se utiliza ADD – REJ.
- Para comandos y respuestas de retransmisión de trama única: ADD – SREJ
- Para comandos y respuestas de información: AGREGAR – Ul
- Para la inicialización
- Comandos: AÑADIR – SIM
- Respuestas: ADD – RIM
- Para encuestas grupales
- Comandos: AÑADIR – ARRIBA
- Direccionamiento extendido
- Eliminar marcos I de respuesta
- Comando Eliminar Marcos I
- Numeración extendida
- Para restablecer el modo (solo ABM), los comandos son: ADD – RSET
- Los comandos y respuestas de prueba del enlace de datos son: AGREGAR – PROBAR
- Solicitud de desconexión. Las respuestas son ADD – RD
- FCS de 32 bits
Repertorio de comandos y respuestas de HDLC
Fotogramas sin numerar
Los fotogramas sin numerar se identifican porque sus dos bits menos significativos son 1. Con el indicador P/F, quedan 5 bits para el tipo de fotograma. Aunque se utilizan menos de 32 valores, algunos tipos tienen significados diferentes según la dirección en la que se envían: como comando o como respuesta. La relación entre el comando DISC (desconexión) y la respuesta RD (solicitud de desconexión) parece bastante clara, pero el motivo por el que el comando SARM es numéricamente igual a la respuesta DM resulta confuso.
Los marcos UI, UIH, XID y TEST contienen una carga útil y pueden utilizarse como comandos y respuestas. El comando SM y la respuesta FRMR también contienen una carga útil.
- Un fotograma de interfaz de usuario contiene información del usuario, pero a diferencia de un fotograma I, no se confirma su recepción ni se retransmite si se pierde.
- Una trama UIH (una adición de la norma ISO/IEC 13239) es similar a una trama UI, pero además aplica la secuencia de verificación de trama solo a un prefijo de longitud específica de la trama; los errores de transmisión posteriores a este prefijo no se detectan.
- La trama XID se utiliza para intercambiar capacidades de terminal. La arquitectura de redes de sistemas (SNAA) definió un formato, pero la variante definida en la norma ISO 8885 es la más utilizada. Un terminal primario anuncia sus capacidades mediante un comando XID, y un terminal secundario devuelve las suyas en una respuesta XID.
- El paquete TEST es simplemente un comando ping para fines de depuración. La carga útil del comando TEST se devuelve en la respuesta TEST.
- El comando SM (una adición de la norma ISO/IEC 13239) es un comando genérico de "configuración de modo" que incluye un campo de información (en el mismo formato ISO 8885 que XID) para especificar parámetros. Esto permite negociar valores de parámetros (como números de secuencia de 15 y 31 bits) y parámetros como tamaños de ventana y tamaños máximos de trama que no se pueden expresar mediante los seis comandos estándar de configuración de modo.
- La respuesta FRMR contiene una descripción de la trama inaceptable, en un formato estandarizado. Los primeros 1 o 2 bytes son una copia del campo de control rechazado, los siguientes 1 o 2 contienen los números de secuencia de envío y recepción actuales del secundario, y los siguientes 4 o 5 bits son indicadores de error que señalan el motivo del rechazo.
Véase también
Notas
- ↑ ( Friend et al. 1988 , p. 191)
- ↑ "Tipos de marcos X.25 - Martin Baker" .
- ↑ "Tipos de marcos X.25 - Martin Baker" .
- ↑ "Tipos de marcos X.25 - Martin Baker" .
Referencias
- Friend, George E.; Fike, John L.; Baker, H. Charles; Bellamy, John C. (1988). Comprensión de las comunicaciones de datos (2.ª ed.). Indianápolis: Howard W. Sams & Company. ISBN 0-672-27270-9.
- Stallings, William (2004). Comunicaciones de datos e informáticas (7.ª ed.). Upper Saddle River: Pearson/Prentice Hall. ISBN 978-0-13-100681-2.
- S. Tanenbaum, Andrew (2005). Redes informáticas (4.ª ed.). 482, FIE, Patparganj, Delhi 110 092: Dorling Kindersley (India) Pvt. Ltd., licencias de Pearson Education en el sur de Asia. ISBN 81-7758-165-1.
{{cite book}}: CS1 mantenimiento: ubicación ( enlace )
Enlaces externos
- PPP en un marco tipo HDLC orientado al tiempo real . IETF . RFC 2687 .
- PPP en trama tipo HDLC . IETF . RFC 1662. STD 51.
- Conferencias sobre comunicación de datos de Manfred Lindner – Parte HDLC
- Formato del paquete HDLC y otra información
- ISO 3309:1984 Sistemas de procesamiento de información—Comunicación de datos—Procedimientos de control de enlace de datos de alto nivel—Estructura de trama ( archivado )
- ISO 4335:1984 Comunicación de datos: Procedimientos de control de enlace de datos de alto nivel: Consolidación de elementos de procedimientos ( archivado )
- ISO/IEC 13239:2002
- Tecnología de redes informáticas
- Protocolos de enlace
- Control de enlace lógico
- estándares de telecomunicaciones
- Protocolos de telecomunicaciones
- Estándares de redes
- Codificaciones