TCP/IP Sockets in C#: Practical Guide for Programmers

Makofske, David; Donahoo, Michael J.; Calvert, Kenneth L.

In stock
Regular price 12.000 KD inc. VAT
License
Table of contents
  • Cover
  • Copyright Pageiv
  • Contentsvii
  • Prefaceix
  • Chapter 1. Introduction1
  • 1.1 Networks, Packets, and Protocols1
  • 1.2 About Addresses4
  • 1.3 About Names5
  • 1.4 Clients and Servers5
  • 1.5 What Is a Socket?6
  • 1.6 Exercises7
  • Chapter 2. Basic Sockets9
  • 2.1 Socket Addresses9
  • 2.2 Socket Implementation in .NET15
  • 2.3 TCP Sockets16
  • 2.4 UDP Sockets29
  • 2.5 The .NET Socket Class37
  • 2.6 Exercises57
  • Chapter 3. Sending and Receiving Messages59
  • 3.1 Encoding Information61
  • 3.2 Composing I/O Streams65
  • 3.3 Framing and Parsing66
  • 3.4 Implementing Wire Formats in C#70
  • 3.5 Wrapping Up83
  • 3.6 Exercises84
  • Chapter 4. Beyond the Basics85
  • 4.1 Nonblocking I/O85
  • 4.2 Multiplexing95
  • 4.3 Threads99
  • 4.4 Asynchronous I/O117
  • 4.5 Multiple Recipients131
  • 4.6 Closing Connections138
  • 4.7 Wrapping Up145
  • 4.8 Exercises146
  • Chapter 5. Under the Hood147
  • 5.1 Buffering and TCP149
  • 5.2 Buffer Deadlock152
  • 5.3 Performance Implications154
  • 5.4 TCP Socket Life Cycle155
  • 5.5 Demultiplexing Demystified165
  • 5.6 Exercises167
  • Appendix: Handling Socket Errors169
  • Bibliography171
  • Index173
Book details
  • Vendor Elsevier S & T
  • SKU 9780124660519
  • ISBN-13 9780080492322
  • Author Makofske, David; Donahoo, Michael J.; Calvert, Kenneth L.
  • Category Computers
  • Subject Network Protocols

Do you have questions about this book?

Ask an expert!

"TCP/IP sockets in C# is an excellent book for anyone interested in writing network applications using Microsoft .Net frameworks. It is a unique combination of well written concise text and rich carefully selected set of working examples. For the beginner of network programming, it's a good starting book; on the other hand professionals could also take advantage of excellent handy sample code snippets and material on topics like message parsing and asynchronous programming."
Adarsh Khare, SDT, .Net Frameworks Team, Microsoft Corporation


The popularity of the C# language and the .NET framework is ever rising due to its ease of use, the extensive class libraries available in the .NET Framework, and the ubiquity of the Microsoft Windows operating system, to name a few advantages. TCP/IP Sockets in C# focuses on the Sockets API, the de facto standard for writing network applications in any programming language. Starting with simple client and server programs that use TCP/IP (the Internet protocol suite), students and practitioners quickly learn the basics and move on to firsthand experience with advanced topics including non-blocking sockets, multiplexing, threads, asynchronous programming, and multicasting. Key network programming concepts such as framing, performance and deadlocks are illustrated through hands-on examples. Using a detailed yet clear, concise approach, this book includes numerous code examples and focused discussions to provide a solid understanding of programming TCP/IP sockets in C#.

Features
*Tutorial-based instruction in key sockets programming techniques complemented by numerous code examples throughout
*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

*Tutorial-based instruction in key sockets programming techniques complemented by numerous code examples throughout

*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