windows 2000 network drivers l.
Skip this Video
Loading SlideShow in 5 Seconds..
Windows 2000 Network Drivers PowerPoint Presentation
Download Presentation
Windows 2000 Network Drivers

Loading in 2 Seconds...

play fullscreen
1 / 28

Windows 2000 Network Drivers - PowerPoint PPT Presentation

  • Uploaded on

Windows 2000 Network Drivers 정보통신 연구실 석사 3 학기 김신규 Roadmap Microsoft Windows 2000 support Three basic types of kernel-mode network drivers Miniport NIC drivers A miniport driver directly manages a network interface card (NIC) and provides an interface to higher-level drivers.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

Windows 2000 Network Drivers

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
windows 2000 network drivers

Windows 2000 Network Drivers

정보통신 연구실

석사 3학기


  • Microsoft Windows 2000 support Three basic types of kernel-mode network drivers
    • Miniport NIC drivers
      • A miniport driver directly manages a network interface card (NIC) and provides an interface to higher-level drivers.
    • Intermediate drivers
      • An intermediate protocol driver interfaces between upper-level protocol drivers, such as a legacy transport driver, and a miniport.
    • Protocol drivers
      • An upper level protocol driver implements a TDI interface, or possibly another application-specific interface at its upper-edge
      • At its lower edge, this type of driver provides a protocol interface to pass packets to and receive incoming packets from the next-lower driver.
  • Another type of kernel-mode driver supported by Windows 2000
    • filter-hook driver
      • Filter packets
      • Extends the functionality of the IP filter driver
windows 2000 network architecture and the osi model
Windows2000 Network Architecture and the OSI Model
  • Windows 2000 is Based on the OSI 7-layer networking model
windows 2000 network architecture and the osi model5
Windows2000 Network Architecture and the OSI Model
  • Physical Layer
    • involves the reception and transmission of the unstructured raw bit stream over a physical medium
      • Implemented by the network interface card(NIC), its transceiver, and the medium to which the NIC is attached
    • can include low-level network software
windows 2000 network architecture and the osi model6
Windows2000 Network Architecture and the OSI Model
  • Data Link Layer
    • LLC
      • establishes and terminates logical links, controls frames flow, sequences frames, acknowledges frames, and retransmits unacknowledged frames.
      • Implemented in the transport driver
    • MAC
      • manages access to the network media, checks frame errors, and manages address recognition of received frames.
      • implemented in the network interface card (NIC)
      • The NIC is controlled by a software device driver called the NIC driver.
windows 2000 network architecture and the osi model7
Windows2000 Network Architecture and the OSI Model
  • Network Layer
    • controls the operation of the subnet and determines the physical path the data should take
  • Transport Layer
    • ensure that messages are delivered error-free, in sequence, and with no loss or duplication
  • In the Windows 2000 network architecture
    • the LLC, Network, and Transport layer -> transport drivers
ndis drivers
NDIS Drivers
  • The Network Driver Interface Specification(NDIS) library
    • abstracts the network hardware from network drivers
    • specifies a standard interface between layered network drivers
      • abstract lower-level drivers
    • maintains state information and parameters for network drivers
    • support
      • Miniport drivers
      • Intermediate drivers
      • Protocol drivers
ndis drivers10
NDIS Drivers
  • NDIS Miniport Drivers(miniport NIC driver)
    • two basic functions
      • managing a NIC
      • interfacing with higher-level drivers
    • The NDIS library exports a full set of functions(NdisXXX functions) that encapsulate all the OS functions.
      • Called by Miniport
    • The miniport must export a set of entry points(MiniportXxx functions).
      • Called by NDIS
ndis drivers11
NDIS Drivers
  • The interaction of miniport NIC drivers with NDIS and with higher-level drivers
    • Send
      • transport driver calls an NdisXxx functions.
      • NDIS passes the packet to the miniport by calling the appropriate MiniportXxx function.
      • The miniport driver then forwards the packet to the NIC by calling the appropriate NdisXxx functions.
    • Receive
      • NIC post a hardware interrupt.
      • NDIS call MiniportXxx function
      • The miniport sets up the transfer of data from the NIC and then indicates the presence of the received packet to bound higher-level drivers by calling the NdisXxx function.
