ftp协议

简介

文件传输协议(英语:File Transfer Protocol,缩写:FTP)是一个用于在计算机网络上在客户端和服务器之间进行文件传输的应用层协议。

协议所在位置

应用层协议

说明

ftp协议使用的是常见的C/S结构,默认使用20和21端口号进行传输。在传输过程中要使用两个通道:传输数据流控制通道和传输数据通道。
ftp也分为主动模式和被动模式,主动模式要求客户端和服务器端同时打开并且监听一个端口以创建连接。在这种情况下,客户端由于安装了防火墙会产生一些问题。所以,创立了被动模式。被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。下图是主动和被动模式协议流程。

小结

  1. 区别主动模式和被动模式的方法
    看数据链接过程是由哪端发起: Server端发起即主动模式,Server端被动接收即被动模式。
  2. 在主动模式中才会用到知名端口20, 在被动模式下server的数据通道端口是随机的。

相关RFC

1.RFC959:官方协议规范
2.RFC1579:启用防火墙FTP(被动模式)
3.RFC2228:安全扩展
4.RFC2428:增加对IPv6的支持

参考资料