【FTP,EMail】

文章目录

  • FTP
    • FTP:文件传输协议
    • FTP: 控制连接与数据连接分开
    • FTP命令、响应
  • EMail
    • 电子邮件(EMail)
    • 邮件服务器
    • EMail: SMTP [RFC 2821]
    • SMTP:总结

FTP

FTP:文件传输协议

在这里插入图片描述

  • 向远程主机上传输文件或从远程主机接收文件。
  • 客户/服务器模式。
    • 客户端:发起传输的一方。
    • 服务器:远程主机。
  • ftp服务器:端口号为21。

FTP: 控制连接与数据连接分开

  • FTP客户端与FTP服务器通过端口21联系,并使用TCP为传输协议。
  • 客户端通过控制连接获得身份确认。
  • 客户端通过控制连接发送命令浏览远程目录。
  • 收到一个文件传输命令时,服务器打开一个到客户端的数据连接。
  • 一个文件传输完成后,服务器关闭连接。

FTP命令、响应

命令样例:

  • 在控制连接上以ASCII文本方式传送。

EMail

电子邮件(EMail)

3个主要组成部分:

  • 用户代理
  • 邮件服务器
  • 简单邮件传输协议:SMTP

在这里插入图片描述

邮件服务器

  • 邮箱中管理和维护发送给用户的邮件。
  • 输出报文队列保持待发送邮件报文。
  • 邮件服务器之间的SMTP协议:发送email报文
    • 客户:发送方邮件服务器
    • 服务器:接收端邮件服务器

EMail: SMTP [RFC 2821]

  • 使用TCP在客户端和服务器之间传送报文,端口号为25。
  • 直接传输:从发送方服务器到接收方服务器。
  • 传输的3个阶段:
    • 握手
    • 传输报文
    • 关闭
  • 命令/响应交互
    • 命令:ASCII文本
    • 响应:状态码和状态信息
  • 报文必须为7位ASCII码
    在这里插入图片描述

SMTP:总结

  • SMTP使用持久连接。
  • SMTP要求报文(首部和主体)为7位ASCII编码。
  • SMTP服务器使用CRLF.CRLF决定报文的尾部。

HTTP比较:

  • HTTP:拉(pull)。
  • SMTP:推(push)。
  • 二者都是ASCII形式的命令/响应交互、状态码。
  • HTTP:每个对象封装在各自的响应报文中。
  • SMTP:多个对象包含在一个报文中。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

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

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

相关文章

使用tcpdump和wireshark进行服务器抓包分析

目录 前言 1.tcpdump简介 2.Wireshark简介 3.实际案例 4.代码示例 5.总结 前言 服务器抓包分析是一种非常常见和有效的网络故障排查和性能优化手段。通过捕获服务器上的网络流量,可以帮助我们深入了解服务器与其它设备之间的通信情况,发现问题并进…

创新学术之道:如何充分利用ChatGPT优化论文写作过程

ChatGPT无限次数:点击直达 创新学术之道:如何充分利用ChatGPT优化论文写作过程 随着人工智能技术的发展,ChatGPT作为一种高效的自然语言处理工具,在学术领域的应用也日渐普及。本文将介绍如何充分利用ChatGPT优化论文写作过程,提…

Java多线程实战-从零手搓一个简易线程池(三)线程工厂,核心线程与非核心线程逻辑实现

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java全栈-专栏 🏷️本系列源码仓库:多线程并发编程学习的多个代码片段(github) 🏷️个人学习笔记,若有缺误,欢迎评论区指正…

Mac上怎么合并多张图片?

Mac上怎么合并多张图片?上班过的小伙伴都应该知道,合并拼接图片是一件非常重要且经常需要使用到的图片处理技术,将多张图片合并拼成一张之后能够展现出更多的图片内容。在Mac电脑上,合并多张图片是一项常见的任务,无论…

策略模式详解+代码案例

首先简单介绍策略模式 该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的责任和算法的实现分割开…

notepad++ 快捷键使用

notepad 很好用 使用快捷键能提高效率 以下为我常用的快捷键 键位效果ctrl l删除高亮行ctrl d重复高亮行ctrl k注释选中行ctrl q取消注释选中行ctrl w关闭文本窗口ctrl tab向右切换窗口ctrl shift tab向左切换窗口ctrl 滚轮向滚动方向切换窗口ctrl shift 滚轮滚动选…

【教程】Kotlin语言学习笔记(六)——泛型

写在前面: 如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持! 【Kotlin语言学习】系列文章 第一章 《认识Kotlin》 第二章 《数据类型》 第三章 《数据容器》 第四章 《方法》 第五章 《L…

关系型数据库设计

目录 1.数据库设计的重要性及定义 1.1 数据库设计的重要性 1.1.1 失败的数据库设计造成的后果 1.1.2 优秀的数据库设计带来的好处 1.2 数据库设计的定义 2.数据库需求分析 2.1 需求分析的步骤 2.1.1 收集信息 2.1.2 标识实体 2.1.3 标识每个实体的详细信息 2.1…

【HTML】制作一个简单的动态SVG图形

目录 前言 开始 HTML部分 CSS部分 效果图 总结 前言 无需多言,本文将详细介绍一段HTML和CSS代码,该代码用于创建一个动态的SVG图形,具体内容如下: 开始 首先新建文件夹,创建两个文本文档,其中HTML的文…

【2023】kafka原生以及配合springboot的使用(Kafka-3)

💻目录 前言 一、依赖二、原生使用kafka1、发送消息1.1、生产者同步发送消息1.2、生产者异步发送消息1.3、常用配置: 2、接收消息2.1、关于消费者的自动提交和手动提交2.2、长轮训poll消息2.3、消费者的健康状态检查2.4、指定分区和偏移量,时…

使用docker-tc对host容器进行限流

docker-tc是一个github开源项目,项目地址是https://github.com/lukaszlach/docker-tc。 运行docker-tc docker run -d \ --name docker-tc \ --network host \ --cap-add NET_ADMIN \ --restart always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /var…

Transformer - model architecture

Transformer - model architecture flyfish Transformer总体架构可分为四个部分: 输⼊部分 输出部分 编码器部分 解码器部分 输入部分 输出部分 输⼊部分包含: 源嵌⼊层和位置编码 ⽬标嵌⼊层和位置编码 输出部分包含: 线性层 softmax处理器 左侧编码器部分和右侧解码器部…

微信小程序自定义弹窗组件

业务背景&#xff1a;弹窗有时字体较多&#xff0c;超过7个字&#xff0c;不适用wx.showToast. 组件代码 <view class"toast-box {{isShow? show:}}" animation"{{animationData}}"><view class"toast-content" ><view class&q…

Taro + vue3 小程序封装标题组件

分为没有跳转页面的title组件和 有跳转页面的title组件 我们可以把这个封装成一个组件 直接上代码 <template><div class"fixed-title-container"><div class"box"><div class"icon" v-if"isShow" click"…

代码随想录Day42

Day 42 动态规划 part04 今日任务 二维数组解决01背包问题一维数组解决01背包问题 分割等和子集 代码实现 二维数组解决01背包问题 public static int maxValue(int maxWeight, int[] weight, int[] value) {int[][] dp new int[weight.length][maxWeight 1];for (int j…

react native的事件通知 DeviceEventEmitter

1、 发送事件 import { View, DeviceEventEmitter } from react-native;const eventEmitter (status) > {DeviceEventEmitter.emit(eventDemo, { param: status }); } 2、接收订阅事件 useEffect(() > {const eventListener DeviceEventEmitter.addListener(eventDem…

【论文阅读】DETR 论文逐段精读

【论文阅读】DETR 论文逐段精读 文章目录 【论文阅读】DETR 论文逐段精读&#x1f4d6;DETR 论文精读【论文精读】&#x1f310;前言&#x1f4cb;摘要&#x1f4da;引言&#x1f9ec;相关工作&#x1f50d;方法&#x1f4a1;目标函数&#x1f4dc;模型结构⚙️代码 &#x1f4…

ubuntu-server部署hive-part4-部署hive

参照 https://blog.csdn.net/qq_41946216/article/details/134345137 操作系统版本&#xff1a;ubuntu-server-22.04.3 虚拟机&#xff1a;virtualbox7.0 部署hive 下载上传 下载地址 http://archive.apache.org/dist/hive/ apache-hive-3.1.3-bin.tar.gz 以root用户上传至…

多层PCB内部长啥样?

硬件工程师刚接触多层PCB的时候&#xff0c;很容易看晕。动辄十层八层的&#xff0c;线路像蜘蛛网一样。 画了几张多层PCB电路板内部结构图&#xff0c;用立体图形展示各种叠层结构的PCB图内部架构。 高密度互联板(HDI)的核心 在过孔 多层PCB的线路加工&#xff0c;和单层双…

java导出20w条数据

文章目录 前言一、前端代码二、后端代码总结 前言 在上次写的java导出excel的后&#xff0c;在导出20w条数据时出现了请求超时的情况&#xff0c;而且一次查询超多的数据会很慢&#xff0c;所以修改了一下&#xff0c; 针对数据量一旦过大前端请求需要一直等待超时的情况将前端…