分为邮件传递代理MTA、邮件存储和获取代理MSA以及邮件客户代理MUA三大模块。
MTA(Mail Transfer Agent)的代表是SendMail,负责接收和传递邮件,如今还要实现反垃圾邮件的功能。
MSA(Mail Submission Agent)将邮件存储到服务器,让用户通过协议读取各自的邮件,代表协议包括POP3和IMAP4。
MUA(Mail User Agent)即邮件客户端,种类繁多。
SMTP(Simple Mail Transfer Protocol)提供了一种邮件传输机制,当接收方和发送方都在一个网络上时,可以直接把邮件发送给对方;当双方不在同一个网络上时,需要通过一个或几个中间服务器转发。
SMTP工作的基本命令有7个:
HELO:发送方问候接收方,后面时发件人的服务器地址或标识。接收方回答OK标识自己的身份。问候和确认过程表明两台及其可以进行通信,同时状态参量被复位,缓冲区被清空。
MAIL FROM:开始传送邮件,其后面跟随发送方邮件地址。清空有关缓冲区,为新邮件做准备。
RCPT TO:这个命令告诉接收方收件人的邮箱。
DATA:接收方把该命令之后的数据作为发送的数据。数据被加入数据缓冲区中,以单独是.的行结束数据。
RSET:通知接收方复位,清除缓冲区和发件人的相关数据。
NOOP: 不影响任何参数,只要求接收方回答OK。
QUIT:要求接收方必须回答OK,然后中断传输。