Net Adapter Driver: What is it?

Print anything with Printful



A network card driver controls a network card and manages one or more network adapters for a specific OS. Older drivers handled more tasks, but newer ones are easier to write and maintain. Multiple drivers can run simultaneously, and manufacturers often publish updates online.

A network card driver is low-level software that controls a network card. Each network driver manages one or more network adapters in a computer system. It is specifically designed for a particular type of adapter and a particular operating system (OS). A network card driver operates at the Media Access Control level of the network; directly controls the circuits of the network adapter associated with it. In conjunction with other network layers, a computer system uses a network adapter driver to communicate with other networked computers and the Internet.

Prior to the late 1990s, network card drivers usually did much of the drudgery of network communications. Some network cards required drivers to copy all packet data between their memory buffers and the operating system buffers; identification headers were often filled in by drivers during this process. Adapter drivers often had to handle special cases such as receiving multicast packets and operating in “promiscuous mode”. During configuration, a driver often had to identify the computer’s bus type and program the adapter accordingly. To keep up with the speed of the network link, most adapter drivers were written in highly efficient assembly language.

As the maximum speed of the network link increased, network drivers and other software layers of the operating system often became bottlenecks. To counteract this, the OS designers moved much of the NIC driver functionality deeper into the OS; tight integration and optimization with other network layers often improves performance. Newer network adapters can construct and copy all packet data by hardware, once it has pointed out where the operating system data buffers are located. At the same time, improved compiler code generation allowed adapter drivers to be written in general-purpose computer programming language C rather than assembly language. As a result of these optimizations, network adapter drivers have become much easier to write and maintain. Modern drivers have yet to implement some configuration, power management, and multiprocessing support; the operating system and network adapter hardware now do most of the time-sensitive work, however.

Several network card drivers can run simultaneously on a system. Most modern computers include a wired network adapter interface built into the motherboard; its network card driver is usually included with the operating system. Laptops and other portable computers also often include a wireless network adapter and driver. Many systems provide a means to connect additional network cards: Gigabit Ethernet or high-speed Fiber Channel adapters are common choices. Their drivers are often included with network adapters when purchased. Most manufacturers also publish the latest versions of their drivers on the Internet; users should periodically check and install these updated drivers to get the latest bug fixes and performance improvements.




Protect your devices with Threat Protection by NordVPN


Skip to content