[架构之路-222]:邮件服务与协议:POS3和SMTP

news2024/12/23 20:44:51

目录

网络架构:

联系:

区别:


网络架构:

SMTP(Simple Mail Transfer Protocol)和 POP3(Post Office Protocol version 3)是用于电子邮件传输和接收的两种不同的协议。它们在不同的方面有着不同的功能和作用。

联系:

  1. 邮件传输:SMTP 和 POP3 都用于电子邮件的传输。SMTP 用于将邮件从发件人的邮件服务器发送到收件人的邮件服务器,而 POP3 用于从邮件服务器上下载邮件到用户的本地设备客户端上。

  2. 邮件处理:SMTP 和 POP3 都涉及到邮件的处理过程。SMTP 负责将电子邮件从发件人发送到收件人的邮件服务器,POP3 负责从邮件服务器上提取邮件并传送到用户的设备上。

区别:

  1. 功能:SMTP 是用于邮件的发送的协议,它被用于将邮件从发件人的邮件客户端(如outlook)发送到邮件服务器。而 POP3 是用于邮件的接收的协议,它被用于从邮件服务器下载邮件到收件人的邮件客户端(如outlook)。

  2. 单向/双向:SMTP 是一种单向协议,它只负责将邮件发送出去,不涉及到接收邮件。而 POP3 是一种双向协议,既可以从服务器下载邮件,也可以将已读邮件从客户端删除

  3. 协议行为:SMTP 在发送邮件时使用的是推(push)的方式,发件人主动将邮件推送给收件人的服务器;而 POP3 在接收邮件时使用的是拉(pull)的方式,收件人的客户端主动按需从邮件服务器上拉取邮件。

  4. 保留状态:SMTP 不保留邮件状态,它只是负责邮件的传输和中转;而 POP3 允许用户在服务器上保留邮件的状态,可以选择是否删除邮件。

综上所述,SMTP 和 POP3 在邮件处理的不同阶段承担了不同的任务,SMTP 用于发送邮件,POP3 用于接收和下载邮件。它们在协议行为、功能和使用方式等方面存在区别,但都是电子邮件系统中重要的组成部分。

端口号

SMTP(Simple Mail Transfer Protocol)和 POP3(Post Office Protocol version 3)在实际应用中使用的端口号如下:

SMTP 使用端口号 25 或 587。常见的 SMTP 端口是 25,用于邮件服务器之间的直接邮件传输。而端口 587 是 SMTP 的备用端口,通常用于用户通过邮件客户端发送邮件到邮件服务器。

POP3 使用端口号 110。这是 POP3 的默认端口号,用于从邮件服务器下载(接收)邮件到用户的设备上。使用此端口,邮件客户端可以连接并通过 POP3 协议检索邮件。使用SSL加密的POP3端口号为995。

需要注意的是,由于网络环境和配置的不同,有些邮件服务器和邮件服务提供商可能会使用不同的端口号。因此,具体的端口号可能会有所变化,请咨询和参考你的邮件服务器或邮件服务提供商的文档或支持资料以获取准确的端口号信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1041249.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

两大电商为苹果作证,iPhone15销量倍增,销量遥遥领先并非虚言

苹果的零售店再次出现排队抢购iPhone15的现象,显示出iPhone15的受欢迎程度,不过也有人质疑排队现象,不过日前两大电商则为苹果提供了证明,显示出iPhone15的销售情况确实相当火爆。 某外卖平台的电商业务公布的数据指北上广深杭五大…

从零实现邮件中继服务

背景目的验证准备前提前置过程网络约束节点信息账号信息 具体验证过程转发测试相关问题 背景 在当前现场环境中,我们面临着一个重要的问题。我们的系统部署在一个内网环境中,邮件告警模块需要连接公网的邮件服务器以便发送邮件来及时通知我们关键事件和…

【KMP算法】C++

KMP算法的原理是通过构建部分匹配表,来利用已经匹配过的信息,避免不必要的回溯。部分匹配表是一个长度与模式字符串相等的数组,用于记录在每个位置上的最长公共前后缀的长度。 这样图片完全表达了KMP算法的核心思想,出处来自添加链…

【postgresql】ERROR: cannot alter type of a column used by a view or rule

修改字段类型 由varchar 改为int8。 具体sql alter table company alter column city_id type int8 using city_id::int8; 返回错误信息 > ERROR: cannot alter type of a column used by a view or rule DETAIL: rule _RETURN on view search_qy depends on column …

什么是LIMS(实验室信息管理系统)?LIMS软件有哪些功能?

LIMS 是实验室信息管理系统(Laboratory Information Management System)的缩写。LIMS 是一种软件,它可以帮助实验室收集、组织和跟踪其数据。这种系统可以提高实验室的效率,同时确保数据的准确性和一致性。 LIMS 可以处理各种实验…

安装Python3.x--Windows

