+ All Categories
Home > Documents > Windows 2000 Networking Computing Department, Lancaster University, UK.

Windows 2000 Networking Computing Department, Lancaster University, UK.

Date post: 27-Dec-2015
Category:
Upload: jared-thompson
View: 215 times
Download: 0 times
Share this document with a friend
Popular Tags:
21
Windows 2000 Windows 2000 Networking Networking Computing Department, Computing Department, Lancaster University, UK Lancaster University, UK
Transcript
Page 1: Windows 2000 Networking Computing Department, Lancaster University, UK.

Windows 2000 NetworkingWindows 2000 Networking

Computing Department,Computing Department,

Lancaster University, UKLancaster University, UK

Page 2: Windows 2000 Networking Computing Department, Lancaster University, UK.

OverviewOverview

• The OSI Reference ModelThe OSI Reference Model• Overview of the Windows 2000 Overview of the Windows 2000

Networking StackNetworking Stack– ServicesServices– Networking APIsNetworking APIs– Protocol DriversProtocol Drivers– NDIS DriversNDIS Drivers

• Some detail on Winsock2Some detail on Winsock2

Page 3: Windows 2000 Networking Computing Department, Lancaster University, UK.

The OSI Reference ModelThe OSI Reference Model

• Idealized scheme, often used to frame Idealized scheme, often used to frame discussions of networking principlesdiscussions of networking principles– (few systems implement precisely)(few systems implement precisely)

Physical

Data-link

Network

Transport

Session

Presentation

Application

1

2

3

4

5

6

7

Physical

Data-link

Network

Transport

Session

Presentation

Application

1

2

3

4

5

6

7

Transmission Medium

Virtual Communication

Page 4: Windows 2000 Networking Computing Department, Lancaster University, UK.

OSI Model and Windows OSI Model and Windows 2000 Networking 2000 Networking ComponentsComponents• OSI layers don’t OSI layers don’t

correspond to actual correspond to actual softwaresoftware

• Bottom 4 layers are Bottom 4 layers are “the transport”“the transport”

• Top 3 layers are the Top 3 layers are the “user of the transport”“user of the transport”

1

2

3

4

5

6

7Networking application

Networking APIdriver - TDI client

Protocol driver -TDI transport

(TCP/IP, NetBEUI, IPX/SPX, ...)

NDIS library

Ethernet, IrDA, ATM, ....

NDIS miniport

Networking API DLL

TDI

NDIS

HAL

Page 5: Windows 2000 Networking Computing Department, Lancaster University, UK.

OSI Model and Windows OSI Model and Windows 2000 Networking 2000 Networking Components (2)Components (2)• Networking APIs (layers 5 / 6)Networking APIs (layers 5 / 6)

– Provide protocol-independent way for applications to Provide protocol-independent way for applications to communicate across a networkcommunicate across a network

– Can be implemented in user mode or in both user Can be implemented in user mode or in both user mode and kernel modemode and kernel mode

• Transport Driver Interface (TDI) Clients (layer 5)Transport Driver Interface (TDI) Clients (layer 5)– Kernel-mode device drivers that implement the Kernel-mode device drivers that implement the

kernel-mode portion of a networking API’s kernel-mode portion of a networking API’s implementationimplementation

– Use TDI standard to format I/O request packets sent Use TDI standard to format I/O request packets sent to protocol driversto protocol drivers

Page 6: Windows 2000 Networking Computing Department, Lancaster University, UK.

OSI Model and Windows OSI Model and Windows 2000 Networking 2000 Networking Components (3)Components (3)• TDI Transports (layers 3 / 4)TDI Transports (layers 3 / 4)

– Also known as protocol driversAlso known as protocol drivers– Accept I/O request packets from TDI clientsAccept I/O request packets from TDI clients– Likely to require network communicationsLikely to require network communications

• Addition of protocol-specific headers (e.g. TCP, UDP, Addition of protocol-specific headers (e.g. TCP, UDP, IPX)IPX)

• Communicate with adapter drivers using NDIS functionsCommunicate with adapter drivers using NDIS functions

– Often transparently perform:Often transparently perform:• Segmentation and reassemblySegmentation and reassembly• SequencingSequencing• AcknowledgementAcknowledgement• RetransmissionRetransmission

Page 7: Windows 2000 Networking Computing Department, Lancaster University, UK.

