新睿云

> 知识库 > 为何大部分网盘不用ftp上传?ftp的路在何方?

为何大部分网盘不用ftp上传?ftp的路在何方?

作者/来源:新睿云小编 发布时间:2019-10-25

现在使用U盘的用户越来越少了,大部分小伙伴都在使用网盘,可见网盘逐渐已经成为我们生活中的主力了。有小伙伴好奇过我们平时往网盘中上传文件的时候使用的是什么协议吗?你还以为是FTP吗?

一、网盘上传文件为何FTP不再主流?

现在支持FTP上传文件的网盘不是没有,不过已经属于小众了,大部分网盘均使用HTTP协议上传。为何会造成这种情况?为此笔者专门做了一个实验。

1、设计环境如下

测试软件:Filezilla Server/FTP服务器端、Wireshark/抓包工具

账号密码:test/test 账号/密码

FTP服务器:192.168.66.41

FTP客户端:192.168.66.70

2、安装Filezilla Server、Wireshark

Filezilla Server安装设置完毕发现只有自己能访问FTP同网段IP都不行,后来发现是防火墙拦截了,开启方式如下:

image.png

3、客户端访问服务器抓包

在FTP客户端(192.168.66.70)访问链接ftp://test:test@192.168.66.41,同时开启Wireshark数据包抓取,截图如下:

image.png

看到抓包结果了吧!惊不惊喜?意不意外?账号密码传输信息全部暴露,这要是上传个文件有人一抓包能获取你的全部信息……

二、基于FTP协议的上传/下载难道真的没有出路吗?

P2P:不适宜于及连接数和端口被控制的情况,比如只开放了若干端口供使用。

网盘:不适宜于一些内网情形,比如无外网,或者类似 Google Drive 被 GFW 挡住的情况。

HTTP:

HTTP 协议中没有原生的断点续传;没有选择文件部分传输的支持,也无法做多连接分段下载。 // 此段证伪,感谢

Ivony

的 challenge,在HTTP header中加入Content-Range,实现分段下载和断点续传

单说下载,暂时没有想到 HTTP 有什么问题。另外想到的是只用 HTTP 如何实现 FTP 的 LIST 指令?上传呢?(更新:上传可直接用PUT方法)

FTP的好处:

1. 默认端口(21,20)基本不受限制,适用于可使用端口有限情形。

2. 适用内网,易于服务器架设。

3. 借助各种 FTP 客户端,很容易做到多点下载,断点续传。

从协议上来说,FTP传输的效率比HTTP高,不说FTP它产生的历史了,但是一般来说,越早出现的应用层协议,传输效率一般会越高。所以我估计在带宽敏感的应用场合下,FTP比HTTP有优势。同时之前的同学也提到了搭建服务器的效率(支持一定的用户权限控制)也比HTTP高,所以在公司内部应该经常可以用来提供简单的文件共享服务。

在一些商用封闭,下载资源十分稳定的网络环境下,FTP是非常好的选择。

想了解更多相关知识请阅读《如果在自己的Windows云服务器开启架设免费的FTP空间

热门标签
免费领云产品

免费用

立即领取
联系客服
在线客服   
反馈意见
返回顶部
{{item.description}}

—您的烦恼我们已经收到—

我们会将处理结果发送至您的手机

请耐心等待