Read the HTTP specification first, but it starts as simply as typing
% telnet wwwhost 80 Connected to wwwhost Escape character is '^]'. GET /to get the home page for a site. Italics indicate things you type and there is a blank line at the end to indicate the end of the request. Next, you can experiment with the more sophisticated request mechanisms.
Experimental. We would expect FTP to be better on large files, but improvements to HTTP have narrowed the gap. It is possible that modern versions of HTTP would be better at lots of small files, but this is unclear.
% rpcinfo -p diskhost program vers proto port 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper . . . 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs . . . 100002 2 udp 53137 rusersd 100002 3 udp 53137 rusersd 100002 2 tcp 43955 rusersd 100002 3 tcp 43955 rusersdWe expect to find services like NFS and its attendant sub-services, but there may well be others.
Experimental. Watch out for disk caching: the second time you read a file it may still be in memory and the operating system might use that version rather than re-fetching from the disk or the network. You will probably find NFS is several factors of 10, if not 100, slower, and the more remote the disk, the bigger the slowdown.
Disk rates are on the order of gigabits/sec, while networks are likely a fraction of 100Mb/s.
At a simple level, ssh is like encrypted telnet. However, it offers many other applications, such as secure FTP, encrypted port forwarding and a basic VPN.
It uses a RSA and Diffie-Hellman for initial authentication and key exchange, and then standard symmetric key systems like 3DES and AES. Other techniques, like key continuity add to the security.
It is likely that email is read using POP or IMAP from a mail server. If you are lucky, you are using the secure versions POP3S or IMAPS that use SSL/TLS. If not, your email is visible in transit to your machine.
Sending is almost always done using SMTP to a mail server: insecure as again it is readable in transit. There is a secure version SMTPS and there are SSL/TLS extensions to the basic SMTP.
All the above secure protocols encrypt point-to-point, that is, for the duration of the delivery. When stored on the mail servers, the messages are readable by the systems administrators (at least). To ensure only the recipient can read the email, an application layer encryption should be used. Examples are PGP and GnuPG.
So many to choose from! Have a look at /etc/services for ideas.
The problem with ICMP (and it's not alone in this), is that it runs on top of IP, but is conceptually part of the IP layer. So its implementation, while pragmatic, distorts the layering somewhat.
Of course, layers are useful, but you must be careful not to be too inflexible about implementations. This was part of what killed the ISO layer implementations: sticking too closely to the model produced poor and slow code.
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.