Protocolo de comunicaciones
El 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 confiable, permitiendo que un dispositivo comprenda los datos enviados por otro. Puede funcionar con o sin conexión continua entre dispositivos, lo que lo hace versátil para diversas configuraciones de red.
Originalmente, HDLC se usaba en redes multidispositivo, donde un dispositivo actuaba como maestro y otros como esclavos, a través de modos como el Modo de respuesta normal (NRM) y el Modo de respuesta asincrónica (ARM). Estos modos ahora rara vez se utilizan. Actualmente, HDLC se emplea principalmente en conexiones punto a punto , como entre enrutadores o interfaces de red , utilizando un modo llamado 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 . La UIT lo amplió y estandarizó como LAP (Procedimiento de acceso a enlaces), mientras que ANSI nombró a su versión esencialmente idéntica ADCCP .
La especificación HDLC no especifica la semántica completa de los campos del marco. Esto permite derivar de él otras normas totalmente compatibles y, desde entonces, han aparecido derivados en innumerables normas. Fue adoptado en la pila de protocolos X.25 como LAPB , en el protocolo V.42 como LAPM , en la pila de protocolos Frame Relay como LAPF y en la pila de protocolos ISDN como LAPD.
Los estándares ISO originales para HDLC son los siguientes:
- ISO 3309-1979 – Estructura del marco
- ISO 4335-1979 – Elementos de Procedimiento
- ISO 6159-1980 – Clases de procedimiento desequilibradas
- ISO 6256-1981 – Clases equilibradas de procedimiento
ISO/IEC 13239:2002, la norma actual, reemplazó todas estas especificaciones.
HDLC fue la inspiración para el protocolo IEEE 802.2 LLC y es la base del mecanismo de entramado utilizado con PPP en líneas síncronas, como lo utilizan muchos servidores para conectarse a una WAN , más comúnmente a Internet .
Una versión similar se utiliza como canal de control para líneas telefónicas multicanal E-carrier (E1) y SONET . Cisco HDLC utiliza técnicas de entramado HDLC de bajo nivel, pero agrega un campo de protocolo al encabezado HDLC estándar.
Enmarcado
Las tramas HDLC se pueden transmitir a través de enlaces de comunicación en serie síncronos o asíncronos . Esos enlaces no tienen ningún mecanismo para marcar el principio o el final de un cuadro, por lo que es necesario identificar el principio y el final de cada cuadro. Esto se hace utilizando una secuencia única de bits como delimitador de trama, o bandera , y codificando los datos para garantizar que la secuencia de banderas nunca se vea dentro de una trama. Cada cuadro comienza y termina con un delimitador de cuadro. Un delimitador de fotograma al final de un fotograma también puede marcar el inicio del siguiente fotograma.
Tanto en enlaces síncronos como asíncronos, la secuencia de indicadores es binaria "01111110" o hexadecimal 0x7E, pero los detalles son bastante diferentes.
Encuadre sincrónico
Debido a que una secuencia de banderas consta de seis bits 1 consecutivos, otros datos se codifican para garantizar que nunca contengan más de cinco bits 1 seguidos. Esto se hace mediante relleno de bits : cada vez que aparecen cinco bits 1 consecutivos en los datos transmitidos, los datos se pausan y se transmite un bit 0.
El dispositivo receptor sabe que esto se está haciendo y, después de ver cinco bits 1 seguidos, se elimina el siguiente bit 0 de los datos recibidos. Si, en cambio, el sexto bit es 1, esto es una bandera (si el séptimo bit es 0) o un error (si el séptimo bit es 1). En el último caso, el procedimiento de recepción de tramas se cancela y se reinicia la próxima vez que se vea una bandera.
Este relleno de bits tiene un segundo objetivo: garantizar un número suficiente de transiciones de señal. En enlaces síncronos, los datos están codificados NRZI , de modo que se transmite un bit 0 como un cambio en la señal en la línea y un bit 1 como ningún cambio. Por lo tanto, cada bit 0 brinda una oportunidad para que un módem receptor sincronice su reloj a través de un bucle de bloqueo de fase . Si hay demasiados bits 1 seguidos, el receptor puede perder la cuenta. El relleno de bits proporciona un mínimo de una transición cada seis bits durante la transmisión de datos y una transición cada siete bits durante la transmisión de una bandera.
Cuando no se transmiten tramas en un enlace síncrono simplex o full-duplex, se transmite continuamente un delimitador de trama en el enlace. Esto genera una de dos formas de onda continuas, según el estado inicial:
La especificación HDLC permite compartir el bit 0 al final de un delimitador de trama con el inicio del siguiente delimitador de trama, es decir, "011111101111110". Algunos hardware no admiten esto.
Para comunicación semidúplex o multipunto, donde varios transmisores comparten una línea, un receptor en la línea verá 1 bit inactivo continuo en el período entre cuadros cuando ningún transmisor esté activo.
HDLC transmite bytes de datos con el bit menos significativo primero (no debe confundirse con el orden little-endian , que se refiere al orden de los bytes dentro de un campo de varios bytes).
encuadre asincrónico
Cuando se utiliza comunicación serie asíncrona, como puertos serie RS-232 estándar , el relleno de bits de estilo síncrono no es apropiado por varios motivos:
- No es necesario el relleno de bits para garantizar un número adecuado de transiciones, ya que los bits de inicio y parada lo proporcionan,
- Debido a que los datos están codificados NRZ para su transmisión, en lugar de codificados NRZI, la forma de onda codificada es diferente,
- RS-232 envía bits en grupos de 8, lo que hace que agregar bits individuales sea muy complicado y
- Por la misma razón, sólo 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 asincrónico utiliza "transparencia de octeto de control", también llamada " relleno de bytes " o "relleno de octetos". El octeto de límite de 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 cualquiera 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 ) se pueden escapar 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 se puede utilizar para abortar la transmisión de paquetes sin posibilidad de que el receptor interprete el paquete parcial como válido.
Estructura
El contenido de un marco HDLC se muestra en la siguiente tabla:
Tenga en cuenta que el indicador de fin de un fotograma puede ser (pero no tiene por qué serlo) el indicador de inicio del siguiente fotograma.
Los datos normalmente se envían en múltiplos de 8 bits, pero sólo algunas variantes lo requieren; otros, en teoría, permiten alineaciones de datos en límites distintos de 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 Dirección, Control e Información. Proporciona un medio por el cual el receptor puede detectar errores que pueden haber sido inducidos 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 el FCS son tales que la probabilidad de que ciertos tipos de errores de transmisión pasen desapercibidos aumenta con la longitud de los datos que se verifican en busca de errores, el FCS puede limitar implícitamente el tamaño práctico de la trama.
Si el cálculo del FCS del receptor no coincide con el del remitente, lo que indica que la trama contiene errores, el receptor puede enviar un paquete de reconocimiento negativo al remitente o no enviar nada. Después de recibir un paquete de reconocimiento negativo o de esperar a que se agote el tiempo de espera de un paquete de reconocimiento positivo, el remitente puede retransmitir la trama fallida.
El FCS se implementó porque muchos de los primeros enlaces de comunicación tenían una tasa de error de bits relativamente alta , y el FCS podía calcularse fácilmente mediante un circuito o software simple y rápido. Otros protocolos ahora utilizan ampliamente esquemas de corrección de errores directos 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 una computadora con múltiples periféricos a través de un bus multipunto . El "modo de respuesta normal" original es un modo primario-secundario en el que la computadora (o terminal principal ) da permiso a cada periférico ( terminal secundario ) para hablar por turno. Como toda comunicación se realiza hacia o desde el terminal primario, las tramas incluyen sólo una dirección, la del terminal secundario; al terminal principal no se le asigna una dirección. Existe una distinción entre los comandos enviados por el primario a un secundario y las respuestas enviadas por un secundario al primario, pero esto no se refleja en la codificación; Las órdenes y las respuestas son indistinguibles excepto por la diferencia en la dirección en la que se transmiten.
El modo de respuesta normal permite que el enlace secundario a primario se comparta sin contención , porque el primario otorga permiso a los secundarios para transmitir uno a la vez. También permite la operación a través de enlaces de comunicación semidúplex , siempre que el primario sea consciente de que no puede transmitir cuando ha permitido que lo haga un secundario.
El modo de respuesta asincrónica es una adición HDLC [1] para uso en enlaces full-duplex . Si bien conserva la distinción primario/secundario, permite que el secundario transmita en cualquier momento. Por lo tanto, debe haber algún otro mecanismo para garantizar que varios secundarios no intenten transmitir al mismo tiempo (o solo un secundario).
El modo equilibrado asíncrono añade el concepto de un terminal combinado que puede actuar como primario y secundario. Desafortunadamente, este modo de funcionamiento tiene algunas sutilezas de implementación. Si bien a las tramas más comunes enviadas no les importa si están en una trama de comando o de respuesta, a algunas esenciales sí les importa (en particular, la mayoría de las tramas sin numerar y cualquier trama con el bit P/F establecido), y el campo de dirección de una trama recibida debe ser examinado para determinar si contiene un comando (la dirección recibida es la nuestra) o una respuesta (la dirección recibida es la del otro terminal).
Esto significa que el campo de dirección no es opcional, incluso en enlaces punto a punto donde no es necesario eliminar la ambigüedad del interlocutor con el que se habla. Algunas variantes de HDLC amplían el campo de dirección para incluir direcciones de origen y de destino, o un bit de comando/respuesta explícito.
Operaciones HDLC y tipos de fotogramas
Se pueden distinguir tres tipos fundamentales de tramas HDLC:
- Los marcos de información, o I-frames , transportan datos del usuario desde la capa de red. También pueden incluir información de control de flujo y errores basada en datos.
- Los marcos de supervisión, o marcos S , se utilizan para el control de flujo y errores cuando el transporte es imposible o inapropiado, como cuando una estación no tiene datos para enviar. Los marcos S no tienen campos de información.
- Los marcos sin numerar, o marcos en U , se utilizan para diversos fines, incluida la gestión de enlaces. Algunos marcos en U contienen un campo de información, según el tipo.
Campo de control
El formato general del campo de control es:
También existen formas extendidas (de dos bytes) de tramas I y S. Nuevamente, el bit menos significativo (el que se encuentra más a la derecha en esta tabla) se envía primero.
bit P/F
Encuesta/Final es un bit único con dos nombres. Se denomina Encuesta cuando forma parte de un comando (establecido por la estación primaria 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, la cuestión está clara.
El bit se utiliza como token que se pasa de un lado a otro entre las estaciones. Sólo debe existir un token a la vez. La secundaria sólo envía una Final cuando ha recibido una Encuesta de la primaria. El primario solo envía una encuesta cuando ha recibido un mensaje final del secundario, o después de un tiempo de espera que indica que el bit se ha perdido.
- En NRM, la posesión del token de encuesta también otorga a la dirección secundaria permiso para transmitir. El secundario establece el bit F en su última trama de respuesta para otorgar permiso para transmitir. (Es equivalente a la palabra "Over" en el procedimiento de voz por radio ).
- En ARM y ABM, el bit P fuerza una respuesta. En estos modos, el secundario no necesita esperar a que se transmita una encuesta, por lo que el bit final puede incluirse en la primera respuesta después de la encuesta.
- Si no se recibe respuesta a un bit P en un período de tiempo razonable, la estación primaria agota el tiempo y envía P nuevamente.
- El bit P/F está en el centro del esquema básico de retransmisión del punto de control que se requiere para implementar HDLC; todas las demás variantes (como el REJ S-frame) son opcionales y solo sirven para aumentar la eficiencia. Siempre que una estación recibe un bit P/F, puede asumir que cualquier trama que envió antes de transmitir por última vez el bit P/F y que aún no ha sido reconocida nunca llegará, por lo que debe retransmitirse.
Cuando se opera como una estación combinada, es importante mantener la distinción entre los bits P y F, porque puede haber dos ciclos de punto de control operando simultáneamente. El bit AP que llega en un comando desde la estación remota no responde a nuestro bit P; sólo lo es un bit F que llega a una respuesta.
N(R), el número de secuencia de recepción
Tanto la trama I como la S contienen un número de secuencia de recepción N(R). N(R) proporciona un acuse de recibo positivo de la recepción de tramas I desde el otro lado del enlace. Su valor es siempre el primer fotograma aún no recibido; reconoce 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 espera recibir.
N(R) opera de la misma manera ya sea que sea parte de una orden o de una respuesta. Una estación combinada sólo tiene un espacio de número de secuencia.
N(S), el número de secuencia de la trama enviada
Esto se incrementa para fotogramas I sucesivos, módulo 8 o módulo 128. Dependiendo del número de bits en el número de secuencia, pueden haber hasta 7 o 127 fotogramas I esperando acuse de recibo en cualquier momento.
I-Frames (datos de usuario)
Los marcos de información, o I-frames , transportan datos del usuario desde la capa de red. Además, también incluyen información de control de flujo y errores basada en datos. Los subcampos del campo de control definen estas funciones.
El bit menos significativo (primero transmitido) define el tipo de trama. 0 significa un cuadro I. Excepto por la interpretación del campo P/F, no hay diferencia entre un cuadro I de comando y un cuadro I de respuesta; cuando P/F es 0, las dos formas son exactamente equivalentes.
Marcos en S (control)
Los marcos de supervisión, o 'marcos S', se utilizan para el control de flujo y errores cuando el transporte 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 del marco S incluye un "10" inicial que indica que es un marco S. A esto le sigue un tipo de 2 bits, un bit de sondeo/final y un número de secuencia de 3 bits. (O un campo de relleno de 4 bits seguido de un número de secuencia de 7 bits).
Los primeros 2 bits (menos significativos) significan que es un marco S. Todas las tramas S incluyen un bit P/F y un número de secuencia de recepción como se describió anteriormente. Excepto por la interpretación del campo P/F, no hay diferencia entre una trama S de comando y una trama S de respuesta; cuando P/F es 0, las dos formas son exactamente equivalentes.
Recibir listo (RR)
- Valor de bit = 00 (0x00 para coincidir con el orden de bits del campo de tipo de tabla anterior [2] )
- Indicar 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 un marco I para enviar.
- Una estación primaria puede enviar esto con el bit P configurado para solicitar datos de una estación secundaria.
- Un terminal secundario puede usar esto con el bit F configurado para responder a una encuesta si no tiene datos para enviar.
Recibir no listo (RNR)
- Valor de bit = 01 (0x04 para coincidir con el orden de bits del campo de tipo de tabla anterior [3] )
- Confirme algunos paquetes pero solicite que no se envíen más hasta nuevo aviso.
- Se puede utilizar como RR con el bit P configurado para solicitar el estado de una estación secundaria
- Puede usarse como RR con el bit F configurado para responder a una encuesta si la estación está ocupada.
Rechazar (REJ)
- Valor de bit = 10 (0x08 para coincidir con el orden de bits del campo de tipo de tabla anterior [4] )
- 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, envíe REJ4.
- Opcional para generar; una implementación funcional puede utilizar sólo RR.
Rechazo selectivo (SREJ)
- Valor de bit = 11 (0x0c para coincidir con el orden de bits del campo de tipo de tabla anterior)
- Solicita la retransmisión únicamente de la trama N(R).
- No es compatible con todas las variantes de HDLC.
- Opcional para generar; una implementación funcional puede utilizar solo RR, o solo RR y REJ.
Marcos en U
Los fotogramas no numerados, o fotogramas en U , se utilizan principalmente para la gestión de enlaces, aunque algunos se utilizan para transferir datos del usuario. Intercambian información de control y gestión de sesiones entre dispositivos conectados, y algunos marcos en U contienen un campo de información, que se utiliza para información de gestión del sistema o datos del usuario. Los primeros 2 bits (11) significan que es un marco en U. Los cinco bits de tipo (2 antes del bit P/F y 3 bits después del bit P/F) pueden crear 32 tipos diferentes de marco en U. En algunos casos, se utiliza la misma codificación para cosas diferentes como un comando y una respuesta.
Configuración de modo
Los distintos modos se describen en § Configuraciones de enlace. Brevemente, hay dos modos no operativos (modo de inicialización y modo desconectado) y tres modos operativos (respuesta normal, respuesta asíncrona y modos equilibrados asíncronos) con números de secuencia de 3 o 7 bits (extendido).
- Respuesta en modo desconectado (DM)
- Cuando el secundario está desconectado (el estado predeterminado al encender), envía esta respuesta genérica a cualquier sondeo (marco de comando con el indicador de sondeo establecido), excepto un comando de configuración de modo aceptable. Alternativamente, puede dar una respuesta FRMR a una orden de establecimiento de modo inaceptable.
- Respuesta de reconocimiento no numerado (UA)
- Esta es la respuesta del secundario a un comando de establecimiento de modo aceptable, lo que indica que ahora está en el modo solicitado.
- Establecer... comando modo (SNRM, SARM, SABM)
- Coloque el secundario en el modo especificado, con números de secuencia de 3 bits (campo de control de 1 byte). La secundaria reconoce con UA. Si el secundario no implementa el modo, responde con DM o FRMR.
- Establecer... comando modo extendido (SNRME, SARME, SABME)
- Coloque el secundario en el modo especificado, con números de secuencia de 7 bits (campo de control de 2 bytes).
- Comando Establecer modo (SM)
- Conjunto de modo genérico, nuevo en ISO/IEC 13239, que utiliza un campo de información para seleccionar parámetros. ISO/IEC 13239 agregó 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 secundario reconozca con UA y se desconecte (ingrese al modo desconectado). Todos los fotogramas no reconocidos se pierden.
- Solicitar respuesta de desconexión (RD)
- Esta respuesta solicita al primario que envíe un comando DISC. El principal debe hacerlo con prontitud, pero puede demorarse lo suficiente para garantizar que se reconozcan todas las tramas pendientes.
- Establecer el comando del modo de inicialización (SIM)
- Este comando, que rara vez se implementa, se utiliza para realizar alguna inicialización secundaria específica, como la descarga de firmware . Lo que sucede en el modo de inicialización no se especifica de otra manera en el estándar HDLC.
- Solicitar respuesta del modo de inicialización (RIM)
- Esto solicita al primario que envíe SIM e inicialice el secundario. Se envía en lugar de DM si el secundario requiere inicialización.
Transferencia de información
Estas tramas pueden usarse como parte de la transferencia de información normal.
- Información no numerada (UI)
- Esta trama (comando o respuesta) comunica datos del usuario, pero sin reconocimiento ni retransmisión en caso de error.
- UI con verificación de encabezado (UIH)
- Este marco (comando o respuesta), una adición a ISO/IEC 13239 y rara vez utilizado, es como la interfaz de usuario pero también excluye la protección CRC. El polinomio CRC sólo cubre un prefijo de longitud configurable ("encabezado") del marco; No se detectan errores en el resto del fotograma.
- Comando de encuesta no numerada (ARRIBA)
- Este comando solicita una respuesta del secundario. Con el bit de sondeo activado, actúa como cualquier otro marco de sondeo, sin el reconocimiento que debe incluirse en el marco I o S. Con el bit de sondeo limpio, tiene un significado especial en el modo de respuesta normal: el secundario puede responder, aunque no haya recibido el bit de sondeo. Esto rara vez se usa en HDLC, pero se usó en el SDLC de IBM original como sustituto de la falta de modo de respuesta asincrónica; donde el canal de comunicación pudiera manejar respuestas simultáneas, el primario enviaría periódicamente UP a la dirección de transmisión para recopilar las respuestas pendientes.
Error de recuperación
- 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 una bandera que indica que la trama fue una respuesta, aplicable solo en modo balanceado) y el Los siguientes 4 o 5 bits son indicadores de error que indican el motivo del rechazo. El secundario repite la misma respuesta FRMR a cada sondeo hasta que el error se soluciona mediante un comando de configuración de modo o RSET. Las banderas de error son:
- W: el tipo de trama (campo de control) no se comprende o no se implementa.
- X: no se entiende el tipo de trama 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 N(R) no válido, uno que no se encuentra entre el valor recibido previamente y el número de secuencia más alto transmitido. (Este error no se puede eliminar recibiendo RSET, pero se puede eliminar enviando RSET).
- V: la trama incluía un número de secuencia de envío N(S) no válido, mayor que el último número reconocido más el tamaño de la ventana de transmisión. Este error sólo es posible si se ha negociado un tamaño de ventana de transmisión menor que el máximo.
- Los indicadores de error normalmente se rellenan con 0 bits hasta un límite de 8 bits, pero HDLC permite tramas que no tienen una longitud múltiplo de un byte.
- Comando de reinicio (RSET)
- El comando RSET hace que un secundario restablezca su número de secuencia de recepción, de modo que la siguiente trama esperada 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 restablece ambos números de secuencia. Se reconoce con UA, como 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 primario; el secundario responde con una respuesta XID que especifica sus capacidades. Esto normalmente se hace antes de enviar un comando de configuración de modo. La arquitectura de red de sistemas definió un formato para el campo de información, en el que el bit más significativo del primer byte está limpio (0), pero las implementaciones HDLC normalmente implementan la variante definida en ISO 8885, que tiene el bit más significativo del primer byte establecido. (1).
- PRUEBA
- Un comando TEST es simplemente un comando ping con fines de depuración. La carga útil del comando TEST se devuelve en la respuesta TEST.
Definido en otros estándares
Hay varios marcos en U que no forman parte de HDLC, pero se definen en otros estándares relacionados.
- No reservado (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 se definen en el estándar de control de enlace lógico IEEE 802.2 .
- Configurar (CFGR)
- Este comando se definió en SDLC para su depuración. Tenía una carga útil de 1 byte que especificaba un modo de prueba no estándar para el secundario. Los números pares deshabilitaron el modo, mientras que los números impares lo habilitaron. Una carga útil de 0 deshabilitó todos los modos de prueba. El secundario normalmente reconocía un comando de configuración repitiéndolo en respuesta.
- Respuesta de baliza (BCN)
- Esta respuesta se definió en SDLC para indicar una falla de comunicaciones. Un secundario que no recibió ninguna trama durante mucho tiempo comenzaría a enviar un flujo de respuestas de baliza, lo que permitiría localizar una falla unidireccional. Tenga en cuenta que ISO/IEC 13239 asigna a UIH la misma codificación que BCN.
Configuraciones de enlace
Las configuraciones de enlace se pueden clasificar como:
- Desequilibrado , que consta de un terminal primario, y uno o más terminales secundarios.
- Equilibrado , 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 sólo el terminal principal puede iniciar la transferencia de datos. Los terminales secundarios transmiten datos sólo en respuesta a comandos del terminal primario. El terminal primario sondea cada terminal secundario para darle la oportunidad de transmitir cualquier dato que tenga.
- El modo de respuesta asincrónica (ARM) es una configuración desequilibrada en la que los terminales secundarios pueden transmitir sin permiso del terminal principal. Sin embargo, todavía existe un terminal primario distinguido 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 equilibrado asíncrono (ABM) es una configuración equilibrada en la que cualquiera de las estaciones puede inicializar, supervisar, recuperarse de errores y enviar tramas en cualquier momento. No existe una relación amo/esclavo. El DTE ( equipo terminal de datos ) y el DCE ( equipo de terminación de circuitos de datos ) se tratan como iguales. El iniciador del modo equilibrado 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 que la primaria la inicialice o cuando se desconecta explícitamente. En este modo, el secundario responde a casi todos los fotogramas que no sean un comando de configuración de modo con una respuesta de "modo desconectado". El propósito de este modo es permitir que el primario detecte de manera confiable que un secundario se apaga o se reinicia de otra manera.
Repertorio de comando y respuesta 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 primario envía uno de los seis comandos de configuración de modo,:
- 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 en el otro extremo transmite una trama (UA) cuando se acepta la solicitud. Si se rechaza la solicitud, envía una trama en modo de desconexión (DM).
Extensiones funcionales (opciones)
- Para circuitos conmutados
- Comandos: AÑADIR – XID
- Respuestas: AGREGAR – XID, RD
- Para comandos y respuestas bidireccionales simultáneos son ADD – REJ
- Para comandos y respuestas de retransmisión de cuadro único: ADD – SREJ
- Para comandos y respuestas de información: AGREGAR – Ul
- Para inicialización
- Comandos: AÑADIR – SIM
- Respuestas: AÑADIR – RIM
- Para encuestas grupales
- Comandos: AÑADIR – ARRIBA
- Direccionamiento extendido
- Eliminar fotogramas de respuesta I
- Eliminar cuadros de comando I
- Numeración extendida
- Para restablecer el modo (solo ABM), los comandos son: ADD – RSET
- Los comandos y respuestas de la prueba de enlace de datos son: AGREGAR – PRUEBA
- Solicitar desconexión. Las respuestas son ADD – RD
- FCS de 32 bits
Repertorio de comandos y respuestas HDLC
Cuadros sin numerar
Las tramas no numeradas se identifican porque los dos bits inferiores son 1. Con el indicador P/F, eso deja 5 bits como tipo de trama. Aunque se utilizan menos de 32 valores, algunos tipos tienen diferentes significados 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 la razón para hacer que el comando SARM sea numéricamente igual a la respuesta DM es oscura.
- * ^ ^ Adición ISO/IEC 13239
- † ^ ^ ^ No forma parte de HDLC
Las tramas UI, UIH, XID y TEST contienen una carga útil y se pueden utilizar como comandos y respuestas. El comando SM y la respuesta FRMR también contienen una carga útil.
- Un marco UI contiene información del usuario, pero a diferencia de un marco I, no se reconoce ni se retransmite si se pierde.
- Un marco UIH (una adición de ISO/IEC 13239) es como un marco UI, pero además aplica la secuencia de verificación de marco solo a un prefijo de longitud especificada del marco; Los errores de transmisión después de este prefijo no se detectan.
- La trama XID se utiliza para intercambiar capacidades de terminal. La arquitectura de red de sistemas definió un formato, pero la variante definida en ISO 8885 se usa más comúnmente. Un primario anuncia sus capacidades con un comando XID y un secundario devuelve sus propias capacidades en una respuesta XID.
- El marco TEST es simplemente un comando ping con fines de depuración. La carga útil del comando TEST se devuelve en la respuesta TEST.
- El comando SM (una adición de ISO/IEC 13239) es un comando genérico de "modo de configuración" que incluye un campo de información (en el mismo formato ISO 8885 que XID) que especifica 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 fotogramas que no se pueden expresar mediante los seis comandos estándar de configuración de modos.
- 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 indican el motivo del rechazo.
Ver también
Notas
- ^ (Friend et al. 1988, p. 191)
- ^ "Tipos de cuadros X.25: Martin Baker".
- ^ "Tipos de cuadros X.25: Martin Baker".
- ^ "Tipos de cuadros X.25: Martin Baker".
Referencias
- Amigo, George E.; Fike, John L.; Panadero, 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.
- Puestos, William (2004). Comunicaciones informáticas y de datos (7ª ed.). Río Upper Saddle: Pearson/Prentice Hall. ISBN 978-0-13-100681-2.
- S. Tanenbaum, Andrés (2005). Redes de computadoras (4ª ed.). 482, FIE, Patparganj, Delhi 110 092: Dorling Kindersley (India) Pvt. Limitado. Ltd., licencias de Pearson Education en el sur de Asia. ISBN 81-7758-165-1.
{{cite book}}
: Mantenimiento CS1: ubicación ( enlace )
enlaces externos
- PPP en un marco tipo HDLC orientado en tiempo real . RFC 2687 .
- PPP en marcos tipo HDLC. RFC 1662 . ETS 51.
- Conferencias sobre comunicación de datos de Manfred Lindner – Parte HDLC
- Formato de paquete HDLC y otra información
- [ enlace muerto ]
- 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 marco (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/CEI 13239:2002