Having explored the heavy-hitter of application-layer protocols with a chapter on HTTP, it will serve us well to look at some of the other less common protocols. That's what we'll be looking at in this chapter. While HTTP is a general-purpose, workhorse protocol, there are a number of reasons why you might consider using File Transfer Protocol (FTP) or Simple Mail Transfer Protocol (SMTP) for specific tasks in your own software, or why those protocols might be leveraged by .NET Core under the hood of some of their more common abstractions. So, in this chapter, we'll see what those reasons might be and learn how to implement those protocols when the situation arises.
The following topics will be covered in this chapter:
- How the FTP standard is defined and how C# implements the protocol in .NET Core
- Understanding the processes for securing file transport...