Internet Mail Access Protocol(交互式邮件存取协议)IMAP是斯坦福大学在1986年开发的研发的一种邮件获取协议。
它的主要作用是邮件客户端(例如MS Outlook Express)可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。当前的权威定义是RFC3501。
IMAP协议运行在TCP/IP协议之上,使用的端口是143。
imap和POP协议的区别
imap与POP3协议的主要区别是用户可以不用把所有的邮件全部下载,可以通过客户端直接对服务器上的邮件进行操作。
POP3协议的指令集:
USER、PASS、LIST、STAT、UIDL、RETR、TOP、RSET、DELE、NOOP、QUIT、APOP
MAP的指令集:
CAPABILITY、NOOP、LOGOUT、STARTTLS、AUTHENTICATE、LOGIN、SELECT、EXAMINE、CREATE、DELETE、RENAME、SUBSCRIBE、UNSUBSCRIBE、LIST、LSUB、STATUS、APPEND、CHECK、CLOSE、EXPUNGE、SEARCH、FETCH、STORE、COPY、UID
IMAP协议的几种状态:
IMAP协议的几种状态:
Not Authenticated State: 非认证状态
这个状态是还没有进行鉴权的过程,就是还没有输入用户名与密码进行校验的状态,这种 状态下你不能对自己数据进行操作,例如你想看一下文件夹列表,或是某封邮件等。
Authenticated State: 认证状态
这个状态是已经输入了用户名密码并且已经得到服务器验证通过,此状态下才能对你的数据进行操作,这也比较好理解。
Selected State: 选择状态
这个状态的前提条件是"认证状态",至于为什么要有这个状态呢,可以理解成是对数据的直接操作,例如:选择一封邮件,将一封邮件设置已读等。
MAP4能以三种模式或者说消息传送范式来与客户进行交互: 离线、在线和断连方式。此外,IMAP4可以让用户访问多个私用和共享邮箱。
在离线方式中,客户软件把邮箱存储在本地硬盘上以进行读取和撰写信息的工作。当需要发送和接受消息时,用户才连接服务器。对于那些长期奔波、很少停留在某个固定处所的人,他们通常使用离线方式。POP3典型地以离线方式工作。
相比之下,在线用户访问的邮箱是在邮件服务器上,但是邮箱仍然由客户软件处理。邮件始终存储在服务器上。在线方式主要是由位置固定的用户使用,典型地是在快速LAN连接下进行。但是从远程拨进的功能较弱的计算机在这种模式下也可以工作得很好。有一些POP3服务器也提供了在线功能,但是,它们没有达到IMAP4的功能级别。
断连方式提供了最大的灵活性。客户软件把用户选定的消息和附件复制或缓存到本地磁盘上,并把原始副本留存在邮件服务器上。缓存中的邮件可以被用户处理,以后用户重新连接邮件服务器时,这些邮件可以与服务器进行再同步。当前,该特性主要由邮件服务器实现,很少有客户软件支持断连方式。在我们评测的产品中,Sun的Internet Mail Client 是唯一提供这一功能的客户软件。
MAP4能以三种模式或者说消息传送范式来与客户进行交互: 离线、在线和断连方式。此外,IMAP4可以让用户访问多个私用和共享邮箱。
在离线方式中,客户软件把邮箱存储在本地硬盘上以进行读取和撰写信息的工作。当需要发送和接受消息时,用户才连接服务器。对于那些长期奔波、很少停留在某个固定处所的人,他们通常使用离线方式。POP3典型地以离线方式工作。
相比之下,在线用户访问的邮箱是在邮件服务器上,但是邮箱仍然由客户软件处理。邮件始终存储在服务器上。在线方式主要是由位置固定的用户使用,典型地是在快速LAN连接下进行。但是从远程拨进的功能较弱的计算机在这种模式下也可以工作得很好。有一些POP3服务器也提供了在线功能,但是,它们没有达到IMAP4的功能级别。
断连方式提供了最大的灵活性。客户软件把用户选定的消息和附件复制或缓存到本地磁盘上,并把原始副本留存在邮件服务器上。缓存中的邮件可以被用户处理,以后用户重新连接邮件服务器时,这些邮件可以与服务器进行再同步。当前,该特性主要由邮件服务器实现,很少有客户软件支持断连方式。在我们评测的产品中,Sun的Internet Mail Client 是唯一提供这一功能的客户软件。
指令简介:
指令
功能
CAPABILITY
服务器响应能力描述,此指令个人理解是当前邮件服务器的能力。
NOOP
与服务器保持连接,可以用来新邮件或者消息状态更新。
LOGOUT
终端服务器连接
STARTTLS
与服务器使用TLS进行交互
AUTHENTICATE
与服务器的认证机制
LOGIN
鉴权登陆,输入用户名与密码
SELECT
选择文件夹
EXAMINE
选择文件夹只读方式
CREATE
创建一个文件夹
DELETE
删除一个文件夹
RENAME
重命名一个文件 www.2cto.com
SUBSCRIBE
订阅指定的邮箱地址
UNSUBSCRIBE
取消订阅
LIST
返回详细的文件夹列表
LSUB
返回订阅的邮箱地址列表
STATUS
请求返回指定邮箱文件夹的状态
APPEND
追加一个状态,例如可以保存一封新的邮件
CHECK
检查当前服务器状态(例如:磁盘,内存等)
CLOSE
永久删除所有消息
EXPUNGE
永久删除所有消息,与CLOSE不同的是,将返回每个消息标识
SEARCH
类似linux
系统find命令,功能很强大可以按照不同条件搜索邮件
FETCH
检索与消息相关数据,例如:获取正文
STORE
改变与消息相关数据,例如:设置邮箱已读、删除状态等
COPY
拷贝指定的消息
UID
返回UID列表用于fetch
POP3
POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,是TCP/IP协议族中的一员(默认端口是110)。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。
POP与POP3
POP协议支持“离线”邮件存储转发处理:
客户端程序连接服务器,下载所有未阅读的电子邮件;一旦将邮件从邮件服务器端送到客户端上,邮件服务器上的邮件将会被删除。目前的
POP3邮件服务器大都可以“只下载邮件,服务器端并不删除”,也就是改进的POP协议。
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。
IMAP
IMAP全称是
Internet Mail Access Protocol,即交互式邮件访问协议,是一个应用层协议(端口是143)。用来从本地邮件客户端(Outlook Express、Foxmail、Mozilla Thunderbird等)访问远程服务器上的邮件。
IMAP和POP3的区别
IMAP像POP3那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP和POP3是邮件访问最为普遍的Internet标准协议。不同的是:
1、IMAP提供Webmail 与电子邮件客户端之间的双向通信,客户端收取的邮件仍然保留在服务器上,同时在客户端上的操作都会反馈到服务器上(如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的。)
。而POP3在客户端的操作不会反馈到服务器上。
2、IMAP更好地支持了从多个不同设备中随时访问新邮件。
3、IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。
4、POP3需要下载未阅读的邮件,IMAP可以不用把所有的邮件全部下载,而是通过客户端直接对服务器上的邮件进行操作。所有通过IMAP传输的数据都会被加密,从而保证通信的安全性。
5、IMAP 整体上为用户带来更为便捷和可靠的体验。POP3 更易丢失邮件或多次下载相同的邮件。