0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

中兴文档 来源:中兴文档 2023-11-15 09:04 次阅读

日常的工作中,我们都离不开文件的上传和下载,那么在不同的文件系统间传输文件有哪些协议?这期,就和文档君一起来了解这三种常见文件传输协议吧!

01

FTP协议 FTP(File Transfer Protocol,文件传输协议)是用于在计算机网络中传输文件的标准协议。FTP是一种客户端/服务器协议,我们一般都通过FTP客户端软件将客户端连接到服务器,并使用FTP协议来上传和下载文件。文件传输过程如下图所示:

f7eba096-834e-11ee-939d-92fbcf53809c.png    

01

传输过程

服务器打开用于FTP控制连接的TCP(Transmission Control Protocol,传输控制协议)端口21(标准),等待FTP客户端的连接。当客户端需要登录FTP服务器时,与服务端(端口21)建立控制连接。该连接始终等待客户端和服务器之间的通信,将命令从客户端传递到服务器,并传回服务器的应答。

每当需要文件传输时,就创建一个数据连接。

举例

寄件人文档君相当于FTP客户端,收件人相当于FTP服务器。

f80d031c-834e-11ee-939d-92fbcf53809c.png

文档君需要寄快递,只需要在手机上操作,就可以让快递小哥上门取件,也可以随时取消取件订单,这个过程类似于控制连接。也就是说,控制连接用于传输控制指令,也可以在传输途中终止传输的指令。 快递小哥取到件之后,需要负责包裹(数据)的转运,直至派送。这个过程类似与数据连接,也就是说,数据连接用于实际的文件传输, 在传输完毕后关闭数据连接,结束整个文件传输流程。

02

特点

安全性:FTP传输过程采用TCP明文传输,存在安全隐患,对于安全性要求较高的数据,不建议采用FTP服务。

可靠性:FTP使用TCP作为传输层协议进行数据传输,保证了数据传输的可靠性。

面向连接:FTP建立连接后会一直保持连接状态,直到连接被关闭。

需要身份验证:FTP服务器通常需要用户进行身份验证后才能进行文件传输,以保护数据的安全性。

支持的传输模式:支持二进制模式和ASCII模式,可以适应不同类型的文件传输。 二进制模式应用场景:

f825feee-834e-11ee-939d-92fbcf53809c.png  

ASCII模式应用场景:文本文件、HTML 文件、CGI 脚本、级联样式表文件、javascript 文件。

支持文件列表:支持列出目录内容的操作。

支持传输大文件:可以传输GB(Gigabyte,千兆字节)大小的文件。

02

SFTP协议 SFTP(Secure File Transfer Protocol,安全文件传输协议)是用于在计算机网络中安全传输文件的协议,其实就是加强版的FTP,专门采用了一个加密传输技术,来提高数据传输的安全性。

f83a45ac-834e-11ee-939d-92fbcf53809c.png    

01

传输过程

客户端通过密钥对要传输的文件进行加密,然后发送给SFTP服务器。

SFTP服务器使用密钥对加密文件进行解密,最终得到原文件。

02

特点

安全性:SFTP使用SSH(Secure Shell,安全外壳协议)的加密机制,SSH可以在不安全的网络中对网络服务提供安全的传输环境,相当于给文件传输通道加上了一个保护罩,从而保证了数据的安全传输。

可靠性:SFTP的传输过程是可靠的。如果传输中断,它可以从上一次中断的地方恢复,而无需重新传输整个文件。

面向连接:SFTP建立连接后会一直保持连接状态,直到连接被关闭。

需要身份验证:SFTP要求客户端用户必须由服务器进行身份验证。

支持的传输模式:二进制模式和ASCII模式,可以适应不同类型的文件传输。

支持文件列表:支持列出目录内容的操作。

支持传输大文件:可以传输GB(Gigabyte,千兆字节)大小的文件。

03

TFTP协议 TFTP(Trivial File Transfer Protocol,简单文件传输协议)是一个用来在客户端与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务,它只能从服务器上获得或写入文件。

