`
iaiai
  • 浏览: 2195486 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

pop3和imap协议的区别

 
阅读更多
pop3和imap协议的区别
现在的邮件系统中通常都支持pop3和imap两种接收邮件的协议,那么这两个到底有什么区别?
前天去参加一个会议,有一个发言者提到这两个有什么区别,在场真正懂得的人不见得很多,觉得有必要在这里讨论一番:
说法一:pop3和imap收邮件,imap可以在服务器上做备份,而pop3则没有这个功能
              这种说法只能说是对了一小部分,因为pop3如果你设置了也可以在服务器上备份邮件
说法二:imap收邮件有收到邮件的标头,而pop3则没有
             这个说法错误,因为两种都有收到邮件的所有信息
正确的说法:
            pop3和imap都是收取邮件的服务协议,只不过是读取的方式不同,pop3把邮件收到本地客户端(outlook,outlook express,...)来读,而imap则是打开服务器上邮件的一个快照来读,也就是说邮件并没有下载到本地,而是存贮在邮件服务器上。

pop3默认只收inbox内的邮件
而imap则可以同步,也就是说可以收你在服务器上新建的其他邮件夹的邮件




POP协议

POP的全称是 Post Office Protocol ,即邮局协议,用于电子邮件的接收,它使用TCP的110端口,现
 在常用的是第三版 ,所以简称为 POP3。POP3仍采用Client/Server工作模式,。当客户机需要服务时,客
 户端的软件(OutlookExpress或FoxMail)将与POP3服务器建立TCP连接,此后要经过POP3协议的三种工作状
 态,首先是认证过程,确认客户机提供的用户名和密码,在认证通过后便转入处理状态,在此状态下用户可
 收取自己的邮件或做邮件的删除,在完成响应的操作后客户机便发出quit命令,此后便进入更新状态,将做
 删除标记的邮件从服务器端删除掉。到此为止整个POP过程完成。



IMAP协议

   IMAP是Internet Message Access Protocol的缩写,顾名思义,主要提供的是通过Internet获取信息的
 一种协议。IMAP象POP那样提供了方便的邮件下载服务,让用户能进行离线阅读,但IMAP能完成的却远远不
 只这些。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才
 作出是否下载的决定。
IMAP (Internet Message Access Potocol) 是一种用于邮箱访问的协议,使用IMAP协议可以在Client端管理 Server上的邮箱,它与pop不同,邮件是保留在服务器上而不是download到本地,在这一点上IMAP是与Webmail相似的。但IMAP有比Webmail更好的地方,它比webmail更高效和安全,可以离线阅读等等,如果想试试可以用Outlook Express,只要配好一个帐号,将我的邮件接收服务器设置为IMAP服务器就可以了。

IMAP(Internet消息访问协议)是与POP3对应的另一种协议,为美国斯坦福大学在1986年开始研发的多重邮箱电子邮件系统。它能够从邮件服务器上获取有关E-mail的信息或直接收取邮件,具有高性能和可扩展性的优点。IMAP为很多客户端电子邮件软件所采纳,如OutlookExpress、NetscapeMessenger等,支持IMAP的服务器端的软件也越来越多,如CriticalPath、Eudora、iPlanet、Sendmail等。
读者不禁要问,POP3也是接收邮件的协议,现在不是用得很好么,为何还要用IMAP协议呢?

POP3协议的不足
的确,POP作为Internet上邮件的第一个离线协议标准,允许用户从服务器上把邮件下载到本地主机上,同时删除保存在邮件服务器上的邮件,从而使用户不必长时间地与邮件服务器连接,很大程度上减少了服务器和网络的整体开销。
但POP3有其天生的缺陷,即当用户接收电子邮件时,所有的信件都从服务器上清除并下载到客户机。在整个收信过程中,用户无法知道邮件的具体信息,只有照单全收入硬盘后,才能慢慢浏览和删除。这使用户几乎没有对邮件接收的控制决定权。一旦碰上邮箱被轰炸,或有比较大的邮件,用户不能通过分析邮件的内容及发信人地址来决定是否下载或删除,从而造成系统资源的浪费。而IMAP协议不但可以克服POP3的缺陷,而且还提供了更强大的功能。
二对IMAP的解析

对IMAP的解析
IMAP提供操作的三种模式
在线方式:邮件保留在Mail服务器端,客户端可以对其进行管理。其使用方式与WebMail相类似。
离线方式:邮件保留在Mail服务器端,客户端可以对其进行管理。这与POP协议一样。
分离方式:邮件的一部分在Mail服务器端,一部分在客户端。这与一些成熟的组件包应用(如LotusNotes/Domino)的方式类似。
IMAP工作原理及特性
在在线方式下,IMAP允许用户象访问和操纵本地信息一样来访问和操纵邮件服务器上的信息。IMAP软件支持邮件在本地文件夹间和服务器文件夹间的随意拖动,以把本地硬盘上的文件存放到服务器上,或将服务器上的文件取回本地,所有的功能仅需要一次鼠标拖放的操作来实现。
在用户端可对服务器上的邮箱建立任意层次结构的文件夹,并可灵活地在文件夹间移动邮件,标出那些读过或回复过的邮件,删除对你来说无用的文件。
IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息,同时还可以享受选择性下载附件的服务。比如一封邮件里含有3个附件,而其中只有1个附件是您需要的,则可以选择只下载这1个附件。你可以充分了解后才作出是否下载,是全部下载还是仅下载一部分等决定,使用户不会因下载垃圾信息而占用宝贵的空间和浪费网费。
IMAP还提供基于服务器的邮件处理以及共享邮件信箱等功能。邮件(包括已下载邮件的副本)在手动删除前保留在服务器中,这有助于邮件档案的生成和共享。用户可在任何客户机上都可查看服务器上的邮件。这让那些漫游用户感到很方便。
同时IMAP也象POP3一样,允许用户从服务器上下载信息到他们的电脑上,这意味着他们仍然可以在离线方式下阅读邮件。
在分离状态下,本地系统上的邮件状态和服务器上的邮件状态,可能和以后再连接时不一样。此时,IMAP的同步机制解决了这个问题。IMAP邮件的客户端软件能够记录用户在本地的操作,当他们连上网络后会把这些操作传送给服务器,服务器也会告诉客户端软件,当用户离线的时候服务器端发生的事件,比如有新邮件到达等,以保持服务器和客户端的同步。
在IMAP下可定义供其他拥有特别访问权利的用户使用的共享文件夹,而使用POP不能实现共享邮件信箱和共享邮件,仅能通过抄送给或用手工传送邮件。共享信箱将使以使用Internet邮件为主的工作组的工作变得更为容易。
IMAP还提供许多特别的功能比如建立子目录和通过IMAP访问Usenet。在系统管理员方面,IMAP也提供了一整套可用的特性。
IMAP的监听端口为143,消息的内在时间和日期是由服务器给出的,而不是在RFC822中信头给出的时间和日期,是消息最后到达的真实日期和时间。如果信息是被IMAP的Copy命令投递的,这应当是源信息的内在时间和日期;如果信息是被IAMP的Append命令投递的,这应当是由Append命令专门描述的时间和日期。
在IMAP协议中定义了很多的命令,可用telnet来执行,例如Authenticate、List和Close等等,此处不再详述。
实现IMAP的不足
在利用服务器磁盘资源方面,IMAP不如POP3。由于使用POP时服务器端的邮件被下载到客户机的同时会删除,因而不占用额外空间用以存放旧的邮件。而IMAP服务器将保持旧的邮件,占用了额外空间,而且需要定期地删除旧邮件。
同时,由于用户查阅信息标题和决定下载哪些附件,也需要一定时间,因此链接时间也比POP方式长。
在应用方面,由于IMAP比较复杂,给开发者开发服务器和客户机的软件带来一些难题。对于ISP来说,采用IMAP意味着要花钱购买相关商业软件,同时会付出高额技术支撑费用,因而商用的实现方案还不多。
目前有一些国内的免费电子邮件站点提供IMAP4的服务,如广州的www.21cn.com,四川的mail.777.net.cn,北京的btamail.net.cn等。只要我们到对应网址申请账号,设置好我们的客户端软件后就可体会到不同于POP3的IMAP新特性。
分享到:
评论

相关推荐

    POP3和imap协议实现客户端操作邮件

    通过邮件开通POP3和imap协议,可以在客户端实现读取邮件 标头、日期、附件等内容,并实现下载附件等功能。(测试网易、新浪、QQ免费邮箱可以实现删除邮件功能并同步到服务器邮箱,但测试免费试用期网易企业邮箱时,...

    mailio是用于MIME格式和SMTP、POP3和IMAP协议的跨平台C++库。它基于标准C++17和Boost库。.zip

    **mailio库详解** `mailio` 是一个强大的C++库,专为处理MIME格式以及支持SMTP(简单邮件传输协议)...通过深入理解MIME格式、SMTP、POP3和IMAP协议,以及Boost库的应用,你可以利用mailio轻松构建高质量的邮件应用。

    java 收取邮件 pop3协议和imap协议都支持

    全功能java收取邮件程序,包括收取附件,含有main方法可以测试,pop3协议和imap协议都支持 Properties props = new Properties(); Session session = Session.getDefaultInstance(props, null); Store ...

    Lumisoft.net pop3和imap接收邮件例子(asp的例子)

    本文将详细阐述Lumisoft.NET库在POP3和IMAP协议下的使用方法,以及如何在ASP.NET Web应用程序中实现邮件接收。 POP3(Post Office Protocol version 3)是一种下载邮件的协议,通常用于将邮件从邮件服务器下载到...

    email电子邮件接收程序,支持SMTP,POP3,IMAP4

    电子邮件是互联网上最基础的通信方式之一,而`email电子邮件接收程序`则是一个能够处理SMTP、POP3和IMAP4协议的应用程序。这些协议在电子邮件系统中各自扮演着不同的角色,使得用户能够发送、接收和管理邮件。 1. *...

    IMAP和POP3有什么区别

    IMAP(Internet Message Access Protocol)和POP3(Post Office Protocol version 3)是两种常见的电子邮件协议,它们都用于从邮件服务器检索电子邮件,但两者的工作方式存在显著差异。 首先,POP3的主要特点是它是...

    邮件服务器支持SMTP/POP3/IMAP/WebMail.

    标题中的“邮件服务器支持SMTP/POP3/IMAP/WebMail”揭示了邮件系统的核心功能,这些协议和技术在电子邮件服务中扮演着至关重要的角色。现在,让我们深入了解一下这些知识点。 1. SMTP(Simple Mail Transfer ...

    实验九 邮件协议SMTP、POP3与IMAP模板.pdf

    本实验主要探讨了三种关键的邮件协议:SMTP(Simple Mail Transfer Protocol)、POP3(Post Office Protocol version 3)和IMAP(Internet Message Access Protocol)。以下是关于这三种协议的详细解释和它们在实际...

    POP3_IMAP4_SMTP简介

    POP3、IMAP4和SMTP是互联网上电子邮件通信的核心协议,它们各自负责电子邮件的不同环节。 首先,SMTP(Simple Mail Transfer Protocol)是邮件传输协议,主要处理邮件的发送。SMTP允许用户从他们的邮件客户端向邮件...

    lumisoft pop3 imap接收邮件

    Lumisoft是一家专注于提供网络通信解决方案的公司,他们的产品中包含了POP3和IMAP这两种常用的邮件接收协议。本文将深入探讨Lumisoft如何利用这两种协议帮助用户有效地接收邮件。 POP3(Post Office Protocol ...

    邮件服务器支持SMTP/POP3/IMAP/WebMail

    标题提到的"邮件服务器支持SMTP/POP3/IMAP/WebMail"是指该邮件服务器实现了四种主要的邮件传输协议,下面将详细介绍这些协议以及它们在邮件服务中的作用。 1. SMTP(Simple Mail Transfer Protocol):SMTP是互联网...

    C#开发的Telnet模拟工具(基于SOCKET通信,可以直接按SMTP/POP3/IMAP通信协议操作)

    C#开发的Telnet模拟工具(基于SOCKET通信,可以按SMTP/POP3/IMAP通信协议操作) 需要注意的是,发送和接收都有编码的控制。比如SMTP基于UTF-8发送,但接收的可能是GBK的。 有的地方做了提示,需要点击控件,并悬停一段...

    smtp pop3 imap 邮件命令

    RFC3501是IMAP的最新官方标准,其中详细规定了IMAP协议的命令、响应和操作流程。它不仅包含IMAP的基本命令,还定义了扩展功能,如IDLE(实时邮件通知)和SEARCH(高效查找邮件)。 在邮件截获与还原技术研究中,...

    Wireshark抓包分析POP3和SMTP协议.pdf

    Wireshark是一款强大的网络封包分析软件,常用于网络故障排查、网络安全...同时,这也提醒我们在进行邮件通信时要注意保护隐私,比如使用加密的IMAP或POP3S协议,以及SSL/TLS加密的SMTP服务,以防止敏感信息被截取。

    商业源码-编程源码-Csharp开发的程序,提供SMTP 客户端和服务器, POP3 和 IMAP4 服务器.zip

    在这个“商业源码-编程源码-Csharp开发的程序”中,我们聚焦的是C#实现的SMTP(Simple Mail Transfer Protocol)客户端和服务器,以及POP3(Post Office Protocol version 3)和IMAP4(Internet Message Access ...

    c#写的邮件服务器实现了smtp pop3 imap ftp icmp 等协议

    3. IMAP:IMAP协议提供了一种更高级的方式来管理邮箱,允许用户在邮件服务器上保持邮件,同时可以在多个设备上同步查看和管理邮件。C#实现的IMAP服务器为用户提供了一种方便的方式,无论何时何地,都能实时访问邮件...

    IMAP协议内容介绍

    此外,IMAP协议允许用户在服务器上直接管理邮件目录,创建、删除和重命名文件夹,这对于需要在不同设备间同步邮件组织结构的用户非常有用。它也支持部分获取邮件内容,例如仅下载邮件的文本部分,而不下载附件,这...

    C# IMAP协议邮件附件获取 引用MailKit

    通过以上步骤,我们就能使用C#和MailKit库实现IMAP协议获取邮件附件的功能。值得注意的是,实际应用中可能需要处理更多细节,如错误处理、SSL/TLS安全连接配置、邮件筛选规则等。此外,对于大型邮件系统,可能还需要...

    mailio:mailio是用于MIME格式和SMTP,POP3和IMAP协议的跨平台C ++库。 它基于标准的C ++ 17和Boost库

    mailio是一个强大的C++库,专为处理MIME格式和实现SMTP、POP3以及IMAP协议而设计。这个库的诞生旨在简化邮件处理过程,使得开发者能够在跨平台环境中高效地进行邮件相关的编程工作。其核心特性包括对C++17标准的严格...

Global site tag (gtag.js) - Google Analytics