我的编程空间,编程开发者的网络收藏夹
学习永远不晚

FTP工作方式及其工作原理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

FTP工作方式及其工作原理

  FTP(File Transfer Protocol,文件传输协议),是互联网最早的也是最基本的网络协议之一。用来将实现从一台电脑传送文件到另一台电脑,或者接收和查看另一台电脑上的文件。今天主要是介绍FTP工作方式以及其工作原理,有需要的朋友那就和我们进入下面的学习吧!

  1、传输方式

  ftp的传输有两种方式:ascii传输模式和二进制数据传输模式。

  1)ascii传输方式:假定用户正在拷贝的文件包含的简单ascii码文本,如果在远程机器上运行的不是unix,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。

  但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。

  2)二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。

  如果你在ascii方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ascii方式一般假设每一字符的第一有效位无意义,因为ascii字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。

  2、工作方式及其原理

  ftp支持两种模式,一种方式叫做standard (也就是port方式,主动方式),一种是 passive (也就是pasv,被动方式)。 standard模式 ftp的客户端发送 port 命令到ftp服务器。passive模式ftp的客户端发送 pasv命令到ftp server。

  下面介绍来这两种方式的工作原理:

  1)主动方式

  主动范式是FTP服务器向FTP客户端传输数据的默认方式。当FTP客户端请求以主动方式传输数据时,由客户端向服务器端发送准备接受数据的IP地址和端口Y,该端口应该是大于1024的非特权端口。服务器端主动发起并建立到指定的IP地址和端口Y上的连接。由于Y端可以随机指定,导致这种方案要求客户端机器必须允许FTP服务器能够顺利地连接所有的端口,因此可能存在一定的安全隐患。

  FTP服务器主动连接示意图

FTP工作方式及其工作原理_FTP服务器_互联网_编程学习网教育

  主动方式分析

  步骤一:建立命令通道连接

  如上图,客户端会随机取一个大于1024以上的端口(port AA)来与FTP服务器端的port 21实现连接,这个过程当然需要三次握手。实现连接后客户端便可以通过这个连接来对FTP服务器执行命令,查询文件名、下载、上传等等命令都是利用这个通道来执行的。

  步骤二:通知FTP服务端使用Active且告诉连接的端口号

  FTP服务器端的端口 21号主要用在命令的执行,但是当牵涉到数据流时,就不是使用这个连接了。客户端在需要数据的情况下,会告知服务器端要用什么方式连接,如果是主动模式连接,客户端会随机启用一个端口(port BB),且通过命令通道告知FTP服务器这两个信息,并等待FTP服务器端的连接。

  步骤三:FTP服务端主动向客户端连接

  FTP服务器由命令通道了解客户端的需求后,会主动由port 20向客户端port BB连接,这个连接当然也会经过三次握手。此时FTP的客户端与服务器端建立了两条连接,分别用在命令的执行和数据的传输。而默认FTP服务端使用主动连接端口就是port 20。这样就建立起“命令”与“数据传输”两个通道。

  注意:

  第1点:数据传输通道是在有数据传输的行为才会建立连接,并不是一开始连接到FTP服务器就立刻建立的数据通道。

  第2点:命令通道的FTP默认为port 21。数据传输的FTP-DATA默认为port 20。

  第3点:这两个端口的工作原理是不一样的,而且,两者的连接发起端是不一样的。首先port 21接受来自客户端的主动连接,port 20则是FTP服务器主动连接到客户端。

  2)被动方式

  在被动模式下,客户端通过PASV命令获得服务器端IP地址和数据端口,然后向服务器端发起连接请求,从而建立数据连接。因此服务器端只是被动地监听在指定端口上的请求。

  当连接某个FTP服务器失败时可以试着修改FTP客户端工具配置,改变传输模式,这样或许能够连接成功。

  被动方式连接示意图

被动方式连接示意图

  被动方式分析

  步骤一:客户端与服务器建立命令通道

  同样需要建立命令通道,通过三次握手就可以建立起这个通道了。

  步骤二:客户端发起PASV的连接要求

  当使用数据通道命令时,客户端可通过命令通道发起PASV的被动式连接要求,并等待服务器的回应。

  步骤三:FTP服务器启动数据端口,并通知客户端连接

  如果你使用的FTP服务器是能够处理被动式连接的,此时FTP服务器会先启动一个监听端口。这个端口号码可以是随机的,也可以自定义某个范围的端口。然后FTP服务器会通过命令通道告知客户端已经启动的端口(port PASV),并等待客户端的连接。

  步骤四:客户端随机取用大于1024的端口进行连接

  最后你的客户端会随机取用一个大于1024端口来进行对FTP服务器port PASV连接。如果一切都顺利,那么FTP数据就可以通过port BB和port PASV来传送了。

  注意:

  第1点:被动模式FTP数据通道是由客户端向服务器端发起连接的。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

