Chapter 16. Networking
The Framework offers a variety of classes in the System.Net.* namespaces for communicating via
standard network protocols, such as HTTP, TCP/IP, and FTP. Here’s a summary
of the key components:
A
WebClientfaçade class for simple download/upload operations via HTTP or FTPWebRequestandWebResponseclasses for low-level control over client-side HTTP or FTP operationsHttpClientfor consuming HTTP web APIs and RESTful servicesHttpListenerfor writing an HTTP serverSmtpClientfor constructing and sending mail messages via SMTPDnsfor converting between domain names and addressesTcpClient,UdpClient,TcpListener, andSocketclasses for direct access to the transport and network layers
Metro applications can access only a subset of these types, namely
WebRequest/WebResponse, and HttpClient. However, they can also use WinRT types
for TCP and UDP communication in Windows.Networking.Sockets, which we demonstrate
in the final section in this chapter.
The .NET types in this chapter are in the System.Net.* and System.IO namespaces.
Network Architecture
Figure 16-1 illustrates the .NET networking types and the communication layers in which they reside. Most types reside in the transport layer or application layer. The transport layer defines basic protocols for sending and receiving bytes (TCP and UDP); the application layer defines higher-level protocols designed for specific applications such as retrieving web pages (HTTP), transferring files (FTP), sending mail (SMTP), and ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access