Microsoft Windows 2000 was designed with networking in mind, and it includes broad networking support that is integrated with the I/O system and the Win32 API. The four basic types of networking software are services, APIs, protocols, and network adapter device drivers, and each is layered on the next to form a network stack. Windows 2000 has well-defined interfaces for each layer, so in addition to using the wide variety of different APIs, protocols, and adapter device drivers that ship with Windows 2000, third parties can extend the operating system's networking capabilities by developing their own.
In this chapter, we take you from the top of the Windows 2000 networking stack to the bottom. First, we present the mapping between the Windows 2000 networking software components and the Open Systems Interconnection (OSI) reference model. Then we briefly describe the networking APIs available on Windows 2000 and explain how they are implemented. You'll learn how network-resource name resolution works and how protocol drivers are implemented. After looking at the implementation of network adapter device drivers, we examine binding, which is the glue that connects protocols to network adapters. Finally, we briefly describe layered networking services included with Windows 2000, such as Active Directory directory service and File Replication service (FRS).