FTP协议详解

今天给大家介绍一下FTP协议的相关内容。本文从FTP的概述、两种模式讲起,详细介绍了FTP协议的相关理论内容。

一、FTP概述

FTP(File Transefer Protocl),文件传输协议,是目前网上常用的文件传输协议之一。FTP采用TCP链接,是典型的C/S架构,分为FTP服务端和FTP客户端。FTP采用的端口号一般情况下为21和20,其中20用于传输数据,21用于控制信息。FTP分为两种模式,这两种模式的FTP实现原理不完全相同。在被动模式下,FTP的传输数据端口不一定是20。FTP具体采用哪种模式实现数据传输由FTP客户端决定。
不论采取哪种模式,FTP的文件传输过程都可以分成控制信息传输和数据传输,其中控制信息传输总是先建立,建立后再协商好数据传输模式和端口等信息。

二、FTP主动模式

主动模式又称为Active Mode、Port模式,是指在数据链接建立时,FTP Server主动向FTP Client发起TCP三次握手链接的模式。
主动模式过程如下所示:
在这里插入图片描述在FTP主动模式中,在完成控制链接三次握手和认证过程后,FTP Client向FTP Server发送Port Command数据包,在该数据包中携带有FTP Client为建立FTP数据传输链接而开启的端口号,然后等待FTP Server主动向FTP CLient发起TCP链接请求。在主动模式下,FTP Server总是以20端口向FTP Client建立TCP链接。
主动模式建立过程如下所示:
在这里插入图片描述

三、FTP被动模式

被动模式又被成为PASV模式,是指在数据链接建立时,FTP Server被动的等待FTP Client建立TCP链接的模式。
FTP被动模式示意图如下所示:
在这里插入图片描述
在FTP被动模式中,在完成控制链接三次握手和认证过程后,FTP Client向FTP Server发送PASV Command数据包,然后FTP Server回复PSCV Command OK数据包,在该数据包中携带有Server端为建立FTP数据传输链接而开启的端口号,然后等待FTP Client主动向FTP Server发起TCP链接请求。在被动模式下,FTP Server不确定使用哪个端口与FTP Client建立数据链接。
被动模式建立过程抓包如下所示:
在这里插入图片描述

四、FTP端口选择

最后,再给介绍一下FTP协议中端口的选择问题,抓取FTP建立过程中协商端口的报文如下所示:
在这里插入图片描述
可以看出,报文中并没有明确的指名端口号,但是存在两个数字,在本例中,这两个数字是8和11。不论是主动模式,还是被动模式,端口号就是通过这两个数字计算出来的。计算方式为:
256*第一个数字+第二个数字
在本例中,计算出的结果是2059,及开放2059端口。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/119190054

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值