Mail servers are used to transfer electronic messages over computer network. Mails are transfered with SMTP.
SMTP is the name given to the protocol (or langauge) that is used to transfer email messages between computers. The language has only ten or so words to reduce bandwidth and improve performance. SMTP stands for "Simple Mail Transport Protocol".
Most modern mail servers use ESMTP. ESMTP, stands for "Enhanced Simple Mail Transport Protocol" adds many enhancements to the SMTP protocol. These include security, authentication and other devices designed to save bandwidth and protect servers.
Following are some of the popular open source email server for unix, linux and freebsd servers.
Mail Servers for Windows are