from
The Free On-line Dictionary of Computing (8 July 2008)
packet driver
<networking> {IBM PC} {local area network} software that
divides data into {packets} which it routes to the network.
It also handles incoming data, reassembling the packets so
that {application programs} can read the data as a continuous
stream.
{FTP Software} created the specification for {IBM PC} packet
drivers but {Crynwr Software} dominate the market and have
done the vast majority of the implementations.
Packet drivers provide a simple, common programming interface
that allows multiple {applications} to share a {network
interface} at the {data link} layer. Packet drivers
demultiplex incoming packets among the applications by using
the network media's {standard packet type} or {service access
point} field(s).
The packet driver provides calls to initiate access to a
specific packet type, to end access to it, to send a packet,
to get statistics on the network interface and to get
information about the interface.
Protocol implementations that use the packet driver can
coexist and can make use of one another's services, whereas
multiple applications which do not use the driver do not
coexist on one machine properly. Through use of the packet
driver, a user could run {TCP/IP}, {XNS} and a proprietary
protocol implementation such as {DECnet}, {Banyan}'s,
{LifeNet}'s, {Novell}'s or {3Com}'s without the difficulties
associated with pre-empting the network interface.
Applications which use the packet driver can also run on new
network hardware of the same class without being modified;
only a new packet driver need be supplied.
There are several levels of packet driver. The first is the
basic packet driver, which provides minimal functionality but
should be simple to implement and which uses very few host
resources. The basic driver provides operations to broadcast
and receive packets. The second driver is the extended packet
driver, which is a superset of the basic driver. The extended
driver supports less commonly used functions of the network
interface such as {multicast}, and also gathers statistics on
use of the interface and makes these available to the
application. The third level, the high-performance functions,
support performance improvements and tuning.
(http://crynwr.com/crynwr/home.html).
(1994-12-05)