文章目录

  • 前言
  • 一、电子邮件概述
    • 1.邮件信息格式
    • 2.邮件系统的组成结构
  • 二、SMTP协议
    • 1.协议概述
    • 2.通信过程
      • (1)连接建立
      • (2)邮件传送
      • (3)连接释放
    • 3.多媒体扩展
  • 三、POP3协议
  • 四、IMAP协议
  • 五、HTTP协议
  • 总结

前言


提示:以下是本篇文章正文内容

一、电子邮件概述

1.邮件信息格式

一个电子邮件分为信封内容,邮件内容分为首部主体两部分。RFC 822规定了邮件的首部格式,邮件的主体部分则让用户自由撰写。

用户写好首部后,邮件系统自动地将信封所需的信息提取出来并写在信封上,用户不需要亲自填写信封上的信息。

邮件内容的首部包含一些首部行,每个首部行由一个关键字后跟冒号再与内容组成。有些关键字是必需的,有些则是可选的。最重要的关键字是To:和Subject

To是必需的关键字,后面填入一个或多个收件人的电子邮件地址。
电子邮件地址的规定格式为:收件人邮箱名@邮箱所在主机的域名

Subject是可选关键字,是邮件的主题,反映了邮件的主要内容

关键字From必填,但它通常由邮件系统自动填入

首部与主体之间用一个空行进行分割

2.邮件系统的组成结构

电子邮件是一种异步通信方式,通信时不需要双方同时在场,发送者把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可以随时上网到自己使用的邮件服务器进行读取

发送–接收过程:

Email的构成组件

(1)邮件客户端(user agent)

1.用户可以读、写Email消息
2.与服务器交互,收、发Email消息
3.常见的应用:Outlook, Foxmail, Thunderbird
4.Web客户端

(2)邮件服务器(组成电子邮件系统的核心)

1.邮箱:存储发给该用户的Email或收到的邮件
2.消息队列(message queue):存储等待发送的Email
3.邮件服务器采用客户/服务器方式工作,但它能够同时充当客户和服务器

(3)电子邮件使用的协议(SMTP、POP3)

1.邮件发送协议:用于用户代理向邮件服务器发送邮件或在邮件服务器之间发送邮件,通常使用的是SMTP
2.邮件读取协议: 用于用户代理从邮件服务器读取邮件,如POP3

SMTP采用的是”推“(Push)的通信方式,即在用户代理向邮件服务器发送邮件及在邮件服务器之间发送邮件时,SMTP客户端主动将邮件“推”送到SMTP服务器端

POP3采用的是“拉”(Pull)的通信方式,即用户读取邮件时,用户代理向邮件服务器发出请求,“拉”取用户邮箱中的邮件

二、SMTP协议

1.协议概述

SMTP协议是邮件服务器之间传递消息所使用的协议:

SMTP规定了在两个相互通信的SMTP进程之间应如何交换信息,负责发送邮件的SMTP进程是SMTP客户,负责接收邮件的进程是SMTP服务器。SMTP规定了14条命令和21种应答信息

(1)客户端:发送消息的服务器

(2)服务器:接收消息的服务器

(3)使用TCP进行email消息的可靠传输

(4)邮件对应的端口为25

(5)传输过程的三个阶段

1.握手(建立连接)

2.消息的传输(邮件传送)

3.关闭(释放连接)

(6)命令/响应交互模式
命令(command): ASCII文本
响应(response): 状态代码和语句

(7)Email消息只能包含7位ASCII码

2.通信过程

(1)连接建立

发件人的邮件发送到发送方邮件服务器的邮件缓存中后,SMTP客户就每隔一定 时间对邮件缓存扫描一次,如发现有邮件,就使用SMTP的端口号(25) 与接收方邮件服务器的SMTP服务器建立TCP连接

连接建立后,接收方SMTP服务器发出220 Service ready (服务就绪),然后SMTP客户向SMTP服务器发送HELO命令,附上发送方的主机名

注:TCP连接总是在发送方和接收方这两个邮件服务器之间直接建立,不使用中间邮件服务器

(2)邮件传送

连接建立后,就可开始传送邮件, 邮件的传送从MAIL命令开始,MAIL 命令后面有发件人的地址

若SMTP服务器已准备好接收邮件,则回答250 OK

然后SMTP客户端发送一个或多个RCPT命令,格式为RCPTTO: <收件人地址>,每发送一个 RCPT命令,都有相应的信息从SMTP服务器返回,如250 OK或550 No such user here (无此用户)