OSI Model and Windows OSI Model and Windows 2000 Networking 2000 Networking Components (4)Components (4)• NDIS Library (layer 2)NDIS Library (layer 2)

– Provides encapsulation for adaptor driversProvides encapsulation for adaptor drivers• Hiding from specifics of kernel-mode environmentHiding from specifics of kernel-mode environment

– Exports functions for use by TDI transports, using NDIS - Exports functions for use by TDI transports, using NDIS - Network Driver Interface SpecificationNetwork Driver Interface Specification• Describes the interface that network adapter drivers use to Describes the interface that network adapter drivers use to

communicate with underlying hardwarecommunicate with underlying hardware

• NDIS Miniport drivers (layer 2)NDIS Miniport drivers (layer 2)– Kernel-mode drivers responsible for interfacing TDI Kernel-mode drivers responsible for interfacing TDI

transports to particular network adapterstransports to particular network adapters– Wrapped by NDIS library, to work “cross platform” Wrapped by NDIS library, to work “cross platform” – Communicate with network adapters using NDIS library Communicate with network adapters using NDIS library

functions that resolve to HAL functionsfunctions that resolve to HAL functions

Page 8: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking StackNetworking Stack• ServicesServices

• Networking APIsNetworking APIs

• Protocol DriversProtocol Drivers

• NDIS DriversNDIS Drivers

Page 9: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Services Networking Stack: Services (1) (1) • Remote AccessRemote Access

– Available on Windows 2000 ServerAvailable on Windows 2000 Server– Allows clients to connect to remote access Allows clients to connect to remote access

servers, as if client were physically connected servers, as if client were physically connected to the server’s networkto the server’s network• Provides access to network resources, files, printers Provides access to network resources, files, printers

etc.etc.

– Two types of remote access:Two types of remote access:• Dial-up remote accessDial-up remote access

• Virtual private network (VPN) access (virtual point-to-Virtual private network (VPN) access (virtual point-to-point connection to the server)point connection to the server)

Page 10: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Services Networking Stack: Services (2)(2)• Active DirectoryActive Directory

– Windows 2000 implementation of Lightweight Windows 2000 implementation of Lightweight Directory Access Protocol (LDAP) directory servicesDirectory Access Protocol (LDAP) directory services

– Based on a database that stores objects Based on a database that stores objects representing resources defined by applications in a representing resources defined by applications in a Windows 2000 networkWindows 2000 network• e.g. structure and membership of a domain, including user e.g. structure and membership of a domain, including user

account and password informationaccount and password information

• File Replication ServiceFile Replication Service– Allows for distributed multimaster replication…Allows for distributed multimaster replication…– Changes are propagated to membersChanges are propagated to members– Primarily used by domain controllersPrimarily used by domain controllers

Page 11: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Services Networking Stack: Services (3)(3)• Network Load BalancingNetwork Load Balancing

– Allows the creation of a cluster containing up to 32 Allows the creation of a cluster containing up to 32 computers (cluster hosts)computers (cluster hosts)

– Cluster maintains a single virtual IP addressCluster maintains a single virtual IP address• Client requests go to all computersClient requests go to all computers• Only one replies…Only one replies…

– Load balancing NDIS drivers effectively partition client Load balancing NDIS drivers effectively partition client space among available hostsspace among available hosts

– Does not include services for automatically distributing Does not include services for automatically distributing shared stateshared state• Application must have access to shared stateApplication must have access to shared state

– Ideal applicationsIdeal applications• Web server serving static content, windows media server etc...Web server serving static content, windows media server etc...

Page 12: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Networking Stack: Networking APIs (1)Networking APIs (1)• Windows Sockets (Winsock)Windows Sockets (Winsock)

– Microsoft’s implementation of BSD socketsMicrosoft’s implementation of BSD sockets• Supports both reliable-connection-oriented and unreliable-Supports both reliable-connection-oriented and unreliable-

connectionless communicationconnectionless communication• Windows 2000 provides support for Winsock2 – (more later)Windows 2000 provides support for Winsock2 – (more later)

• Named pipes and mailslotsNamed pipes and mailslots– Named pipes: reliable bi-directional communicationNamed pipes: reliable bi-directional communication– Mailslots: unreliable uni-directional transmissionMailslots: unreliable uni-directional transmission

• Supports broadcast capabilitiesSupports broadcast capabilities

– Both support Windows 2000 securityBoth support Windows 2000 security• Allows servers to control which clients can connectAllows servers to control which clients can connect

