写点什么

关于文件传输协议,你不知道的事

作者:镭速
  • 2023-03-16
    广东
  • 本文字数:2956 字

    阅读完需:约 10 分钟


什么是文件传输协议?

文件传输协议(FTP)是一种网络协议,用于通过传输控制协议/互联网协议 ( TCP/IP ) 连接在计算机之间传输文件。在 TCP/IP 套件中,文件传输协议被视为应用层协议。

在文件传输协议事务中,最终用户的计算机通常称为本地主机。文件传输协议涉及的第二台计算机是远程主机,通常是服务器。两台计算机都需要通过网络连接并正确配置以通过文件传输协议传输文件。必须设置服务器才能运行文件传输协议服务,并且客户端必须安装文件传输协议软件才能访问这些服务。

尽管可以使用超文本传输协议 (HTTP)( TCP/IP 套件中的另一种协议)进行许多文件传输,但 FTP 仍然通常用于在后台为其他应用程序传输文件,例如银行服务。它有时也用于通过网络浏览器下载新应用程序。

文件传输协议是如何工作的?



文件传输协议是一种客户端-服务器协议,它依赖于客户端和服务器之间的两个通信通道:一个用于控制对话的命令通道和一个用于传输文件内容的数据通道。

以下是典型的文件传输协议传输的工作原理:

用户通常需要登录到 FTP 服务器,尽管有些服务器无需登录即可提供部分或全部内容,这种模式称为匿名 FTP。

当用户请求下载文件时,客户端启动与服务器的对话。

使用 FTP,客户端可以上传、下载、删除、重命名、移动和复制服务器上的文件。

FTP 会话以主动或被动模式工作:

主动模式

客户端通过命令通道请求启动会话后,服务器创建返回客户端的数据连接并开始传输数据。

被动模式

服务器使用命令通道向客户端发送打开数据通道所需的信息。因为被动模式让客户端启动所有连接,所以它可以很好地跨防火墙和网络地址转换网关。



用户可以通过简单的命令行界面(从 Microsoft Windows、Apple macOS 或 Linux 中的控制台或终端窗口)或使用专用的图形用户界面来使用 FTP。Web 浏览器也可以用作 FTP 客户端。

为什么文件传输协议很重要,它的用途是什么?



FTP 是一种标准网络协议,可以实现跨 IP 网络的扩展文件传输功能。如果没有 FTP,文件和数据传输可以通过其他机制进行管理——例如电子邮件或 HTTP Web 服务——但这些其他选项缺乏 FTP 支持的焦点、精度和控制的清晰度。

FTP 用于一个系统和另一个系统之间的文件传输,它有几个常见的用例,包括:

(1)备份

备份服务或个人用户可以使用 FTP 将数据从一个位置备份到运行 FTP 服务的安全备份服务器。

(2)复制

与备份类似,复制涉及将数据从一个系统复制到另一个系统,但采用更全面的方法来提供更高的可用性和弹性。FTP 也可以用来促进这一点。

(3)访问和数据加载

FTP 也常用于访问共享网络托管和云服务,作为一种将数据加载到远程系统的机制。

文件传输协议类型

FTP 服务器和客户端软件可以通过几种不同的方式使用 FTP 进行文件传输:

(1)匿名 FTP

这是最基本的 FTP 形式。它为数据传输提供支持,无需加密数据或使用用户名和密码。它最常用于下载允许无限制分发的材料。它适用于端口受密码保护的 FTP。这也是一个基本的 FTP 服务,但它需要使用用户名和密码,尽管该服务可能没有加密或安全。它也适用于端口 21。

(2)FTPS

有时称为 FTP 安全套接字层 (FTP-SSL),此方法在建立 FTP 连接后立即启用隐式传输层安全性 ( TLS )。FTPS 最初用于帮助实现更安全的 FTP 数据传输形式。它通常默认使用端口 990。

通过显式 SSL/TLS (FTPES) 的 FTP。此方法通过将端口 21 上的 FTP 连接升级为加密连接来启用显式 TLS 支持。这是 Web 和文件共享服务启用安全文件传输的常用方法。

(3)SFTP

这在技术上不是 FTP 协议,但它的功能类似。相反,SFTP 是在端口 22 上运行的安全外壳 ( SSH ) 协议的子集。系统管理员通常使用 SSH 来远程安全地访问系统和应用程序,并且 SFTP 在 SSH 中提供了一种用于安全文件传输的机制。

