首页 > 其他 > 详细

FTP协议简介

时间:2019-11-07 21:25:51      阅读:83      评论:0      收藏:0      [点我收藏+]
    FTP是应用层的一个文件传输协议,使用了两个并行的TCP来传输文件,一个是控制连接(21)一个是数据连接(20)     
    在介绍FTP的工作原理时候,通常会讲到两个信道(控制信道、数据信道)和两种模式(主动模式、被动模式)
控制信道和数据信道,可以初步的理解为控制信道是创建会话的必要条件,通常传输控制信息,如口令,用户标识,存放、获取文件等命令,而数据信道则是临时创立的,它通常被用来传输文件。当发送完文件之后数据连接会自动关闭。
    至于两种模式,主动和被动可以站在服务器的角度去理解:我(服务器)主动发起请求,我就是主动的,反之同理。举例:
主动模式:
    控制信道:客户端(端口随机)  -----> 服务器21端口
    数据信道:客户端(端口随机)  <----- 服务器20端口
在主动模式下,客户端向服务器的FTP端口21发起连接请求,服务器接收连接后,创建一条命令链路。当需要传输数据时,客户端在链路上用PORT命令告诉服务器:"我打开了X端口,需要你连接我"。接着服务器从20端口向客户端的X端口发起连接请求,之后双方可以利用数据通道来传输数据
被动模式:
    控制信道:客户端(端口随机)  -----> 服务器21端口
    数据信道:客户端(端口随机)  <----- 服务器随机端口
被动模式下控制信道的传输方式和主动一致,但是在需要数据传输的时候,服务器在控制信道上用PASV的命令告诉客户端,我开启了XX端口,你过来连接我,之后服务器被动等待客户端连接它的XX端口,创建连接后开始传输数据
 
在创建连接的过程中,有很多FTP独有的命令。例如在被动模式下的控制信道,经过三次握手后,客户端会向服务器发送PASV命令,意为:你是否支持被动模式,服务器如果支持则会返回227:a,b,c,d,e,f。其中a,b,c,d为IP地址。端口为e*256+f,到了第二信道,双方的通信端口都是随机的,这样较为安全。
 
总结:
在学FTP时候需要知道:
1.多信道协议
2.两种模式工作
3.当有防火墙的时候,需要转换IP端口,防火墙做了什么?

FTP协议简介

原文:https://www.cnblogs.com/Tempt/p/11815648.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!