f8623aee-834e-11ee-939d-92fbcf53809c.png    

01

传输过程

TFTP客户端和TFTP服务器都是数据的发出者与接收者,一方传输数据接收应答,另一方发出应答接收数据。

举例

类似于我们生活中和小伙伴打语音电话,一方发出语音请求,另一方可以接收语音。

02

特点

安全性:TFTP不支持任何身份验证机制,因此安全性较差,需要在安全的网络中使用。

可靠性:TFTP基于UDP(User Datagram Protocol,用户数据报协议)协议实现,没有错误恢复和重传机制,是不可靠的。

面向无连接:TFTP是面向无连接的,即每个TFTP包都是独立的,不需要建立连接。

不支持身份验证:TFTP不支持任何身份验证机制,因此安全性较差,需要在安全的网络中使用。

支持的传输模式:支持二进制模式和ASCII模式,可以适应不同类型的文件传输。二进制模式和ASCII模式,可以适应不同类型的文件传输。

不支持文件列表:TFTP不支持列出目录内容的操作,用户需要知道需要下载或上传的文件名。

不支持传输大文件:TFTP只能传输较小的文件,因为它限制了数据包的大小。

04

三种协议适用场景

接下来文档君就来说说这三个文件传输协议的适用场景,帮助加深理解。

假设文档君需要将一份公司文件从你的电脑上传到公司服务器。这是一个常见的文件传输场景,可以用FTP、SFTP或TFTP协议进行传输。

f8caf2d2-834e-11ee-939d-92fbcf53809c.png

当文档君需要传输团建VLOG视频文件,可以使用FTP客户端连接到公司服务器,输入用户名和密码进行身份验证,然后上传文件。因为FTP传输不加密,如果VLOG视频中包含敏感信息,需要考虑其它安全性更高的协议。

当文档君需要传输机密会议录屏文件,可以使用SFTP客户端连接到公司服务器,输入用户名和密码或SSH密钥进行身份验证,然后使用加密传输将文件上传到服务器。这种方式更加安全,适用于需要保护数据安全性的场合。

当文档君需要传输固件(固化在集成电路内部的程序代码),可以使用TFTP客户端通过公司内部的本地网络上传到公司服务器中。因为TFTP传输速度快,占用带宽少,因此可以快速完成上传过程。但需要注意,TFTP在安全性方面较弱,因此不适用于传输敏感信息。

结语

最后,文档君整理了一个表格,方便大家了解这三个协议之间的主要区别。

f8ec0652-834e-11ee-939d-92fbcf53809c.png







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    709

    浏览量

    41266
  • FTP
    FTP
    +关注

    关注

    0

    文章

    99

    浏览量

    40280
  • ASCII
    +关注

    关注

    4

    文章

    169

    浏览量

    34542
  • TFTP
    +关注

    关注

    0

    文章

    20

    浏览量

    14264
  • TCP通信
    +关注

    关注

    0

    文章

    145

    浏览量

    4143

原文标题:FTP、SFTP、TFTP,文件传输协议怎么选?

