The network driver module is responsible for managing the details of a particular network adaptor (e.g., an NE-2000 compatible Ethernet controller). Each driver is packaged as a shared object and installs into the io-pkt* component.
Once io-pkt* is running, you can dynamically load drivers at the command line using the mount command.
For example, the following commands start io-pkt-v6-hc and then mount the driver for the fictitious ABC100 chip set adapter:
io-pkt-v6-hc mount -T io-pkt devnp-abc100.so
All network device drivers are shared objects whose names are of the form devnp-driver.so.
Once the shared object is loaded, io-pkt* initializes it. The driver and io-pkt* are then effectively bound together—the driver calls into io-pkt* (for example when packets arrive from the interface), and io-pkt* calls into the driver (for example when packets need to be sent from an application to the interface).
To unload a driver, use the ifconfig destroy command. For example:
ifconfig abc0 destroy
For more information on network device drivers, see their individual utility pages (devnp-*) in the Utilities Reference.