La detección de portadora de datos , abreviada como DCD o, alternativamente, la detección de portadora abreviada como CD , es una señal de control presente dentro de un cable de comunicaciones serie RS-232 que va entre una computadora y otro dispositivo, como un módem. Esta señal es un simple bit de estado "alto / bajo" que se envía "de DCE a DTE" o, en un escenario típico, del periférico a la computadora. Está presente en prácticamente todos los puertos serie de PC: el pin 1 de un puerto de nueve pines ( DE9) puerto serie, o el pin 8 sobre un puerto de 25 pines (DB25). Su propósito varía según el dispositivo conectado, pero el significado más típico es indicar cuando un módem está conectado a otro módem remoto a través de líneas telefónicas.
La palabra "portadora" es una referencia a la señal portadora analógica generada por un módem, que se modula para transportar los datos. En un módem de datos, la pérdida de la portadora equivale a la terminación de la conexión.
Al igual que la señal del indicador de anillo , en el puerto serie de una PC, los cambios en el estado de la señal DCD pueden generar una interrupción de hardware que puede ser capturada por el procesador en cualquier momento en que la señal DCD cambie de estado, evitando que la PC necesite sondear constantemente el pin.
Como se usa en módems
DCD es muy importante en los módems, ya que es la forma principal de la computadora para descubrir que el módem ha perdido su conexión con el host remoto. Aparte de las desconexiones intencionales, los módems pueden perder su conexión por una variedad de razones inesperadamente, como la desconexión de la línea telefónica. Es posible utilizar un módem sin la señal DCD, sin embargo, la única forma de que la computadora sepa que una conexión está desconectada es mediante el módem transmitiendo las palabras " NO CARRIER " a través de las líneas de datos. Debido a que las palabras "NO CARRIER" también son un mensaje que podría aparecer en el contexto de una sesión de datos normal (por ejemplo, si una persona lo escribe en el extremo remoto), no existe una forma positiva de que un programa de computadora pueda diferenciar las palabras que se envía a través de la conexión frente al módem.
Los módems externos con luces LED de estado generalmente tienen una luz etiquetada como "CD" ( detección de portadora ). Esta luz de estado está acoplada directamente con lo que el módem envía a la línea DCD.
De forma predeterminada, cuando se enciende un módem, la señal DCD se desactiva. No se confirma hasta que el módem realiza una llamada saliente o responde una llamada entrante y luego se conecta con un módem de datos en el otro extremo. La señal se confirma al mismo tiempo que el módem informa su mensaje CONNECT y permanece afirmada hasta que se desconecta la llamada (ya sea intencionalmente o debido a una falla en la línea). DCD se anula una vez que el módem local ya no recibe portadora del módem remoto, independientemente del lado que inició la desconexión. Siempre que la señal DCD sea alta, la computadora puede asumir que los datos provenientes del módem se enviaron desde el lado remoto.
Prácticamente todos los módems más nuevos permiten configurar el comportamiento de la señal DCD. Las opciones típicas disponibles incluyen "afirmar siempre DCD", "afirmar DCD solo cuando esté conectado" y "afirmar siempre DCD excepto inmediatamente después de detectar una desconexión".
El significado de DCD difiere cuando el módem está en modo fax o voz . En estos modos, su importancia se reduce. [ ¿cómo? ]
Como se usa con módems nulos
Un uso frecuente de un puerto serie es para una conexión directa de computadora a computadora. Esto requiere un adaptador llamado módem nulo , que en realidad no es un módem en el sentido tradicional, sino un conector que simplemente cruza los pines complementarios en dos puertos seriales para que los dos lados puedan comunicarse. Un módem nulo normalmente conecta la salida DTR de cada computadora a las entradas DCD y DSR de la otra.
Cuando se usa en este escenario, el DCD se usa para detectar simplemente la presencia y / o la disposición del otro lado para iniciar una sesión. Por ejemplo, en PC que ejecutan Windows, la salida DTR se mantiene baja hasta que se ejecuta algún programa para acceder al puerto serie y elevar la señal DTR a un nivel alto. El lado remoto detectará esto cuando la entrada DCD se está elevando. Algunos equipos reconocerán la transición por sí sola como el comienzo de una sesión. Otros equipos (como el puerto de consola de un enrutador ) pueden esperar que se transmitan caracteres, [ aclaración necesaria ] pero la señal DCD alta sigue siendo un requisito previo para todas las comunicaciones. [ aclaración necesaria ]
Uso de temporización PPS (pulso por segundo)
El pin DCD en serie se puede utilizar para detectar con precisión una señal PPS , como se describe en RFC 2783: [1]
Un medio conveniente para proporcionar una señal PPS a un sistema informático es conectar esa señal a un pin de control de módem en una interfaz de línea serie a la computadora. El pin Data Carrier Detect (DCD) se utiliza con frecuencia para este propósito. Normalmente, la salida de código de tiempo de la fuente de tiempo se transmite a la computadora a través de la misma línea serial. La computadora detecta una transición de señal en el pin DCD, generalmente al recibir una interrupción, y registra una marca de tiempo lo antes posible.
Como se usa con otro hardware
En Linux , cada puerto serie está referenciado por dos nombres de dispositivo: uno es (para el primer puerto serie) /dev/ttyS0
versus /dev/cua0
. Aunque ambos se refieren al mismo puerto físico, una distinción importante entre la forma en que Linux trata estos dos nombres de dispositivos tiene que ver con la línea DCD. Cuando se espera ttyS0 en una llamada al sistema , Linux asume que, dado que este dispositivo es para recibir llamadas telefónicas, pondrá un proceso en suspensión , suponiendo que mientras DCD esté bajo, no hay nada que hacer. Cuando se usa cua0, como cuando se hacen llamadas telefónicas, Linux asume que el software necesita acceder al puerto mientras que el DCD está bajo para marcar el número, por lo que este comportamiento de bloqueo no existe. Sin embargo, existe una bandera de modo de control llamada CLOCAL que es la que realmente activa o desactiva este comportamiento, y por defecto la bandera está configurada para cua0 pero no para ttyS0. Una aplicación que insiste en usar un puerto "tty" en lugar de un puerto "cua" es un ejemplo de una que podría requerir un cable de puente para forzar el DCD alto para que funcione correctamente. [2]
Referencias
- ^ Mogul, J .; Mills, D .; Brittenson, J .; Stone, J .; Windl, U. (marzo de 2000). "Introducción" . API de pulso por segundo para sistemas operativos similares a UNIX . IETF . pag. 3. doi : 10.17487 / RFC2783 . RFC 2783 .
- ^ Coldwell, conceptos de Charles Terminal en GNU / Linux Archivado el 29 de abril de 2008 en la Wayback Machine.