一、关于电子邮件
电子邮件的主要构成组件包括用户代理UA(User Agent)、发送方服务器和接受方服务器。
邮件服务器需要使用两种不同协议,一种协议用于用户代理向邮件服务器发送邮件或者在邮件服务器之间发送邮件,如 SMTP 协议;另一种协议用于用户代理从邮件服务器读取邮件,如 POP3 协议。
电子邮件发送的过程:
- 发送人撰写需要发送的邮件;
- 发送人点击发送,用户代理把邮件通过 SMTP 协议发送至发送方服务器,用户代理充当 SMTP 客户,而发送方服务器充当 SMTP 服务器;
- SMTP 服务器收到用户代理的邮件后,将邮件存储在邮件缓存队列,等待发送;
- 发送方邮件 SMTP 服务器与接收方 SMTP 服务器建立 TCP 连接,将邮件缓存队列中的邮件依次发送;
- 接收方 SMTP 服务器收到邮件后,将邮件放入收件人用户邮箱;
- 收件人收信时,使用用户代理通过 POP3 或者 IMAP 协议读取邮件。
二、简单邮件传输协议 SMTP
SMTP(Simple Mail Transfer Protocol) 规定了两个互相通信的 SMTP 进程之间应如何交换信息,它规定了14条命令和21种应答信息。
命令是由几个字母组成,应答信息一般为一行信息,有一个3位数字开始,后面附上简单文字说明。
三、电子邮件信息格式
一封电子邮件分位信封和内容,内容包括了首部和主体。用户写好首部后,邮件系统自动将信封所需要的信息提取出来并写在信封上。
- 邮件内容的首部包括一些关键字:
- "To:" 收件人列表,后面填入一个或者多个收件人的电子邮件地址;
- "Subject:" 邮件的主题;
- "Cc:" 全称"Carbon copy",意思是抄送;
- "From:" 发件人电子邮件地址;
- "Date" 发信日期。
四、邮件读取协议 POP3 和 IMAP
现在最常用的邮件读取协议有两个,分别是邮局协议第3个版本 POP3(Post Office Protocol 3)和网际报文存取协议 IMAP(Internet Message Access Protocol)。
- POP3 特点
- 采用客户端-服务器模式,客户端和服务器都必须启动 POP3 进程;
- 在用户输入鉴别信息(用户名和密码)后才能进行邮件读取;
- 用户从 POP 服务器中读取了邮件后,邮件将下载到本地, POP 服务器就将邮件删除;
- POP3 针对 POP 问题进行扩充,第一次读取后邮件还是会在服务器保存一段时间。
- IMAP 特点
- IMAP 是客户端与服务器建立 TCP 连接,在本地操纵服务器上的邮箱;
- IMAP 并没有把邮件复制到客户端,邮件一直存放在 IMAP 服务器。