All user-mode requests from the MUP go through the workstation service. This service consists of two components:
The user-mode interface, which resides in Services.exe in Windows 2000.
The redirector (Mrxsmb.sys), is a file-system driver that interacts with the lower-level network drivers by means of the TDI interface.
The workstation service receives the user request, and passes it to the kernel-mode redirector. The workstation service is shown in Figure B.19.
Figure B.19 Workstation Service
Windows 2000 Redirector
The redirector is a component that resides above TDI and through which one computer gains access to another computer. The Windows 2000 operating system redirector allows connection to Windows 98, Windows 95, Windows for Workgroups, LAN Manager, LAN Server, and other CIFS servers. The redirector communicates to the protocols by means of the TDI interface.
The redirector is implemented as a Windows 2000 file system driver. Implementing a redirector as a file system has many benefits:
Allows applications to call a single API (the Windows 2000 I/O API) to access files on local and remote computers. From the I/O manager perspective, there is no difference between accessing files stored on a remote computer on the network and accessing those stored locally on a hard disk.
Runs in kernel mode and can directly call other drivers and other kernel-mode components, such as cache manager. This improves the performance of the redirector.
Can be dynamically loaded and unloaded, like any other file-system driver.
Can coexist with other redirectors.
Figure B.20 shows the network architecture of the Windows 2000 Redirector.
Figure B.20 Windows 2000 Redirector
Interoperating with Other Networks
Besides allowing connections to Windows 98, Windows 95, peer-to-peer networks, LAN Manager, LAN Server, and MS-Net servers, the Windows 2000 redirector can coexist with redirectors for other networks, such as Novell NetWare and UNIX networks.
Providers and the Provider-Interface Layer
For each additional type of network, such as NetWare or UNIX, you must install a component called a provider. The provider is the component that allows a computer running Windows 2000 Server or Windows 2000 Professional to communicate with the network. The Windows 2000 operating system includes several providers: Client Services for NetWare and Gateway Services for NetWare.
Client Services for NetWare is included with Windows 2000 Professional and allows a computer running Windows 2000 Professional to connect as a client to the NetWare network. The Gateway service, included with Windows 2000 Server, allows a computer running Windows 2000 to connect as a client to the NetWare network and provide gateway services between Microsoft network-based clients and Novell NetWare servers. Other provider DLLs are supplied by the appropriate network vendors.
Accessing a Remote File
When a process on a Windows 2000 computer tries to open a file that resides on a remote computer, the following steps occur:
The process calls the I/O manager to request that the file be opened.
The I/O manager recognizes that the request is for a file on a remote computer, and passes the request to the redirector file-system driver.
The redirector passes the request to lower-level network drivers that transmit it to the remote server for processing.