divides data into
packets which it routes to the network.
It also handles incoming data, reassembling the packets so
stream.
done the vast majority of the implementations.
Packet drivers provide a simple, common programming interface
demultiplex incoming packets among the applications by using
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
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.
(1994-12-05)