文章出处:【微信号:ztedoc,微信公众号:中兴文档】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    UDP与TCP的主要区别 UDP能否像TCP一样实现可靠传输

    UDP与TCP的主要区别 UDP能否像TCP一样实现可靠传输?TCP如何实现可靠性传输? UDP和TCP是两种常用的传输协议,它们
    的头像 发表于 01-22 16:10 188次阅读

    FTP连接被重置问题的解决方法与技巧!FTP服务器连接修复!

    FTP连接被重置问题的解决方法与技巧!FTP服务器连接修复! FTP文件传输协议)是用于在计算机网络环境中进行
    的头像 发表于 01-12 16:00 2651次阅读

    利用 MPLAB® Harmony v3 TCP/IP协议栈在SAM E54 MCU 上实现文件传输协议

    电子发烧友网站提供《利用 MPLAB® Harmony v3 TCP/IP协议栈在SAM E54 MCU 上实现文件传输协议.pdf》资料免费下载
    发表于 12-18 11:03 0次下载
    利用 MPLAB® Harmony v3 TCP/IP<b class='flag-5'>协议</b>栈在SAM E54 MCU 上实现<b class='flag-5'>文件传输</b><b class='flag-5'>协议</b>

    TFTP服务器是什么如何下载文件

    TFTP服务器是什么如何下载文件 想必许多人知道FTP是什么,但他们缺并不熟悉TFTPTFTP是TCP/IP
    发表于 12-12 16:06

    如何实现文件传输

    你会如何实现文件传输? 服务器提供文件传输功能,需要将磁盘上的文件读取出来,通过网络协议发送到客户端。如果需要你自己编码实现这个文件传输功能
    的头像 发表于 11-13 15:32 459次阅读
    如何实现<b class='flag-5'>文件传输</b>

    STP和SFTP网线之间主要区别

    STP和SFTP网线之间主要区别在于它们的屏蔽技术和性能。 STP全称Shielded Twisted Pai,意思是屏蔽双绞线。它采用电磁感应相互抵销的原理来屏蔽频率小于30MHz的电磁干扰
    的头像 发表于 10-17 10:24 475次阅读

    中文应用笔记《利用 MPLAB® Harmony v3 TCP/IP 协议栈在SAM E54 MCU上实现文件传输协议

    利用 MPLAB Harmony v3 TCP/IP 协议栈 在SAM E54 MCU上 实现文件传输协议 简介 文件传输协议(File T
    的头像 发表于 09-26 17:30 1626次阅读
    中文应用笔记《利用 MPLAB® Harmony v3 TCP/IP <b class='flag-5'>协议</b>栈在SAM E54 MCU上实现<b class='flag-5'>文件传输</b><b class='flag-5'>协议</b>》

    ftp服务器有什么作用?

    ftp服务器是一种软件应用程序或服务,有助于通过网络(通常是互联网)在计算机之间传输文件ftp服务器的
    的头像 发表于 09-19 17:24 2651次阅读

    文件管理器与文件传输的操作方法

    AnyDesk安力桌为在本地和远程端点之间文件传输,提供各种选项。这可以通过 "文件管理器"会话或通过远程控制会话中的 "文件传输 "完成。
    的头像 发表于 08-30 11:04 887次阅读

    如何高效实现文件传输

    服务器提供文件传输功能,需要将磁盘上的文件读取出来,通过网络协议发送到客户端。如果需要你自己编码实现这个文件传输功能,你会怎么实现呢?
    发表于 08-01 16:16 298次阅读
    如何高效实现<b class='flag-5'>文件传输</b>

    一般会如何实现文件传输?零拷贝如何提升文件传输性能?

    服务器提供文件传输功能,需要将磁盘上的文件读取出来,通过网络协议发送到客户端。
    的头像 发表于 07-26 14:43 697次阅读
    一般会如何实现<b class='flag-5'>文件传输</b>?零拷贝如何提升<b class='flag-5'>文件传输</b>性能?

    RT-Thread中使用lwip自带的tftp功能传输文件

    TFTP协议 TFTP(简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器
    的头像 发表于 07-24 19:35 855次阅读
    RT-Thread中使用lwip自带的<b class='flag-5'>tftp</b>功能<b class='flag-5'>传输</b><b class='flag-5'>文件</b>

    rtthread中使用lwip自带的tftp功能传输文件

    TFTP(简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行文件传输
    发表于 07-22 14:06 764次阅读
    rtthread中使用lwip自带的<b class='flag-5'>tftp</b>功能<b class='flag-5'>传输</b><b class='flag-5'>文件</b>

    基于文件文件夹的文件系统核心对象模型

    SFTP服务器类型,支持所有主要SFTP操作 高效、符合RFC的SFTP协议实施   SSH文件传输
    的头像 发表于 06-26 15:59 276次阅读

    基于JAVA的文件传输设计与实现(包含论文及源代码)

    IP网络上的协议,而是ARPANET网络中计算机间的文件传输协议, ARPANET是美国国防部组建的老网络,于1960-1980年使用。在那时,FTP
    发表于 06-09 15:57 0次下载