RCPT命令的作用是:了解接收方系统是否已做好接收邮件的准备,然后才发送邮件,以便不至于发送了很长的邮件后才知道地址错误,进而避免浪费通信资源,

获得0K的回答后,客户端就使用DATA命令,表示要开始传输邮件的内容,正常情况下,SMTP服务器回复信息是354 Enter mail , end with “.” …,此时SMTP客户端就可开始传送邮件内容,后面语句表示邮件内容的结束

(3)连接释放


邮件发送完毕后,SMTP客户应发送QUIT命令
SMTP服务器返回的信息是221 (服务关闭),表示SMTP同意释放TCP连接, 邮件传送的全部过程就此结束

完整过程:

注:SMTP服务器利用CRLF.CRLF确定消息的结束,使用持久性连接

常用命令与SMTP服务器交互

 HELO
 MAIL FROM
 RCPT TO
 DATA
 QUIT

HTTP与SMTP对比:

3.多媒体扩展

由于SMTP只能传送一定长度的ASCII码,非英语国家的文字就无法传送,且无法传送可执行文件及其他二进制对象,因此提出了多用途网络邮件扩充
( Multipurpose Internet MailExtensions,MIME),通过在邮件头部增加额外的行以声明MIME的内容类型

MIME并未改动SMTP或取代它,MIME的意图是继续使用目前的格式,但增加了邮件主体的结构,并定义了传送非ASCII码的编码规则

MIME主要包括以下三部分内容:

①5个新的邮件首部字段,包括MIME版本、内容 描述、内容标识、内容传送编码和内容类型

②定义了许多邮件内容的格式,对多媒体电子邮件的表示方法进行了标准化

③定义了传送编码,可对任何内容格式进行转换,而不会被邮件系统改变

三、POP3协议

POP3协议是邮件访问协议:从服务器获取邮件,邮局协议( Post Office Protocol, POP) 是一个非常简单但功能有限的邮件读取协议,现在使用的是它的第3个版本POP3
POP: Post Office Protocol [RFC 1939] 认证/授权(客户端<—>服务器)和下载

POP3 采用的是“拉”(Pull)的通信方式,当用户读取邮件时,用户代理向邮件服务器发出请求,“拉”取用户邮箱中的邮件, 首先要进行认证,然后才可以进入事务阶段,进行获取邮件

POP使用客户/服务器的工作方式,在传输层使用TCP,端口号为110

POP有两种工作方式:“下载并保留”和“下载并删除”

(1)用户从邮件服务器上读取邮件后,邮件依然会保存在邮件服务器上,用户可再次从服务器上读取该邮件

(2)下载并删除
邮件一旦被读取,就被从邮件服务器上删除,用户不能再次从服务器上读取

注:POP3是无状态的

四、IMAP协议

因特网报文存取协议(IMAP), 它比POP复杂得多,IMAP为用户提供了创建文件夹、在不同文件夹之间移动邮件及在远程文件夹中查询邮件的命令,为此IMAP服务器维护了会话用户的状态信息

(1)所有消息统一保存在一个地方:服务器

(2)允许用户利用文件夹组织消息

(3)IMAP支持跨会话(Session)的用户状态:
 文件夹的名字
 文件夹与消息ID之间的映射等

IMAP允许用户代理只获取报文的某些部分,例如可以只读取一个报文的首部,或一个多部分MIME报文的一部分。这非常适用于低带宽的情况,用户可能并不想取回邮箱中的所有邮件,尤其是包含很多音频或视频的大邮件

POP3和IMAP的区别:

POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作邮件,是不会反馈到服务器上,比如通过客户端读取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的邮件不会改变

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


五、HTTP协议

随着万维网的流行,目前出现了很多基于万维网的电子邮件,如163, QQ Mail

用户浏览器与web的邮件服务器之间的邮件发送或接收使用的是HTTP,而仅在不同邮件服务器之间传送邮件时才使用SMTP

总结

提示:这里对文章进行总结:

邮件访问协议

