写点什么

电子邮件的传送过程

作者:秋名山码民
  • 2022 年 5 月 27 日
  • 本文字数:1119 字

    阅读完需:约 4 分钟

电子邮件的传送过程

电子邮件,可靠的传输是第一位,所以使用 TCP 协议,目前我们常用的 SMTP 作为邮件发送协议,常用的 POP3 作为邮件读取协议。SMTP 和 POP3 (或 IMAP)都是使用 TCP 连接来传送邮件的,下面我们基于邮件的发送和接收来简述一下这几个协议

SMTP 协议

SMTP 规定了在两个相互通信的 SMTP 进程之间应如何交换信息。由于 SMTP 使用客户服务器方式,因此负责发送邮件的 SMTP 进程就是 SMTP 客户,而负责接收邮件的 SMTP 进程就是 SMTP 服务器。至于邮件内部的格式,邮件如何存储,以及邮件系统应以多快的速度来发送邮件,SMTP 也都未做出规定。


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


  1. 客户端:发送信息的服务器

  2. 服务端:接收信息的服务器

  3. 使用 TCP 进行 email 信息的可靠传输

  4. 传输的三个阶段

  5. 握手

  6. 消息的传输

  7. 关闭

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

  9. Email 消息只能包含 7 位 ASCII 码

POP3 协议

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


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


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


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


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


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


注:POP3 是无状态的

IMAP 协议

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


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

  • 允许用户利用文件夹组织消息

  • MAP 支持跨会话(Session)的用户状态


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


POP3 和 IMAP 的区别


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


IMAP 提供 webmail 与电子邮件客户端之间的双向通信

发布于: 刚刚阅读数: 4
用户头像

卷不死,就往…… 2021.10.19 加入

2019NOIP退役成员,华为云享专家,阿里云专家博主,csdn博主,努力进行算法分享,有问题欢迎私聊

评论

发布
暂无评论
电子邮件的传送过程_TCP_秋名山码民_InfoQ写作社区