Introduction


Welcome to Network Programming for the Microsoft .NET Framework ! The Microsoft .NET Framework exposes many powerful networking APIs, such as Winsock and Hypertext Transfer Protocol (HTTP), in a simple, easy-to-use, and consistent manner without sacrificing performance. Several technologies that have no counterparts in the unmanaged arena are also exposed, including remoting and serialization. This book examines these technologies, as well as the network- related classes exposed by the .NET Framework.

Information in this book applies to version 1.0 and version 1.1 of the .NET Framework. Features exclusive to version 1.1 are noted in the text. To best explain these features, many of which are significant, the code samples associated with the text were developed using Microsoft Visual Studio .NET 2003, which is based on version 1.1 of the .NET Framework. The project files will not compile under earlier versions of Visual Studio; however, its relatively simple to create a new project file and simply add the code files.

How to Use This Book

This book is divided into three sections, which are:

  • General Concepts

  • Using the Network

  • Advanced Concepts

The first section contains five chapters dedicated to introducing basic concepts. Chapter 1 provides an overview of the .NET Framework, discusses the goals of the Framework and the Common Language Runtime (CLR), and introduces the System.Net namespace. The different application models are also discussed.

Chapter 2 looks at the common I/O architecture of the .NET Framework, which includes streams, readers, and writers. Many of the classes covered here provide a common interface by using streams for performing network transactions.

Chapter 3 is dedicated to threading and the asynchronous I/O pattern. These two concepts are vital for writing scalable, robust network applications with the .NET Framework. The asynchronous I/O pattern is the common method for performing asynchronous operations on streams and on Web and socket requests , as discussed in subsequent chapters.

Chapter 4 covers serialization, which is a powerful mechanism for transferring arbitrary data on a stream. This chapter discusses the different serialization methods (binary, XML, and SOAP) and the classes used to access this functionality.

Chapter 5 is devoted to universal resource identifiers (URIs). We define URIs, discuss how they are used, and introduce the Uri class for parsing and manipulating them. URIs are an integral part of many networking topics covered in this book.

The books second section delves into the network classes that move data. Chapter 6 launches the discussion with an overview of the System.Net namespace that provides the classes dedicated to network communication.

Chapter 7 introduces the Domain Name System (DNS) and the .NET Framework class for accessing DNS. The code samples that are provided resolve names to their protocol address.

Chapters 8 and 9 are devoted to the Socket class, which offers the functionality of the unmanaged Winsock API. Chapter 8 covers socket basics and the client side of socket connections, while Chapter 9 discusses socket servers. These chapters also introduce topics such as datagram sockets, IP multicasting, and raw sockets.

Chapter 10 covers the Web-related classes used to retrieve HTTP content. This chapter offers an introduction to HTTP concepts and describes the Web classes in detail.

The books final section is devoted to advanced networking concepts. Chapter 11 covers XML Web services and describes how XML Web services work within the context of the different layers of the .NET Framework.

Chapter 12 turns to .NET remoting and transports, explaining how to write your own transport and how a transport plugs into the remoting architecture.

Next , Chapter 13 covers network security, including information on code access security, encryption technology, and protocol behaviors that can affect an applications security and robustness.

Chapter 14 is devoted to performance issues and designing and developing applications with performance and scalability in mind. This chapter covers how to manage local machine resources and network resources. It further includes Web classes and how the configurable options affect overall performance.

Finally, Chapter 15 introduces new technologies under development for release in the next major version of the .NET Framework.




Network Programming for the Microsoft. NET Framework
Network Programming for the MicrosoftВ® .NET Framework (Pro-Developer)
ISBN: 073561959X
EAN: 2147483647
Year: 2003
Pages: 121

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