¿Qué es un controlador de adaptador de red?

Un controlador de adaptador de red es un software de bajo nivel que controla un adaptador de red. Cada controlador de red opera uno o más adaptadores de red en un sistema informático. Está diseñado específicamente para un tipo particular de adaptador y un sistema operativo (SO) en particular. Un controlador de adaptador de red opera en la capa de control de acceso a medios de la red; controla directamente los circuitos del adaptador de red asociado a él. En combinación con otras capas de red, un sistema informático utiliza un controlador de adaptador de red para comunicarse con otras computadoras en red e Internet.

Antes de finales de la década de 1990, los controladores de adaptadores de red solían realizar gran parte del trabajo pesado de las comunicaciones de red. Algunos adaptadores de red requerían que los controladores copiaran todos los paquetes de datos entre sus búferes de memoria y los búferes del sistema operativo; Los conductores a menudo rellenaban los encabezados de identificación durante este proceso. Los controladores del adaptador con frecuencia tenían que gestionar casos especiales como la recepción de paquetes de multidifusión y el funcionamiento en «modo promiscuo». Durante la configuración, un controlador a menudo tenía que identificar el tipo de bus de la computadora y programar el adaptador en consecuencia. Para mantenerse al día con la velocidad del enlace de red, la mayoría de los controladores de adaptadores se escribieron en lenguaje ensamblador altamente eficiente.

A medida que aumentaba la velocidad máxima del enlace de red, los controladores de red y otras capas de software del sistema operativo se convertían con frecuencia en cuellos de botella. Para contrarrestar esto, los diseñadores de sistemas operativos trasladaron gran parte de la funcionalidad del controlador del adaptador de red al sistema operativo; La estrecha integración y optimización con las otras capas de la red a menudo mejoraba el rendimiento. Los adaptadores de red más nuevos pueden construir y copiar todos los paquetes de datos a través del hardware, una vez que se les indica dónde se encuentran los búferes de datos del sistema operativo. Al mismo tiempo, una mejor generación de código del compilador ha permitido que los controladores del adaptador se escriban en el lenguaje de programación de computadoras C de propósito general en lugar de en lenguaje ensamblador. Como resultado de estas optimizaciones, los controladores de adaptadores de red se han vuelto mucho más sencillos de escribir y mantener. Los controladores modernos aún deben implementar alguna configuración, administración de energía y soporte de multiprocesamiento; Sin embargo, el sistema operativo y el hardware del adaptador de red ahora realizan la mayor parte del trabajo urgente.

Se pueden ejecutar varios controladores de adaptadores de red en un sistema al mismo tiempo. La mayoría de las computadoras modernas incluyen una interfaz de adaptador de red cableada incorporada en la placa base; su controlador de adaptador de red generalmente se incluye con el sistema operativo. Las computadoras portátiles y otras computadoras portátiles también incluyen con frecuencia un adaptador y un controlador de red inalámbrica. Muchos sistemas proporcionan un medio para conectar tarjetas de red adicionales; los adaptadores de canal de fibra o Gigabit Ethernet de alta velocidad son opciones comunes. Sus controladores a menudo se incluyen con los adaptadores de red cuando se compran. La mayoría de los fabricantes también publican las últimas versiones de sus controladores en Internet; los usuarios deben verificar e instalar periódicamente estos controladores actualizados para obtener las últimas correcciones de errores y mejoras de rendimiento.