
TCP/IP Sockets in C#
Practical Guide for Programmers
Description
Key Features
*Discussion moves quickly into the C# Sockets API definition and code examples, desirable for those who want to get up-to-speed quickly
*Important coverage of "under the hood" details that developers will find useful when creating and using a socket or a higher level TCP class that utilizes sockets
*Includes end-of-chapter exercises to facilitate learning, as well as sample code available for download at the book's companion web site
Readership
Table of Contents
- 1 Introduction
1.1 Networks, Packets,and Protocols
1.2 About Addresses
1.3 About Names
1.4 Clients and Servers
1.5 What Is a Socket?
1.6 Exercises
2 Basic Sockets
2.1 Socket Addresses
2.2 Socket Implementationin.NET
2.3 TCP Sockets
2.4 UDP Sockets
2.5 The.NET Socket Class
2.6 Exercises
3 Sending and Receiving Messages
3.1 Encoding Information
3.2 Composing I/O Streams
3.3 Framing and Parsing
3.4 Implementing Wire Formats in C#
3.5 Wrapping Up
3.6 Exercises
4 Beyond the Basics
4.1 Nonblocking I/O
4.2 Multiplexing
4.3 Threads
4.4 Asynchronous I/O
4.5 Multiple Recipients
4.6 Closing Connections
4.7 Wrapping Up
4.8 Exercises
5 Under the Hood
5.1 Buffering and TCP
5.2 Buffer Deadlock
5.3 Performance Implications
5.4 TCP Socket Life Cycle
5.5 Demultiplexing Demystified
5.6 Exercises
Appendix: Handling Socket Errors
Bibliography
Index
Product details
- No. of pages: 192
- Language: English
- Copyright: © Morgan Kaufmann 2004
- Published: April 29, 2004
- Imprint: Morgan Kaufmann
- eBook ISBN: 9780080492322
- Paperback ISBN: 9780124660519
About the Authors
David Makofske
Affiliations and Expertise
Michael Donahoo
Michael J. Donahoo teaches networking to undergraduate and graduate students at Baylor University, where he is an assistant professor. He received his Ph.D. in computer science from the Georgia Institute of Technology. His research interests are in large-scale information dissemination and management.
Affiliations and Expertise
Kenneth Calvert
Kenneth L. Calvert is an associate professor at University of Kentucky, where he teaches and does research on the design and implementation of computer network protocols. He has been doing networking research since 1987, and teaching since 1991. He holds degrees from MIT, Stanford, and the University of Texas at Austin.