– Supports Universal Naming Convention (UNC)Supports Universal Naming Convention (UNC)• Protocol-independent naming…Protocol-independent naming…

Page 13: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Networking Stack: Networking APIs (2)Networking APIs (2)• Remote procedure call (RPC)Remote procedure call (RPC)

– Developed 1980’s…Developed 1980’s…– Part of the OSF/DCE standardPart of the OSF/DCE standard

• NetBIOSNetBIOS– Network Basic Input/Output System (NetBIOS) Network Basic Input/Output System (NetBIOS)

programming APIprogramming API– Until the 1990’s most common programming APIUntil the 1990’s most common programming API– Supported in Windows 2000 for legacy appsSupported in Windows 2000 for legacy apps

• Supported by TCP/IP, NetBEUI, IPX/SPX etc…Supported by TCP/IP, NetBEUI, IPX/SPX etc…

– Microsoft discourages use…Microsoft discourages use…

Page 14: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Other Networking Stack: Other Networking APIsNetworking APIs• Telephony APITelephony API

– Integrates computers with communications devices such as Integrates computers with communications devices such as telephones and modemstelephones and modems

– APIs for device, session and media controlAPIs for device, session and media control

• DCOMDCOM– ““on the wire” protocol for COMon the wire” protocol for COM– DCOM extends COM by letting an applications components reside DCOM extends COM by letting an applications components reside

on different computerson different computers

• Message QueuingMessage Queuing– An API and messaging infrastructureAn API and messaging infrastructure– General purpose platform for applications that take advantage of General purpose platform for applications that take advantage of

loosely coupled messagingloosely coupled messaging– Queues serve as message repositoriesQueues serve as message repositories

• Senders can queue messages for receivers, receivers can de-queue at Senders can queue messages for receivers, receivers can de-queue at their discretiontheir discretion

Page 15: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Protocol Networking Stack: Protocol Drivers (1)Drivers (1)• PurposePurpose

– Networking API drivers take requests and translate them Networking API drivers take requests and translate them into low-level network protocol requestsinto low-level network protocol requests• Transport drivers carry out translationTransport drivers carry out translation

– Separation allows support for multiple protocolsSeparation allows support for multiple protocols

• Protocol drivers supported by Windows 2000Protocol drivers supported by Windows 2000– Data Link Control (DLC)Data Link Control (DLC)

• Primitive protocol used by IBM m/fs and some HP printersPrimitive protocol used by IBM m/fs and some HP printers• ““raw” – no networking API exists – applications interface directly raw” – no networking API exists – applications interface directly

to protocol driverto protocol driver

– NWLinkNWLink• Consists of Novell’s IPX and SPX protocolsConsists of Novell’s IPX and SPX protocols• Included to support interoperability with NetWare serversIncluded to support interoperability with NetWare servers

Page 16: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: Protocol Networking Stack: Protocol Drivers (2)Drivers (2)• Protocol drivers supported by Win 2000 (cont.)Protocol drivers supported by Win 2000 (cont.)

– NetBEUINetBEUI• Once the default for LAN Manager and NetBIOS APIOnce the default for LAN Manager and NetBIOS API• Limited – not routableLimited – not routable• Included in Windows 2000 to support legacy applicationsIncluded in Windows 2000 to support legacy applications

– TCP/IPTCP/IP• Predominant protocol in Windows 2000Predominant protocol in Windows 2000• Developed as the foundation for the Internet, WAN-friendly Developed as the foundation for the Internet, WAN-friendly

characteristicscharacteristics• Only primary protocol installed by defaultOnly primary protocol installed by default• Driver implements TCP, UDP, IP, ARP, ICMP etc…Driver implements TCP, UDP, IP, ARP, ICMP etc…

• Other drivers may be supported, for example:Other drivers may be supported, for example:– ATMATM– AppleTalkAppleTalk

Page 17: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack: NDIS Networking Stack: NDIS Drivers (1)Drivers (1)• PurposePurpose

– Network adaptor vendors provide device drivers that can take Network adaptor vendors provide device drivers that can take network messages and transmit them via proprietary hardwarenetwork messages and transmit them via proprietary hardware• Network Driver Interface Specification (NDIS) lets protocol drivers Network Driver Interface Specification (NDIS) lets protocol drivers

communicate with network adaptor driverscommunicate with network adaptor drivers– NDIS 5 ships with Windows 2000NDIS 5 ships with Windows 2000

