The conversation between browsers and servers takes place according to the hypertext transfer protocol, or HTTP.
Written by Tim Berners-Lee, it was first implemented on the web in 1991 as HTTP 0.9. Currently, web browsers and servers support version 1.1 of HTTP. It supports persistent connections, meaning that once a browser connects to a web server, it can receive multiple files through the same connection.
The mail protocol most people are most familiar with is POP, which has long been the industry standard for serving and retrieving email. A client, which is the sort of desktop mail program with which everyone’s familiar, connects to the POP server and says, “Do you have any messages for me?” If the answer is yes, the client gets a list of the messages, downloads them, and optionally either deletes them from the server or leaves them in place. That’s pretty much the entire capability of POP.
IMAP is an alternative to POP that offers many advantages. Notably, it keeps centralized copies of messages on the server, where they can be accessed from anywhere, rather than fragmented and hidden away in various non-synchronized, non-centralized desktop mailboxes. The mail client interacts with the centralized messages, so your mailboxes look the same at any computer you access them from. The read/unread/replied status of each message is tracked on the server too.
Since IMAP requires long-term storage of messages on the server, email providers have long preferred POP and its quick, space-saving turnaround, which passes the expense of long-term storage on to the user. In fact, almost no popular consumer email provider offers IMAP. Running your own server, though, you can take advantage of IMAP’s benefits. The majority of desktop email clients — Outlook, Eudora, Apple Mail, Thunderbird, et al. — are already ready for IMAP. If you prefer a web-based interface, you can set that up too.
Set Up a Debian or Ubuntu Machine as a Maildrop