电子邮件--详解SMTP和POP3协议相关推荐

  1. java smtp pop3_手工体验smtp和pop3协议 邮件实现详解(二)

    上篇博客我们简单介绍了电子邮件的发送和接收过程,对参与其中的邮件服务器,邮件客户端软件,邮件传输协议也有简单的介绍.我们知道电子邮件需要在邮件客户端和邮件服务器之间,以及两个邮件服务器之间进行传递必须 ...

  2. 《TCP/IP详解 卷1:协议》第4章 ARP:地址解析协议

    4.1 引言 本章我们要讨论的问题是只对TCP/IP协议簇有意义的IP地址.数据链路如以太网或令牌环网都有自己的寻址机制(常常为48 bit地址),这是使用数据链路的任何网络层都必须遵从的.一个网络如 ...

  3. SMTP 和 POP3 协议的区别和联系

    SMTP(Simple Mail Transfer Protocol)和POP3(Post Office Protocol 3)是两种常用的电子邮件协议,用于发送和接收电子邮件.虽然它们都涉及到电子邮 ...

  4. 《TCP/IP详解卷1:协议》第6章 ICMP:Internet控制报文协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  5. 《TCP/IP详解卷1:协议》第3章 IP:网际协议(2)-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  6. 《TCP/IP详解卷1:协议》读书笔记

    <TCP/IP详解卷1:协议>读书笔记 - QingLiXueShi - 博客园 https://www.cnblogs.com/mengwang024/p/4425834.html &l ...

  7. UICC 之 USIM 详解全系列——UICC协议层结构

    本人就职于国际知名终端厂商,负责modem芯片研发. 在5G早期负责终端数据业务层.核心网相关的开发工作,目前牵头6G算力网络技术标准研究. UICC 之 USIM 详解全系列--UICC协议层结构 ...

  8. 《TCP/IP详解卷1:协议》第5章 RARP:逆地址解析协议---读书笔记

    <TCP/IP详解卷1:协议>第5章 RARP:逆地址解析协议---读书笔记 1.引言 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址.但是无盘机,如X终端或无盘工作站, ...

  9. 《TCP IP 详解卷1:协议》阅读笔记 - 第十章

    阅读须知:笔记为阅读<TCP IP 详解卷1:协议>后摘抄的一些知识点,其间也有加入一些根据英文原版的自己翻译和结合网上知识后的理解,所以有些段落之间并不能够串联上或者知识点与书上略有差别 ...

  10. 《TCP/IP详解·卷1:协议》随笔(已完结)

    第一章.概述 Internet的成功 Internet体系结构被设计成支持现有网络互联,同时提供了广泛的服务与协议操作. 选用数据包的分组交换主要是因为它的鲁棒性与效率,而相对来说数据安全性与交付可预 ...

最新文章

  1. 对超线程几个不同角度的解释
  2. java异常分析;剖析printStackTrace和fillInStackTrace
  3. AI进军摇滚圈,老炮:这是啥?
  4. CTFshow 反序列化 web271
  5. 【渝粤题库】陕西师范大学210032学前心理学 作业(专升本)
  6. 刘强东发新年信:过去一年我们异常艰难
  7. 《Head First 设计模式》阅读笔记(一)——策略模式
  8. halcon学习之颜色与纹理
  9. ajax全局加密,Ajax请求接口加密研究(针对网页前端的接口安全加密机制研究)...
  10. 在CentOS 5.5安装 Apache2 和 PHP5 及 MySQL
  11. redis数据类型语法及与java连接
  12. 《深入浅出统计学》总结
  13. 推荐9个web前端模板框架
  14. python傅立叶光顺_函数型数据分析若干方法及应用
  15. HP ProLiant DL380 Gen9 升级到 ESXi 7.0 U3
  16. 在 100% 鲜活的时间,请让我遇见你
  17. 菜学C++ Day55 OJ题目1151桐桐数
  18. 关于 nscd,nslcd 和 sssd 套件的综述
  19. DIY:利用单片机自制的RGB拖尾流水灯,含电路图、源代码、演示视频、效果图
  20. 企业申报能力评估CS1级\CS2级该如何选择?

热门文章

  1. 百度坐标转换中文地址(百度地图JavaScript API逆地址解析 )
  2. c语言求定积分的程序,C语言求定积分
  3. error LNK1123: failure during conversion to COFF: file invalid or corrupt
  4. 3.PS 缩小放大、移动、选区工具
  5. ccy测试影响因子版270ms
  6. 电脑桌面云便签怎么将界面最小化?
  7. 去水印小程序源码_图片去水印|去水印喵小程序
  8. 财经大数据可视化Vdc平台_大数据时代-可视化数据分析平台必不可少
  9. WhatsApp即时翻译WhatsApp聊天自动翻译成中文
  10. h.265/HEVC 和 h.264/AVC 比较,在技术上的改进和优势