El modo de comandos y el modo de datos se refieren a los dos modos de funcionamiento de un módem . Estos modos se definen en el conjunto de comandos Hayes , que es el estándar de facto para todos los módems. Estos modos existen porque solo hay un canal de comunicación entre el módem y la computadora, el cual debe transmitir tanto los comandos de la computadora al módem como los datos que este debe enviar al destinatario a través de la línea telefónica.
Cuando un módem está en modo comando , cualquier carácter que se le envíe se interpreta como un comando que el módem debe ejecutar, según el conjunto de comandos de Hayes. Un comando va precedido de las letras "AT", que significan "Atención". Por ejemplo, si un módem recibe "ATDT5551212" mientras está en modo comando, lo interpreta como una instrucción para marcar los números 5551212 en el teléfono, usando marcación por tonos . Durante una operación en modo comando, el módem puede enviar respuestas a la computadora indicando el resultado del comando. Por ejemplo, el módem puede responder con la palabra "OCUPADO" en respuesta al comando ATDT, si escucha una señal de ocupado después de marcar y está configurado para escuchar señales de ocupado. Cualquier comunicación en modo comando (en ambas direcciones) finaliza con un retorno de carro .
Cuando un módem está en modo de datos , cualquier carácter que se le envíe se transmitirá al destinatario. [ 1 ] El módem entra en modo de datos inmediatamente después de establecer una conexión. Por ejemplo, si ATDT5551212 resultó en una llamada telefónica que fue contestada por otro módem de computadora, el módem informará la palabra "CONECTAR" y luego cambiará al modo de datos. Cualquier carácter adicional recibido a través del enlace serial se considera proveniente del destinatario, y cualquier carácter enviado se transmitirá a este.
Cuando un módem con capacidad de voz está en modo de "datos de voz", cualquier dato que se envíe al módem se interpreta como datos de audio que se reproducirán a través de la línea telefónica, en lugar de bytes de caracteres que se transmitirán digitalmente a la otra parte.
Cambio entre modos
Los módems siempre se inician en modo de comandos al encenderse. Estas son las formas en que un módem puede cambiar al modo de datos:
- Después de una conexión de marcación exitosa en respuesta a un comando de marcación "ATD" en el que el módem se comunica con otro módem.
- Después de contestar el teléfono con el comando de respuesta "ATA", si hay otro módem en el otro extremo.
- Tras contestar automáticamente al teléfono por algún motivo preconfigurado (como la respuesta automática) y conectarse a otro módem. (Casi todos los módems admiten la respuesta automática al recibir el comando "ATS0=1").
- Después de recibir el comando "ATO" (que son tres letras AT-Oh, no AT-cero) después de ser puesto de nuevo en el modo de comando con una secuencia de escape (ver más abajo).
- En respuesta a comandos de marcación o conexión similares para comunicaciones de fax o voz.
Los módems vuelven al modo de comandos desde el modo de datos por las siguientes razones:
- La conexión se interrumpió (por ejemplo, la otra persona colgó).
- El ordenador emitió un comando de escape, que normalmente consiste en una pausa de 1 segundo, seguida de los tres caracteres "+++" y otra pausa de 1 segundo. La conexión se mantiene, pero el módem puede aceptar comandos como "ATH" para colgar. El ordenador puede emitir el comando "ATO" para volver al modo de datos.
- El ordenador ordenó al módem que finalizara la llamada poniendo el pin Data Terminal Ready (DTR) en estado "apagado".
Actualmente, el pin DTR es el método que suelen usar los ordenadores para finalizar una llamada de módem. La secuencia de escape +++ se usa raramente e incluso puede estar desactivada para evitar fallos de funcionamiento en caso de que estos caracteres formen parte legítimamente del flujo de datos (sin tener en cuenta las pausas de 1 segundo).
Uso práctico contemporáneo
Actualmente, la mayoría de los módems se configuran con los caracteres "&C1&D2" en la cadena de inicialización, o bien se comportan de esta manera por defecto. Esto provoca el siguiente comportamiento:
- El módem utiliza el pin de detección de portadora de datos (DCD) para indicar si está conectado a un host. Generalmente, el ordenador puede leer el pin DCD en cualquier momento y saber siempre si el módem está en modo de comandos o de datos. Un nivel alto en DCD indica modo de datos, y un nivel bajo, modo de comandos. DCD es una señal que el módem envía al ordenador. (Cabe destacar que DCD también permanece en nivel alto si se encuentra en modo de comandos tras una secuencia de escape +++, pero en la práctica, el software lo utiliza muy raramente, si es que lo utiliza, por lo que no suele ser un problema).
- El módem interpreta el pin DTR ( Data Terminal Ready ) como una señal del ordenador para saber cuándo finalizar una llamada. DTR es una señal que el ordenador envía al módem. El ordenador mantiene DTR en estado alto en todo momento hasta que desea finalizar una llamada, momento en el que lo desactiva durante uno o dos segundos. El ordenador también mantiene DTR en estado bajo cuando no se ejecutan programas que utilicen el módem; esto evita que el módem responda llamadas por respuesta automática o realice alguna acción inesperada o no deseada. El ordenador puede asumir con seguridad que, tras desactivar DTR durante un par de segundos, el módem estará en modo de comandos.
Mensajes de escape de enlace de datos (DLE)
En las comunicaciones de datos por línea telefónica convencionales, los módems entran en modo de datos solo una vez: al conectarse la sesión y al desconectarse. Sin embargo, cuando se utilizan para fax y voz (audio), alternan rápidamente entre los modos de comando y datos varias veces durante una llamada. Esto se debe a que la función del módem cambia con mayor frecuencia: en lugar de simplemente transmitir datos de un punto A a un punto B, negocia parámetros y páginas con una máquina de fax o alterna entre los modos de grabación, pausa y reproducción de audio.
En los modos de fax y datos de voz, a veces ocurren eventos que el módem desea notificar al ordenador, independientemente de si está en modo de comando o de datos. Un ejemplo de esto es cuando una persona que llama pulsa una tecla de marcación por tonos en modo de voz. Otros mensajes fuera de banda comunes son las notificaciones del módem que indican que se perdieron datos porque el ordenador los envía demasiado lento o demasiado rápido, o que el módem detecta un tono de marcado inesperado en la línea (lo que significa que la persona que llama probablemente colgó), o que se descolgó o colgó el teléfono de la extensión.
Este tipo de evento se señala con un mensaje DLE , que es un mensaje de un solo carácter precedido por un código de escape de enlace de datos (DLE). El DLE es un carácter enviado desde el módem al ordenador cuya definición no está relacionada con el modo de comando ni con el de datos, y que utiliza un código ASCII específico (0x10) que nunca aparece en ningún comando o respuesta AT, por lo que puede aislarse del flujo de comando/respuesta por este motivo. En estos modos, cuando se envía un DLE (0x10), el carácter que le sigue tiene un significado especial, distinto al de comando y al de datos. Por ejemplo, un DLE seguido del número 2 significa que la persona que llama pulsó el número 2 en el teclado de su teléfono. Esto puede ocurrir tanto en modo de comando como de datos, siempre que la línea telefónica esté en uso por el módem y haya alguien al otro lado de la línea.
El carácter DLE puede aparecer en datos de fax o audio. Para evitar que un byte de datos 0x10 se interprete erróneamente como un DLE, se utiliza el relleno de bits . El relleno es un esquema de codificación común en módems y se usa para escapar caracteres en flujos de datos. En este caso, el relleno implica que dos caracteres DLE consecutivos se interpretan como un byte literal con valor 0x10.
DLE también se utiliza ocasionalmente en la comunicación entre el ordenador y el módem. Un evento DLE específico señala el final de una página de fax o de un archivo de audio. Este evento devuelve el módem al modo de comandos. A diferencia del modo de datos de acceso telefónico estándar, la pérdida de DTR no es una forma adecuada de reanudar el modo de comandos, ya que no se desea una interrupción de la llamada, y un código de escape con pausas obligatorias tampoco es apropiado. Por este motivo, los bytes literales 0x10 en los datos también se duplican desde el ordenador al módem.
El DLE nunca se utiliza en los modos de datos estándar de módem a módem, como el que se usa para el acceso telefónico a Internet, al menos no por el propio módem. En estos modos, el DLE se transmite por la línea como cualquier otro carácter. El DLE (y los mensajes con DLE escapado) solo se utilizan en aplicaciones de fax y voz cuando se configuran específicamente en modo fax o voz.
Véase también
Referencias
- ↑ "2 Modo de comando y modo de datos" Microchip . Consultado el 15 de noviembre de 2023.
- módems