POP3

POP3,全名为“Post Office Protocol - Version 3”,即“邮局协议版本3”。是TCP/IP协议族中的一员,由RFC1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S。

POP 协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户机程序以连接服务器,并下载所有未阅读的电子邮件。这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端送到个人终端机器上,一般是PC机或 MAC。一旦邮件发送到 PC 机或MAC上,邮件服务器上的邮件将会被删除。但目前的POP3邮件服务器大都可以“只下载邮件,服务器端并不删除”,也就是改进的POP3协议。

通过POP3协议,收信人不需要参与到与邮件服务器之间的邮件读取过程,简化了用户操作. 收信人可以“离线”地进行邮件处理,很方便地接收,阅读邮件。

当服务器收到DELE命令后,仅仅将邮件标记为删除,真正的删除操作在更新状态下执行. 如果还未进入到更新状态,客户可以发送RSET命令撤消以前的DELE命令.

POP的三种状态

认证状态,处理状态和更新状态。当客户机与服务器建立连接时,客户机向服务器发送自己身份(这里指的是账户和密码)并由服务器成功确认,即客户端由认可状态转入处理状态,在完成列出未读邮件等相应的操作后客户端发出quit命令,退出处理状态进入更新状态,开始下载未阅读过的邮件到计算机本地之后最后重返认证状态确认身份后断开与服务器的连接。具体原理如下图

等待连接身份确认quit命令

C——|认证|—————|处理|——————|更新|----S

|__________________________________|

重返认证状态。

安全问题

POP3使用PASS命令传送用户的密码,并以明文传送,因此具有安全隐患。现在,POP3提供另外一个命令APOP,可以安全传输用户密码,避免了安全隐患,但是目前大多数windows上的邮件客户端不支持APOP协议

SMTP

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转发出的电子邮件。

SMTP使用由TCP提供的可靠的数据传输服务把邮件消息从发信人的邮件服务器传送到收信人的邮件服务器。跟大多数应用层协议一样,SMTP也存在两个 端:在发信人的邮件服务器上执行的客户端和在收信人的邮件服务器上执行的服务器端。SMTP的客户端和服务器端同时运行在每个邮件服务器上。当一个邮件服 务器在向其他邮件服务器发送邮件消息时,它是作为SMTP客户在运行。

SMTP协议与人们用于面对面交互的礼仪之间有许多相似之处。首先,运行在发送端邮件服务器主机上的SMTP客户,发起建立一个到运行在接收端邮件服务 器主机上的SMTP服务器端口号25之间的TCP连接。如果接收邮件服务器当前不在工作,SMTP客户就等待一段时间后再尝试建立该连接。SMTP客户和服务器先执行一些应用层握手操作。就像人们在转手东西之前往往先自我介绍那样,SMTP客户和服务器也在传送信息之前先自我介绍一下。 在这个SMTP握手阶段,SMTP客户向服务器分别指出发信人和收信人的电子邮件地址。彼此自我介绍完毕之后,客户发出邮件消息。

SMTP的工作过程

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

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

SMTP要经过建立连接、传送邮件和释放连接3个阶段。具体为:

(1)建立TCP连接。

(2)客户端向服务器发送HELO命令以标识发件人自己的身份,然后客户端发送MAIL命令。

(3)服务器端以OK作为响应,表示准备接收。

(4)客户端发送RCPT命令。

(5)服务器端表示是否愿意为收件人接收邮件。

(6)协商结束,发送邮件,用命令DATA发送输入内容。

(7)结束此次发送,用QUIT命令退出。

SMTP服务器基于DNS中的邮件交换(MX)记录路由电子邮件。电子邮件系统发邮件时是根据收信人的地址后缀来定位邮件服务器的。SMTP通过用户代理程序(UA)完成邮件的编辑、收取和阅读等功能;通过邮件传输代理程序(MTA)将邮件传送到目的地。

IMAP

IMAP(Internet Mail Access Protocol,Internet邮件访问协议)以前称作交互邮件访问协议(Interactive Mail Access Protocol)。IMAP是斯坦福大学在1986年开发的一种邮件获取协议。它的主要作用是邮件客户端(例如MS Outlook Express)可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。当前的权威定义是RFC3501。IMAP协议运行在TCP/IP协议之上,使用的端口是143。它与POP3协议的主要区别是用户可以不用把所有的邮件全部下载,可以通过客户端直接对服务器上的邮件进行操作。

IMAP的特点

与POP3协议类似,IMAP(Internet消息访问协议)也是提供面向用户的邮件收取服务。常用的版本是IMAP4。

IMAP4改进了POP3的不足,用户可以通过浏览信件头来决定是否收取、删除和检索邮件的特定部分,还可以在服务器上创建或更改文件夹或邮箱。它除了支持POP3协议的脱机操作模式外,还支持联机操作和断连接操作。它为用户提供了有选择的从邮件服务器接收邮件的功能、基于服务器的信息处理功能和共享信箱功能。IMAP4的脱机模式不同于POP3,它不会自动删除在邮件服务器上已取出的邮件,其联机模式和断连接模式也是将邮件服务器作为“远程文件服务器”进行访问,更加灵活方便。IMAP4支持多个邮箱。

