FTP、SFTP、TFTP文件传输协议之间的主要区别

日常的工作中,我们都离不开文件的上传和下载,那么在不同的文件系统间传输文件有哪些协议?这期,就和文档君一起来了解这三种常见文件传输协议吧!
01
ftp协议 ftp(file transfer protocol,文件传输协议)是用于在计算机网络中传输文件的标准协议。ftp是一种客户端/服务器协议,我们一般都通过ftp客户端软件将客户端连接到服务器,并使用ftp协议来上传和下载文件。文件传输过程如下图所示:
01
传输过程
服务器打开用于ftp控制连接的tcp(transmission control protocol,传输控制协议)端口21(标准),等待ftp客户端的连接。当客户端需要登录ftp服务器时,与服务端(端口21)建立控制连接。该连接始终等待客户端和服务器之间的通信,将命令从客户端传递到服务器,并传回服务器的应答。
每当需要文件传输时,就创建一个数据连接。
举例
寄件人文档君相当于ftp客户端,收件人相当于ftp服务器。
文档君需要寄快递,只需要在手机上操作,就可以让快递小哥上门取件,也可以随时取消取件订单,这个过程类似于控制连接。也就是说,控制连接用于传输控制指令,也可以在传输途中终止传输的指令。 快递小哥取到件之后,需要负责包裹(数据)的转运,直至派送。这个过程类似与数据连接,也就是说,数据连接用于实际的文件传输, 在传输完毕后关闭数据连接,结束整个文件传输流程。  
02
特点
安全性:ftp传输过程采用tcp明文传输,存在安全隐患,对于安全性要求较高的数据,不建议采用ftp服务。
可靠性:ftp使用tcp作为传输层协议进行数据传输,保证了数据传输的可靠性。
面向连接:ftp建立连接后会一直保持连接状态,直到连接被关闭。
需要身份验证:ftp服务器通常需要用户进行身份验证后才能进行文件传输,以保护数据的安全性。
支持的传输模式:支持二进制模式和ascii模式,可以适应不同类型的文件传输。 二进制模式应用场景:
ascii模式应用场景:文本文件、html 文件、cgi 脚本、级联样式表文件、javascript 文件。
支持文件列表:支持列出目录内容的操作。
支持传输大文件:可以传输gb(gigabyte,千兆字节)大小的文件。
02
sftp协议 sftp(secure file transfer protocol,安全文件传输协议)是用于在计算机网络中安全传输文件的协议,其实就是加强版的ftp,专门采用了一个加密传输技术,来提高数据传输的安全性。
01
传输过程
客户端通过密钥对要传输的文件进行加密,然后发送给sftp服务器。
sftp服务器使用密钥对加密文件进行解密,最终得到原文件。
02
特点
安全性:sftp使用ssh(secure shell,安全外壳协议)的加密机制,ssh可以在不安全的网络中对网络服务提供安全的传输环境,相当于给文件传输通道加上了一个保护罩,从而保证了数据的安全传输。
可靠性:sftp的传输过程是可靠的。如果传输中断,它可以从上一次中断的地方恢复,而无需重新传输整个文件。
面向连接:sftp建立连接后会一直保持连接状态,直到连接被关闭。
需要身份验证:sftp要求客户端用户必须由服务器进行身份验证。
支持的传输模式:二进制模式和ascii模式,可以适应不同类型的文件传输。
支持文件列表:支持列出目录内容的操作。
支持传输大文件:可以传输gb(gigabyte,千兆字节)大小的文件。
03
 tftp协议 tftp(trivial file transfer protocol,简单文件传输协议)是一个用来在客户端与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务,它只能从服务器上获得或写入文件。
01
传输过程
tftp客户端和tftp服务器都是数据的发出者与接收者,一方传输数据接收应答,另一方发出应答接收数据。
举例
类似于我们生活中和小伙伴打语音电话,一方发出语音请求,另一方可以接收语音。
02
特点
安全性:tftp不支持任何身份验证机制,因此安全性较差,需要在安全的网络中使用。
可靠性:tftp基于udp(user datagram protocol,用户数据报协议)协议实现,没有错误恢复和重传机制,是不可靠的。
面向无连接:tftp是面向无连接的,即每个tftp包都是独立的,不需要建立连接。
不支持身份验证:tftp不支持任何身份验证机制,因此安全性较差,需要在安全的网络中使用。
支持的传输模式:支持二进制模式和ascii模式,可以适应不同类型的文件传输。二进制模式和ascii模式,可以适应不同类型的文件传输。
不支持文件列表:tftp不支持列出目录内容的操作,用户需要知道需要下载或上传的文件名。
不支持传输大文件:tftp只能传输较小的文件,因为它限制了数据包的大小。
04
三种协议适用场景
接下来文档君就来说说这三个文件传输协议的适用场景,帮助加深理解。
假设文档君需要将一份公司文件从你的电脑上传到公司服务器。这是一个常见的文件传输场景,可以用ftp、sftp或tftp协议进行传输。
当文档君需要传输团建vlog视频文件,可以使用ftp客户端连接到公司服务器,输入用户名和密码进行身份验证,然后上传文件。因为ftp传输不加密,如果vlog视频中包含敏感信息,需要考虑其它安全性更高的协议。
当文档君需要传输机密会议录屏文件,可以使用sftp客户端连接到公司服务器,输入用户名和密码或ssh密钥进行身份验证,然后使用加密传输将文件上传到服务器。这种方式更加安全,适用于需要保护数据安全性的场合。
当文档君需要传输固件(固化在集成电路内部的程序代码),可以使用tftp客户端通过公司内部的本地网络上传到公司服务器中。因为tftp传输速度快,占用带宽少,因此可以快速完成上传过程。但需要注意,tftp在安全性方面较弱,因此不适用于传输敏感信息。
结语
最后,文档君整理了一个表格,方便大家了解这三个协议之间的主要区别。


全球与中国金属功率电感器市场:增长趋势、竞争格局与前景展望
汽车发动机厂如何实现能源监测与节能管理
华为做电视有哪些优势?
DCM3623转换器可大大降低金属氧化物半导体晶体管的开关损耗
传苹果将推AirPods Max廉价版
FTP、SFTP、TFTP文件传输协议之间的主要区别
摩尔定律的顶点将在2028年?计算能力正式开始进步?
北京汉栎实业打造智能制造产业新标杆
网络对讲终端SV-7011T使用说明
企业数字化转型的投入产出应如何衡量?
三星电子推出首款“人本节律照明” LED 器件 可自动调节以增强人体的的警觉意识和能量水平
三星华为OP一加4部手机充电情况比较
如何进入市场,AMOLED专利大战暗流涌动
争相涉足氢燃料电池,雄韬股份等三方合作协议签订
国务委员开“要账”会,可部分通信企业还因历史遗留问题头大
Pxe Win98完全安装手册(中)
初上科技陶瓷手机外壳的加工工艺分析
“在LED照明领域,印度处领先位置”,印度人这样看自己的LED照明
大功率绕线电感线圈在使用中出现产品不良的原因
UNB(超窄带)远程通信适用于智能化程度更高的城市