(Network Driver Interface Specification) A network driver interface from Microsoft. See network driver interface.
Download Computer Desktop Encyclopedia to your iPhone/iTouch
(Network Driver Interface Specification) A network driver interface from Microsoft. See network driver interface.
Download Computer Desktop Encyclopedia to your iPhone/iTouch
5min Related Video:
Network Driver Interface Specification |
Wikipedia:
Network Driver Interface Specification |
The Network Driver Interface Specification (NDIS) is an application programming interface (API) for network interface cards (NICs). It was jointly developed by Microsoft and 3Com Corporation, and is mostly used in Microsoft Windows, but the open-source NDISwrapper and Project Evil driver wrapper projects allow many NDIS-compliant NICs to be used with Linux, FreeBSD and NetBSD, respectively. magnussoft ZETA, a derivative of BeOS, supports a number of NDIS drivers.
The NDIS is a Logical Link Control (LLC) that forms the upper sublayer of the OSI data link layer (layer 2 of 7) and acts as an interface between layer 2 and 3 (the Network Layer). The lower sublayer is the Media Access Control (MAC) device driver.
The NDIS is a library of functions often referred to as a "wrapper" that hides the underlying complexity of the NIC hardware and serves as a standard interface for level 3 network protocol drivers and the hardware level MAC drivers. Another common LLC is the Open Data-Link Interface (ODI).
The NDIS versions supported by various Windows versions are as follows:
The traffic accepted by the NIC is controlled by an NDIS Miniport Driver while various protocols, such as TCP/IP are implemented by NDIS Protocol Drivers. A single miniport may be associated with one or more protocols. This means that traffic coming into the miniport may be received in parallel by several protocol drivers. For example, Winpcap adds a second protocol driver on the selected miniport in order to capture incoming packets. Furthermore, it is possible to simulate several virtual NICs by implementing virtual miniport drivers that send and receive traffic from a single physical NIC. One example of virtual miniport drivers usage is to add virtual NICs, each with a different Virtual LAN. Due to the fact that implementations cannot assume in advance whether other drivers received the same buffers, one must treat the incoming buffers as read only. A driver that changes the packet content must allocate its own buffers.
Another driver type is NDIS Intermediate Driver. Intermediate drivers sit in-between the MAC and IP layers and can control all traffic being accepted by the NIC card. In practice, intermediate drivers implement both miniport and protocol interfaces. The miniport driver and protocol driver actually communicate with the corresponding protocol and miniport interfaces that reside in the intermediate driver. This design enables adding several chained intermediate drivers between the miniport and protocol drivers. Therefore, driver vendors must be careful and not assume that the traffic they send out to the next interface is implemented by the last driver in the chain. In order to write applications using NDIS one can use samples that accompany Microsoft's Windows Driver Kit (WDK). The "PassThru" sample is a good starting point for intermediate drivers as it implements all the necessary details required in this driver type, but the sample just passes the traffic through to the next driver in the chain.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| This computer network-related article is a stub. You can help Wikipedia by expanding it. |
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)
| Open Data-Link Interface | |
| Universal Network Device Interface | |
| USB communications device class |
| What are the use of Driver for Network Interface Card? | |
| What is network drivers? | |
| What are the functions of network interface card? |
Copyrights:
![]() | Computer Desktop Encyclopedia. THIS DEFINITION IS FOR PERSONAL USE ONLY. All other reproduction is strictly prohibited without permission from the publisher. © 1981-2010 The Computer Language Company Inc. All rights reserved. Read more | |
![]() | Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "Network Driver Interface Specification". Read more |