FTP

简介: FTP

文件传输协议

FTP

FTP采用典型的C/S架构(即服务器端与客户端模型),客户端与服务器端建立TCP连接之后即可实现文件的上传、下载。

FTP有两种传输模式:

  • ASCII模式:传输文本文件。 对文本内容进行编码方式转换,提高传输效率。
  • Binary(二进制)模式:非文本文件,如图片、可执行程序。以二进制直接传输原始文件内容。

FTP的工作模式:

无论主动模式还是被动模式,都是客户端先使用随机端口向服务端的21端口发起连接。

  • 主动模式(port):指在传输数据时FTP服务器主动向客户端发起连接。   服务端→客户端
  • 首先客户端使用随机端口向服务器的21端口发起TCP连接建立,完成TCP三次握手;之后会去协商用户名、密码、权限等等,然后客户端会监听另一随机端口P,并且使用port命令通知服务器,。然后服务器端使用20端口主动向客户端的端口P发起TCP连接,建立传输连接。
  • 被动模式(pasv):指在传输数据时FTP客户端主动向服务器发起连接。   客户端→服务端
  • 首先客户端使用随机端口向服务器的21端口发起TCP连接建立,完成TCP三次握手;之后会去协商用户名、密码、权限等等,然后客户端会监听另一随机端口P,并使用PASV命令通知服务器,FTP收到后,也会开启一个随机端口N,并使用Enter PASV命令告知客户端自身开放的端口号。然后FTP客户端从端口P向FTP服务器端口N发送TCP连接,建立传输连接。

FTP的21端口是控制通道使用的,20端口是传输通道用的。

FTP使用2个通道来工作

  • 控制通道(命令通道):使用TCP,用来下达FTP的操作指令,登录认证。协商验证用户名、密码、权限等。
  • 数据通道(传输通道):使用TCP,用来传输数据、文件。

配置命令-设备作为服务器端

配置命令-设备作为客户端

简单文件传输协议

TFTP

TFTP基础

相较于FTP,TFTP的设计就是以传输小文件为目标,协议实现就简单很多。

  • 使用UDP进行传输(端口号69)
  • 无需认证
  • 只能直接向服务器端请求某个文件或上传某个文件,无法查看服务器端的文件目录

配置命令-设备作为客户端

相关文章
|
2月前
|
人工智能 安全 API
MCP协议的具体技术实现原理
MCP(Model Context Protocol)是由Anthropic提出的开放协议,旨在标准化大语言模型(LLM)与外部工具、数据源的交互方式。通过客户端-服务器架构与JSON-RPC通信,实现工具的动态发现、安全调用与灵活扩展,提升LLM的实用性与集成效率。
|
4月前
|
弹性计算 Ubuntu Linux
阿里云服务器镜像怎么选?公共/自定义/共享/云市场/社区镜像区别与适用场景梳理
在购买阿里云服务器的过程中,选择合适的镜像(即云服务器的操作系统)是至关重要的一步。阿里云服务器镜像涵盖了公共镜像、自定义镜像、共享镜像、云市场镜像(镜像市场)和社区镜像等多种类型,对于新手用户来说,面对这些不同类型的镜像,往往会感到困惑,不知道它们之间的区别,更不知道如何根据自身需求进行选择。本文为大家解析这些镜像的特点、区别,并为大家提供选择参考。
792 60
|
11月前
|
监控 虚拟化 Docker
Window系统安装Docker
这篇文章提供了在Windows系统上安装与配置Docker的详细指南,包括Docker Desktop的安装及通过Docker来运行容器化应用的步骤。
440 1
Window系统安装Docker
|
9月前
|
JSON API 开发工具
淘宝实时 API 接口丨淘宝商品详情接口(Taobao.item_get)
淘宝商品详情接口(Taobao.item_get)允许开发者获取商品的详细信息,包括基本信息、描述、卖家资料、图片、属性及销售情况等。开发者需注册账号、创建应用并获取API密钥,通过构建请求获取JSON格式数据,注意遵守平台规则,合理使用接口,确保数据准确性和时效性。
1052 9
|
虚拟化 Docker Windows
window 10专业版部署docker环境
本文介绍了如何在Windows 10专业版上部署Docker环境,包括安装步骤、配置镜像加速以及可能遇到的错误处理。
561 3
window 10专业版部署docker环境
|
11月前
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务
|
Shell Linux
linux中的sh脚本语法
这些是Shell脚本的基本语法要点。Shell脚本还支持许多其他功能,如管道、重定向、通配符等,用于进行更复杂的操作。
421 0
|
数据采集 API 开发者
爬虫:闲鱼商品详情数据接口(goodfish.item_get)
闲鱼的`goodfish.item_get`非官方API,其数据接口多为私有,适用于授权合作伙伴。获取商品详情数据可考虑官方合作、网络爬虫(需遵守反爬政策)、第三方API服务或直接联系闲鱼官方。合法合规使用数据至关重要。
|
消息中间件 小程序 Java
【规范】看看人家Git提交描述,那叫一个规矩
本文通过IDEA中的Git描述规范插件【git commit message helper】,介绍了Git提交描述的规范流程,强调了团队开发中统一标准的重要性,并通过实例展示了规范的提交记录如何提高代码管理和维护效率。最后,文章提供了几个实用的Git提交描述案例,帮助读者更好地理解和应用这些规范。
2903 0
【规范】看看人家Git提交描述,那叫一个规矩