什么是SMTP协议?它是如何工作的?

电子邮件正在成为当今互联网上最有价值的服务之一 。大多数 Internet 系统使用 SMTP 作为将邮件从一个用户传输到另一个用户的方法 。SMTP 是一种推送协议,用于发送邮件,而POP(邮局协议)或IMAP(互联网消息访问协议)用于在接收方检索这些电子邮件 。
SMTP 基础知识SMTP 是应用层协议 。想要发送邮件的客户端打开到 SMTP 服务器的TCP连接,然后通过该连接发送邮件 。SMTP 服务器是永远在线的侦听模式 。一旦侦听来自任何客户端的 TCP 连接,SMTP 进程就会通过端口 25 启动连接 。成功建立 TCP 连接后,客户端进程会立即发送邮件 。

什么是SMTP协议?它是如何工作的?

文章插图
SMTP协议SMTP 模型有两种类型:
  1. 端到端方法
  2. 存储转发方式
端到端模型用于不同组织之间的通信,而存储转发方法用于组织内部 。想要发送邮件的 SMTP 客户端将直接联系目的地的主机 SMTP,以便将邮件发送到目的地 。SMTP 服务器会将邮件保留给自己,直到邮件成功复制到接收方的 SMTP 。
客户端 SMTP 是发起会话的那个,所以我们称它为客户端 SMTP,而服务器 SMTP 是响应会话请求的那个,所以我们称它为接收方 SMTP 。客户端 SMTP 将启动会话,接收方 SMTP 将响应请求 。
SMTP系统模型在 SMTP 模型中,用户与用户代理 (UA) 打交道,例如 Microsoft Outlook、Netscape、Mozilla 等 。为了使用 TCP 交换邮件,使用了 MTA 。发送邮件的用户不必处理 MTA,因为系统管理员有责任设置本地 MTA 。MTA 维护一个小的邮件队列,以便在收件人不可用时安排邮件的重复投递 。MTA 将邮件传送到邮箱,稍后用户代理可以下载信息 。
SMTP 的组件
  1. 邮件用户代理 (MUA)
  2. 邮件提交代理 (MSA)
  3. 邮件传输代理 (MTA)
  4. 邮件投递代理 (MDA)
1. Mail User Agent (MUA):这是一个帮助您发送和接收邮件的计算机应用程序 。它负责创建要传输到邮件传输代理 (MTA) 的电子邮件消息 。
2. 邮件提交代理(MSA):它是一个计算机程序,主要从邮件用户代理(MUA)接收邮件并与邮件传输代理(MTA)交互以传输邮件 。
3. 邮件传输代理(MTA):它基本上是一种软件,可以借助 SMTP 将邮件从一个系统传输到另一个系统 。
4. 邮件投递代理 (MDA):邮件投递代理或本地投递代理基本上是一个帮助将邮件投递到本地系统的系统 。
SMTP的工作1. 发送方和接收方之间的通信:
发送方的用户代理准备消息并将其发送给MTA 。MTA 的职责是通过网络将邮件传输到接收方的 MTA 。要发送邮件,系统必须有客户端 MTA,要接收邮件,系统必须有服务器 MTA 。
【什么是SMTP协议?它是如何工作的?】2. 发送电子邮件:邮件是由 客户端和服务器
之间的一系列请求和响应消息发送的 。发送的消息由标题和正文组成 。空行用于终止邮件标题,空行之后的所有内容都被视为邮件正文,它是一系列 ASCII 字符 。邮件正文包含收据读取的实际信息 。
3.接收电子邮件:
服务器端的用户代理在特定时间间隔检查邮箱 。如果收到任何信息,它会通知用户有关邮件的信息 。当用户尝试阅读邮件时,它会显示一个电子邮件列表,其中包含邮箱中每封邮件的简短描述 。通过选择任何邮件,用户可以在终端上查看其内容 。
一些 SMTP 命令
  • HELO – 向服务器标识客户端,完全合格的域名,每个会话只发送一次
  • MAIL – 发起消息传输,发起者的完全限定域
  • RCPT – 遵循 MAIL,标识收件人,通常是收件人的完全限定名称,对于多个收件人,每个收件人使用一个 RCPT
  • DATA——逐行发送数据
更多信息,您可以参考SMTP 命令 。
SMTP 和扩展 SMTP 之间的区别Extended STMP是 SMTP 的扩展版本 。扩展 SMTP 是一组用于在 Internet 上发送和接收电子消息的协议 。首先,电子邮件通过 ESTMP 从发件人发送到发件人服务器,并通过 ESTMP 从互联网上的发件人服务器发送到收件人服务器 。ESMTP 遵循与 SMTP 相同的协议 。与 SMTP 相比,它增加了更多的功能、安全性和身份验证 。
让我们看看它们之间的一些基本区别 。
邮件传输协议扩展 SMTP由于发送了大规模的诈骗电子邮件,用户未在 SMTP 中进行验证 。在扩展 SMTP 中,发件人的身份验证已完成 。没有 MMIE 的帮助,我们无法直接在 SMTP 中附加多媒体文件 。我们可以直接在 ESMTP 中附加多媒体文件 。我们无法减小扩展 SMTP 中电子邮件的大小 。我们可以减少扩展 SMTP 中电子邮件的大小 。SMTP 客户端使用命令 HELO 打开传输 。ESMTP 客户端的主要识别功能是使用命令 EHLO(扩展 HELLO)打开传输 。SMTP的优点
  • 如有必要,用户可以拥有专用服务器 。
  • 它允许批量邮寄 。
  • 成本低,覆盖面广 。
  • 提供电子邮件跟踪选项 。
  • 可靠和及时的电子邮件发送 。
SMTP 的缺点
  • SMTP 的公共端口可以被多个防火墙阻止 。
  • SMTP 安全是一个更大的问题 。
  • 它的简单性限制了它的实用性 。
  • 只能使用 7 位 ASCII 字符 。
  • 如果邮件超过一定长度,SMTP 服务器可能会拒绝整个邮件 。
  • 传递消息通常会涉及服务器之间的额外来回处理,这会延迟发送并增加不发送消息的可能性 。