现在的位置: 首页 > 综合 > 正文

邮件协议

2013年10月18日 ⁄ 综合 ⁄ 共 2322字 ⁄ 字号 评论关闭

 简单邮件传输协议(SMTP)是一种基于文本的电子邮件传输协议,是在因特网中用于在邮件服务器之间交换邮件的协议。SMTP是应用层的服务,可以适应于各种网络系统。主要用来发送邮件,端口25。

  SMTP的命令和响应都是基于文本,以命令行为单位,换行符为CR/LF。响应信息一般只有一行,由一个3位数的代码开始,后面可附上很简短的文字说明,下面是SMTP协议的命令列表:

SMTP命令

命令说明

HELLO domain> <CRLF

识别发送方到接收SMTP的一个HELLO命令

MAIL FROM:reverse-path><CRLF

reverse-path>为发送者地址。此命令告诉接收方一个新邮件发送的开始,并对所有的状态和缓冲区进行初始化。此命令开始一个邮件传输处理,最终完成将邮件数据传送到一个或多个邮箱中。

RCPT TO:forward-path><CRLF

forward-path>标识各个邮件接收者的地址

DATA CRLF


接收SMTP将把其后的行为看作邮件数据去处理,以<CRLF.CRLF>标识数据的结尾。

REST CRLF

退出/复位当前的邮件传输

NOOP CRLF

要求接收SMTP仅做OK应答。(用于测试)

QUIT CRLF

要求接收SMTP返回一个OK应答并关闭传输。

VRFY string> <CRLF

验证指定的邮箱是否存在,由于安全因素,服务器多禁止此命令。

EXPN string> <CRLF

验证给定的邮箱列表是否存在,扩充邮箱列表,也常禁止使用。

HELP CRLF

查询服务器支持什么命令

SMTP协议的扩展---MIME

   由于SMTP协议最初只是用于ASCII码的传输,如果只是以英语为日常交流的人来说,SMTP协议基本已经足够了,但对于中文和其他语言就不行了,于是就产生了SMTP协议的扩展协议,MIME(Multipurpose Internet Mail Extensions),一封邮件包括信封、邮件头和邮件体等三个部分。信封显然可以不含有二进制信息,而其它两部分则可能包含任意二进制序列,因此需要加以改进。MIME正是抓住了这两个地方来对他们加以改进。
1)        新增了一些邮件头信息,用来协商MIME的一些参数。
2)        定义了许多邮件内容的格式,对多媒体电子邮件的表示方法进行了标准化。
3)        定义了传送编码,从而可以传送任意二进制文件。
所有的改进措施都是建立在不改变原来的SMTP协议和RFC822的基础上的。事实上,我们可以把这些改进措施,看成是在用SMTP等发送邮件前所采取的预处理。MIME定义了一些SMTP协议额外的邮件头以标识数据有不同的内容,例如

MIME-Version MIME版本 、 Content-Type 内容的类型、 Content-Transfer-Encoding 内容的传输编码方式等,在这里就不一一介绍了。

在里再来看一篇使用MIME协议的邮件例子:

   1 From: "bhw98" bhw98@sina.com
   2 Reply-To: bhw98@sina.com
   3 To: bluesky7810@163.com
   4 Subject: Re: help
   5 X-Mailer: Foxmail 4.2 [cn]
   6 Mime-Version: 1.0
   7 Content-Type: multipart/alternative;
   8  boundary="=====002_Dragon307572345230_====="

  11 This is a multi-part message in MIME format.

  13 --=====002_Dragon307572345230_=====

 

 

 

POP的全称是 Post Office Protocol,即邮局协议,用于电子邮件的接收,它使用TCP的110端口。现在常用的是第三版 ,所以简称为 POP3。POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。

IMAP(Internet消息访问协议)是与POP3对应的另一种协议,但POP3有其天生的缺陷,即当用户接收电子邮件时,所有的信件都从服务器上清除并下载到客户机。在整个收信过程中,用户无法知道邮件的具体信息,只有照单全收入硬盘后,才能慢慢浏览和删除。这使用户几乎没有对邮件接收的控制决定权。一旦碰上邮箱被轰炸,或有比较大的邮件,用户不能通过分析邮件的内容及发信人地址来决定是否下载或删除,从而造成系统资源的浪费。而IMAP协议不但可以克服POP3的缺陷,而且还提供了更强大的功能。
IMAP提供操作的三种模式
在线方式:邮件保留在Mail服务器端,客户端可以对其进行管理。其使用方式与WebMail相类似。
离线方式:邮件保留在Mail服务器端,客户端可以对其进行管理。这与POP协议一样。
分离方式:邮件的一部分在Mail服务器端,一部分在客户端。这与一些成熟的组件包应用(如LotusNotes/Domino)的方式类似。

IMAP的监听端口为143,消息的内在时间和日期是由服务器给出的,而不是在RFC822中信头给出的时间和日期,是消息最后到达的真实日期和时间。如果信息是被IMAP的Copy命令投递的,这应当是源信息的内在时间和日期;如果信息是被IAMP的Append命令投递的,这应当是由Append命令专门描述的时间和日期。

 

 

 

 

 

抱歉!评论已关闭.