FTP是什么?

早期三大网络应用之一:ftp(40年)、http、mail

ftp file transfer protocol

文件传输协议

FTP服务概述

C/S模型

客户端-服务器

FTP采用双TCP连接方式

控制连接-使用TCP端口号21

  用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。控制连接在整个FTP会话期间一直保持打开。

数据连接-使用TCP端口号20

  用于传输数据,包括数据上传、下载、文件列表发送等。数据传输结束后数据连接将终止。

主动方式建立连接过程

FTP主动数据传输方式

主动方式也称为PORT方式,是FTP协议最初定义的数据传输连接方式,主要特点是:

  FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号

  当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数据传输

在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式。

被动方式建立连接过程

FTP被动数据传输方式

被动方式也称为PASV方式,被动方式的主要特点是:

  FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端

  当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输。

在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。

文本模式和二进制模式

文件传输器使用ASCII字符,并由回车键和换行符分开,而二进制不用转换或格式化就可传输字符,二进制模式比文本模式更快,并且可以传输所有ASCII值,所以系统管理员一般将FTP设置成二进制模式。

二进制模式用来传送可执行文件,压缩文件,和图片文件。如果你用ASCII模式传,会显示一堆乱码,你必须重新使用BINARY模式传。用HTML和文本编写的文件必须用ASCII模式上传,用BINARY模式上传会破坏文件,导致文件执行出错。

FTP用户的类型

匿名用户:anonymous或ftp

本地用户:

  帐号名称、密码等信息保存在passwd、shadow文件中

虚拟用户:

  使用独立的帐号/密码数据文件

  user_list zhangsan 123456 /var/pub

最新文章

  1. Ubuntu管理开机启动服务项 -- 图形界面的Boot-up Manager
  2. eclipse项目debug方法
  3. activity 和 生命周期: 消息通信
  4. poj3461 字符串匹配 熟悉kmp算法第一题
  5. EF 5.0 帮助类
  6. mysql脚本mysql_safe解释、mysql.sock文件、mysql_install_db
  7. SVN简明使用方法 .
  8. codevs2622数字序列( 连续子序列最大和O(n)算法)
  9. Layui文件上传样式在ng-dialog不显示的问题处理
  10. oracle 行专列
  11. React+webpack开发环境的搭建
  12. 手把手教您将 libreoffice 移植到函数计算平台
  13. docker容器的时间同步
  14. HTML5 a标签的download属性
  15. 微信小程序 - 步骤条组件
  16. Linux kernel pwn notes(内核漏洞利用学习)
  17. [iOS] Edit / Memo 原生控件才提供拼字检查
  18. Milk Patterns POJ - 3261(后缀数组+二分)
  19. Hadoop基础-Hadoop快照管理
  20. PAT 1012 数字分类 C语言

热门文章

  1. 【MSP是什么】MSP认证之成功的项目群管理
  2. [Java Collection]List分组之简单应用.
  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(55)-工作流设计-表单布局
  4. import matplolib 时出现"This probably means that tk wasn't installed properly."的解决方法
  5. 学习javascript数据结构(三)——集合
  6. ASP.NET MVC项目演练:用户登录
  7. C# 本质论 第一章 C#概述
  8. [C1] 分离 C1FlexGrid 滚动条
  9. JsCharts图表的介绍和简单使用
  10. FPGA旋转编码器的实现