Monitoring Ethernet Network Activity With NDIS Drivers
Writing device drivers has been a fascination for most system programmers from the time computers were invented. Drivers are developed by programmers to fulfill the needs of a particular application. This has led to the development of a large number of different classes of drivers viz. printer drivers, file system drivers and so on. Furthermore device drivers very specific to an application, has also been developed which resulted in developing different kinds of drivers belonging to the same class. With the advent of the Internet, writing network drivers has become the center of attraction in the field of driver development. To aid the development of network device drivers Microsoft came out with the Network Device Interface Specification (NDIS) library supplied with the Windows NT operating system.
A device driver is the glue between the Operating system and its input/output devices. Drivers act as translators, converting the generic requests received from the Operating System into commands that specific peripheral controllers can understand.
A Network Interface Card (NIC) is a physical device that acts as a gateway through which data frames are transmitted and received by any machine in a network. A NIC is called with different names in different types of networks. For example, in an Ethernet network a NIC is called as an Ethernet Interface Card, similarly in a token ring network it is called as a token ring interface card, etc.




