반응형

Windows Driver Kit: Network Devices and Protocols

Using the Network Driver Design Guide (NDIS 5.1)

http://msdn.microsoft.com/en-us/library/ms797076.aspx


Windows 기반 OS는 몇가지 타입의 kernel-mode network driver를 지원한다. 이 문서는 이러한 종류의 네트워크 드라이버를 어떻게 작성하는지 기술하고 있다. topic은 지원되는 네트워크 드라이버 타입과 각 타입의 네트워크 드라이버를 개발하기 전에 읽어야 할 가이드의 섹션에 대해 간략히 설명하고 있다.

Microsoft Windows 2000과 그 이후 버전의 OS는 네 가지 타입의 kernel-mode 네트워크 드라이버를 지원한다.

· Miniport drivers

miniport driver network interface card(NIC) 를 직접관리하고, higher-level 드라이버와의 인터페이스를 제공한다.

· Intermediate drivers

intermediate driver legacy transport driver와 같은 upper-level protocol dirverminiport driver interface역할을 한다. intermediate protocol driver를 개발하는 전형적인 예는 존재하는 lagacy transport driver miniport드라이버(that manages a NIC for a new media type unknown to the transport driver.) 사이의 매채변환(media translation)을 수행하는 것이다.

· Protocol drivers

upper-level protocol driver TDI interface 또는 가능한 application-specific 인터페이스를 기술한다. at its upper edge to provide services to users of the network. At its lower edge, a protocol driver provides a protocol interface to pass packets to and receive incoming packets from the next-lower driver.

Another type of protocol driver is a connection-oriented call manager. A call manager provides call setup and tear-down services for connection-oriented clients, which are also protocol drivers.

· Filter-hook driver

A filter-hook driver는 패킷을 필터링 하는데 사용된다. 이 드라이버는 OS에서 제공하는 IP Filter Driver의 기능을 확장한다.


For general information about Windows network architecture and programming considerations, see Network Architecture for Kernel-Mode Drivers and Network Driver Programming Considerations. For information about network INF files, which are used to install network components, see Installing Network Components. If your network driver requires a notify object—for example, to control bindings—see also Notify Objects for Network Components.

To find out which additional sections to read for a particular driver type, see the following sections.

Miniport Drivers (NDIS 5.1)

There are several types of miniport drivers. Read the sections that are recommended for the type of driver you are writing:

To learn about connectionless miniport drivers

If you are writing a miniport driver that controls a NIC for connectionless network media, such as Ethernet, FDDI, or Token Ring; read:

Introduction to NDIS Miniport Drivers

Overview of Miniport Driver Operations and Functions

Miniport Driver DriverEntry Function and Initialization

Transferring Data

Obtaining and Setting Miniport Driver Information and NDIS Support for WMI

Plug and Play for NDIS Miniport Drivers

Power Management for NDIS Miniport Drivers

Reset, Halt, and Shutdown Functions

To learn about connection-oriented miniport drivers

If you are writing a miniport driver that controls a NIC for connection-oriented network media, such as ATM or ISDN, read:

All the sections listed for connectionless miniport drivers

Connection-Oriented NDIS

To learn about WAN miniport drivers

If you are writing a miniport driver that controls a WAN NIC, read:

All the sections listed for connectionless miniport drivers

WAN Miniport Drivers

To learn about integrated miniport driver call managers (MCM)

If you are writing a miniport driver that controls a connection-oriented NIC and that also provides call manager services, read:

All the sections listed for connectionless miniport drivers

Connection-Oriented NDIS

To learn about miniports with a WDM lower interface

If you are writing a miniport driver that has a WDM lower interface read:

All the sections listed for connectionless miniport drivers

Miniport Driver with a WDM Lower Interface

To learn about IrDA miniport drivers

If you are writing a miniport driver that controls an IrDA adapter, read:

All the sections listed for connectionless miniport drivers

IrDA Miniport Drivers

To learn about additional miniport capabilities

To learn about additional miniport capabilities, read:

Task Offload

Load Balancing and Failover

Intermediate Drivers (NDIS 5.1)

You can write an intermediate driver that has either a connectionless or a connection-oriented lower edge. Read the sections that are recommended for the type of driver you are writing:

To learn about intermediate drivers that have a connectionless lower edge

If you are writing an intermediate driver whose lower edge provides an interface to connectionless miniport drivers, read:

NDIS Intermediate Drivers

To learn about intermediate drivers that have a connection-oriented lower edge

If you are writing an intermediate driver whose lower edge provides an interface to connection-oriented miniport drivers, read:

NDIS Intermediate Drivers

Connection-Oriented NDIS

Protocol Drivers (NDIS 5.1)

You can write a protocol driver that has either a connectionless or a connection-oriented lower edge. In addition, your protocol driver can expose a transport driver interface (TDI) at its upper edge and can also provide Winsock support. Read the sections that are recommended for the type of driver you are writing:

To learn about protocol drivers that have a connectionless lower edge

If you are writing a protocol driver whose lower edge provides an interface to connectionless miniport drivers, read:

NDIS Protocol Drivers

To learn about protocol drivers that are connection-oriented clients, or that are connection-oriented providers of call manager services

If you are writing a connection-oriented client, which provides an interface to connection-oriented miniport drivers, or if you will be writing a connection-oriented call manager, read:

NDIS Protocol Drivers
Connection-Oriented NDIS

To learn about protocol drivers that have a TDI upper edge

If you are writing a protocol that has a TDI upper edge, read:

NDIS Protocol Drivers

TDI Transports and Their Clients

TDI Routines, Macros, and Callbacks

TDI Operations

To learn about protocol drivers that have Winsock support

If you are writing a protocol that provides Winsock support, read:

NDIS Protocol Drivers

Transport Helper DLLs for Windows Sockets

Filter-Hook Drivers (NDIS 5.1)

To learn about filter hook drivers, read the following section:

                 Filter-Hook Drivers

 

반응형

'Windows Programming > 드라이버' 카테고리의 다른 글

WDK는 VC6.0에서 빌드되지 않는다.  (0) 2008.07.24
Filter-Hook Driver  (0) 2008.07.21
DeviceObject 삭제  (1) 2008.06.20
데이타 버퍼 어드레싱  (0) 2008.06.11
Device Object naming  (0) 2008.05.30

+ Recent posts