How to Use This Book

This book is divided into three parts:

  • Networking with NetBIOS and the Windows redirector
  • Winsock
  • Client Remote Access Server (RAS)

We look at NetBIOS in Chapter 1. In our experience in Microsoft Developer Support, we found a number of companies still relying on this technology, and until now there has not been an adequate source of information on how to write NetBIOS applications on Win32. Chapter 1 also offers methods for writing robust and cross-platform applications (especially since many developers use NetBIOS to communicate with legacy systems).

Chapters 2 through 4 cover the Windows redirector, mailslots, and named pipes. As you might know, mailslots and named pipes are based on the redirector. We decided to place the redirector in a separate chapter to give you adequate background information on how these three technologies relate to one another. Mailslots are an unreliable, one-way, message-oriented API that operates regardless of what protocols are available on the system. Named pipes offer more features, such as reliable, two-way, stream- and message-oriented data transmission. Named pipes also offer Windows NT security through the redirector, which no other network API provides.

Part II of this book is dedicated to the Winsock API. Chapter 5 is an introduction to Winsock that covers the most common Winsock protocols that programmers use. All Winsock applications must create a socket in order to perform any network communication. This chapter introduces you to the capabilities of each protocol, while Chapter 6 goes over the specifics of how to create a socket and perform simple name resolution for each protocol type.

Chapter 7 is where the real fun begins. Here we introduce the basic client/server programming model and cover the majority of the Winsock functions that deal with connection establishment and acceptance, data transfers, and more. Chapter 8 follows suit with the different I/O methods offered by Winsock. Since Chapter 7 is meant as a kind of introduction, it discusses only the simplest I/O methods, while Chapter 8 is dedicated to presenting the other I/O methods in detail. If you're new to Winsock, Chapters 5 through 7 should give you a solid background in using the API.

Each remaining chapter in the Winsock section deals with a specific aspect or feature of the API. Socket options and ioctl commands are the subject of Chapter 9. This is where we cover most of the commands that affect the behavior of the socket or the protocol itself. This chapter is useful both for learning purposes and as a reference.

Chapter 10 moves to Winsock 2 registration and name resolution (RNR). This is a protocol-independent method for registering and resolving service names to the underlying protocol's address. The recent release of Windows 2000 and Active Directory makes this a chapter of particular significance.

Chapter 11 covers point-to-multipoint communication, including both IP multicasting and ATM point-to-multipoint. In Chapter 12 we cover Quality of Service (QOS), an exciting new technology that allows for guaranteed network bandwidth allocation to applications. Chapter 13 moves to raw IP sockets. In this chapter, we examine how Winsock applications can use raw IP sockets to use Internet Control Message Protocol (ICMP) and Internet Group Membership Protocol (IGMP) as well as other aspects of raw socket programming.

Chapter 14 covers the Winsock Service Provider Interface (SPI). This interface is a means by which a programmer can install a layer between Winsock and lower-level service providers such as TCP/IP for the purpose of manipulating socket and protocol behavior or name registration and resolution. This is an advanced feature that allows software developers to extend Winsock functionality.

Finally, Chapter 15 discusses the Microsoft Visual Basic Winsock control. We decided to include this chapter after seeing how many developers rely on Visual Basic and this control. The control is limited in its ability to utilize the advanced features of Winsock, but it is fantastic for Visual Basic developers who require simple, easy-to-use network communication.

Part III covers client Remote Access Server (RAS). We decided to include a chapter on RAS because of the popularity of the Internet and dial-up communication. The ability for a programmer to add dial-in capability to a network application is quite useful since it makes the program easier for the user. That is, an end user does not need to know how to establish a dial-up connection to use your network application.

We conclude the book with three appendixes. Appendix A is a NetBIOS command reference that we think you will find invaluable. It straightforwardly lists the required input and output parameters for each command. Appendix B covers new IP Helper functions that provide useful information about the network configuration on the current computer. Appendix C is a Winsock error code reference that describes individual errors in detail and offers possible reasons for their occurrence.

We hope that you will find this book to be a valuable learning tool and reference. We believe it is the most comprehensive book about Windows network programming available.



Network Programming for Microsoft Windows
Linux Server Hacks, Volume Two: Tips & Tools for Connecting, Monitoring, and Troubleshooting
ISBN: 735615799
EAN: 2147483647
Year: 1998
Pages: 159

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net