IMAP4的这些特性非常适合在不同的计算机或终端之间操作邮件的用户(例如你可以在手机、PAD、PC上的邮件代理程序操作同一个邮箱),以及那些同时使用多个邮箱的用户。

IMAP的功能

支持连接和断开两种操作模式。当使用POP3时,客户端只会连接在服务器上一段的时间,直到它下载完所有新信息,客户端即断开连接。在IMAP中,只要用户界面是活动的和下载信息内容是需要的,客户端就会一直连接在服务器上。对于有很多或者很大邮件的用户来说,使用IMAP4模式可以获得更快的响应时间。支持多个客户同时连接到一个邮箱。POP3协议假定邮箱当前的连接是唯一的连接。相反,IMAP4协议允许多个用户同时访问邮箱同时提供一种机制让客户能够感知其他当前连接到这个邮箱的用户所做的操作。

IMAP的用户无需下载附件就可以浏览消息内容或者在获取内容的同时浏览。支持在服务器保留消息状态信息。通过使用在IMAP4协议中定义的标志客户端可以跟踪消息状态,例如邮件是否被读取,回复,或者删除。这些标识存储在服务器,所以多个客户在不同时间访问一个邮箱可以感知其他用户所做的操作。支持在服务器上访问多个邮箱。IMAP4客户端可以在服务器上创建,重命名,或删除邮箱(通常以文件夹形式显现给用户)。支持多个邮箱还允许服务器提供对于共享和公共文件夹的访问。支持服务器端搜索。IMAP4提供了一种机制给客户使客户可以要求服务器搜索符合多个标准的信息。在这种机制下客户端就无需下载邮箱中所有信息来完成这些搜索。支持一个定义良好的扩展机制。吸取早期Internet协议的经验,IMAP的扩展定义了一个明确的机制。很多对于原始协议的扩展已被提议并广泛使用。无论使用POP3还是IMAP4来获取消息,客户端使用SMTP协议来发送。邮件客户可能是POP客户端或者IMAP客户端,但都会使用SMTP。

POP与IMAP的区别:

1、POP是在处理状态,只有当完成处理执行quit命令后,POP服务器更新删除已读邮件,而IMAP是实时的。

POP是把服务器上的邮件下载到本地来处理,任何处理都在本地,

而IMAP无需用户下载附件就可以浏览消息内容或者在获取内容的同时浏览消息,IMAP的本地的处理实际上是与服务器交互后,在服务器上处理。

2、POP协议假定了邮箱当前的连接是唯一的,而IMAP可以支持多个客户端可以同时使用邮箱;

3、POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的。

而IMAP提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。

同时,IMAP像POP3那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。此外,IMAP 更好地支持了从多个不同设备中随时访问新邮件。

POP3:

只能用一个邮件客户端查看邮件;邮件会存储在邮件客户端;已发送的邮件是存在客户端,而非服务器上。

这并不一定表示你只能用一个客户端来收取邮件,这取决于邮件服务器和邮件客户端的设置,在你用一个客户端收取邮件后,服务器或许还会为你保留一段时间,这样,你还可以用另外一个客户端来收取邮件。但如果你客户端设置成了收到后不保留邮件,那另一个客户端就收取不到了。还有,服务器不会为你同步读取状态,所以,你用一个客户端收取后,用另一个客户端收取时,你会发现,你已经看过的邮件还是未读的状态。总之,POP协议,顾名思义,是仿照我们古老的邮局行为设计:邮差把信件投递出去了,邮局就不会保留你的信件了。

IMAP:

可用多个客户端查看邮件;邮件是存在服务器上的;已发送邮件也存在服务器上。

也就是说,IMAP协议,基本上是要求服务器与客户端是同步的。事实上,IMAP协议设计出来,就是为了取代POP3协议的。尤其现在大家一般都有多个终端的情况下(PC机、手提、平板、手机),IMAP协议无疑是更为方便的了。

总之,IMAP 整体上为用户带来更为便捷和可靠的体验。POP3 更易丢失邮件或多次下载相同的邮件,而IMAP 通过邮件客户端与webmail 之间的双向同步功能很好地避免了这些问题。

注:若在web邮箱中设置了“保存到已发送”,使用客户端POP服务发信时,已发邮件也会自动同步到网页端“已发送”文件夹内。