• NDIS 5 Features:NDIS 5 Features:– TCP/IP task offloading – allows a NDIS miniport to use TCP/IP task offloading – allows a NDIS miniport to use

advanced features of network adapter advanced features of network adapter • e.g. packet checksums, and IPSece.g. packet checksums, and IPSec• Helps to improve system performance – relieves CPUHelps to improve system performance – relieves CPU

– NDIS drivers can report whether or not network medium is NDIS drivers can report whether or not network medium is active – taskbar icon…active – taskbar icon…

Page 18: Windows 2000 Networking Computing Department, Lancaster University, UK.

The Windows 2000 The Windows 2000 Networking Stack:Networking Stack:NDIS Drivers (2)NDIS Drivers (2)• NDIS 5 Features (cont.):NDIS 5 Features (cont.):

– Fast packet forwarding – network adapter routes Fast packet forwarding – network adapter routes packets not destined for computer, relieving CPUpackets not destined for computer, relieving CPU

– Wake-on-LAN – allows capable network adapter to Wake-on-LAN – allows capable network adapter to bring Windows 2000 out of a suspended power statebring Windows 2000 out of a suspended power state• Triggered by media connections, receipt of protocol-specific Triggered by media connections, receipt of protocol-specific

patterns, the receipt of a magic packet, etc…patterns, the receipt of a magic packet, etc…

– Connection-oriented NDIS – allows NDIS drivers to Connection-oriented NDIS – allows NDIS drivers to support connection oriented media such as ATMsupport connection oriented media such as ATM• Addition of connection-oriented miniport driverAddition of connection-oriented miniport driver• NDIS drivers send packets through established network NDIS drivers send packets through established network

connections rather than placing them on the network mediumconnections rather than placing them on the network medium• Call manager NDIS driver provides call control functionalityCall manager NDIS driver provides call control functionality

Page 19: Windows 2000 Networking Computing Department, Lancaster University, UK.

More Detail on Winsock2More Detail on Winsock2

• Winsock2 API provides a transport service Winsock2 API provides a transport service interfaceinterface– Based around BSD Unix socket interface / paradigmBased around BSD Unix socket interface / paradigm

• (adopted for use by Microsoft for use within Winsock 1.1)(adopted for use by Microsoft for use within Winsock 1.1)

– Transparent network programmingTransparent network programming• Application need not be aware of underlying Application need not be aware of underlying

implementationimplementation

– Winsock2 provides only an interfaceWinsock2 provides only an interface• Allows for the provision of interaction with numerous Allows for the provision of interaction with numerous

underlying heterogeneous transport protocolsunderlying heterogeneous transport protocols

• Existence of both the API and SPIExistence of both the API and SPI

Page 20: Windows 2000 Networking Computing Department, Lancaster University, UK.

Winsock2 Features (1)Winsock2 Features (1)

• Access to protocols other than TCP/IPAccess to protocols other than TCP/IP– Access to a number of installed transport protocols, Access to a number of installed transport protocols,

using familiar socket interfaceusing familiar socket interface– Includes protocol-specific extension mechanisms…Includes protocol-specific extension mechanisms…

• Layered protocolsLayered protocols– Support for protocols that cannot stand alone, and Support for protocols that cannot stand alone, and

therefore rely on a base protocoltherefore rely on a base protocol

• Protocol-independent name resolution facilitiesProtocol-independent name resolution facilities– Standardised set of functions for querying and Standardised set of functions for querying and

working with the range of name resolution working with the range of name resolution mechanisms that exist today (e.g. DNS, X.500 etc.)mechanisms that exist today (e.g. DNS, X.500 etc.)

Page 21: Windows 2000 Networking Computing Department, Lancaster University, UK.

Winsock2 Features (2)Winsock2 Features (2)

• Protocol-independent multicast and multipointProtocol-independent multicast and multipoint– Applications discover what type of capabilities a Applications discover what type of capabilities a

transport provides, and uses these in a generic transport provides, and uses these in a generic mannermanner

• Quality of ServiceQuality of Service– Establishes conventions that applications use to Establishes conventions that applications use to

negotiate required service levelsnegotiate required service levels– Supports parameters such as bandwidth and latencySupports parameters such as bandwidth and latency– Supports network-specific QoS extensions…Supports network-specific QoS extensions…

• OthersOthers– inc. backwards compatibilityinc. backwards compatibility


Recommended