前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SMTP协议详解

SMTP协议详解

作者头像
秋名山码神
发布2022-12-13 15:13:22
1.5K0
发布2022-12-13 15:13:22
举报
文章被收录于专栏:码神随笔

电子邮件有三个主要的组成部分:用户代理,邮件服务器和简单的邮件传输协议(SMTP),我们几天主要来说一下在应用层中的SMTP协议,它使用TCP可靠数据传输服务,像大多数应用层协议一样,SMTP也有俩个部分:运行在发送方邮件服务器的客户端和运行在接收方邮件服务器的服务器端,每台邮件服务器既运行SMTP服务器端也运行SMTP客户端

SMTP发送邮件之前需要将二进制多媒体编码为ASCII码,并且在使用SMTP传输后要求将相应的ASCII码邮件解码还原为多媒体数据,我们知道的是HTTP传输前不需要将多媒体数据编码为ASCII码。

为了通俗的理解SMTP原理,我们来看下面这个案例:

  1. ymm调用他的邮件代理程序并提供jay的邮件地址,写好以后,指示用户代理发送该报文。
  2. ymm的用户代理把报文发给他的邮件服务器,在那里报文被放入报文队列中
  3. 运行在ymm的邮件服务器上的SMTP客户端发现了报文队列中的这个报文,它就创建一个到运行在jay的邮件服务器上的SMTP服务器的TCP连接
  4. 在经过一些初始SMTP握手后,SMTP客户通过该TCP连接发送ymm的报文
  5. 在jay的邮件服务器上,SMTP的服务器端接收报文,jay的邮件服务器然后将该报文放入jay的邮箱中
  6. 在jay方便的时候,调用用户代理阅读该报文

STMP一般不使用中间邮件服务器发送邮件,即便这俩个服务器距离很远也是这样的。

对比http协议

http更像一个拉协议,服务商在Web上装载信息,用户使用HTTP从该服务器拉取这些信息,

SMTP更像一个推协议,发送邮件服务器把文件推向接收邮件服务器

SMTP要求每个报文采用7bitASCII字符或二进制数据,则该报文必须按照7bitASCII码进行编码,Http则不受这种限制

当遇到出来一个既包含文本又包含图形的文档,Http把每个对象都封装到它自己的http响应报文中,二SMTP则把所有的报文对象放在一个报文中

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据传输服务
腾讯云数据传输服务(Data Transfer Service,DTS)可帮助用户在业务不停服的前提下轻松完成数据库迁移上云,利用实时同步通道轻松构建高可用的数据库多活架构,通过数据订阅来满足商业数据挖掘、业务异步解耦等场景需求。同时,DTS 还提供私有化独立输出版本 DTS-DBbridge,支持异构数据库和同构数据库之间迁移和同步,可以帮助企业实现完整数据库迁移(如 Oracle)。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档