The $(U Ftp) class is a very simple FTP client that allows you to communicate with an FTP server. The FTP protocol allows you to manipulate a remote file system (list files, upload, download, create, remove, ...).
The Http class is a very simple HTTP client that allows you to communicate with a web server. You can retrieve web pages, send data to an interactive resource, download a remote file, etc. The HTTPS protocol is not supported.
$(U IpAddress) is a utility class for manipulating network addresses. It provides a set a implicit constructors and conversion functions to easily build or transform an IP address from/to various representations.
Packets provide a safe and easy way to serialize data, in order to send it over the network using sockets (sf::TcpSocket, sf::UdpSocket).
This class mainly defines internal stuff to be used by derived classes.
Socket selectors provide a way to wait until some data is available on a set of sockets, instead of just one. This is convenient when you have multiple sockets that may possibly receive data, but you don't know which one will be ready first. In particular, it avoids to use a thread for each socket; with selectors, a single thread can handle all the sockets.
A listener socket is a special type of socket that listens to a given port and waits for connections on that port. This is all it can do.
TCP is a connected protocol, which means that a TCP socket can only communicate with the host it is connected to.
A UDP socket is a connectionless socket.
Socket-based communication, utilities and higher-level network protocols (HTTP, FTP).