FTP工作方式及其工作原理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

FTP工作方式及其工作原理

  FTP(File Transfer Protocol,文件传输协议),是互联网最早的也是最基本的网络协议之一。用来将实现从一台电脑传送文件到另一台电脑,或者接收和查看另一台电脑上的文件。今天主要是介绍FTP工作方式以及其工作原理,有需要的朋友那就和我们进入下面的学习吧!  1、传输方式  ftp的传输有两种方式:a
FTP工作方式及其工作原理
2024-04-18

Makefile及其工作原理是什么

这篇文章给大家介绍Makefile及其工作原理是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。当你需要在一些源文件改变后运行或更新一个任务时,通常会用到 make 工具。make 工具需要读取一个 Makefile
2023-06-28

一文看懂DNS及其工作原理

DNS使用分层、分布式的结构来管理域名与IP地址的映射关系。它通过递归和迭代查询过程,使得在互联网上轻松地使用人类可读的域名来访问各种网络资源。
DNS2024-11-30

浅谈边缘缓存及其工作原理

数据管理员须采用有效的管理实践以确保文件、系统和应用程序等数字资源的可用性,比如边缘缓存。

FTP服务器工作原理及如何配置、访问

  FTP服务器,是在互联网上提供存储空间的计算机,它们依照FTP协议提供服务。FTP的全称是File Transfer Protocol(文件传输协议)。顾名思义,就是专门用来传输文件的协议,简单的说,支持FTP协议的服务器就是FTP服务器。  目前在在网络上,如果你想把文件和其他人共享。最方便的办法就是莫过于将文件
FTP服务器工作原理及如何配置、访问
2024-04-18

物联网设备管理及其工作原理指南

物联网设备管理平台的重要好处是它可以降低组织的拥有成本。现实情况是,拥有数千台设备的企业无法派遣技术人员来解决连接问题或物理更新固件,远程设备管理可以节省时间、金钱和资源。
物联网2024-11-30

什么是三层交换机及其工作原理?

三层交换机是现代网络基础设施的通用解决方案,在第二层交换机的高速交换能力和传统路由器的路由智能之间提供平衡。了解它在OSI模型中的作用、它的运行方式以及它带来的好处,可以使网络管理员能够就其网络架构做出明智的决策。

什么是人工智能语音发生器及其工作原理?

人工智能语音生成器是一种计算机程序,可以将文本转换为语音,听起来就像人类说话一样。这种人类模式是通过文本到语音(TTS)实现的,TTS是一种将计算机输入的文本处理成生成的声音的技术。什么是人工智能语音发生器及其工作原理? 近年来,人工智能语
人工智能2024-11-30

PHP开发缓存的工作原理及实现方式

PHP开发缓存的工作原理及实现方式缓存是一种常用的提升网站性能的技术手段,它可以将一些高频度访问的数据保存在内存中,以便于快速获取,减少数据库查询的次数,从而提高网站的响应速度。PHP开发中,缓存的实现方式有很多种,下面将详细介绍其工作原理
PHP开发缓存的工作原理及实现方式
2023-11-07

axios拦截器工作方式及原理源码解析

这篇文章主要为大家介绍了axios拦截器工作原理源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2023-02-10

云主机服务器及其工作原理是什么

云主机服务器及其工作原理是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 云主机服务器指的是互联网基础设施以及使用模式,一般是利用网络按照所需以及容易扩展的方式对资源进行整
2023-06-07

Linux sed工具的使用及工作原理

目录基础知识sed编辑器: Stream Editor工作原理:sed的基本用法sed的命令格式sed实现自动打印功能(最基本用法)sed选项sed的脚本格式sed脚本的地址格式sed脚本的指令范例sed工具的核心用法:搜索替代搜索替代的修
2022-07-12

操作系统中的Hosts文件工作原理和作用及其详细介绍

一、什么是Hosts文件? Hosts是一个没有扩展名的系统文件,Hosts文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP地址,实现DNS的功能,它可以由计算机的用户进行控制。可以用记事本等工具打开,其作用就是
2023-06-16

编程热搜

  • 华为高级工程师认证费用
      华为高级工程师认证费用是多少?华为高级工程师认证要多少钱?华为高级工程师认证是华为认证体系中用于标识个人能力在某一技术领域达到高级工程师级别的证明,认证费用为200美金,通过考试取得的证书3年有效。  华为高级工程师认证费用是必修方向和选修方向的总和,其中必修方向认证费用为300美金,选修方向认证费用为180美金。
    华为高级工程师认证费用
  • 2024年初级软考上半年考试时间安排
    初级软考每年安排两次考试,2024年初级软考上半年考试时间已公布,2024年初级软考上半年考试时间为5月25-28日。2024年初级软考上半年报名时间及入口:根据往年各省初级软考报名时间来看,2024年上半年初级软考报名时间3月份开始,具体请考生关注全国各省2024上半年软考报名时间及入口汇总表,希赛小编将及时为大家更
    2024年初级软考上半年考试时间安排
  • HCIA证书和HCIE哪个比较好?
      HCIA证书和HCIE哪个比较好?华为认证包含三个等级,分别是HCIA(华为认证网络工程师)、HCIP(华为认证网络资深工程师)、HCIE(华为认证互联网专家)认证。  HCIA(Huawei Certified ICT Associate )即华为认证ICT工程师,是华为职业认证中用于标识个人能力在某一技术领域达
    HCIA证书和HCIE哪个比较好?
  • 教你在PPT中创建好看的镜像效果
      当我们在阅读杂志书刊,或者看电影的时候常常都会看到像下图一样的原图片与图片镜像的组合效果的图片,在很多的摄影作品中也会有,我们其实也可以在PPT中轻松实现这种应用于各大媒介的图文特效技巧,不信的话我们一起来学习一下,操作过程其实并不复杂!  下面我们就开始我们的具体操作步骤了,首先第一步,我们需要先打开PowerP
    教你在PPT中创建好看的镜像效果
  • 多媒体应用设计师可以提前交卷吗
      可以。但是多媒体应用设计师提前交卷有时间限制,根据软考的考场规则,按照人力资源和社会保障部文件规定,开考5分钟后应试人员一律禁止入场。专业技术人员资格考试原则上封闭2个小时,不足2小时的全程封闭。  软考多媒体应用设计师属于专业技术人员资格考试,专业技术人员资格考试原则上封闭2个小时,不足2小时的全程封闭。  根据
    多媒体应用设计师可以提前交卷吗
  • 全国计算机二级C语言程序设计章节练习题及答案(1)
      对于备考计算机二级C语言考试的考生可以多做试题,一方面了解往年考试题型,一方面熟悉往年考点。今天编程学习网小编给大家准备了全国计算机二级C语言程序设计章节练习题及答案(1),供考生们练习。  点击查看:全国计算机二级C语言程序设计章节练习题及答案汇总  判断题  ×1.C++语言和C语言都是面向对象的程序设
    全国计算机二级C语言程序设计章节练习题及答案(1)
  • 广西2024上半年计算机软考什么时候报名?
    广西2024上半年计算机软考3月25日开始报名,具体报名时间见全国各省2024上半年软考报名时间及入口汇总表。2024上半年广西软考考试采用网络报名的方式,考生在规定的报名时间内进入中国计算机技术职业资格网,点击页面右下方的报名入口,进入全国计算机技术与软件专业技术资格(水平)考试网上报名平台,选择“广西”入口后点击进
    广西2024上半年计算机软考什么时候报名?
  • 软考可以申请退税吗
      可以。软考证书是可以抵扣个税的,按照个税6项专项附加扣除标准,在取得软考证书的当年,可以按照3600元定额扣除。  软考证书可以抵扣个税,根据国务院印发的《个人所得税专项附加扣除暂行办法》,第三章继续教育包含三条,具体内容如下:  第八条 纳税人在中国境内接受学历(学位)继续教育的支出,在学历(学位)教育期间按照每
    软考可以申请退税吗
  • win10如何正确禁用IPv6网络协议
       在Windows Vista和Server 2008开始,微软包括本地支持的IPv6(互联网协议第6版),并默认启用。IPv6是新的计算机的地址协议,最终将取代IPv4这是目前最流行的标准。win10中默认开启了对IPv6协议的支持,但是会影响到系统运行速度和磁盘占有率等。除非你的网络有IPv
    win10如何正确禁用IPv6网络协议
  • 2020年数据库系统工程师上午真题及答案解析
      2019上半年数据库系统工程师考试已结束,今天编程学习网小编为大家整理了2020年数据库系统工程师上午真题及答案解析,以便大家了解2020下半年数据库系统工程师基础知识考试真题。  软考数据库系统工程师上午考试为基础知识,编程学习网小编为大家整理了2020年数据库系统工程师上午真题,想知道答案和解析的考生可以直接进入在线题
    2020年数据库系统工程师上午真题及答案解析

目录