1 下载安装包 确定安装是干什么,要下哪个版本(如果是配置项目环境,最好按项目需求的版本来装) 1.1 官网链接 https://www.python.org 最新版本 指定版本 2 安装说明 点击下载exe,运行自定义安装路径,下…

go字符串拼接方式及性能比拼

在golang中字符串的拼接方式有多种,本文将会介绍比较常用的几种方式,并且对各种方式进行压测,以此来得到在不同场景下更适合使用的方案。 文章目录 1、go字符串的几种拼接方式1.1 fmt.Sprintf1.2 运算符拼接1.3 strings.Join1.4 strings.Bui…

使用redis实现分布式锁

为什么需要分布式锁 在一个分布式系统中,也会涉及多个节点访问同一个公共资源的情况,此时就需要通过锁来做互斥控制,避免出现类似于“线程安全”的问题,而java的synchronized这样的锁只能在当前进程中生效,在分布式的…

【Go】Golang环境配置与语法基础

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍Golang环境配置与示例。 学其所用,用其所学。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,下次更新不迷路…

【Pycharm/Anaconda配置环境记录】

文章目录 1、Pytorch配置2、mmcv配置 1、Pytorch配置 查看虚拟环境创建虚拟环境 conda env list:查看虚拟环境 conda create --name env_name python3.7:创建虚拟环境 conda activate env_name:激活/进入该虚拟环境 查看自己的CUDA版本以及P…

element-plus-自定义Dialog样式

实现如下 <template><h3>dialog3 test 全局</h3><el-button type"primary" size"default" click"show">全局弹窗</el-button><div class""><!-- 弹窗 --><el-dialog v-model"visi…

使用 Matter-SDK 快速搭建 Matter 环境 (Linux)

Matter 作为一个统一的智能家居互联协议&#xff0c;凭借其高兼容性的特点&#xff0c;正逐渐打破各个智能家居之间的壁垒。乐鑫作为在 Matter 项目发布之初的早期成员&#xff0c;提供了一套开源、完整、易用的 Matter-SDK。 乐鑫的 Matter-SDK 是建立在开源 Matter-SDK 之上…

MySQL - order by排序查询 (查询操作 四)

功能介绍&#xff1a;order by&#xff1a;对查询结果进行排序&#xff0c;执行顺序在查询完结果执行&#xff08;比如where后&#xff09; 排序方式&#xff1a;ASC&#xff1a;升序&#xff08;默认&#xff0c;不用指定&#xff09; DESC&#xff1a;降序 语法&#x…

Android跨进程通信:Binder机制原理

目录 1. Binder到底是什么&#xff1f; 2. 知识储备 2.1 进程空间划分 2.2 进程隔离 & 跨进程通信&#xff08; IPC &#xff09; 2.3 内存映射 2.3.1 作用 2.3.2 实现过程 2.3.3 特点 2.3.4 应用场景 2.3.5 实例讲解 ① 文件读 / 写操作 ② 跨进程通信 3. Bi…

【Java 基础篇】Java 图书管理系统详解

介绍 图书管理系统是一种用于管理图书信息、借阅记录、用户信息等的软件系统。它可以帮助图书馆、书店或个人管理和组织图书资源&#xff0c;提供了方便的借阅和查询功能。在这篇博客中&#xff0c;我们将详细介绍如何使用Java编程语言创建一个简单的图书管理系统。 功能需求…

SpringMVC 学习(一)Servlet

1. Hello Servlet (1) 创建父工程 删除src文件夹 引入一些基本的依赖 <!--依赖--> <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test<…

大模型lora微调-chatglm2

通义千问大模型微调源码&#xff08;chatglm2 微调失败&#xff0c;训练通义千问成功&#xff09;&#xff1a;GitHub - hiyouga/LLaMA-Efficient-Tuning: Easy-to-use LLM fine-tuning framework (LLaMA-2, BLOOM, Falcon, Baichuan, Qwen, ChatGLM2)Easy-to-use LLM fine-tun…

STM32存储左右互搏 I2C总线读写FRAM MB85RC1M

STM32存储左右互搏 I2C总线读写FRAM MB85RC1M 在较低容量存储领域&#xff0c;除了EEPROM的使用&#xff0c;还有铁电存储器FRAM的使用&#xff0c;相对于EEPROM, 同样是非易失性存储单元&#xff0c;FRAM支持更高的访问速度&#xff0c; 其主要优点为没有EEPROM持续写操作跨页…

day06_循环

今日内容 零、 复习昨日 一、循环 二、流程控制关键词 零、 复习昨日 8个基本数据类型 变量的使用步骤 1)声明2)赋值3)使用 声明,数据类型 变量名 不一定非得是基本类型 int a; String s; Scanner scanner;赋值,只要符合类型(能默认转换)就能赋值 int a 1; double d 1; Scann…

uni-app问题记录

一、启动问题记录 1. 报错1 解决办法: 开启微信开发者工具服务端口 2. 报错2:调用getLocation获取位置信息时报错以下内容 {errMsg: “getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json”} 解决办法: manifest.json文…