We would like to thank the following individuals for their generous contributions to the making of this book. A very special thanks goes out to Wei Hua for developing all of the Visual Basic examples on our companion CD-ROM. Wei also helped us understand I/O completion ports and transport service providers in the Winsock 2 SPI. Thanks to Barry Butterklee for helping us understand I/O completion ports. Barry also reviewed the QOS chapter to ensure its accuracy. Amol Deshpande provided valuable information on IFS handles in Winsock 2 layered service providers. He also lent us his expert debugging skills on our LSP example. Frank Li provided the original RNR example that was the basis for Chapter 10. Frank also developed some of the IP Helper examples included on the CD-ROM. Arvind Murching and Anshul Dhir answered many questions concerning the ATM Winsock provider. Alex Choe (who understands practically every network protocol used today) helped us with the details of the IPX/SPX protocol for our Winsock address family chapter. Ken Evans helped us define and explain many of the IP Helper API data structures defined in Appendix B. Frank Kim and David Mowers helped us understand Windows NT security used in the Windows redirector, mailslots, and named pipe networking technologies. Matt Nibler verified the technical information about the Windows redirector described in Chapter 2. Gary Yukish helped us understand some of the capabilities of RAS. Sachin Kukreja answered many questions about QOS. And finally, Mazahir "Maaaazy" Poonawala provided us with a RAS example for our companion CD-ROM. Thanks also to the Microsoft Platform SDK documentation group for their generous participation and permission.
We also want to thank Rebecca McKay and Donnie Cameron from Microsoft Press for their efforts to ensure that this would be a great book. Rebecca's editing made the book easy to read and understand, while Donnie verified that the technical information was as accurate as possible.