ndis drivers12
NDIS Drivers
  • Connectionless miniport
    • Serialized drivers
      • rely on NDIS to serialize calls to their miniportXxx functions and to manage their send queues.
    • Deserialized drivers
      • serialize the operation of their own MiniportXxx functions
      • queue internally all incoming send packets.
    • connectionless network media : Ethernet, FDDI,Token Ring.
    • connection-oriendted network media : ATM and ISDN
      • Always deserialized.
  • An NDIS miniport driver can have a non-NDIS lower edge
ndis drivers13
NDIS Drivers
  • NDIS Intermediate Drivers
ndis drivers14
NDIS Drivers
  • NDIS Intermediate Drivers
    • At it lower edge, exposes protocol entry points(ProtocolXxx functions)
    • At it upper edge, exposes miniport entry points(MiniportXxx functions)
    • It does not actually manage a physical NIC
    • it exports one or more virtual adapters.
    • Intermediate drivers are typically used in the following ways
      • To translate between different network media
      • To filter packets
      • To balance packet transmission across more than on NIC
ndis drivers15
NDIS Drivers
  • NDIS Protocol Drivers
    • The highest driver in the NDIS drivers
    • often used as the lowest-level driver in a transport driver that implements a transport protocol stack(TCP/IP, IPX).
    • At its lower edge, a protocol driver interfaces with intermediate network drivers and miniport NIC drivers.
      • Use NDIS funcions(NdisXxxx)
      • export a set of entry points(ProtocolXxx functions)
    • At its upper edge, a transport protocol driver has a private interface to a higher-level driver in the protocol stack.
ndis drivers16
NDIS Drivers
  • TDI(Transport Driver Interface) Drivers
    • defines a kernel-mode network interface that is exposed at the upper edge of transport protocol stacks.
ndis drivers17
NDIS Drivers
  • TDI Client
    • kernel-mode driver such as redirector and Server.
    • Interface with such transports through TDI
  • simplifies the task of developing transport drivers in that only the TDI interface needs to be coded.
  • Transport drivers that expose only the TDI interface can be used only by TDI client.
network driver environments
Network Driver Environments
  • Network Driver Environments
    • Connectionless drivers
    • Connection-oriented drivers
    • WAN drivers
network driver environments19
Network Driver Environments
  • Connectionless Environment for Network Drivers
    • the standard network driver environment for connectionless media, such as Ethernet and Token Ring.
network driver environments20
Network Driver Environments
  • Connection-Oriented Environment for Network Drivers
    • NDIS supports
      • Connection-oriented miniports
      • Connection-oriented clients
      • Call managers
      • Integrated miniport call managers(MCM)
network driver environments22
Network Driver Environments
  • A connection-oriented miniport
    • control one or more network interface cards(NIC)
    • provides an interface between connection-oriented protocols and the NIC hardware
  • A call manager
    • NDIS protocol that provide call setup and tear-down services for connection-oriented clients
  • An MCM driver
    • connection-oriented miniport that also provides call manager services to connection-oriented clients.
network driver environments23
Network Driver Environments
  • Environment for WAN Network Drivers
    • Windows 2000 supports wide area network (WAN) connections over both connectionless and connection-oriented media
network driver environments25
Network Driver Environments
  • Remote Access Service(RAS)
    • allows user-mode applications to make dial-up connections
  • TAPI service provider
    • user-mode component that accepts call setup and teardown requests from RAS clients and from TAPI-aware applications through the SPI
    • kernel-mode component that exposes connectionless miniports to the TAPI device space.
network driver environments26
Network Driver Environments
    • a kernel-mode component that exposes connection-oriented miniports to the TAPI device space.
    • an intermediate NDIS driver that performs PPP protocol/link framing, compression, and encryption.
  • WAN miniport
    • calls many of the same NDIS functions and supplies many of the same handlers as does a non-WAN NDIS miniport
  • Serial driver
    • standard device driver for internal serial ports or multiport serial cards.
network driver programming considerations
Network Driver Programming Considerations
  • Design Goals for Network drivers written for Windows2000.
    • Portability across platforms
    • Scalable to multiprocessor systems
    • Simple configuration of hardware and software
    • Object-based interfaces
    • Support for asynchronous I/O
  • Microsoft Windows 2000 DDK
    • Network Driver
      • Design guide part 1.