La comunicación entre una computadora y otros dispositivos suele gestionarse mediante un aparato intermedio denominado controladora.
La controladora se conecta mediante cables a dispositivos periféricos situados dentro de la carcasa de la computadora o quizá a un conector, denominado puerto, en la parte posterior de la computadora, al que pueden conectarse dispositivos externos.
Una controladora traduce los mensajes y los datos entre un formato compatible con las características internas de la computadora y el formato compatible con el dispositivo periférico al que está conectada.
Recientemente, se han dado pasos dentro del campo de las computadoras personales para desarrollar una serie de estándares, como el bus serie universal (USB, Universal Serial Bus) y FireWire, que permiten que una misma controladora sea capaz de gestionar diversos tipos de dispositivos.
Cada controladora se comunica con la propia computadora por medio de una serie de conexiones al mismo bus que interconecta el procesador y la memoria principal de la computadora.
Cuando el procesador envía un mensaje a través del bus para almacenar un patrón de bits en una ubicación de memoria asignada a una controladora, el patrón de bits se "almacena" en realidad en la controladora en lugar de en la memoria principal. De la misma forma si el procesador trata de leer datos de una de esas posiciones de memoria, recibirá un patrón de bits de la controladora en lugar de en la memoria principal. Este tipo de sistema de comunicación se denomina E/S mapeada en memoria porque los dispositivos de entrada/salida de la computadora parecen estar en diversas posiciones de memoria.
Una controladora conectada al bus de la computadora puede efectuar sus propias comunicaciones con la memoria principal durante aquellos nanosegundos durante los que el procesador no está utilizando el bus. Esta capacidad de una controladora para acceder a la memoria principal se conoce con el nombre de acceso directo a memoria (DMA, Direct Memory Access), y es una característica de gran importancia para mejorar el rendimiento de una computadora.
La utilización de DMA tiene complica las comunicaciones que tienen lugar a través del bus de una computadora (cuello de botella de von Neumann).
Un proceso tal como la impresión de un documento implica un diálogo bidireccional constante, conocido como proceso de coordinación (handshaking) en el que la computadora y el dispositivo periférico intercambian información acerca del estado del dispositivo y coordinan sus actividades.
Este proceso de coordinación implica el menudo uso de una palabra de estado, que es un patrón de bits generado por el dispositivo periférico y que se envía a la controladora, esta proporciona el mecanismo para poder coordinar la comunicación con un dispositivo periférico.
La comunicación entre dispositivos de computación tiene lugar a través de dos tipos de enlaces: paralelos y serie. Estos términos hacen referencia a la forma en que se transfieren unas señales con respecto a otras. En el caso de la comunicación paralelo, varias señales se transfieren al mismo tiempo a través de una "línea" separada, ejemplo: Bus interno. Por otro lado la comunicación serie se basa en transferir señales una detrás de otra a través de una única línea, por lo tanto la comunicación serie requiere una ruta de datos más simple que la comunicación paralelo, lo cual es la razón de su popularidad, ejemplo: USB.
En las lineas telefónicas tradicionales , las rutas de comunicación están compuestas por un único cable a través del cual se transfieren tonos, uno detrás de otro, son inherentemente sistemas en serie. La transferencia de datos digitales se realiza convirtiendo primero los patrones de bits en tonos audibles por medio de una módem, transfiriendo estos tonos en forma serie a través del sistema telefónico y luego convirtiendo los tonos a bits, mediante otro módem situado en el destino.
Para comunicaciones a larga distancia sobre líneas telefónicas tradicionales, las compañías telefónicas ofrecen un servicio conocido con el nombre de DSL (Digital Subscriber Line, Línea digital de abonado). DSL utiliza las frecuencias por encima del rango audible para transferir datos digitales, mientras que deja el espectro de frecuencias más bajo para las comunicaciones de voz. Aunque DSL ha tenido un gran éxito, las compañías telefónicas están actualizando rápidamente sus sistemas a líneas de fibra óptica, que soportan las comunicaciones digitales con mayor fiabilidad que las líneas telefónicas tradicionales.
La velocidad con que se transfieren bits de un componente de una computadora a otro se mide en bits por segundo (bps). Entre las unidades más comunes podemos citar el Kbpd(1000bps), el Mbps (1millónbps) y el Gbps (1000millones bps).
Para reproducir grabaciones de música codificadas con MP3 se necesita una tasa de transferencia de aproximadamente 64Kbps y para reproducir videoclips incluso de muy baja calidad hacen falta tasa de transferencia en el rango de los Mbps. Esa es la razón de que otras alternativas como DSL, cable y enlaces vía satélite, que proporcionan tasa de transferencia en el rango de los Mbps, hayan sustituido a los sistemas telefónicos de audio tradicionales.
La tasa máxima disponible en cada sistema concreto dependerá del tipo de enlace de comunicaciones utilizado y de la tecnología empleada para su implementación. Esta tasa máxima suele identificarse, de una forma un tanto aproximada, con el ancho de banda del enlace de comunicaciones. El ancho de banda también tiene connotaciones de capacidad más que de tasa de transferencia.
Cuando afirmamos que un enlace de comunicaciones tiene un gran ancho de banda significa que el enlace de comunicaciones tiene la capacidad de transferir bits con una alta velocidad, así como la capacidad de transportar grandes cantidades de información simultáneamente.