试简述smtp通信的三个阶段的过程_POP3_SMTP_IMAP初步介绍相关推荐

  1. 试简述smtp通信的三个阶段的过程_通信原理简答题汇总

    模拟调制的主要方式有哪些,他们各有什么优点和缺点 AM调制:优点是接收设备简单:缺点是功率利用率低,抗干扰能力差,信号带宽较宽,频带利用率不高.因此,AM制式用于通信质量要求不高的场合,目前主要用在中 ...

  2. 试简述smtp通信的三个阶段的过程_从输入URL到页面加载的过程?《转载》

    这是我看过这个问题最完整/优质的回答了,转来分享 知乎的排版不太好,可以浏览博客原文: http://gaoxiang.ga/index.php/archives/36/​gaoxiang.ga 前言 ...

  3. 试简述smtp通信的三个阶段的过程_海格通信有力支撑天通(卫星移动通信)系统正式面向全社会提供服务...

    核心导读: 2020年1月10日,由我国自主建设的第一个卫星移动通信系统--天通系统正式面向全社会提供服务,专用号段为"1740",标志着我国自主卫星电话正式商用,打破该领域被国外 ...

  4. 试简述smtp通信的三个阶段的过程_海格通信有力支撑天通系统正式面向全社会提供服务...

    核心导读: 2020年1月10日,由我国自主建设的第一个卫星移动通信系统--天通系统正式面向全社会提供服务,专用号段为"1740",标志着我国自主卫星电话正式商用,打破该领域被国外 ...

  5. 试简述smtp通信的三个阶段的过程_智能变电站的演化过程

    1.1 变电站二次设备的发展过程 任何事物的发展都是阶梯型渐进式的,智能变电站也不例外.变电站二次设备的发展历史主要是继电保护设备的发展历史,继电保护装置在历史上大致分为 继电器保护 ​ 微机保护 ​ ...

  6. 计算机网络中分组交换的要点是什么,【分组交换的要点】_试简述分组交换的要点_02、试简述分组交换的要点。...

    1-02.试简述分组交换的要点. 答:在分组交换网络中,采用存储转发方式工作,数据以短的分组形式传送.如 果一个源站有一个长的报文要发送, 该报文就会被分割成一系列的分组. 每个分 组包含用户数据的一 ...

  7. exchange邮件中继服务器搭建,使用 Exchange 2010 传输中继应用程序服务器 SMTP 通信...

    使用 Exchange 2010 传输中继应用程序服务器 SMTP 通信 05/13/2016 本文内容 适用于: Exchange Server 2010 SP2, Exchange Server ...

  8. 【转】简述TCP的三次握手过程

    [转]简述TCP的三次握手过程 TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入S ...

  9. 职业高中计算机网络试讲稿,2021教师资格证考试面试高中信息技术试讲稿——《建立数据库的基本过程》...

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系:55525090@qq.com,我 ...

  10. 简述计算机控制系统调试和运行的过程,简述计算机控制系统的一般控制过程

    <简述计算机控制系统的一般控制过程>由会员分享,可在线阅读,更多相关<简述计算机控制系统的一般控制过程(2页珍藏版)>请在人人文库网上搜索. 1.1. 简述计算机控制系统的一般 ...

最新文章

  1. C语言怎么开辟超大内存?(malloc)
  2. Boost:boost::atomic用法实例
  3. 前端学习(2681):重读vue电商网站1之后台启动
  4. mysql 备份表_Mysql 表的备份与恢复
  5. POJ 2182 Lost Cows
  6. Matlab相关工具箱下载地址汇总
  7. html代码学习离线文档,新手学HTML代码的简易方法
  8. 机场精细化管理_王晓鸿:BIM技术在机场工程精细化管理的应用
  9. 对虎牙直播进行爬取,并对信息进行处理分析
  10. OneDrive说明与OneNote的同步操作
  11. 电脑上总显示宽带连接服务器怎么办啊,电脑显示宽带已连接但网页打不开怎么办...
  12. 【Datawhale】之LeetCode分类练习(分治)
  13. 【ML】英雄联盟对局胜负预测任务
  14. iOS小知识:如何使用教育商店购买Apple M1 Max
  15. 组合数学——牡牛和牝牛
  16. 【从零开始的Java开发】1-4-3 多态:概念、实现、向上转型、向下转型、instanceof、类型转换、抽象类、抽象方法
  17. 软件项目管理(CMMI成熟度)实践——之决策分析(1)
  18. Qt -- 19模态和非模态对话框
  19. MPB:上海交大王风平组-​海洋沉积物样品细胞提取及荧光显微镜计数法
  20. 清除浮动最常用的四种方法

热门文章

  1. linux内存查看命令
  2. N字霸气多空博弈大师能量潮拐点战法通达信 主图/副图/选股指标
  3. 数据中台(五)数据开发:数据价值提炼工厂
  4. python使用pip卸载和安装库
  5. 如何基于TwinCAT3实现伺服电机控制(一)
  6. QT 处理TCP粘包问题
  7. Android中的Apk的加固(加壳)原理解析和实现
  8. 一篇文章彻底掌握 HDFS 跨集群跨版本数据同步工具 hadoop disctp
  9. MCS51单片机的型号与组成
  10. golang实现简单rpc调用