关于文件传输协议的安全问题

FTP 最初是在 1971 年定义的,早于 TCP 和 IP,从那时起它已经被重新定义了几次以适应新技术,包括 TCP/IP 或 Request for Comments 765 和 RFC 959 以及 IPv6 或 RFC 2428 的使用。

FTP 也进行了多次更新以增强 FTP 安全性。其中包括通过隐式 TLS 连接 (FTPS) 或显式 TLS 连接 (FTPES) 加密或与 SFTP 一起使用的版本。

默认情况下,FTP 不加密流量,个人可以抓包读取用户名、密码等数据。通过使用 FTPS 或 FTPES 加密 FTP,可以保护数据,限制攻击者窃听连接和窃取数据的能力。

FTP 可能仍然容易受到针对用户/密码身份验证欺骗的暴力攻击、FTP 反弹攻击或分布式拒绝服务攻击。

关于文件传输协议的历史



FTP 的第一个规范于 1971 年 4 月 16 日作为 RFC 114 发布,由当时在麻省理工学院读书的 Abhay Bhushan 编写。FTP 的最初想法是通过互联网的前身 ARPANET 传输文件。

随着现代互联网开始成形,FTP 规范经历了多次修订以符合包括 TCP/IP 在内的网络标准。1980 年,当时南加州大学信息科学研究所的研究科学家 Jon Postel 在 RFC 765 中定义了新版本的 FTP。五年后,FTP 再次被 RFC 959 重新定义,它为协议引入了新的管理功能,包括创建和删除文件目录的能力。以前的 FTP 迭代主要限于将文件传输到现有文件目录结构或从现有文件目录结构传输文件。

1997 年,RFC 959 更新为 RFC 2228 中定义的新功能,以提供安全功能。两年后,FTP 更新为 RFC 2428 以支持 IPv6 协议。

镭速文件传输协议主要特性

高速传输

镭速传输协议可以充分利用大带宽网络,以最快的速度进行数据传输。在海量数据分发应用场景中, 可以帮助用户在最少的时间完成大数据传输。

实时性好

镭速传输协议支持传输连接多通道并行特性,当用户在 A 点与 B 点之间建立连接后,可通过多并行通道特性快速并行传输多个无关的数据流,这些数据流的传输无需经历连接建立的握手过程,极大提高了传输实时性;镭速传输协议创新性的 ACK 设计,帮助用户在存在丢包的环境中,以最快最准确的方式完成数据重发。在游戏、直播等应用场景中帮助用户实现最佳数据传输实时性。

防火墙 &NAT 设备友好性

镭速传输协议基于 UDP 协议,可以顺利通过各种 NAT 设备。镭速传输协议可以在 1 个 UDP 端口上运行多条连接,镭速传输协议服务端只需要用户的防火墙设备开放 1 个端口即可与多个镭速传输协议客户端完成连接和数据传输。

容易集成

镭速传输协议运行在系统的应用层和用户空间,不需要修改操作系统内核配置;镭速传输协议提供一系列简单易用的 SDK(Software Develop Kit/软件开发套件)、API (Application Programming Interface/应用编程接口)以及清晰完整的开发文档,帮助用户快速集成。

高度可配置

镭速传输协议提供配置参数供用户灵活自定义,通过不同的参数组配置,让传输协议可以最好的适用于用户的应用场景。例如大文件传输更加关注带宽的利用率,游戏/直播等应用更加关注数据传输的实时性,镭速传输已经针对常见的多种应用场景进行优化,提供多组配置参数供用户进行选择。

跨平台

镭速 Proxy 支持 Windows/Mac/Android/IOS/Linux/Unix

镭速传输提供一站式文件传输加速解决方案,旨在为 IT、影视、生物基因、制造业等众多行业客户实现高性能、安全、稳定的数据传输加速服务。传统文件传输方式(如 FTP/HTTP/CIFS)在传输速度、传输安全、系统管控等多个方面存在问题,而镭速文件传输解决方案通过自主研发、技术创新,可满足客户在文件传输加速、传输安全、可管可控等全方位的需求。

本文《关于文件传输协议,你不知道的事 》内容由镭速大文件传输软件整理发布,如需转载,请注明出处及链接:https://www.raysync.cn/news/post-id-954

用户头像

镭速

关注

还未添加个人签名 2023-01-04 加入

还未添加个人简介

评论

发布
暂无评论
关于文件传输协议,你不知道的事_镭速_InfoQ写作社区