Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Network Programming with C# and .NET Core

You're reading from   Hands-On Network Programming with C# and .NET Core Build robust network applications with C# and .NET Core

Arrow left icon
Product type Paperback
Published in Mar 2019
Publisher
ISBN-13 9781789340761
Length 488 pages
Edition 1st Edition
Languages
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Sean Burns Sean Burns
Author Profile Icon Sean Burns
Sean Burns
Arrow right icon
View More author details
Toc

Table of Contents (26) Chapters Close

Preface 1. Section 1: Foundations of Network Architecture FREE CHAPTER
2. Networks in a Nutshell 3. DNS and Resource Location 4. Communication Protocols 5. Packets and Streams 6. Section 2: Communicating Over Networks
7. Generating Network Requests in C# 8. Streams, Threads, and Asynchronous Data 9. Error Handling over the Wire 10. Section 3: Application Protocols and Connection Handling
11. Sockets and Ports 12. HTTP in .NET 13. FTP and SMTP 14. The Transport Layer - TCP and UDP 15. Section 4: Security, Stability, and Scalability
16. The Internet Protocol 17. Transport Layer Security 18. Authentication and Authorization on Networks 19. Caching Strategies for Distributed Systems 20. Performance Analysis and Monitoring 21. Section 5: Advanced Subjects
22. Pluggable Protocols in .NET Core 23. Network Analysis and Packet Inspection 24. Remote Logins and SSH 25. Other Books You May Enjoy

To get the most out of this book

This book assumes a basic knowledge of the principles of object-oriented programming, and an ability to at least read and follow along with C# source code. A basic, high-level understanding of networking concepts and principles is also assumed.

To leverage this book, you will need to at least download and install the latest version of the .NET Core SDK and command-line interface. You should also take the time to familiarize yourself with a C# source code editor, such as Visual Studio Community Edition, or Visual Studio Code, both of which are free to use.

Download the example code files

You can download the example code files for this book from your account at www.packt.com. If you purchased this book elsewhere, you can visit www.packt.com/support and register to have the files emailed directly to you.

You can download the code files by following these steps:

  1. Log in or register at www.packt.com.
  2. Select the SUPPORT tab.
  3. Click on Code Downloads & Errata.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Hands-On-Network-Programming-with-CSharp-and-.NET-Core. In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Conventions used

There are a number of text conventions used throughout this book.

CodeInText: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: "Note the inclusion of the System.Net.Security namespace in our using directives. This is where the AuthenticationLevel enum is defined."

A block of code is set as follows:

var httpRequest = WebRequest.Create("http://test-domain.com");
var ftpRequest = WebRequest.Create("ftp://ftp.test-domain.com");
var fileRequest = WebRequest.Create("file://files.test-domain.com");

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

if(!WebRequest.RegisterPrefix("cpf://", new CustomRequestCreator())) {
throw new WebException("Failure to register custom prefix protocol handler.");
}

Any command-line input or output is written as follows:

$ mkdir css
$ cd css

Bold: Indicates a new term, an important word, or words that you see on screen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "Select System info from the Administration panel."

Warnings or important notes appear like this.
Tips and tricks appear like this.
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime