networkingIBM 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
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
and a proprietary protocol implementation such as DECnet
'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.